From ab08eb30a2b5fe88973407d2ae9b19a868785fd7 Mon Sep 17 00:00:00 2001 From: j-xiang Date: Thu, 13 Aug 2026 14:21:33 +0800 Subject: [PATCH 01/22] docs(i18n): human-polish additional Chinese READMEs --- packages/README.i18n.yaml | 2 +- packages/README.zh.md | 90 ++++++++++---------- packages/core/agent-loop/README.i18n.yaml | 2 +- packages/core/agent-loop/README.zh.md | 30 +++---- packages/core/system-prompt/README.i18n.yaml | 2 +- packages/core/system-prompt/README.zh.md | 16 ++-- packages/llm/llm/README.i18n.yaml | 2 +- packages/llm/llm/README.zh.md | 34 ++++---- packages/subagent/subagent/README.i18n.yaml | 2 +- packages/subagent/subagent/README.zh.md | 46 +++++----- 10 files changed, 113 insertions(+), 113 deletions(-) diff --git a/packages/README.i18n.yaml b/packages/README.i18n.yaml index 19feb5b2c3..06703a62c7 100644 --- a/packages/README.i18n.yaml +++ b/packages/README.i18n.yaml @@ -3,4 +3,4 @@ # after editing either side, bring the other along and re-record with: # pnpm run verify-translation-pairing --write packages/README.md README.md: 7904ec1fea8dbab361fcd90b2b32f1c743ce5537 -README.zh.md: bac14113b656990cfda18a448034bfa25482c4fc +README.zh.md: f95a9b2868f13e0c3ad58bc6507b3615c76bc7dc diff --git a/packages/README.zh.md b/packages/README.zh.md index bac14113b6..f95a9b2868 100644 --- a/packages/README.zh.md +++ b/packages/README.zh.md @@ -10,53 +10,53 @@ npm scope 为 `@deepseek-ai/dsh-*`;Cordis `Service` 子类和函数插件通 | 组 | 职责 | 发布预期 | |---|---|---| -| [`core/`](core/README.md) | 产品 API 主干:会话、提示词、工具、agent(智能体)服务与具体循环 | 产品:稳定接口 | -| [`api/`](api/README.md) | Remote BFF 装配与 Typert RPC Gateway | 产品:稳定接口 | -| [`typert/`](typert/README.md) | 类型图生成、产物加载与运行时注册表 | 产品:稳定接口 | -| [`goal/`](goal/README.md) | 同会话 goal 的持久化与生命周期 | 产品:稳定接口 | -| [`schedule/`](schedule/README.md) | 仅限会话内的定时后续轮次 | 产品:稳定接口 | -| [`feedback/`](feedback/README.md) | 人类反馈 | 产品:稳定接口 | -| [`identity/`](identity/README.md) | 共享匿名身份 | 产品:稳定接口 | -| [`llm/`](llm/README.md) | LLM(大语言模型)能力系列:抽象服务 + 提供方适配器 | 产品:稳定接口 | +| [`core/`](core/README.md) | 产品 API 主干:会话、提示词、工具、agent(智能体)服务与具体循环 | 产品:稳定 API | +| [`api/`](api/README.md) | Remote BFF 装配与 Typert RPC 网关 | 产品:稳定 API | +| [`typert/`](typert/README.md) | 类型图生成、产物加载与运行时注册表 | 产品:稳定 API | +| [`goal/`](goal/README.md) | 同会话 goal 的持久化与生命周期 | 产品:稳定 API | +| [`schedule/`](schedule/README.md) | 仅限会话内的定时 follow-up | 产品:稳定 API | +| [`feedback/`](feedback/README.md) | 人类反馈 | 产品:稳定 API | +| [`identity/`](identity/README.md) | 共享匿名身份 | 产品:稳定 API | +| [`llm/`](llm/README.md) | LLM(大语言模型)能力系列:抽象服务 + 提供方适配器 | 产品:稳定 API | | [`e2b/`](e2b/README.md) | E2B 提供方 | POC | -| [`subprocess/`](subprocess/README.md) | 子进程能力系列:Service Definition + 本地进程树提供方 | 产品:稳定接口 | -| [`shell/`](shell/README.md) | Bash 能力系列:执行器 seam、本地实现、面向模型的工具 | 产品:稳定接口 | -| [`terminal/`](terminal/README.md) | 持久 PTY 能力系列:按所有者隔离的会话、本地实现和面向模型的工具 | 产品:稳定接口 | -| [`code-runtime/`](code-runtime/README.md) | 代码执行能力系列:Service Definition + worker 线程提供方 + Code Mode Consumer | 产品:稳定接口 | -| [`sandbox/`](sandbox/README.md) | 进程限制 seam;bwrap/Landlock/Seatbelt 后端 | 产品:稳定接口 | -| [`fs/`](fs/README.md) | 文件系统能力系列:seam、本地实现、面向模型的文件工具、由 bash 支持的发现工具 | 产品:稳定接口 | -| [`lsp/`](lsp/README.md) | LSP 能力系列:seam、通用 stdio 提供方和 `lsp` 工具 | 产品:稳定接口 | -| [`skill/`](skill/README.md) | skill(技能)能力系列:提供方注册表、本地提供方和面向模型的目录/loader | 产品:稳定接口 | -| [`compaction/`](compaction/README.md) | 压缩(compaction)能力系列:Service Definition + 基础提供方 + 命令 Consumer | 产品:稳定接口 | -| [`context/`](context/README.md) | 模型可见请求上下文,包括 workspace 指令和时间上下文 | 产品:稳定接口 | -| [`subagent/`](subagent/README.md) | subagent 能力系列:提供方注册表约定和面向模型的委托工具 | 产品:稳定接口 | -| [`jobs/`](jobs/README.md) | 通用后台任务运行时和面向模型的 `job_*` 控制工具 | 产品:稳定接口 | -| [`workflow/`](workflow/README.md) | 工作流 seam、worker 线程引擎和面向模型的 `workflow`/`ralph` 工具 | 产品:稳定接口 | -| [`web/`](web/README.md) | Web 能力系列:seam、搜索/获取提供方实现和面向模型的 Web 工具 | 产品:稳定接口 | -| [`attachment/`](attachment/README.md) | 持久附件标识、校验、本地内容寻址存储 | 产品:稳定接口 | -| [`spill/`](spill/README.md) | spill 能力系列:存储 seam、本地实现、工具结果 spill 策略 | 产品:稳定接口 | -| [`todo/`](todo/README.md) | 面向模型的 `todo_write` 工具 | 产品:稳定接口 | -| [`plan/`](plan/README.md) | Plan 协作状态,提供直接进入命令与经评审的退出 | 产品:稳定接口 | -| [`preset/`](preset/README.md) | 由 preset `cordis.yml` 按会话组装 agent | 产品:稳定接口 | -| [`guard/`](guard/README.md) | 循环卫生守卫:建议性重复调用提醒 + `tools/execute` 截止时间强制执行器 | 产品:稳定接口 | -| [`bundle/`](bundle/README.md) | 可安装的 `dsh --profile` 补丁层 | 产品:稳定接口 | -| [`extensions/`](extensions/README.md) | agent 运行时自修改:实时插件/服务检查和模型所写插件挂载/卸载([设计](../.agents/notes/implemented/feature/2026-07-08-self-referential-cordis-toolset.md)) | 产品:稳定接口 | -| [`hooks/`](hooks/README.md) | 钩子桥接 + 共享 Claude Code/Codex 协议格式库 | 产品:稳定接口 | -| [`session/`](session/README.md) | 持久会话数据平面:持久化 seam + JSONL/SQLite 后端、投影 seam、基于日志的标题、会话上报 | 产品:稳定接口 | -| [`session-query/`](session-query/README.md) | 会话检索系列:逻辑语料库、有界读取、血缘、事件关系、语义过滤和 SQLite 全文搜索 | 产品:稳定接口 | -| [`settings/`](settings/README.md) | 用户设置 seam + 基于文件的提供方 | 产品:稳定接口 | -| [`credentials/`](credentials/README.md) | 凭据引用 seam + 环境变量优先于 `.env` 的提供方 | 产品:稳定接口 | -| [`storage/`](storage/README.md) | 非会话存储中枢 + 后端 + 领域形式 | 产品:稳定接口 | -| [`workspace/`](workspace/README.md) | Workspace 实体 | 产品:稳定接口 | -| [`sdk/`](sdk/README.md) | 进程外运行时 SDK:JSON-RPC 协议、TypeScript 客户端和服务器插件 | 产品:稳定接口 | -| [`acp/`](acp/README.md) | 仅面向自动化的 ACP(Agent Client Protocol)服务器 | 产品:稳定接口 | -| [`interaction/`](interaction/README.md) | 人机协作平面:批准/交互 seam、权限预设、命令、询问用户的工具 | 产品:稳定接口 | -| [`boot/`](boot/README.md) | 共享的 app bin 启动粘合层 | 产品:稳定接口 | -| [`host/`](host/README.md) | web GUI 宿主半侧:API 网关 + HTTP 路由服务器 | 产品:稳定接口 | -| [`client/`](client/README.md) | web GUI 浏览器半侧:shell、协议层、对象服务、slot、`ui-*` 插件 | 产品:稳定接口 | +| [`subprocess/`](subprocess/README.md) | 子进程能力系列:Service Definition + 本地进程树提供方 | 产品:稳定 API | +| [`shell/`](shell/README.md) | Bash 能力系列:执行器 seam、本地实现、面向模型的工具 | 产品:稳定 API | +| [`terminal/`](terminal/README.md) | 持久 PTY 能力系列:限定所有者范围的会话、本地实现和面向模型的工具 | 产品:稳定 API | +| [`code-runtime/`](code-runtime/README.md) | 代码执行能力系列:Service Definition + worker 线程提供方 + Code Mode 消费方 | 产品:稳定 API | +| [`sandbox/`](sandbox/README.md) | 进程限制 seam;bwrap/Landlock/Seatbelt 后端 | 产品:稳定 API | +| [`fs/`](fs/README.md) | 文件系统能力系列:seam、本地实现、面向模型的文件工具、由 bash 支持的发现工具 | 产品:稳定 API | +| [`lsp/`](lsp/README.md) | LSP 能力系列:seam、通用 stdio 提供方和 `lsp` 工具 | 产品:稳定 API | +| [`skill/`](skill/README.md) | skill(技能)能力系列:提供方注册表、本地提供方和面向模型的目录/loader | 产品:稳定 API | +| [`compaction/`](compaction/README.md) | 压缩(compaction)能力系列:Service Definition + 基础提供方 + 命令消费方 | 产品:稳定 API | +| [`context/`](context/README.md) | 模型可见请求上下文,包括 workspace 指令和时间上下文 | 产品:稳定 API | +| [`subagent/`](subagent/README.md) | subagent 能力系列:提供方注册表约定和面向模型的委托工具 | 产品:稳定 API | +| [`jobs/`](jobs/README.md) | 通用后台任务运行时和面向模型的 `job_*` 控制工具 | 产品:稳定 API | +| [`workflow/`](workflow/README.md) | 工作流 seam、worker 线程引擎和面向模型的 `workflow`/`ralph` 工具 | 产品:稳定 API | +| [`web/`](web/README.md) | Web 能力系列:seam、搜索/获取提供方实现和面向模型的 Web 工具 | 产品:稳定 API | +| [`attachment/`](attachment/README.md) | 持久附件标识、校验、本地内容寻址存储 | 产品:稳定 API | +| [`spill/`](spill/README.md) | spill 能力系列:存储 seam、本地实现、工具结果 spill 策略 | 产品:稳定 API | +| [`todo/`](todo/README.md) | 面向模型的 `todo_write` 工具 | 产品:稳定 API | +| [`plan/`](plan/README.md) | Plan 协作状态,提供直接进入命令与经评审的退出 | 产品:稳定 API | +| [`preset/`](preset/README.md) | 由 preset `cordis.yml` 按会话组装 agent | 产品:稳定 API | +| [`guard/`](guard/README.md) | 循环卫生守卫:建议性重复调用提醒 + `tools/execute` 截止时间强制执行器 | 产品:稳定 API | +| [`bundle/`](bundle/README.md) | 可安装的 `dsh --profile` 补丁层 | 产品:稳定 API | +| [`extensions/`](extensions/README.md) | agent 运行时自修改:实时插件/服务检查和模型所写插件挂载/卸载([设计](../.agents/notes/implemented/feature/2026-07-08-self-referential-cordis-toolset.md)) | 产品:稳定 API | +| [`hooks/`](hooks/README.md) | 钩子桥接 + 共享的 Claude Code/Codex wire protocol 库 | 产品:稳定 API | +| [`session/`](session/README.md) | 持久会话数据平面:持久化 seam + JSONL/SQLite 后端、投影 seam、基于日志的标题、会话上报 | 产品:稳定 API | +| [`session-query/`](session-query/README.md) | 会话检索系列:逻辑语料库、有界读取、血缘、事件关系、语义过滤和 SQLite 全文搜索 | 产品:稳定 API | +| [`settings/`](settings/README.md) | 用户设置 seam + 基于文件的提供方 | 产品:稳定 API | +| [`credentials/`](credentials/README.md) | 凭据引用 seam + 环境变量优先于 `.env` 的提供方 | 产品:稳定 API | +| [`storage/`](storage/README.md) | 非会话存储中枢 + 后端 + 领域形式 | 产品:稳定 API | +| [`workspace/`](workspace/README.md) | Workspace 实体 | 产品:稳定 API | +| [`sdk/`](sdk/README.md) | 进程外运行时 SDK:JSON-RPC 协议、TypeScript 客户端和服务器插件 | 产品:稳定 API | +| [`acp/`](acp/README.md) | 仅面向自动化的 ACP(Agent Client Protocol)服务器 | 产品:稳定 API | +| [`interaction/`](interaction/README.md) | 人机协作平面:批准/交互 seam、权限预设、命令、询问用户的工具 | 产品:稳定 API | +| [`boot/`](boot/README.md) | 共享的 app bin 启动粘合层 | 产品:稳定 API | +| [`host/`](host/README.md) | web GUI 宿主半侧:API 网关 + HTTP 路由服务器 | 产品:稳定 API | +| [`client/`](client/README.md) | web GUI 浏览器半侧:shell、协议层、对象服务、slot、`ui-*` 插件 | 产品:稳定 API | | [`examples/`](examples/README.md) | 演示组合包(agent-spine + CLI(命令行界面)/ACP/JSON-RPC bin),由叶节点加载 | 支持:示例基础设施 | | [`test-support/`](test-support/README.md) | 支持基础设施(testkit、不变式、回放、Loader 冒烟测试) | 支持:兼容性预期较低 | -| [`util/`](util/README.md) | 组间共享的低层零依赖工具(`Branded`、Harness home/路径辅助函数、超时、保留策略) | 支持:小型、稳定、无 harness 依赖 | +| [`util/`](util/README.md) | 组间共享的低层零依赖工具(`Branded`、Harness home/路径辅助函数、超时、留存) | 支持:小型、稳定、无 harness 依赖 | 新包加入现有组;新组更新其 README 和此表。 @@ -64,6 +64,6 @@ npm scope 为 `@deepseek-ai/dsh-*`;Cordis `Service` 子类和函数插件通 依赖图由工具生成:[docs/module-graph.md](../docs/module-graph.md)(`pnpm run gen-module-graph`,CI 中有新鲜度门禁)。 -**扩展插件依赖 Service Definition,绝不依赖具体提供方。** `dsh-agent-loop` 可替换;UI、钩子和工具插件使用 `dsh-agent`。包括 `dsh-agent-spine-demo` 在内的组合包可以依赖主干插件。能力在 Service Definition/Service Provider/Consumer 角色需要独立演进时将其分离;详见[能力 seam](../.agents/notes/implemented/architecture/2026-06-13-capability-seams.md)。 +**扩展插件依赖 Service Definition,绝不依赖具体提供方。** `dsh-agent-loop` 可替换;UI、钩子和工具插件使用 `dsh-agent`。包括 `dsh-agent-spine-demo` 在内的组合包可以依赖主干插件。能力会将需要独立演进的 Service Definition/Service Provider/消费方角色分离;详见[能力 seam](../.agents/notes/implemented/architecture/2026-06-13-capability-seams.md)。 包 README 覆盖用途、API、扩展点和[模型体验](../docs/cookbook/adding-a-package.md#4-write-the-package-readme);列入模型无关[省略允许清单](../scripts/verify-package-readme-model-experience.ts)的包除外。它们还要包含 `## Known Limitations and Deferred Work`,或列入其[允许清单](../scripts/verify-package-readme-limitations.ts)。 diff --git a/packages/core/agent-loop/README.i18n.yaml b/packages/core/agent-loop/README.i18n.yaml index 6095e70739..00967e2c50 100644 --- a/packages/core/agent-loop/README.i18n.yaml +++ b/packages/core/agent-loop/README.i18n.yaml @@ -3,4 +3,4 @@ # after editing either side, bring the other along and re-record with: # pnpm run verify-translation-pairing --write packages/core/agent-loop/README.md README.md: 683799d1840c857981d4ff30dd3e8e078be03098 -README.zh.md: e2896192078456e424e7df87d77d5a636c11d932 +README.zh.md: 75e4196795bc24fcdca4bd9a949adab9588e8152 diff --git a/packages/core/agent-loop/README.zh.md b/packages/core/agent-loop/README.zh.md index e289619207..75e4196795 100644 --- a/packages/core/agent-loop/README.zh.md +++ b/packages/core/agent-loop/README.zh.md @@ -2,7 +2,7 @@ [English](README.md) | 中文 -唯一的具体 agent(智能体)插件与循环驱动器。其包内部实现满足 `Agent` 接口,并驱动会话/轮次/步骤生命周期。 +agent(智能体)的唯一具体实现插件和循环驱动器。其包内部实现满足 `Agent` 接口,并驱动会话、轮次和步骤的生命周期。 这是 harness 中唯一包含具体循环逻辑的包。其他所有内容要么是抽象服务,要么是针对扩展点的插件:新行为应放入插件,而不是这里。 @@ -10,20 +10,20 @@ ### 公开 API -创建与恢复属于同一个受回滚保护的事务:构造私有会话、具体 agent 和带作用域的上下文;等待可选 setup;进入两个注册表;依次宣告 `session/created` 和 `agent/created`;发出 `agent/session-start`;此后才启动驱动器。Setup 作为受信任的同进程组合代码,接收完整的带作用域 `Context`,并且不得驱动尚未发布的 agent。普通的类型化身份与选项输入遵循只读约定以借用方式传入;seed 事件与会话元数据会跨越持久会话边界,因此系统会验证并快照它们。可选的 `AbortSignal` 只取消加载/setup/发布,并在返回的 handle 可见前分离。 +创建与恢复属于同一个受回滚保护的事务:构造私有会话、具体 agent 和带作用域的上下文;等待可选 setup;进入两个注册表;依次宣告 `session/created` 和 `agent/created`;发出 `agent/session-start`;此后才启动驱动器。Setup 作为受信任的同进程组合代码,接收完整的带作用域 `Context`,并且不得驱动尚未发布的 agent。普通的类型化身份与选项输入按只读约定借用;seed 事件和会话元数据会跨越持久会话边界,因此系统会对其进行验证并创建快照。可选的 `AbortSignal` 只取消加载/setup/发布,并在返回的 handle 可见前分离。 调用方 fiber 与 AgentLoop 提供方共同拥有 agent。`AgentFactory.createAgent(ownerCtx, options)` 与 `resume(ownerCtx, options)` 显式接收调用方所有权,而工厂为 `sessions`/`llm`/`tools`/`systemPrompt` 保留自身的依赖上下文;这样,调用方可以只注入 `agents`,而不会缩减新 agent 的服务接口。调用方卸载、handle dispose(资源释放)或提供方卸载都会汇合到同一个记忆化的完全停稳边界。提供方关闭会同时等待资源 teardown,以及已经观测到停用的公开 create/resume 包装层,因此依赖消失后,任何 continuation 都无法继续发布。 -每个 agent 与其会话共享一个由调用方选择的 `SessionId`,并假设它在全局唯一;意外的 UUID 冲突不属于受支持模型。两个使用同一 id 的并发操作都可以进行准备,但最终的 `enter()` 调用会裁决发布,所有失败方都会回滚各自的私有资源。每次 detach 都绑定到确切进入的对象,因此陈旧 disposer 无法移除之后出现的同 id 替代项。在同步创建通知期间请求的 detach 会等待该次分发退栈,从而保留 created/disposed 配对。Teardown 顺序为停止并 drain → 撤销作用域 → detach agent → detach 会话;私有作用域清理完成后,该 id 即可复用。普通、不可 veto 的 `agent/*` 通知通过 `agentEvents(ctx, agent)` 发出;逐步骤组装通过 `assembleContextFor(agent)` 完成。 +每个 agent 与其会话共享一个由调用方选择的 `SessionId`,并假设它在全局唯一;意外的 UUID 冲突不属于受支持模型。两个使用同一 id 的并发操作都可以进行准备,但最终的 `enter()` 调用会裁决发布,所有失败方都会回滚各自的私有资源。每次 detach 都绑定到确切进入的对象,因此陈旧 disposer 无法移除之后出现的同 id 替代项。在同步创建通知期间请求的 detach 会等待该次分发退栈,从而保留 created/disposed 配对。Teardown 按以下顺序执行:停止并排空 → 撤销作用域 → 分离 agent → 分离会话。私有作用域清理完成后,该 id 即可复用。不具否决能力的普通 `agent/*` 通知通过 `agentEvents(ctx, agent)` 发出;逐步骤组装通过 `assembleContextFor(agent)` 完成。 -- `ctx.agentLoop.create(id: SessionId, options?: AgentOptions, meta?: { cwd?: string }): Agent`:在确切共享的 agent/会话 id 下同步创建,不运行 setup,并随调用方 fiber 一同 dispose。声明式配置把 `agents[].id` 视为稳定 label,通常会先生成 `${label}-session-`,再调用此边界。应用也可以提供稳定且确切的 `sessionId`:首次使用时创建;重新挂载且持久化内容已存在时,则恢复已经实体化的历史。`resumeSessionId` 要求并加载现有的持久化 id,且与 `sessionId` 互斥。这样,默认的全新重启不会冲突,也无需保留第二个实时路由身份。 +- `ctx.agentLoop.create(id: SessionId, options?: AgentOptions, meta?: { cwd?: string }): Agent`:在确切共享的 agent/会话 id 下同步创建,不运行 setup,并随调用方 fiber 一同 dispose。声明式配置把 `agents[].id` 视为稳定 label,通常会先生成 `${label}-session-`,再调用此边界。应用也可以提供稳定且确切的 `sessionId`:首次使用时创建;重新挂载且持久化内容已存在时,则恢复已经实体化的历史。`resumeSessionId` 要求并加载现有的持久化 id,且与 `sessionId` 互斥。这样,默认情况下每次重启都会创建新会话,从而避免冲突,也无需保留第二个实时路由身份。 `AgentLoop` 还实现 `AgentFactory` 约定,并通过 `ctx.agents.setFactory(this)` 注册自身,因此插件会通过 `ctx.agents` 创建/恢复 agent: -- `ctx.agents.create({ sessionId, meta?, seed?, agentOptions?, setup?, signal? }): Promise`:使用调用方提供的共享 id 以编程方式创建。它会等待尚未发布的 setup 事务,然后才返回;`meta` 携带 cwd/谱系/seed 边界元数据,`seed` 则在会话边界验证并快照持久值后,重建 fork 子级的前缀。`signal` 只在此 Promise 结算前生效。解析得到的 [`AgentHandle`](../agent/README.md) 拥有确切的 teardown。 +- `ctx.agents.create({ sessionId, meta?, seed?, agentOptions?, setup?, signal? }): Promise`:使用调用方提供的共享 id 以编程方式创建。它会等待尚未发布的 setup 事务,然后才返回;`meta` 携带 cwd/谱系/seed 边界元数据,`seed` 则在会话边界验证并快照持久值后,重建 fork 子级的前缀。`signal` 只在此 Promise 结算前生效。返回的 [`AgentHandle`](../agent/README.md) 持有该 agent 的确切 teardown 能力。 - `ctx.agents.resume({ resumeSessionId, agentOptions?, setup?, signal? }): Promise`:通过 `ctx.sessionPersistence` 加载持久化会话(参见[会话持久化](../../../.agents/notes/implemented/architecture/2026-06-14-session-persistence.md)),使用同一 id 注册 agent,重建历史,然后针对全新且尚未发布的 agent 作用域等待 setup,再执行受回滚保护的发布。轮次编号和派生历史从已加载日志继续。此操作要求存在会话持久化后端(不会硬注入,因此非持久化 demo 仍能工作;缺少持久化时,`resume` 会以明确错误拒绝)。`signal` 仅用于创建。返回 `AgentHandle`。 -配置驱动的 `ctx.agentLoop.create()` 路径让循环 fiber 拥有其 agent(该路径会丢弃 handle)。对于以编程方式创建的 agent,handle 持有者是唯一面向消费方的 teardown 能力;AgentLoop 提供方卸载是一条独立的结构化 teardown 边,而不是向应用代码公开的另一个 handle。 +配置驱动的 `ctx.agentLoop.create()` 路径让循环 fiber 拥有其 agent(该路径会丢弃 handle)。对于以编程方式创建的 agent,handle 持有者是唯一面向消费方的 teardown 能力;AgentLoop 提供方卸载是一条独立的结构性 teardown 边,而不是向应用代码公开的另一个 handle。 ### 注入的服务 @@ -55,9 +55,9 @@ interface Config { 具体 `ReactLoopAgent`、其 inbox 与运行控制均为包内部实现。包根只导出插件/服务/配置约定,包导出映射不提供 `./src/*` 逃逸路径;生命周期拥有方通过 `ctx.agents` 创建 agent,而不是点名、构造或启动驱动器内部组件。一个准备完成的会话只能由一个具体驱动器认领;所有可观测行为都通过会话事件和 `agent/*` 事件分类体系发生。 -统一的 `send()` 原语按(`target` × `wakeup`)路由内容与来源;`followup`/`steer`/`inject` 是它的固定预设别名。`followup()` 追加到 `next-turn` FIFO 并唤醒驱动器,`steer()` 追加到 `next-step` inbox 并唤醒驱动器,`inject()` 则追加到同一个 `next-step` inbox,但不唤醒驱动器。在轮次边界,驱动器会先打开持久轮次,再原子领取待处理的 next-step 输入和一条排队提示词;在步骤之间则只领取 next-step 输入。领取通过纯删除 splice 移除批次,并针对每条消息发出 `agent/inbox/claimed { message, turn }`。随后 `agent/pre-step` 返回拒绝结果,或返回将进入拟议步骤的完整消息。拒绝后,已领取批次保持已删除,并关闭不含步骤的轮次;领取后插入的输入仍等待后续处理,而空闲注入会一直等待,直到 follow-up 或 steering 唤醒驱动器。 +统一的 `send()` 原语按(`target` × `wakeup`)路由内容与来源;`followup`/`steer`/`inject` 是它的固定预设别名。`followup()` 追加到 `next-turn` FIFO 并唤醒驱动器,`steer()` 追加到 `next-step` inbox 并唤醒驱动器,`inject()` 则追加到同一个 `next-step` inbox,但不唤醒驱动器。在轮次边界,驱动器会先打开持久轮次,再原子领取待处理的 next-step 输入和一条排队提示词;在步骤之间则只领取 next-step 输入。领取操作通过仅执行删除的 splice 移除整批消息,并为每条消息各发出一次 `agent/inbox/claimed { message, turn }`。随后 `agent/pre-step` 返回拒绝结果,或返回将进入拟议步骤的完整消息。拒绝后,已领取批次保持已删除,并关闭不含步骤的轮次;领取后插入的输入仍等待后续处理,而空闲注入会一直等待,直到 follow-up 或 steering 唤醒驱动器。 -每次 inbox 变更都会先发布一条规范化的 `agent/inbox/spliced` 事件,再修改实时投影。因此,插入、编辑、移除、领取与取消都通过同一组标准 splice 坐标回放。普通删除携带 `outcome: 'canceled'` 并发出 `agent/inbox/discarded { message }`;领取使用不带 outcome 的纯删除,随后由循环发出 `agent/inbox/claimed`。每次插入都会发出 `agent/inbox/inserted { message }`。`MessageId` 在两个待处理列表之间保持唯一,持久事件的同步观察方可以从 splice 前投影重建被移除的值。 +每次 inbox 变更都会在修改实时投影之前,先发布一条规范化的 `agent/inbox/spliced` 事件。因此,插入、编辑、移除、领取与取消都通过同一组标准 splice 坐标回放。普通删除携带 `outcome: 'canceled'` 并发出 `agent/inbox/discarded { message }`;领取使用不带 outcome 的纯删除,随后由循环发出 `agent/inbox/claimed`。每次插入都会发出 `agent/inbox/inserted { message }`。`MessageId` 在两个待处理列表之间保持唯一,持久事件的同步观察方可以从 splice 前投影重建被移除的值。 ### 循环生命周期(`agent.ts`) @@ -67,19 +67,19 @@ interface Config { 在 `agent/request` 返回提供方/模型调用配置后,循环会调用 `ctx.llm.prepareCall()`,在活跃轮次信号的控制下校验由适配器持有的字段,并填入配置的推理(reasoning)强度和输出 token 默认值。准备完成的调用会在这次异步解析、`request/header` 日志记录和最终分派期间保留同一项确切的适配器注册,因此 HMR(热模块替换)不会把某个适配器的能力解析结果与另一适配器的请求混用。请求 header 会记录生效配置以及哪些字段来自适配器。下一次 waterfall(瀑布式事件)前,循环会从提议中移除这些带标记字段,使当前精确路由重新填入自身默认值;未带标记的显式设置会跨步骤和路由变化保留。没有已注册适配器的路由会保留原定配置,使 `llm/stream` 监听器可以接管并短路该请求;最终分派仍会以 `NO_ADAPTER` 拒绝未得到处理的路由。新循环实例在恢复时会遵循同一套适配器默认值标记规则。 -插件失败会结束当前轮次,而不是结束循环。最终适配器选择、分发与迭代失败会以终止错误或中止结束的形式由 `ctx.llm` 传来,并进入 `agent/request-error`;middleware、结果处理、工具及其他扩展失败仍会抛出并直接关闭轮次。恢复逻辑会接收请求坐标、不可变的提供方事实、准备完成的适配器注册所捕获的不可变重试策略以及轮次信号;middleware 接管未准备路由时,该策略缺失。处理失败的监听器返回 `{ kind: 'retry' }`;未被处理的失败是终态。AgentLoop 为当前接纳或轮次拥有一个取消信号。有效的 `cancel(cause)` 在未设置 `keepInbox` 时清除待处理工作,并以协作方式中止该信号;空闲取消是空操作。abort 触发后、活动收敛到空闲前到达的唤醒输入会被锁存(`wakeRequested`),并在 driver 自身的收敛边界重放,无需再发一条唤醒 send 即可执行;`disposed` 取消从不锁存,而 agent 已处于空闲时发送的唤醒总是打开自己的 turn 边界(即使消息已被清除,状态也会显示瞬态 `idle → running → idle` 对)。持久 `turn/end` 为 `user` 和 `parent` 记录 `aborted`,dispose 则记录 `disposed`;未分发的模型工具调用会收到合成的 `tool/call` 与 `ABORTED_BEFORE_DISPATCH` 结果对。取消原因只改变报告方式,不改变对取消后已定案结果上下文的处理。dispose 会等待忽略信号的工作完成,然后才从注册表移除。[显式取消决策](../../../.agents/notes/implemented/architecture/2026-07-16-explicit-turn-cancellation.md)与[取消收敛窗口唤醒锁存](../../../.agents/notes/implemented/bug-fix/2026-08-07-cancel-convergence-wake-latch.md)规定生命周期与竞态约定。 +插件失败会结束当前轮次,而不是结束循环。最终适配器选择、分发与迭代失败会以终止错误或中止结束的形式由 `ctx.llm` 传来,并进入 `agent/request-error`;middleware、结果处理、工具及其他扩展失败仍会抛出并直接关闭轮次。恢复逻辑会接收请求坐标、不可变的提供方事实、准备完成的适配器注册所捕获的不可变重试策略以及轮次信号;middleware 接管未准备路由时,该策略缺失。处理失败的监听器返回 `{ kind: 'retry' }`;未被处理的失败是终态。AgentLoop 为当前准入操作或轮次持有一个取消信号。有效的 `cancel(cause)` 在未设置 `keepInbox` 时清除待处理工作,并以协作方式中止该信号;空闲取消是空操作。abort 触发后、活动收敛到空闲前到达的唤醒输入会被锁存(`wakeRequested`),并在 driver 自身的收敛边界重放,无需再发一条唤醒 send 即可执行;`disposed` 取消从不锁存,而 agent 已处于空闲时发送的唤醒总是打开自己的 turn 边界(即使消息已被清除,状态也会显示瞬态 `idle → running → idle` 对)。持久 `turn/end` 为 `user` 和 `parent` 记录 `aborted`,dispose 则记录 `disposed`;未分发的模型工具调用会收到合成的 `tool/call` 与 `ABORTED_BEFORE_DISPATCH` 结果对。取消原因只影响报告方式,不影响如何处理在取消后完成终结的结果上下文。dispose 会等待忽略信号的工作完成,然后才从注册表移除。[显式取消决策](../../../.agents/notes/implemented/architecture/2026-07-16-explicit-turn-cancellation.md)与[取消收敛窗口唤醒锁存](../../../.agents/notes/implemented/bug-fix/2026-08-07-cancel-convergence-wake-latch.md)规定生命周期与竞态约定。 -在步骤内,独占调用形成屏障;并行安全调用使用有界滚动池,并在启动前重新分类。只有分发和调用主体的执行会发生重叠。策略、持久结果和结果上下文仍保持模型顺序。中止会停止新调用,drain 已启动的结果,并保留其已定案的结果上下文,不区分取消原因。内部调度器故障会停止新的分发,等待已启动的分发,然后在不虚构工具结果的情况下到达轮次错误边界。 +在步骤内,独占调用形成屏障;并行安全调用使用有界滚动池,并在启动前重新分类。只有分发和调用主体的执行会发生重叠。策略、持久结果和结果上下文仍保持模型顺序。中止会阻止启动新的调用,等待已启动调用的结果处理完毕,并保留其完成终结后的结果上下文,不区分取消原因。内部调度器故障会停止新的分发,等待已启动的分发,然后在不虚构工具结果的情况下到达轮次错误边界。 ### 插件负责的内容 超出「调用模型、运行工具、重复」的所有内容,都属于监听事件分类体系的插件: - 钩子与策略:相关的 `agent/*` 检查点,加上受守卫保护的 `tools/pre-execute` → `tools/execute` → `tools/post-execute` → 定义拥有的 `finalizeContent` → `tools/result` 流水线;确切事件签名与 mode 位于 [core.md](../../../docs/subsystems/core.md#cordis-surface) 与 [tools.md](../../../docs/subsystems/tools.md#cordis-surface) 的生成区块 - 压缩(compaction):在 `agent/pre-step` 上观测压力;在 `agent/request-error` 上进行规范的溢出修复 -- 模型请求恢复:`dsh-llm-retry` 在 `agent/request-error` 上记录并等待按确切提供方配置的 normal 或无界退避,发出不进入表层的 `llm/retry` 状态,然后返回重试动作 +- 模型请求恢复:`dsh-llm-retry` 在 `agent/request-error` 上记录并等待针对确切提供方配置的常规退避或无上限退避,发出不进入表层的 `llm/retry` 状态,然后返回重试动作 - 沙箱、权限、计划模式:使用 `tools/pre-execute` 提供可扩展的拒绝/询问,使用 `tools.guard()` 提供单调拥有方策略,使用 `tools/post-execute` 处理结果决定,并使用 `tools/result` 进行最终观测 -- subagent:在循环外部实现为 `ctx.subagents` 提供方;进程内提供方使用 `ctx.agents.create()` 和拥有的 `AgentHandle` 进行 teardown,而通用的 [`ctx.jobs`](../../jobs/jobs/) 与 [`dsh-tool-subagent`](../../subagent/tool-subagent/) 负责后台收集。 -- 持久化:从 `session/event` 立即后写;`session/flush` 是显式观测屏障 +- subagent:在循环外部实现为 `ctx.subagents` 提供方;进程内提供方使用 `ctx.agents.create()` 创建 agent,并通过其持有的 `AgentHandle` 执行 teardown,而通用的 [`ctx.jobs`](../../jobs/jobs/) 与 [`dsh-tool-subagent`](../../subagent/tool-subagent/) 负责后台收集。 +- 持久化:`session/event` 发生后立即安排 write-behind;`session/flush` 是显式观测屏障 - UI:`session/event`(assistant token 流、边界、工具活动)+ `agent/*` 控制事件(`agent/status`、`agent/created`/`agent/disposed`) ## 模型体验 @@ -96,7 +96,7 @@ interface Config { #### KV Cache 影响 -只有在同一提供方和模型路由下,系统文本、schema 与先前历史保持逐字节相同时,才保持仅追加。携带 token 的组装改写或组合变更可能从第一个改变的请求 token 起使复用失效。 +只有在同一提供方和模型路由下,且系统文本、schema 与此前历史都保持逐字节一致时,请求 token 序列才保持仅追加。携带 token 的组装改写或组合变更可能从第一个改变的请求 token 起使复用失效。 ### 保留的消息历史 @@ -129,6 +129,6 @@ interface Config { ## 已知限制与暂缓事项 - **分类是一元的**:安全性取决于比较同级调用或资源的调用必须保持独占(参见[设计原理](../../../.agents/notes/implemented/feature/2026-07-10-parallel-tool-call-execution.md))。 -- **配置 label 默认每次新建**:省略 `sessionId` 会在每次启动时创建全新的 `${id}-session-`;确切的恢复或创建行为要求显式提供稳定的 `sessionId`,而 `resumeSessionId` 要求已有持久化历史。 +- **配置 label 默认对应新会话**:省略 `sessionId` 时,每次启动都会创建新的 `${id}-session-`;如需确切的恢复或创建行为,必须显式提供稳定的 `sessionId`,而 `resumeSessionId` 要求已有持久化历史。 - **配置 agent 没有逐 agent persona 字段或 setup 钩子**:它们使用部署 persona;只有编程式 `ctx.agents.create()` / `resume()` 工厂选项支持带作用域的 persona/工具组合。 - **没有内置轮次预算**:工具调用或 steering 会让当前轮次继续;限制失控轮次的策略必须从既有生命周期扩展点(如 `agent/turn-stopping`)执行取消。 diff --git a/packages/core/system-prompt/README.i18n.yaml b/packages/core/system-prompt/README.i18n.yaml index 7420408ed2..18a974be44 100644 --- a/packages/core/system-prompt/README.i18n.yaml +++ b/packages/core/system-prompt/README.i18n.yaml @@ -3,4 +3,4 @@ # after editing either side, bring the other along and re-record with: # pnpm run verify-translation-pairing --write packages/core/system-prompt/README.md README.md: d750a507e628e7609af542227e4528d4d4934ce8 -README.zh.md: 36ee94349b63660ed52eedf7ba098334a6db07fb +README.zh.md: c81b850f2e93a90e5b69e1ae5258aa7cb911ab44 diff --git a/packages/core/system-prompt/README.zh.md b/packages/core/system-prompt/README.zh.md index 36ee94349b..c81b850f2e 100644 --- a/packages/core/system-prompt/README.zh.md +++ b/packages/core/system-prompt/README.zh.md @@ -2,16 +2,16 @@ [English](README.md) | 中文 -系统提示词组装注册表。插件贡献有序段、工具 schema 和具名变量。循环在每个步骤组装一次,并将结果渲染为完整的模型提示词。此插件拥有静态 harness 身份和全局部署 persona;agent(智能体)作用域的 persona 会遮蔽全局默认值。 +系统提示词组装注册表。插件可以贡献有序段落、工具 schema 和具名变量。循环在每个步骤组装一次,并将结果渲染为完整的模型提示词。此插件拥有静态 harness 身份和全局部署 persona;agent(智能体)作用域的 persona 会遮蔽全局默认值。 ## 配置 | 键 | 默认值 | 含义 | |---|---|---| -| `includeHarnessIdentity` | `true` | 是否包含顺序为 −100 的固定开场白 `You are an AI agent powered by DeepSeek Harness.`。仅当兼容部署拥有完整系统提示词时设为 false。 | +| `includeHarnessIdentity` | `true` | 是否包含顺序为 −100 的固定开场白 `You are an AI agent powered by DeepSeek Harness.`。仅当兼容性部署拥有完整系统提示词时设为 `false`。 | | `includeRuntimeContext` | `true` | 是否在组装中包含有序动态上下文。设为 false 时不会求值上下文提供方,并会在 waterfall 后丢弃 `system-prompt/assemble` 监听器添加的上下文;其他服务及其强制机制仍然生效。 | -| `persona` | `''` | 全局部署 persona 默认值:唯一由配置提供的提示词片段,渲染为顺序为 0 的 `deployment:persona` 段,除非 agent 作用域的贡献将其遮蔽。它是模板,完整的 `{{…}}` 组会严格按已注册变量解释(随附循环注册 `{{model}}`/`{{cwd}}`),目前没有表达字面量花括号的转义语法。为空 ⇒ 渲染时删除该段。 | -| `toolOrder` | 无 | 显式的面向模型工具顺序:一个 `ToolSchema.name` 列表,包含一个 `''` 其余项(`TOOL_ORDER_REST`)。已列工具占据列出的位置;未列工具按名称字典序落在其余项位置。缺席 ⇒ 直接按名称字典序排列。在 `system-prompt/assemble` waterfall(瀑布式事件)之前应用于已收集工具;与段的 `order` 排序一样,它会规范化注册表贡献的内容(注册顺序是插件加载产物),而修改列表的 waterfall 监听器拥有其输出的确定性。配置错误会明确失败:列表没有恰好一个其余项或存在重复项,会在加载时抛出;已列名称没有对应已注册工具,会使每次 `assemble()` 被拒绝;工具提供方返回保留的其余项名称也会被拒绝。在随附循环下,轮次会在任何模型请求前失败。为何采用中心列表而非每插件权重,见[显式面向模型工具顺序](../../../.agents/notes/implemented/feature/2026-07-06-explicit-tool-order.md)。 | +| `persona` | `''` | 全局部署 persona 的默认值:这是唯一可由配置直接编写的提示词片段。除非被 agent 作用域的同名贡献遮蔽,否则它会渲染为顺序为 0 的 `deployment:persona` 段落。它是模板,完整的 `{{…}}` 组会严格按已注册变量解释(随附循环注册 `{{model}}`/`{{cwd}}`),目前没有表达字面量花括号的转义语法。为空 ⇒ 渲染时删除该段落。 | +| `toolOrder` | 无 | 显式指定面向模型的工具顺序。该列表由 `ToolSchema.name` 组成,并且必须恰好包含一个 `''` 剩余项标记(`TOOL_ORDER_REST`):已列工具按列表位置排列,未列工具则按名称字典序插入该标记所在的位置。缺席 ⇒ 直接按名称字典序排列。该顺序会在 `system-prompt/assemble` waterfall(瀑布式事件)之前应用于已收集的工具。与段落的 `order` 排序一样,它会规范化注册表贡献的内容;注册顺序只是插件加载时序的产物。waterfall 监听器如果修改列表,就必须对自身输出的确定性负责。配置错误会明确失败:列表没有恰好一个其余项或存在重复项,会在加载时抛出;已列名称没有对应已注册工具,会使每次 `assemble()` 被拒绝;工具提供方返回保留的其余项名称也会被拒绝。在随附循环下,轮次会在任何模型请求前失败。为何采用中心列表而非每插件权重,见[显式面向模型工具顺序](../../../.agents/notes/implemented/feature/2026-07-06-explicit-tool-order.md)。 | ## 服务:`SystemPrompt`(ctx 键:`systemPrompt`) @@ -28,20 +28,20 @@ ### 实时事件 -`system-prompt/assemble` 对普通段落具有权威性;complete 段是在 waterfall 之后应用的最终提示词约束。替换条目的监听器必须保留任何已启用的 Code Mode 或结构化输出协议。筛选需要在呈现、查找与执行之间保持一致时,应使用 [`ToolRuntime.restrict()`](../tools/README.md)。注册表变更通知不经过筛选。[system-prompt.md](../../../docs/subsystems/system-prompt.md#cordis-surface) 的生成区块拥有签名与分发约定。 +普通段落以 `system-prompt/assemble` 的返回结果为准;complete 段落则会在 waterfall 之后作为最终提示词约束生效。替换条目的监听器必须保留任何已启用的 Code Mode 或结构化输出协议。筛选需要在呈现、查找与执行之间保持一致时,应使用 [`ToolRuntime.restrict()`](../tools/README.md)。注册表变更通知不经过筛选。事件签名和分发约定以 [system-prompt.md](../../../docs/subsystems/system-prompt.md#cordis-surface) 的生成区块为准。 ### 关键类型 - `AssembleContext`:说明一次 `assemble()` 调用的用途。它可通过合并扩展;此处声明 `scope?: ScopeKey`(层选择器)与 `signal?: AbortSignal`(显式请求控制能力),而 `dsh-agent` 声明 `agent?: Agent`(类型化 DX 字段;绝不能在没有 `scope` 时设置,应使用 `assembleContextFor(agent, signal)`)。提供方必须容忍字段缺席,因为裸 `assemble()` 携带的是无作用域、无信号的空上下文。`signal` 是请求值,不是环境 Agent 执行 frame 的一部分。 - `PromptSection`:`{ name, order, text, complete? }`。各段按 `order` 升序拼接。顺序区间:`-100` 是 harness 身份,`0` 是部署 persona,工具引导使用 `100–199`。协作式组装完成后,一个有效的 `complete` 段会抑制其他所有段落。 -- `PromptAssembly`:`{ sections: AssembledSection[], tools: ToolSchema[], variables: Record }`。段文本到达时已解析,但尚未插值;`variables` 包含对上下文解析后的每个已注册变量。工具 schema 按设计属于组装结果:「模型获知自己能做什么」是一个连贯整体,尽管适配器把 schema 作为独立 wire 字段传输。 -- `renderPrompt(assembly)`:插值每个段中的 `{{variable}}` 引用,删除空段,并用空行连接。严格规则:未知引用(使用 `Object.hasOwn` 查找,因此 `{{constructor}}` 等原型名称未知)、已注册但无值的引用、格式错误的完整 `{{…}}` 组,或一个起始 `{{` 没有打开完整组、但后面仍有 `}}`(`{{{model}}}`),都会抛出;明确失败胜过交付格式错误的提示词。孤立的 `{{` 如果后面任何位置都没有 `}}`,会按字面量通过;替换值绝不再次扫描。 +- `PromptAssembly`:`{ sections: AssembledSection[], tools: ToolSchema[], variables: Record }`。各段文本到达时已求值,但尚未插值;`variables` 保存所有已注册变量在当前上下文中求得的值。工具 schema 按设计属于组装结果:「模型获知自己能做什么」是一个连贯整体,尽管适配器把 schema 作为独立 wire 字段传输。 +- `renderPrompt(assembly)`:插值每个段中的 `{{variable}}` 引用,删除空段,并用空行连接。严格规则:未知引用(使用 `Object.hasOwn` 查找,因此 `{{constructor}}` 等原型名称未知)、已注册但无值的引用、格式错误的完整 `{{…}}` 组,或出现 `{{` 却没有形成完整的 `{{…}}` 组、而后文仍有 `}}`(`{{{model}}}`),都会抛出异常;明确失败胜过交付格式错误的提示词。孤立的 `{{` 如果后面任何位置都没有 `}}`,会按字面量通过;替换值绝不再次扫描。 可通过合并扩展:插件可以借助声明合并,为 `PromptAssembly` 和 `AssembleContext` 声明额外字段。 ### 扩展点 -- 段提供方:工具包拥有跨调用引导(`tool:bash`、`tool:read` 等);此插件拥有 `harness:identity` 与 `deployment:persona`。 +- 段落提供方:工具包负责提供自身的跨调用指导(`tool:bash`、`tool:read` 等);此插件负责提供 `harness:identity` 与 `deployment:persona`。 - 变量提供方:agent loop(智能体循环)注册 `model` 与 `cwd`;任何插件都可以注册自己拥有的事实(未来的 `date`、git 状态等)。 - 工具 schema 提供方:`ToolRuntime` 自动将自身注册为工具提供方。 - [`system-prompt/assemble` waterfall](#live-events):按调用方协作式修改或替换组装结果,之后再实施 complete 段约束。 diff --git a/packages/llm/llm/README.i18n.yaml b/packages/llm/llm/README.i18n.yaml index 4ac51d768e..1023196cc4 100644 --- a/packages/llm/llm/README.i18n.yaml +++ b/packages/llm/llm/README.i18n.yaml @@ -3,4 +3,4 @@ # after editing either side, bring the other along and re-record with: # pnpm run verify-translation-pairing --write packages/llm/llm/README.md README.md: 2cae9a05a58295b06d25382729a3304dbdc9a6fa -README.zh.md: bf86e703fc15231c6845364dc383b7fc6ad77297 +README.zh.md: ccf4d94e22d49efb26c8f8d92c518b89104e5adf diff --git a/packages/llm/llm/README.zh.md b/packages/llm/llm/README.zh.md index bf86e703fc..ccf4d94e22 100644 --- a/packages/llm/llm/README.zh.md +++ b/packages/llm/llm/README.zh.md @@ -2,7 +2,7 @@ [English](README.md) | 中文 -提供方无关的 LLM(大语言模型)词汇与抽象服务。本包定义 agent loop(智能体循环)、会话日志和每个插件使用的规范语言。 +提供方无关的 LLM(大语言模型)词汇与抽象服务。本包定义 agent loop(智能体循环)、会话日志和所有插件共同使用的规范词汇。 ## 服务:`LlmRuntime`(ctx key:`llm`) @@ -10,31 +10,31 @@ ### 公开 API -- `ctx.llm.registerAdapter(providers: string[], adapter: LlmAdapter): AdapterRegistrationHandle` 为给定提供方路由注册一个适配器实例。注册要么全部成功,要么全部不生效,并且会随调用 fiber 一起 dispose(资源释放)。返回的释放器还携带 `replace(providers)`:候选路由集合会在任何东西变动之前完整校验,因此与另一适配器冲突时,当前路由保持注册且继续服务,而替换本身是一个同步区段,不存在可观察的空档。`replace([])` 合法——一个持有零条路由的注册——这与空的初始注册不同。 +- `ctx.llm.registerAdapter(providers: string[], adapter: LlmAdapter): AdapterRegistrationHandle` 为给定提供方路由注册一个适配器实例。注册要么全部成功,要么全部不生效,并且会随调用 fiber 一起 dispose(资源释放)。返回的句柄还提供 `replace(providers)`:候选路由集合会在注册状态发生任何变化前完成整体验证,因此与另一适配器发生冲突时,当前路由仍保持注册并继续提供服务。替换会在一次同步操作中完成,不会出现可观察的空档。`replace([])` 合法,表示保留注册但不持有任何路由;初始注册则不得为空。 - `ctx.llm.listProviders(): LlmProviderInfo[]` 按注册顺序描述已注册提供方路由。 - `ctx.llm.registerConfigurableProviders(entries: readonly LlmConfigurableProvider[]): DirectoryRegistrationHandle` 声明适配器插件可通过配置激活的提供方路由——无论已注册还是休眠——每个条目指明其所属 settings namespace,以及 profile 在该分节内的路径。要么全部成功,要么全部不生效(`INVALID_DIRECTORY`/`DUPLICATE_DIRECTORY`),并随调用 fiber dispose。该句柄还带 `replace(entries)`:候选集合会先被整体校验,因此其中若有条目已被另一个注册声明,当前集合原封不动;此处允许传空数组。声明集合随配置变化的插件必须使用 `replace`,而不是先 dispose 再重新注册——后者会在新集合被拒时让目录整个落空。 -- `ctx.llm.listConfigurableProviders(): LlmConfigurableProvider[]` 按声明顺序列出已声明的目录;配置界面将其与 `listProviders()` 合并,为每个条目标注存活或休眠。条目可携带 `declared`——拥有该路由的适配器是否只因配置点名才知道它。只有适配器能回答,因此缺席意味着「这个适配器不作此区分」,绝不等于「内置」。 -- `ctx.llm.registerModelDiscovery(settingsNs: string, discover): () => void` 为本插件拥有的 settings namespace 提供「询问提供方端点」的能力。每个 namespace 只能有一个(`INVALID_DISCOVERY`/`DUPLICATE_DISCOVERY`),并随调用 fiber dispose。 +- `ctx.llm.listConfigurableProviders(): LlmConfigurableProvider[]` 按声明顺序列出可配置提供方目录;配置界面将其与 `listProviders()` 合并,为每个条目标注存活或休眠。条目可携带 `declared`,表示负责该路由的适配器是否只因配置点名才知道它。`declared` 缺失时,只表示该适配器不区分这两种来源,不能据此判断路由是否随产品交付。 +- `ctx.llm.registerModelDiscovery(settingsNs: string, discover): () => void` 为本插件负责的 settings namespace 提供查询提供方端点的能力。每个 namespace 只能有一个(`INVALID_DISCOVERY`/`DUPLICATE_DISCOVERY`),并随调用 fiber dispose。 - `ctx.llm.listModelDiscoveryNamespaces(): string[]` 列出可以询问端点的 namespace,让界面只在可用之处提供该动作。 - `ctx.llm.discoverModels(settingsNs: string, request: LlmModelDiscoveryRequest): Promise` 询问某个端点它公布了哪些模型。 -- `ctx.llm.providerRetryPolicy(provider: string): ResolvedRetryPolicy` 返回注册时捕获的提供方重试策略,并解析 normal 默认值。 +- `ctx.llm.providerRetryPolicy(provider: string): ResolvedRetryPolicy` 返回注册时捕获的提供方重试策略,并解析 `normal` 默认值。 - `ctx.llm.listModels(provider: string): Promise` 发现某个已注册提供方当前公布的模型。 -- `ctx.llm.resolveModelInfo(provider: string, model: string, signal?: AbortSignal): Promise` 从拥有精确路由的适配器解析经校验的确切模型身份,以及可用上下文、输出默认值和推理(reasoning)元数据;异步适配器可选地支持取消。 +- `ctx.llm.resolveModelInfo(provider: string, model: string, signal?: AbortSignal): Promise` 从负责该精确路由的适配器中,解析并校验确切模型身份,以及可用上下文、输出默认值和推理(reasoning)元数据;异步适配器可选地支持取消。 - `ctx.llm.resolveCallConfig(config: LlmCallConfig, signal?: AbortSignal): Promise` 校验显式推理强度,并填入适配器配置的调用默认值,但不自动调整。 - `ctx.llm.prepareCall(config: LlmCallConfig, signal?: AbortSignal): Promise` 在一次精确模型查询中解析配置、脱耦的上下文元数据以及标明哪些字段由适配器默认值填入的标记,再将当前适配器注册和不可变重试策略捕获为一次可取消、一次性调用。 - `ctx.llm.stream(options: GenerateOptions): AsyncIterable` 将一次模型调用流式输出为原始分片(token 级增量)。消费方使用 `BlockAssembler` 将分片组装为块/消息。 -`LlmRuntime` 将最终适配器选择、同步 dispatch、iterator 构造与迭代中的失败规范化为流协议唯一的终止形式:`finish { kind: 'error' | 'aborted', failure }`。部分增量输出后发生失败时,内容块可能仍未闭合;消费方会丢弃这些不完整输出。`llm/stream` middleware、嵌套调用、适配器清理和下游消费方的错误仍会抛出,因为它们属于插件或消费方失败,而非模型请求结果。已准备调用会暴露随其确切适配器注册一同捕获的不可变重试策略;完全由 middleware 处理的路由没有服务策略。 +`LlmRuntime` 将最终适配器选择、同步分发、迭代器构造和迭代期间的失败,统一转换为流协议唯一的终止形式:`finish { kind: 'error' | 'aborted', failure }`。部分增量输出后发生失败时,内容块可能仍未闭合;消费方会丢弃这些不完整输出。`llm/stream` middleware、嵌套调用、适配器清理和下游消费方的错误仍会抛出,因为它们属于插件或消费方失败,而非模型请求结果。已准备调用会暴露随其确切适配器注册一同捕获的不可变重试策略;完全由 middleware 处理的路由没有服务策略。 -询问端点属于配置期针对**草稿**的操作,以 settings namespace 而非提供方路由为键——界面正在新增的提供方还不存在,也就没有路由可点名。但请求仍可**点名**它正在编辑的路由,而已经描述该路由的适配器会用自己的知识作答,无需联网;`baseURL` 可选,两者至少要有一个。除此之外,请求携带端点、协议,以及一条 harness 只用于这一次询问、绝不存储的凭据——这里既不读也不写 settings 与 credentials,回复是界面可供用户采纳的候选元数据,而不是已注册的 catalog。`LlmDiscoveredModel` 除 `id` 外每个字段都是可选的,因为大多数提供方列表只公布 id;采纳其中一条的界面仍要补上其适配器所需的容量。重复与不可用的 id 会被丢弃,无人服务的 namespace 以 `NO_DISCOVERY` 失败,既不点名路由也不给端点的请求以 `INVALID_DISCOVERY` 失败。 +询问端点属于配置期针对**草稿**的操作,以 settings namespace 而非提供方路由为键——界面正在新增的提供方还不存在,也就没有路由可点名。但请求仍可**点名**它正在编辑的路由,而已经描述该路由的适配器会用自己的知识作答,无需联网;路由名称和 `baseURL` 至少需要提供一项。除此之外,请求携带端点、协议,以及一条 harness 只用于这一次询问、绝不存储的凭据。这里既不读取也不写入 settings 或 credentials;返回内容是界面可以提供给用户采纳的候选元数据,而不是已注册的 catalog。`LlmDiscoveredModel` 除 `id` 外每个字段都是可选的,因为大多数提供方列表只公布 id;采纳其中一条的界面仍要补上其适配器所需的容量。重复与不可用的 id 会被丢弃,无人服务的 namespace 以 `NO_DISCOVERY` 失败,既不点名路由也不给端点的请求以 `INVALID_DISCOVERY` 失败。 -提供方与模型元数据是发现接口,不是路由白名单。`registerAdapter()` 仍拥有提供方排他性,并为每条路由捕获适配器的重试策略;适配器则可以接受 `listModels()` 中不存在的模型 id,消费方禁止因模型未列出而拒绝请求。返回的 selector 元数据与输入脱离,无效或重复的适配器条目会以 `INVALID_ADAPTER` 或 `INVALID_CATALOG` 失败。 +提供方和模型元数据用于发现,不构成路由白名单。`registerAdapter()` 仍负责保证提供方路由的排他注册,并为每条路由捕获适配器的重试策略;适配器可以接受未出现在 `listModels()` 中的模型 ID,消费方不得仅因模型未列出而拒绝请求。返回的 selector 元数据已分离;无效或重复的适配器条目会以 `INVALID_ADAPTER` 或 `INVALID_CATALOG` 失败。 -每个拓扑提交点——适配器路由注册或 dispose、目录条目出现或撤回——都会在变更之后发出无载荷的 `llm/adapters-updated` 事件,消费方因此重读 `listProviders()`/`listModels()`/`listConfigurableProviders()` 而非轮询。观察者故障会被隔离(记录日志、不否决);只有带 `INVARIANT` 码的故障会在扇出后重新抛出。 +每个拓扑提交点——适配器路由注册或 dispose、目录条目出现或撤回——都会在变更之后发出无载荷的 `llm/adapters-updated` 事件,消费方因此会重新读取 `listProviders()`/`listModels()`/`listConfigurableProviders()`,而不是轮询。观察者故障会被记录并隔离,不能否决变更;只有带 `INVARIANT` 码的故障会在通知完所有观察者后重新抛出。 -确切模型元数据是独立的正确性查询,不是 catalog 装饰或全局 LLM 设置。`resolveModelInfo()` 会向拥有精确提供方/模型路由的适配器查询一次;适配器可以描述未列出的动态模型,缺少 `context`、`defaultMaxTokens` 或 `reasoning` 字段会分别保留未知容量、提供方持有的输出默认值或不可用的推理能力。无效的身份、上下文、输出默认值或推理元数据会以 `INVALID_MODEL_INFO`、`INVALID_MODEL_CONTEXT`、`INVALID_MODEL_MAX_TOKENS` 或 `INVALID_MODEL_REASONING` 失败。 +确切模型元数据是独立的正确性查询,不是 catalog 装饰或全局 LLM 设置。`resolveModelInfo()` 会向拥有精确提供方/模型路由的适配器查询一次;适配器可以描述未列出的动态模型。缺少 `context` 表示模型容量未知;缺少 `defaultMaxTokens` 表示继续沿用提供方自身的输出默认行为;缺少 `reasoning` 则表示推理能力不可用。无效的身份、上下文、输出默认值或推理元数据会以 `INVALID_MODEL_INFO`、`INVALID_MODEL_CONTEXT`、`INVALID_MODEL_MAX_TOKENS` 或 `INVALID_MODEL_REASONING` 失败。 -`defaultMaxTokens` 是适配器配置的单次请求输出上限,不是模型硬上限。仅当请求省略 `maxTokens` 时,`resolveCallConfig()` 才会填入该值;显式上限优先。推理标识符是由适配器持有的不透明字符串,而非核心枚举:同一次解析只接受与已公布标识符完全一致的值,在存在 `defaultEffort` 时填入它,否则保留提供方默认值。异步模型解析器会接收调用方的 signal,并且必须在取消后迅速结束。`prepareCall()` 还会公开同一次查询得到的脱耦上下文元数据,通过 `adapterDefaults` 报告它填入了哪些 `maxTokens` 和 `reasoningEffort` 字段,并让精确适配器注册跨越请求头记录和最终分派,因此 HMR(热模块替换)不会将一个适配器的能力结果与另一个适配器的请求混用;复用其一次性句柄或更改调用配置字段会以 `INVALID_PREPARED_CALL` 失败。不支持的显式或配置推理强度会在提供方 I/O 前以 `UNSUPPORTED_REASONING_EFFORT` 失败。 +`defaultMaxTokens` 是适配器配置的单次请求输出上限,不是模型硬上限。仅当请求省略 `maxTokens` 时,`resolveCallConfig()` 才会填入该值;显式上限优先。推理标识符是由适配器持有的不透明字符串,而非核心枚举:同一次解析只接受与已公布标识符完全一致的值,在存在 `defaultEffort` 时填入它,否则保留提供方默认值。异步模型解析器会接收调用方的 `signal`,并且必须在取消后尽快结算。`prepareCall()` 还会返回同一次查询得到的、与适配器内部状态分离的上下文元数据,通过 `adapterDefaults` 标明填入了哪些 `maxTokens` 和 `reasoningEffort` 字段,并在请求头记录和最终分发期间始终保留同一项精确的适配器注册。因此,HMR(热模块替换)不会把一个适配器的能力结果与另一个适配器的请求混用;复用其一次性句柄或更改调用配置字段会以 `INVALID_PREPARED_CALL` 失败。不支持的显式或配置推理强度会在提供方 I/O 前以 `UNSUPPORTED_REASONING_EFFORT` 失败。 ### 事件 @@ -45,7 +45,7 @@ ### 扩展点 - 继承 `LlmAdapter` 并调用 `ctx.llm.registerAdapter(providers, adapter)`,添加一条或多条提供方路由。`GenerateOptions.provider` 选择适配器;`GenerateOptions.model` 属于适配器,可以动态解析。覆盖 `providerRetryPolicy()` 以提供由提供方持有的恢复配置,覆盖 `providerInfo()` 和异步 `listModels()` 以公开 selector 元数据;精确身份、容量、输出默认值或可选推理强度可用时,实现 `resolveModel()`;异步解析器必须响应其可选的取消 signal。默认实现使用有界的 normal 重试策略,将路由和模型 id 用作名称,不公布模型,也不返回容量、输出默认值或推理元数据。 -- 包装 `llm/stream` 时,通过 `ctx.on()` waterfall listener 实现缓存、日志或路由。发出分片后重试的包装层没有持久尝试边界;因此已发布 agent 重试策略改用 `agent/request-error`。 +- 包装 `llm/stream` 时,通过 `ctx.on()` waterfall listener 实现缓存、日志或路由。包装层如果在已经发出分片后重试,就没有可持久记录的尝试边界;因此,随产品交付的 agent 重试策略改用 `agent/request-error`。 ### 消息(`message.ts`)与内容块(`types.ts`) @@ -57,7 +57,7 @@ ### 调用配置(`call-config.ts`) -`LlmCallConfig` 是一个会话中各次请求的提供方、模型、可选的适配器持有推理强度和采样标量(`provider`、`model`、`reasoningEffort`、`temperature`、`maxTokens`、`stop`,每个都与同名 `GenerateOptions` 字段 1:1 映射)。它是作为请求标头一部分记录在会话日志中的每会话状态(见 dsh-session `request/header` 事件),绝不是可静默调整的每次调用旋钮:`agent/request` waterfall 会提议替换,`prepareCall()` 在轮次 signal 控制下校验它并填入适配器默认值,loop 随后记录生效值以及标明哪些字段由适配器默认值填入的标记,再使用已准备调用中与注册绑定的流。下一次提议会省略带标记的默认值,使变更后的路由解析自身的值;未带标记的显式字段会保留。`callConfigEquals(a, b)` 是逐字段真实变更检测器;`deepFreeze(value)` 是 loop 在 dispatch 前对每个已构建请求应用的所有权 helper(`llm/stream` listener 与适配器只读,绝不改写)。`markAgentLoopRequest()` 将该精确对象标记为由进程本地 agent loop 创建,`isAgentLoopRequest()` 让观测方可以将其与同样可能冻结并关联会话、但独立记录的辅助调用区分。`GenerateOptions.purpose` 对已记录辅助压缩与会话标题调用分类,让适配器可以应用目的特定传输策略,而不改变普通会话请求。 +`LlmCallConfig` 记录一个会话的模型请求所使用的提供方、模型、由适配器定义的可选推理强度,以及采样参数(`provider`、`model`、`reasoningEffort`、`temperature`、`maxTokens`、`stop`,分别与同名 `GenerateOptions` 字段一一对应)。它是作为请求标头一部分记录在会话日志中的每会话状态(见 dsh-session `request/header` 事件),绝不是可静默调整的每次调用旋钮:`agent/request` waterfall 会提议替换,`prepareCall()` 在轮次 signal 控制下校验它并填入适配器默认值,loop 随后记录生效值以及标明哪些字段由适配器默认值填入的标记,再使用已准备调用中与注册绑定的流。下一次提议会省略带标记的默认值,使变更后的路由解析自身的值;未带标记的显式字段会保留。`callConfigEquals(a, b)` 是逐字段真实变更检测器;`deepFreeze(value)` 是 loop 使用的请求所有权辅助函数:每个构造完成的请求都会在分发前深度冻结;`llm/stream` 监听器和适配器只能读取,绝不能改写。`markAgentLoopRequest()` 将该精确对象标记为由进程本地 agent loop 创建,`isAgentLoopRequest()` 让观测方可以将其与同样可能冻结并关联会话、但独立记录的辅助调用区分。`GenerateOptions.purpose` 会对已记录的辅助压缩和会话标题调用进行分类,使适配器可以按调用目的应用不同的传输策略,而不改变普通会话请求。 ### 应用归因(`attribution.ts`) @@ -65,7 +65,7 @@ ### API 密钥校验(`api-key.ts`) -每个要把凭据放进 HTTP 标头的适配器,使用前都以同一套规则校验它。`normalizeApiKey(raw)` 先去除首尾空白,再接受任意非空的可打印 ASCII 值(`/^[\x21-\x7E]+$/`,不含空格),否则以 `ApiKeyRejection`(`'empty'` | `'illegalCharacters'`)说明拒绝原因,二者一并包含在 `ApiKeyCheck` 结果中。缺失从不参与校验:调用方会在询问之前自行判断是否提供了值——未点名凭据的 profile 会转由提供方自身的环境发现或 OAuth 完成认证。 +每个要把凭据放进 HTTP 标头的适配器,使用前都以同一套规则校验它。`normalizeApiKey(raw)` 会先去除首尾空白,然后接受任意非空的可打印 ASCII 值(`/^[\x21-\x7E]+$/`,不含空格),或通过 `ApiKeyRejection`(`'empty'` | `'illegalCharacters'`)说明拒绝原因。这些结果一并包含在 `ApiKeyCheck` 中。缺失从不参与校验:调用方会在询问之前自行判断是否提供了值——未点名凭据的 profile 会转由提供方自身的环境发现或 OAuth 完成认证。 ### 类 @@ -73,7 +73,7 @@ - `BlockAssembler`:将原始分片逐步组装为完整内容块,并能据此创建带标识且冻结的 assistant 消息。agent loop 向它提供原始分片(同时记录以供回放),并读取已组装块以构建历史。 - `HarnessError`:harness 错误分类体系的基类,包含稳定 `code` 字符串(与面向人的 `message` 不同)以及 `cause` 链。它位于所有其他包都从中导入的叶子包中,因此可以共享单一基类,无需新的依赖边。各包的错误(`LlmError`、`ToolArgsError`、`InvariantError` 等)都继承自它。`isHarnessError(value)` 在进程边界处收窄类型。 - `LlmError`:继承自 `HarnessError`;其稳定 `code` 字符串(`NO_ADAPTER`、`DUPLICATE_ADAPTER` 与 `AUTH`/`RATE_LIMIT` 等适配器 code)与冻结可序列化 `failure.code` 匹配。Payload 还可以保留已验证状态、`Retry-After` 和品牌化提供方请求 id 事实;策略位于错误之外。 -- `errorChain(value)`:渲染抛出值的完整 `cause` 链与 AggregateError 成员,供诊断输出使用,包括 UI 通知、logger 行和持久 `turn/end` 消息。因此 undici 的 `TypeError: fetch failed` 等传输包装层会显示底层 `ECONNREFUSED`/DNS/TLS 详细信息,而不是将其遮蔽。该函数只负责渲染:请按 `code` 路由,绝不解析结果。 +- `errorChain(value)`:渲染抛出值的完整 `cause` 链与 AggregateError 成员,供诊断输出使用,包括 UI 通知、logger 行和持久 `turn/end` 消息。因此 undici 的 `TypeError: fetch failed` 等传输包装层会显示底层 `ECONNREFUSED`/DNS/TLS 详细信息,而不是将其遮蔽。`errorChain(value)` 只负责生成诊断文本。调用方必须依据稳定的 `code` 选择错误处理路径,绝不能通过解析渲染后的文本作出判断。 - `CONTEXT_WINDOW_EXCEEDED_CODE`:当请求超过模型上下文窗口时,无论通过 HTTP 异常抛出还是带内 finish 交付,两个 DeepSeek 适配器都使用的提供方无关 code。`isContextWindowExceededError(detail)` 是它们针对 OpenAI 兼容提供方详细信息的共享保守分类器。 - `QUOTA_EXCEEDED_CODE`:帐户配额、余额、点数、预算或用量限制耗尽时使用的非暂时性提供方无关 code。`isQuotaExceededError(detail)` 使这些失败与请求速率限制保持区分。 - `EMPTY_RESPONSE_CODE`:两个适配器都使用的提供方无关 code,用于表示退化的提供方生成结果:一个未携带任何内容块的终止 `stop`。它会被分类为错误 finish(而非成功空消息),因为尝试未产生持久内容;`dsh-llm-retry` 默认重试它。 @@ -95,7 +95,7 @@ - **本服务不执行重试、缓存或速率限制**:提供方注册会存储重试策略,但 `llm/stream` 仍是单次尝试调用包装层。agent loop 会将已验证模型请求失败单独提供给 `agent/request-error`,其默认行为是保留原始失败;`@deepseek-ai/dsh-llm-retry` 是共享示例主干加载的可选执行器。 - **`GenerateOptions` 采样只包含 `temperature`/`maxTokens`/`stop`**:没有 `tool_choice`、`top_p` 或 penalty 字段;有产生方落地时词汇才会增长(见 [已删除惰性旋钮](../../../.agents/notes/archived/simplification/2026-07-04-drop-inert-request-knobs.md))。 -- **受产生方约束的变体在实际产生前不会加入**:`prefill`、每工具 `strict`、块 `cache` 提示与 `agent` 消息源变体因没有产生方而被剪除(见 [Agent Note](../../../.agents/notes/archived/simplification/2026-07-04-prune-producerless-vocabulary-variants.md))。 +- **只有出现实际产生方后,相应变体才会加入**:`prefill`、逐工具 `strict`、内容块 `cache` 提示和 `agent` 消息来源变体,都因当前没有产生方而被移除(见 [Agent Note](../../../.agents/notes/archived/simplification/2026-07-04-prune-producerless-vocabulary-variants.md))。 - **`BlockAssembler` 只处理核心块类型**:如果插件添加块类型的流从未由 `block-end` 关闭,`blocks()` 会抛出异常。 - **`APP_IDENTITY.url` 指向一个尚不存在的仓库**:该公开主页必须在发布前可访问。 - **`GenerateOptions.sessionId` 是本地声明的品牌类型**:导入 dsh-session 的 `SessionId` 会产生循环;未来拥有 id 的包可以消除该权宜之计。 diff --git a/packages/subagent/subagent/README.i18n.yaml b/packages/subagent/subagent/README.i18n.yaml index ace4708403..1dc307eaee 100644 --- a/packages/subagent/subagent/README.i18n.yaml +++ b/packages/subagent/subagent/README.i18n.yaml @@ -3,4 +3,4 @@ # after editing either side, bring the other along and re-record with: # pnpm run verify-translation-pairing --write packages/subagent/subagent/README.md README.md: ed4a9123a2dfa5b2fa5abc67f4513547feb3d140 -README.zh.md: e117ac7a6078d5b63759560eef35381b43b00dea +README.zh.md: 83ab345a0dbc0cbb117abcab2b054790dc3758da diff --git a/packages/subagent/subagent/README.zh.md b/packages/subagent/subagent/README.zh.md index e117ac7a60..83ab345a0d 100644 --- a/packages/subagent/subagent/README.zh.md +++ b/packages/subagent/subagent/README.zh.md @@ -2,7 +2,7 @@ [English](README.md) | 中文 -subagent seam 允许一个 agent(智能体)通过具名提供方把工作委派给子 agent。调用方使用统一的服务 API(`ctx.subagents`);提供方决定子 agent 在当前进程、另一进程还是未来的传输之上运行。 +subagent seam 允许一个 agent(智能体)通过具名提供方把工作委派给子 agent。调用方统一使用 `ctx.subagents` 服务 API;提供方决定子 agent 在当前进程、其他进程,还是通过未来的传输方式运行。 [subagent 家族概述](../README.md)列出了实现和面向模型的消费方。本包负责提供方注册表、共享请求和结果约定、持久描述符以及可继续子级编排。多个具名提供方可以在该约定背后共存。 @@ -15,21 +15,21 @@ subagent seam 允许一个 agent(智能体)通过具名提供方把工作委 | `registerProvider(provider)` | 按名称注册一个可信的同进程实现。注册受 effect 作用域约束;移除注册会阻止新的启动,但不会撤销已返回给调用方的运行。重复名称会明确报错。 | | `getProvider(name)` | 返回提供方;不存在时返回 `undefined`。 | | `list()` | 按插入顺序返回提供方名称。 | -| `start(name, request)` | 校验普通调用方请求,解析其分离的 `one-shot` 描述符,然后等待提供方,直到真实的一次性子 agent 发布。兑现时返回由持有方拥有的 `SubagentRun`;拒绝表示提供方已清理所有未发布的启动资源,而发布后的轮次或基础设施故障会通过该 run 结算。可继续子 agent 绝不通过此操作进入。 | -| `startContinuable(spec)` | 建立一个持久化可继续子 agent,并投递其初始提示词。子 agent 的 inbox 接受该提示词时,兑现为 `{ childId, messageId }`,无需等待轮次开始或消息写入会话日志;此前任何失败都会以无 id 拒绝,并完全回滚该子 agent。要求 `ctx.agents`、会话持久化以及具备 `prepareContinuable` 能力的提供方。 | +| `start(name, request)` | 校验普通调用方请求,解析其已分离的 `one-shot` 描述符,然后等待提供方发布真正的一次性子 agent。兑现时返回由持有方拥有的 `SubagentRun`;如果调用被拒绝,提供方已经清理所有尚未发布的启动资源。发布后的轮次故障或基础设施故障则通过该 run 结算。可继续子 agent 绝不通过此操作进入。 | +| `startContinuable(spec)` | 建立一个持久化的可继续子 agent,并投递其初始提示词。子 agent 的 inbox 一接受该提示词,调用就会兑现为 `{ childId, messageId }`,无需等待轮次开始,也无需等待消息写入会话日志。在此之前发生的任何失败都会使调用被拒绝,不返回任何 ID,并完全回滚该子 agent。要求 `ctx.agents`、会话持久化以及具备 `prepareContinuable` 能力的提供方。 | | `followup(parent, childId, content, { source, signal })` | 将来自确切在线直接父级的一条后续消息作为子 agent 的下一个 FIFO 轮次投递,术语与 `Agent.followup()` 一致,并返回被接受的 `MessageId`。驻留中的子 agent 由其 inbox 直接接受(唤醒处于 waiting 的 Activation);不驻留的则从其持久化会话冷恢复。要求 `ctx.agents`;冷恢复还要求会话持久化。 | -| `interrupt(targetSessionId, authority)` | 以人类持久化 parent 地址(`{ kind: 'user', parentSessionId }`)或确切在线 ancestor Agent(`{ kind: 'ancestor', agent }`)为授权,中断一个在线可继续 child 的当前轮次。准入同步完成、生效异步进行:它发出 `Agent.cancel(cause, { keepInbox: true })` 后立即返回,不等待目标观察到信号。尚未领取的待处理 inbox 工作、Activation 与已发布的后代均保持不变;已被领取进入中断轮次的工作不会重新入队。目标不存在时接受为 no-op;错误的 parent 地址以及陈旧、指向自身或非祖先调用方以 `UNAUTHORIZED` 拒绝。 | +| `interrupt(targetSessionId, authority)` | 凭人类出示的持久化父级地址 `{ kind: 'user', parentSessionId }`,或确切在线的祖先 Agent `{ kind: 'ancestor', agent }` 进行授权,中断一个在线可继续子级的当前轮次。准入判定同步完成,但取消异步生效:该操作发出 `Agent.cancel(cause, { keepInbox: true })` 后立即返回,不等待目标观察到信号。尚未领取的待处理 inbox 工作、Activation 和已发布的后代均会保留;已经领取到被中断轮次中的工作不会重新入队。目标不存在时视为已接受的空操作;错误的父级地址,或陈旧、指向自身、并非祖先的调用方,会以 `UNAUTHORIZED` 被拒绝。 | | `reportFrom(child, content, { delivery, signal })` | 从确切在线可继续 child 向其确切在线直接 parent 投递一条选中消息,并返回已接受的稳定 `MessageId`。静默投递会注入上下文;唤醒投递会提交一个后续 parent 轮次。 | | `registerContinuableSetup(contribution)` | 把一项可选部署能力组合到每个可继续 child 尚未发布的作用域中,并支持从驻留 child 立即撤销。 | -| `drainContinuableDescendants(parents)` | 在由 host 确切拥有的在线 parent Agent 之下关闭准入,只停止其可见的可继续后代,等待在这些根之下已获准的物化过程完成发布或回滚,再按 child-first 顺序释放所选森林。该截止状态会持续到每个确切 parent 离开注册表;无关的 parent 森林和管理器全局准入保持在线。 | -| `listChildren(parentSessionId, signal?)` | 按 `createdAt` 再按 id 的顺序列出由会话支撑的直接 subagent,包括其 `one-shot`/`continuable` 模式、`running`/`inactive` 活动状态、基于 origin 分类的一层 `hasChildren` 提示与逐 child diagnostic,且不会加载或恢复它们。直接读取在线会话存储与可选的会话持久化(持久化缺席时仅枚举在线 child),并要求已挂载 `sessionProjections` 注册表;不要求 `ctx.agents`、继续执行管理器或任何查询服务。 | +| `drainContinuableDescendants(parents)` | 在由 host 持有的确切在线父级 Agent 之下关闭准入,只停止这些父级可见的可继续后代;等待已在这些根节点下获准的物化过程完成发布或回滚后,再按子级优先顺序释放所选的各棵树。该截止状态会持续到每个确切父级离开注册表;无关的父级树和管理器全局准入仍保持可用。 | +| `listChildren(parentSessionId, signal?)` | 按 `createdAt`、再按 ID 的顺序列出由会话支撑的直接 subagent,包括其 `one-shot`/`continuable` 模式、`running`/`inactive` 活动状态、根据 origin 分类得出的一层 `hasChildren` 提示,以及每个子级的诊断信息,且不会加载或恢复它们。该操作直接读取在线会话存储和可选的会话持久化(没有持久化时只枚举在线子级),并要求已挂载 `sessionProjections` 注册表;不要求 `ctx.agents`、继续执行管理器或任何查询服务。 | | `listDescendants(rootSessionId, signal?)` | 从同一份在线优先语料按稳定 pre-order 展平根的完整会话树,并为每个 subagent 条目附加持久 `parentId` 与相对根的 `depth`。普通会话与一次性 child 仍作为遍历节点,因此其下的可继续后代仍可发现。身份、diagnostic、依赖与取消约定均沿用 `listChildren()`。 | -`SubagentStartRequest.label` 是由会话支撑的一次性 child 所使用的可选简短持久化显示标签。面向模型的委派会提供其已有的 `description`;底层调用方无需凭空构造展示元数据。可继续启动始终携带自身的必填标签。`signal` 是必填项,也是一次性 `start` 的规范取消通道。发布前中止会使 `start()` 在回滚后拒绝;发布后中止会取消已返回 run 的剩余轮次工作,但不会隐藏其 id。请求还可以选择模型、要求结构化输出、限制委派深度、约束子 agent 工具或设置子 agent persona。对于可继续启动或后续操作,调用方信号只在 inbox 接受之前掌管查找、物化和准入;此后由管理器独立拥有 Activation,因此调用方后续取消既不会取消已接受的轮次,也不会 dispose(资源释放)子 agent。 +`SubagentStartRequest.label` 是由会话支撑的一次性 child 所使用的可选简短持久化显示标签。面向模型的委派会提供其已有的 `description`;底层调用方无需凭空构造展示元数据。可继续启动始终携带自身的必填标签。`signal` 是必填项,也是一次性 `start` 的规范取消通道。发布前中止会使 `start()` 在回滚后拒绝;发布后中止会取消已返回 run 的剩余轮次工作,但不会隐藏其 id。请求还可以选择模型、要求结构化输出、限制委派深度、约束子 agent 工具或设置子 agent persona。对于可继续启动或后续操作,调用方信号的控制范围只包括 inbox 接受之前的查找、物化和准入。一旦 inbox 接受消息,Activation 就由管理器独立拥有;此后调用方取消既不会取消已接受的轮次,也不会 dispose(资源释放)子 agent。 后续操作的权限来自子 agent 持久化 header 中记录的确切在线直接父级。冷恢复会在重建前检查该权限,并在最终无 await 的 inbox 准入区间再次检查,因此在物化期间被注销或替换的 parent 无法授权投递。后续操作上的 `source` 记录谁提供了所投递的消息,不授予任何权限。 -同进程请求、描述符、结果和事件 payload 都是以不可变方式借用的可信类型值。服务不会克隆或冻结它们;序列化和不可信输入校验属于真实的进程、worker、持久化和模型边界。 +同进程请求、描述符、结果和事件 payload 都是可信的类型值,并按不可变约定借用。服务不会克隆或冻结它们;序列化和不可信输入校验属于真实的进程、worker、持久化和模型边界。 ## 能力 @@ -40,11 +40,11 @@ subagent seam 允许一个 agent(智能体)通过具名提供方把工作委 - `toolFilter`:应用请求的子 agent 工具限制; - `persona`:应用每个子 agent 独立的 persona。 -每个进程内子 agent 都由一次调用完成组装:`applyChildComposition(childCtx, parent, composition)` 先加入父方的 agent-preset 组装,再应用该子 agent 自己的 persona 与工具限制。加入组装正是子 agent 获得能力的途径:所有面向模型的行都在 agent 平面,没有加入任何组装的子 agent 抵达模型时工具注册表是空的(见 [`dsh-agent-presets`](../../preset/agent-presets/README.md))。把父方作为参数是刻意的——这让"组装一个子 agent 却不做该加入"在各调用点无法表达,而这正是这一次调用所要杜绝的缺陷。未组装 preset roster 的部署不加入任何组装、也不需要加入:它的面向模型的行位于宿主组装中,子 agent 已经能通过工具注册表的全局层解析到它们。 +每个进程内子 agent 都通过一次 `applyChildComposition(childCtx, parent, composition)` 调用完成组装:先加入父级的 agent-preset 组合,再应用子 agent 自己的 persona 和工具限制。加入父级组合正是子 agent 获得能力的途径:所有面向模型的行都位于 agent 平面,完全没有加入任何组合的子 agent 抵达模型时会看到空的工具注册表(见 [`dsh-agent-presets`](../../preset/agent-presets/README.md))。将父级作为参数是刻意设计:这让“组装子 agent 却不做该加入”在各调用点无法表达,而这正是这一次调用所要杜绝的缺陷。未组装 preset roster 的部署不加入任何组合、也不需要加入;其面向模型的注册项位于宿主组合中,子 agent 已能通过工具注册表的全局层解析到它们。 `childSessionMeta()` 把所加入的 preset id 记在子 agent 的持久化 header 上,理由与顶层会话记录自己的那一个相同:preset 决定了模型所见的工具 schema 与提示段,因此冷读子 agent 的历史时必须重建那份组装,而不是部署默认值。该值从父方**活着的** scope 链读取,而不是从父方 header 读取,因为在空白期切换过 preset 的父方运行在更新的那份组装上,而它的 header 仍写着旧的那个。 -可继续创建对应可选的 `SubagentProvider.prepareContinuable?()` 方法:方法是否存在就是能力检查,因此服务会在没有该方法的提供方上拒绝已配置的可继续启动,而具备该方法的提供方仍可服务普通一次性委派。该方法只返回分离的 `ContinuableCreateSpec`(`{ seed? }`)——这是数据,绝非能力:它不携带任何 Agent、`AgentHandle`、提示词投递、结果、dispose 或恢复操作,因为准备之后,继续执行管理器拥有身份预留、组合、Agent 创建、提示词投递、冷恢复、所有权和 dispose。一次性 `SubagentRun` 表示一次可 dispose 的前台委派,只有一个结果,且没有冷恢复操作。服务可以针对不同的同级子 agent 并发调用同一提供方:每次启动或准备都拥有各自的可变状态和取消路径,一项操作的失败、结果或清理不得使另一项操作结算或释放。提供方可以在内部按自身容量排队,但不得改变这项独立性约定。 +可继续创建对应可选的 `SubagentProvider.prepareContinuable?()` 方法:方法是否存在就是能力检查,因此服务会在没有该方法的提供方上拒绝已配置的可继续启动,而具备该方法的提供方仍可服务普通一次性委派。该方法只返回已分离的 `ContinuableCreateSpec`(`{ seed? }`)。它只是数据,不携带任何能力:不包含 Agent、`AgentHandle`、提示词投递、结果、dispose 或恢复操作。准备完成后,身份预留、组合、Agent 创建、提示词投递、冷恢复、所有权和 dispose 均由继续执行管理器负责。一次性 `SubagentRun` 表示一次可 dispose 的前台委派,只有一个结果,且没有冷恢复操作。服务可以针对不同的同级子 agent 并发调用同一提供方:每次启动或准备都拥有各自的可变状态和取消路径,一项操作的失败、结果或清理不得使另一项操作结算或释放。提供方可以在内部按自身容量排队,但不得改变这项独立性约定。 ## 持久化描述符 @@ -52,43 +52,43 @@ subagent seam 允许一个 agent(智能体)通过具名提供方把工作委 ## 委派深度 -该 seam 拥有 Service Provider 和 Consumer 共享的深度词汇:`AgentOptions.subagentDepth` 声明、`assertSubagentMaxDepth` 和 `delegationDepthOf(agent)`。持久化的 `SessionHeader.delegationDepth` 具有权威性且单调:运行时选项可以加深计数,但绝不能降低它,因此恢复后的子 agent 不会被重新计为顶层。 +该 seam 拥有 Service Provider 和 Consumer 共享的深度词汇:`AgentOptions.subagentDepth` 声明、`assertSubagentMaxDepth` 和 `delegationDepthOf(agent)`。持久化的 `SessionHeader.delegationDepth` 具有权威性且单调:运行时选项可以增大委派深度,但绝不能将其降到这个下界以下,因此恢复后的子 agent 不会被重新计为顶层。 `inheritsParentContext` 只用于描述,不能强制执行。它仅说明子 agent 是否能看到父级已完成的对话历史(`fork` 可以;`spawn` 和各进程外一次性提供方不可以),不表示是否继承工具、服务或权限。 ## 委派策略 -两条进程内委派路径都会通过共享的子 agent 辅助函数,在委派边界固定子 agent 的权限范围。`captureDelegatedPolicyOverrides(parent)` 对父会话的显式沙箱覆盖项(`sandboxPolicy.overrideOf()`)获取快照,并在审批能力已组合时把子 agent 的审批策略钉定为 `'never'`——无论父级自身的策略是什么——因此被委派的子 agent 只在其继承的沙箱范围内行动,每次请求(例如一次 `sandbox_permissions` 升级)都被确定性拒绝,而不是等待一个无人在看的提示(这两个服务都是可选的 `ctx.get` 消费方)。`appendDelegatedPolicyOverrides()` 则在未发布的设置阶段、在任何 fork 种子之后,把每个值作为一条 `source: 'delegation'` 的 `sandbox/mode` 或 `approval/policy` 事件写入子 agent 自己的日志:因此新鲜策略压过陈旧的种子状态,而子 agent 的生效策略始终可以仅凭其日志重建。沙箱的部署默认值绝不复制:未切换的父级不会记录 `sandbox/mode`,其子 agent 会动态跟随部署默认值。可继续启动会在其第一次 await 之前捕获,并且只为新鲜的物化写入种子;冷恢复会重放已持久化的委派事件,而不是重新捕获父级,因此创建之后的父级切换绝不会追溯性地改变持久化子 agent。每个进程内子 agent 还会收到一条作用域内的运行时上下文声明(`subagent:delegation`),告知其权限范围已固定,需要更宽访问的任务应以上报限制收尾,而不是重试。参见[一次性](../../../.agents/notes/implemented/feature/2026-07-25-subagent-policy-inheritance.md)与[可继续](../../../.agents/notes/implemented/feature/2026-08-10-continuable-subagent-policy-inheritance.md)两篇委派策略 Agent Note。 +两条进程内委派路径都会通过共享的子 agent 辅助函数,在委派边界固定子 agent 的权限范围。`captureDelegatedPolicyOverrides(parent)` 会为父会话的显式沙箱覆盖项(`sandboxPolicy.overrideOf()`)创建快照,并在审批能力已组合时将子 agent 的审批策略固定为 `'never'`,无论父级自身采用何种策略。这样,被委派的子 agent 只能在继承的沙箱范围内行动,每次审批请求(例如 `sandbox_permissions` 升权)都会被确定性拒绝,而不会等待无人处理的提示(这两个服务都是可选的 `ctx.get` 消费方)。`appendDelegatedPolicyOverrides()` 则在未发布的设置阶段、在任何 fork 种子之后,把每个值作为一条 `source: 'delegation'` 的 `sandbox/mode` 或 `approval/policy` 事件写入子 agent 自己的日志。因此,新捕获的策略会覆盖种子中的陈旧状态,而子 agent 的生效策略始终可以仅凭其日志重建。沙箱的部署默认值绝不复制:未切换的父级不会记录 `sandbox/mode`,其子 agent 会动态跟随部署默认值。可继续启动会在第一次 `await` 前捕获策略,并且只为全新物化写入这些委派事件;冷恢复只会重放已持久化的委派事件,不会重新捕获父级策略,因此创建之后的父级切换绝不会追溯性地改变持久化子 agent。每个进程内子 agent 还会收到一条作用域内的运行时上下文声明(`subagent:delegation`),告知其权限范围已固定,需要更宽访问的任务应以上报限制收尾,而不是重试。参见[一次性](../../../.agents/notes/implemented/feature/2026-07-25-subagent-policy-inheritance.md)与[可继续](../../../.agents/notes/implemented/feature/2026-08-10-continuable-subagent-policy-inheritance.md)两篇委派策略 Agent Note。 ## 一次性所有权与生命周期 -`provider.start(request): Promise` 是所有权转移边界;委派工具也会在其由 Task 支撑的一次性后台路径中使用它。兑现前,提供方拥有设置过程,并且每次失败时都必须取消、回滚并使未发布资源完全停稳。兑现后,调用方拥有该运行,并且必须在每条路径上调用 `dispose()`;剩余提示词和轮次工作属于 `SubagentRun.result`。 +`provider.start(request): Promise` 是所有权转移边界;委派工具也会在其由 Task 支撑的一次性后台路径中使用它。兑现前,提供方拥有设置过程,并且在任何失败路径上都必须取消、回滚并使尚未发布的资源完全停稳。兑现后,run 的所有权转移给调用方;调用方必须在每条路径上调用 `dispose()`。剩余提示词和轮次工作属于 `SubagentRun.result`。 -`SubagentRun.result` 兑现为 `{ output, structured?, stopReason }`。子 agent 级失败会以非 `completed` 原因兑现;只有 seam 无法表示的基础设施故障才可以拒绝。`dispose()` 是幂等的,会取消剩余工作,并等待结果结算以及子 agent 资源完全停稳。`result` 的 rejection 仍归 `result` 通道;只有独立的资源释放失败会使 `dispose()` 拒绝。`output` 与 `subagent/end` 事件的 `lastAssistantMessage` 使用导出的 `AssistantOutputFold`/`finalAssistantOutput` 辅助函数选取子 agent 最后一条非空 assistant 消息;若没有这类消息,则选取其累积的 assistant 文本。子 agent 两种输出均未产生时,`output` 为 `[]`,该事件字段缺省(结果约定归 [`SubagentResult.output`](../../../docs/subsystems/subagent.md#the-terminal-result-subagentresult) 所有)。 +`SubagentRun.result` 兑现为 `{ output, structured?, stopReason }`。子 agent 级失败会以非 `completed` 原因兑现;只有 seam 无法表示的基础设施故障才可以拒绝。`dispose()` 是幂等的,会取消剩余工作,并等待结果结算以及子 agent 资源完全停稳。`result` 的拒绝只通过 `result` 本身报告;只有与结果无关的资源释放失败,才会使 `dispose()` 被拒绝。`output` 与 `subagent/end` 事件的 `lastAssistantMessage` 使用导出的 `AssistantOutputFold`/`finalAssistantOutput` 辅助函数选取子 agent 最后一条非空 assistant 消息;若没有这类消息,则选取其累积的 assistant 文本。子 agent 两种输出均未产生时,`output` 为 `[]`,该事件字段缺省(结果约定归 [`SubagentResult.output`](../../../docs/subsystems/subagent.md#the-terminal-result-subagentresult) 所有)。 本地运行会在 `start()` 兑现前发布普通的子 agent/会话,把该共享会话 id 作为 `SubagentRun.id` 返回,以 `SubagentRun.localAgent` 公开准确的子 agent,把 `request.parent.session.id` 记录到子 agent 的 `parentSession` header,并在其初始轮次内追加已解析的描述符。远程提供方则生成 parent 作用域的生命周期 id,并返回 `localAgent: undefined`;由于没有本地 child 会话,其一次性运行不会进入基于追踪的枚举结果。 ## 可继续子 agent 与 Activation -可继续子 agent 拥有一个持久化会话和至多一个进程内 **Activation**——即被重建的子 agent 的一个驻留时段,而不是请求、结果、取消或 Task 边界。Agent inbox 是唯一的轮次队列,因此继续执行管理器负责驻留,而 agent loop(智能体循环)负责所有轮次排序与执行。任何可继续路径都不会创建 Task 或中间的承载结果的包装层。 +每个可继续子 agent 都有一个持久化 Session,并且同一时刻至多有一个进程内 **Activation**。Activation 表示重建后的子 agent 的一次驻留时段,不是请求、结果、取消或 Task 的边界。Agent inbox 是唯一的轮次队列,因此继续执行管理器负责驻留,而 agent loop(智能体循环)负责所有轮次排序与执行。任何可继续路径都不会创建 Task 或中间的承载结果的包装层。 -管理器根据 Agent 完全停稳状态和所拥有的子 agent 集合推导三个内部驻留条件,而非维护第二个状态机:running(存在活跃准入、进行中的轮次或唤醒型 inbox 工作)、waiting(已停稳但仍拥有至少一个未 dispose 的子 agent)、settled(已停稳且所有拥有的子 agent 都已 dispose,因此管理器 dispose `AgentHandle` 并移除 Activation)。每条后续消息都使用 `Agent.followup()` 并成为一个 FIFO 轮次,且不会对当前轮次进行 steering(中途引导)。路由只取决于驻留状态:running 入队、waiting 唤醒同一 Agent,无 Activation 时则冷恢复一个新的。 +管理器根据 Agent 的完全停稳状态和所拥有的子级集合推导三种内部驻留状态,而不维护第二套状态机:`running` 表示存在正在进行的准入、尚未结束的轮次,或会唤醒 Agent 的 inbox 工作;`waiting` 表示 Agent 已完全停稳,但仍拥有至少一个尚未 dispose 的子级;`settled` 表示 Agent 已完全停稳且所有拥有的子级均已 dispose,此时管理器会 dispose `AgentHandle` 并移除 Activation。每条后续消息都使用 `Agent.followup()` 并成为一个 FIFO 轮次,且不会对当前轮次进行 steering(中途引导)。路由只取决于驻留状态:running 入队、waiting 唤醒同一 Agent,无 Activation 时则冷恢复一个新的。 管理器预留子 agent 身份、解析持久化描述符,通过私有的 activation-owner 作用域调用 `ctx.agents.create()`(冷恢复时为 `ctx.agents.resume()`),把返回的 `AgentHandle` 安装到 Activation 中,建立任何可继续父级所有权,然后提交提示词。冷恢复绝不通过提供方分发,因为持久化会话已持有初始前缀,折叠后的描述符即是全部重建输入。 ### 结算投递 -当一个驻留 Activation 结算时,管理器会在父级自身的轮次流中告知该子级持久化的直接父级:这个子级已经产出它将产出的全部内容。对每个调用方真正拿到过 id 的子级,这条投递都是无条件的:它不考虑该子级是否调用过 `report`,因为最需要这条投递的结束方式——token 上限、模型失败、取消、拆卸——恰恰是子级根本没有机会选择的那些。在第一条消息被接受之前就回滚的物化保持静默,因为那位调用方已被告知该子级未建立。消息会携带该 epoch 的终止原因、它产出过的最终 assistant 内容,以及持久化来源 `{ kind: 'subagent-settled', form: 'notice', senderSessionId: }`——与子级自撰的 `subagent-report` 是不同的来源 kind,因此 transcript(文本记录)绝不会把运行时写下的话算到子级头上。 +当一个驻留 Activation 结算时,管理器会在父级自身的轮次流中告知该子级持久化的直接父级:这个子级已经产出它将产出的全部内容。对于每个已经向调用方返回过 ID 的子级,管理器都会无条件投递结算通知,不考虑该子级是否调用过 `report`。最需要说明结局的终止情形,包括达到 token 上限、模型失败、取消或拆卸,恰恰是子级根本没有机会选择的那些情形。在第一条消息被接受之前就回滚的物化保持静默,因为那位调用方已被告知该子级未建立。消息会携带该 epoch 的终止原因、它产出过的最终 assistant 内容,以及持久化来源 `{ kind: 'subagent-settled', form: 'notice', senderSessionId: }`——与子级自撰的 `subagent-report` 是不同的来源 kind,因此 transcript(文本记录)绝不会把运行时写下的话算到子级头上。 -有两条顺序规则让这条投递可靠而非侥幸,它们也正是这件事属于管理器而非外部 `subagent/end` listener 的原因。第一,发送发生在子级所有权释放**之前**,此时父级仍然计入该子级,因此在结构上不可能被判定为已结算。第二,本身就是驻留 Activation 的父级会通过与 report 相同的唤醒准入记账接收该消息,因此同步发送与承认它的那个 microtask 之间的窗口不会被误判为静止——`Agent.status` 会把上下文维护折叠成 `idle`,而维护期间的唤醒发送只会预置一次延后唤醒。缺少其中任一条规则,父级都可能在通知仍留在 inbox 时被 dispose,而 `cancel()` 会清空该 inbox,于是通知被静默丢失。 +有两条顺序规则让这条投递可靠而非侥幸,它们也正是这件事属于管理器而非外部 `subagent/end` listener 的原因。第一,发送发生在子级所有权释放**之前**,此时父级仍然计入该子级,因此在结构上不可能被判定为已结算。第二,如果父级本身也是驻留 Activation,该消息会采用与 report 相同的唤醒准入记账。这样,从同步发送消息到负责准入该消息的 microtask 运行之间的窗口,不会被误判为完全停稳——`Agent.status` 会把上下文维护折叠成 `idle`,而维护期间的唤醒发送只会预置一次延后唤醒。缺少其中任一条规则,父级都可能在通知仍留在 inbox 时被 dispose,而 `cancel()` 会清空该 inbox,于是通知被静默丢失。 -空闲父级会以一个普通的后续轮次收到该通知。繁忙父级则被 steer 到其最近的 step 边界,因此同时结算的多个子级只消耗一个 step,而不是各自一个轮次;采用 steer 而非 inject 还意味着:即便驱动在状态读取与发送之间退出,该消息仍会被认领。若父级自身所在的谱系已在 draining,则该通知改为 inject 送达,完全不唤醒:对静息父级调用 `Agent.followup()` 会开启一个轮次,而 `cancel()` 不会对之后的轮次设防,因此在拆卸期间唤醒,会在宿主即将 dispose 的 Agent 上白花一次模型请求——而且每层树各一次,因为每层自己的通知又会唤醒它上面那层。被 inject 的消息会送达仍在读取自身 inbox 的父级,而无论如何日志都会记录这份记账;但它不会比该父级自身的 dispose 活得更久:`AgentHandle.dispose()` 是一次 `keepInbox: false` 的 cancel,会持久地取消尚未被认领的通知。因此 resume 后的父级没有待处理通知可读:`list_agents` 只告诉它有哪些子级、各自是在线还是仅存于存储;结局本身留在子级自己的 Session 里,一次 `send_message` 会通过 resume 该子级把它取回。已离开注册表的父级不算错误:通知被丢弃,子级自身的 Session 仍是持久记录。投递绝不会阻塞或使拆卸失败——发送被拒只会记录日志,因为为了重试一条通知而保留子级,会把它的整条祖先链永久钉在 `waiting` 上。 +空闲父级会以一个普通的后续轮次收到该通知。繁忙父级则被 steer 到其最近的 step 边界,因此同时结算的多个子级只消耗一个 step,而不是各自一个轮次;采用 steer 而非 inject 还意味着:即便驱动在状态读取与发送之间退出,该消息仍会被认领。如果父级所在的谱系已经开始排空,该通知会通过 `inject` 投递,且完全不会唤醒父级。对已经完全停稳的父级调用 `Agent.followup()` 会开启新轮次,而 `cancel()` 不会预先阻止之后开启的轮次;因此在拆卸期间唤醒父级,会让宿主即将 dispose 的 Agent 多执行一次模型请求,而且树的每一层各一次,因为每层自己的通知又会唤醒上一层。被 inject 的消息会送达仍在读取自身 inbox 的父级,而无论如何日志都会记录这份记账;但它不会比该父级自身的 dispose 活得更久:`AgentHandle.dispose()` 是一次 `keepInbox: false` 的 cancel,会持久地取消尚未被认领的通知。因此 resume 后的父级没有待处理通知可读:`list_agents` 只告诉它有哪些子级、各自是在线还是仅存于存储;结局本身留在子级自己的 Session 里,一次 `send_message` 会通过 resume 该子级把它取回。已离开注册表的父级不算错误:通知被丢弃,子级自身的 Session 仍是持久记录。投递绝不会阻塞或使拆卸失败——发送被拒只会记录日志,因为为了重试一条通知而保留子级,会把它的整条祖先链永久钉在 `waiting` 上。 -受继续执行管理的父级 Activation 会在子 agent 能够运行之前,把每个子 agent 的会话 id 记录到 `ownedChildren` 集合中,并且只有在每个所拥有的子 agent Activation 完成 `AgentHandle` dispose 之后才会 dispose(子先于父)。拆卸会先自顶向下传播 Agent 取消,再等待缓慢的后代,而 handle 释放仍保持 child-first。顶层及其他非继续执行的 Agent 没有 Activation,处于该等待图之外。最终结算会在 dispose handle 前等待 best-effort 的 `ctx.sessions.flush(child.session)`。listener rejection 会被记录,但不会使 Activation 失败,因为 listener 是否参与无法标识持久化后端;因此,恢复时持久化状态可能缺失或陈旧。 +受继续执行管理的父级 Activation 会在子 agent 能够运行之前,把每个子 agent 的会话 id 记录到 `ownedChildren` 集合中,并且只有在每个所拥有的子 agent Activation 完成 `AgentHandle` dispose 之后才会 dispose(子先于父)。拆卸会先自顶向下传播 Agent 取消,再等待缓慢的后代,而 handle 释放仍保持 child-first。顶层及其他非继续执行的 Agent 没有 Activation,处于该等待图之外。最终结算会在 dispose handle 前等待 best-effort 的 `ctx.sessions.flush(child.session)`。监听器拒绝会被记录,但不会使 Activation 失败,因为监听器参与本身不能标识持久化后端;因此恢复时的持久化状态仍可能缺失或陈旧。 ## 生命周期事件 -服务会为每次一次性运行以及每个已驻留的可继续 Activation 时段发出一对 `subagent/start`/`subagent/end`,因此可继续子 agent 可用与一次性运行相同的词汇观察,且不会暴露管理器是物化、唤醒还是冷恢复了它们。对于一次性启动,它会在同步的 `subagent/start` 之前附加结果观察器,因此即使子 agent 已经结算,也仍会先产生 `subagent/start`,再产生 `subagent/end`;在驻留前失败的可继续时段不会发出这对生命周期事件中的任何一个。这对事件共享服务生成的 `runId`;`local` 标志取自提供方准确 `localAgent` 的快照(可继续子 agent 恒为 true),因此观察器绝不会从可复用的提供方/会话名称推断运行身份或本地性。`provider` 字段包含子 agent 初次创建时记录的提供方名称,不表示该提供方当前仍在注册:已接受的一次性 run 可在提供方移除后才结算;冷恢复时段会从描述符读取初始提供方名称,不会调用或注册该提供方。 +服务会为每次一次性运行以及每个已驻留的可继续 Activation 时段发出一对 `subagent/start`/`subagent/end`,因此可继续子 agent 可用与一次性运行相同的词汇观察,且不会暴露管理器是物化、唤醒还是冷恢复了它们。对于一次性启动,它会在同步的 `subagent/start` 之前附加结果观察器,因此即使子 agent 已经结算,也仍会先产生 `subagent/start`,再产生 `subagent/end`;在驻留前失败的可继续时段不会发出这对生命周期事件中的任何一个。这对事件共享由服务生成的 `runId`;`local` 标志根据提供方返回的确切 `localAgent` 是否存在取得快照(可继续子级恒为 `true`),因此观察器不会根据可复用的提供方名称或会话名称推断运行身份或本地性。`provider` 字段包含子 agent 初次创建时记录的提供方名称,不表示该提供方当前仍在注册:已接受的一次性 run 可在提供方移除后才结算;冷恢复时段会从描述符读取初始提供方名称,不会调用或注册该提供方。 运行事件受执行委派的父级作用域约束。每个监听器都独立隔离:同步抛出或返回的 promise 被拒绝时,只会记录日志,不会阻塞同级监听器或改变运行。 @@ -102,7 +102,7 @@ subagent seam 允许一个 agent(智能体)通过具名提供方把工作委 ## 收集模型 -面向模型的工具默认同步收集:先等待子 agent 结果,再 dispose 运行,然后才返回。一次性后台委派会在工具中注册普通 Task,其通用状态、收集和取消工具负责后续交互,并将模型提供的 `description` 持久化为可选显示标签。可继续后台委派会调用 `ctx.subagents.startContinuable()`,只返回持久化子 agent id;子 agent 自 inbox 接受起就拥有自己的轮次,因此没有 Task、也没有结果 promise——调用方通过 `send_message` 后续操作工具发送后续工作,`interrupt()` 只停止当前轮次而不 dispose 子 agent,而持久化子 agent 会话仍是子 agent 详细输出的来源。只有 `ctx.agents` 可用时,继续执行管理器才会存在,而会话持久化按每项继续执行操作解析。与此独立,`listChildren()` 枚举在线会话存储与可选会话持久化的在线优先合并——持久化缺席时仅枚举在线 child,因为那时冷 child 本就无法恢复——并由已注册的 `subagent` 投影单元供给每个 child 的持久化模式与标签:在线 child 取注册表的水位快照;冷 child 先取可选投影缓存的持久化行,且仅当其 `seq` 门证明该值折叠自 child 自身后缀(fork 种子之后——自有描述符一经追加即不可变)才直接采用,否则经一次有界并发的持久化 inspect 再经注册表折叠,且 inspect 结果必须仍指向枚举时的生命周期(同 id 被重新发布的会话降级为 `corrupt` diagnostic)。缓存读取抛错不产生判决——缓存是派生数据——静默落到该权威重折。投影折叠是唯一的分类权威;列表自身不解析任何描述符。取得身份值即产出 child 行;已定局而折叠未产出身份的候选是 `corrupt` diagnostic,inspect 失败是瞬时的 `unavailable`(下次列表重试),运行中而暂无身份值的候选整行省略(描述符尚未追加的创建窗口)。它不查询继续执行管理器、Agent 注册信息、Activation 或提供方。每个 child 行都会根据合并结果中携带持久化 `origin: 'subagent'` 的 header 派生读取时的 `hasChildren` 提示;它不会读取后代事件日志,展开后仍以描述符支撑的 child 目录为权威依据。UI 等服务消费方可以保留两种模式,并为无标签的一次性 child 选择回退展示;面向模型的 `list_agents` 工具只投影 `continuable` 条目,通过在线 Agent 注册表细化状态,并把仅存于存储的状态映射为可恢复而非终态的 `ready`(`running`/`idle`/`ready`),并在 `descendants` scope 下遍历 `listDescendants()`。列表操作会把调用方的取消信号转发到每次持久化读取,在这些 await 前后检查取消,并将每次检测到的中止报告为 `SubagentError` 错误码 `CANCELLED`;投影注册表未挂载则以 `SUBAGENT_CONTROL_PROJECTIONS_UNAVAILABLE` 响亮失败,会话存储缺失则以 `SUBAGENT_CONTROL_SESSION_STORE_UNAVAILABLE` 响亮失败。完整约定见[后台 subagent 任务 Agent Note](../../../.agents/notes/implemented/feature/2026-07-08-background-subagent-tasks.md)、[可继续后台 subagent Agent Note](../../../.agents/notes/implemented/feature/2026-07-21-continuable-background-subagents.md)、[持久化目录 Agent Note](../../../.agents/notes/implemented/feature/2026-07-22-durable-subagent-catalog-and-list-agents.md)、[服务合并 Agent Note](../../../.agents/notes/implemented/simplification/2026-07-26-merge-subagent-control-service.md)、[能力 seam Agent Note](../../../.agents/notes/implemented/feature/2026-06-21-subagent-capability-seam.md)和 `src/types.ts`。 +面向模型的工具默认同步收集:先等待子 agent 结果,再 dispose 运行,然后才返回。一次性后台委派会在工具中注册普通 Task,其通用状态、收集和取消工具负责后续交互,并将模型提供的 `description` 持久化为可选显示标签。可继续后台委派会调用 `ctx.subagents.startContinuable()`,只返回持久化子 agent id;子 agent 自 inbox 接受起就拥有自己的轮次,因此没有 Task、也没有结果 promise——调用方通过 `send_message` 后续操作工具发送后续工作,`interrupt()` 只停止当前轮次而不 dispose 子 agent,而持久化子 agent 会话仍是子 agent 详细输出的来源。只有 `ctx.agents` 可用时,继续执行管理器才会存在,而会话持久化按每项继续执行操作解析。与此独立,`listChildren()` 枚举在线会话存储与可选会话持久化的在线优先合并——持久化缺席时仅枚举在线 child,因为那时冷 child 本就无法恢复——并由已注册的 `subagent` 投影单元供给每个 child 的持久化模式与标签:在线 child 取注册表的水位快照;冷 child 先取可选投影缓存的持久化行,且仅当其 `seq` 门证明该值折叠自 child 自身后缀(fork 种子之后——自有描述符一经追加即不可变)才直接采用,否则经一次有界并发的持久化 inspect 再经注册表折叠,且 inspect 结果必须仍指向枚举时的生命周期(同 id 被重新发布的会话降级为 `corrupt` diagnostic)。缓存读取抛出异常时,不会据此作出分类判断,因为缓存只是派生数据;静默落到该权威重折。分类结果完全以投影折叠为准;列表操作本身不解析描述符。取得身份值即产出 child 行;已定局而折叠未产出身份的候选是 `corrupt` diagnostic,inspect 失败是瞬时的 `unavailable`(下次列表重试),运行中而暂无身份值的候选整行省略(描述符尚未追加的创建窗口)。它不查询继续执行管理器、Agent 注册信息、Activation 或提供方。每个 child 行都会根据合并结果中携带持久化 `origin: 'subagent'` 的 header 派生读取时的 `hasChildren` 提示;它不会读取后代事件日志,展开后仍以描述符支撑的 child 目录为权威依据。UI 等服务消费方可以保留两种模式,并为无标签的一次性 child 选择回退展示;面向模型的 `list_agents` 工具只投影 `continuable` 条目,通过在线 Agent 注册表细化状态,并把仅存于存储的状态映射为可恢复而非终态的 `ready`(`running`/`idle`/`ready`),并在 `descendants` scope 下遍历 `listDescendants()`。列表操作会把调用方的取消信号转发到每次持久化读取,在这些 await 前后检查取消,并将每次检测到的中止报告为 `SubagentError` 错误码 `CANCELLED`;投影注册表未挂载则以 `SUBAGENT_CONTROL_PROJECTIONS_UNAVAILABLE` 响亮失败,会话存储缺失则以 `SUBAGENT_CONTROL_SESSION_STORE_UNAVAILABLE` 响亮失败。完整约定见[后台 subagent 任务 Agent Note](../../../.agents/notes/implemented/feature/2026-07-08-background-subagent-tasks.md)、[可继续后台 subagent Agent Note](../../../.agents/notes/implemented/feature/2026-07-21-continuable-background-subagents.md)、[持久化目录 Agent Note](../../../.agents/notes/implemented/feature/2026-07-22-durable-subagent-catalog-and-list-agents.md)、[服务合并 Agent Note](../../../.agents/notes/implemented/simplification/2026-07-26-merge-subagent-control-service.md)、[能力 seam Agent Note](../../../.agents/notes/implemented/feature/2026-06-21-subagent-capability-seam.md)和 `src/types.ts`。 可继续 Activation 会等待 best-effort 的最终会话 flush,但不会把 listener 参与视为持久性确认。一次性运行保留尽力执行的会话检查点,因此已完成的一次性 child 只有在其会话确实进入持久化存储时,才可在 dispose 后继续被发现;如果该检查点缺失,服务不会根据 Task 历史虚构目录条目。 @@ -116,7 +116,7 @@ subagent seam 允许一个 agent(智能体)通过具名提供方把工作委 #### Token 影响 -父级请求中,每个已结算的 Activation 一条通知,长度取决于子级的最终消息。既上报又结算的子级会让父级同时支付两份。 +父级请求中,每个已结算的 Activation 一条通知,长度取决于子级的最终消息。如果子级既上报又结算,父级请求会同时承担上报消息和结算通知两部分 token 开销。 #### KV Cache 影响 From 6cbf927e0a3abe215315799cc404d78cb5b3d544 Mon Sep 17 00:00:00 2001 From: Tianyi Cui <53024+tianyicui@users.noreply.github.com> Date: Thu, 13 Aug 2026 14:54:15 +0800 Subject: [PATCH 02/22] fix(web): reject unsupported wildcard host --- apps/cli/reference/README.i18n.yaml | 4 ++-- apps/cli/reference/README.md | 2 +- apps/cli/reference/README.zh.md | 2 +- packages/bundle/web-app/README.i18n.yaml | 4 ++-- packages/bundle/web-app/README.md | 2 +- packages/bundle/web-app/README.zh.md | 2 +- packages/bundle/web-app/src/startup.ts | 12 +++++++----- packages/bundle/web-app/tests/startup.spec.ts | 12 ++++++++++-- 8 files changed, 25 insertions(+), 15 deletions(-) diff --git a/apps/cli/reference/README.i18n.yaml b/apps/cli/reference/README.i18n.yaml index 02938478cc..b62de584e2 100644 --- a/apps/cli/reference/README.i18n.yaml +++ b/apps/cli/reference/README.i18n.yaml @@ -2,5 +2,5 @@ # side as of the last confirmed-consistent state. Both languages carry equal authority; # after editing either side, bring the other along and re-record with: # pnpm run verify-translation-pairing --write apps/cli/reference/README.md -README.md: 0b23db293c304807b5959f5eae9a2faf868caa62 -README.zh.md: d812c7cd0d1efaa69b135925f3e922668539781b +README.md: 0be64fdfc0ad4e81d23f25a26881fa89f37565b0 +README.zh.md: 649bf15df814abf4875fed794c2e76c494bfcc25 diff --git a/apps/cli/reference/README.md b/apps/cli/reference/README.md index 0b23db293c..0be64fdfc0 100644 --- a/apps/cli/reference/README.md +++ b/apps/cli/reference/README.md @@ -61,7 +61,7 @@ dsh web --dump-config dsh web --help ``` -The production Web runner needs built package and frontend artifacts (`pnpm run build`). It serves `http://127.0.0.1:3080` by default. Binding all interfaces also trusts the machine's discovered LAN IP literals; `--trusted-host` adds named authorities accepted by the `/api` browser-trust fence. +The production Web runner needs built package and frontend artifacts (`pnpm run build`). It serves `http://127.0.0.1:3080` by default. The CLI intentionally does not support `--host 0.0.0.0` yet and exits with a usage error; `--trusted-host` adds named authorities accepted by the `/api` browser-trust fence. Process shutdown gives the plugin tree up to five seconds to dispose. The first `SIGINT`/`SIGTERM` starts that graceful drain — `SIGTERM` is a supervisor's ordinary stop request and exits 0 on every surface, `SIGINT` reports 130; a second signal forces immediate exit. If one-shot normal completion is already stuck in disposal, the first `Ctrl+C` is the escalation and exits immediately instead of being swallowed. diff --git a/apps/cli/reference/README.zh.md b/apps/cli/reference/README.zh.md index d812c7cd0d..649bf15df8 100644 --- a/apps/cli/reference/README.zh.md +++ b/apps/cli/reference/README.zh.md @@ -61,7 +61,7 @@ dsh web --dump-config dsh web --help ``` -生产 Web 运行器需要已构建的包和前端产物(`pnpm run build`)。默认服务地址是 `http://127.0.0.1:3080`。绑定所有网络接口时,还会信任机器自动发现的 LAN IP 字面量;`--trusted-host` 可添加 `/api` 浏览器信任围栏接受的具名 authority。 +生产 Web 运行器需要已构建的包和前端产物(`pnpm run build`)。默认服务地址是 `http://127.0.0.1:3080`。CLI 目前有意不支持 `--host 0.0.0.0`,并会以用法错误退出;`--trusted-host` 可添加 `/api` 浏览器信任围栏接受的具名 authority。 进程关闭时,插件树最多有 5 秒完成 dispose。首次收到 `SIGINT` 或 `SIGTERM` 时会开始优雅排空:`SIGTERM` 是监督进程发出的常规停止请求,在所有运行模式下都以 0 退出;`SIGINT` 则报告 130。第二次收到信号时会立即强制退出。如果一次性运行在正常结束时已经卡在 dispose 阶段,第一次按下 `Ctrl+C` 就会直接升级为强制退出,而不会被忽略。 diff --git a/packages/bundle/web-app/README.i18n.yaml b/packages/bundle/web-app/README.i18n.yaml index 45da05fcf3..220b4d78ff 100644 --- a/packages/bundle/web-app/README.i18n.yaml +++ b/packages/bundle/web-app/README.i18n.yaml @@ -2,5 +2,5 @@ # side as of the last confirmed-consistent state. Both languages carry equal authority; # after editing either side, bring the other along and re-record with: # pnpm run verify-translation-pairing --write packages/bundle/web-app/README.md -README.md: 3f7fbe7bbbeba2ee753ab2dfa8c945e798dd6a02 -README.zh.md: 357ca9946ed7fef1bf4c691c6666156bb293b5e0 +README.md: 90d1566b5a7a25f6a827079c4a8ab776e05cc7a3 +README.zh.md: b7156bcab66b53964bb2f0e1c87d9e9a806e3f75 diff --git a/packages/bundle/web-app/README.md b/packages/bundle/web-app/README.md index 3f7fbe7bbb..90d1566b5a 100644 --- a/packages/bundle/web-app/README.md +++ b/packages/bundle/web-app/README.md @@ -2,7 +2,7 @@ English | [中文](README.zh.md) -The dsh browser-surface bundle. [`cordis.patch.yml`](cordis.patch.yml) rides over [`dsh-base`](../base/README.md): it sets the coding persona, inserts the Web host rows (webserver, API gateway, workspace, projection cache, storage) and the browser plugin roster, the always-on client-plugin reload chain ([`dsh-client-hmr`](../../client/hmr/README.md), idle until a rebuild watcher rewrites client bundles), and mounts this package's `web-runtime` glue plugin (config `{printUrl, surfaceContext, trustedHosts}`). That plugin resolves the built frontend dist through `@deepseek-ai/dsh-web-frontend`'s exports, samples bind-dependent LAN trust once, provides it as `webRuntime` to the browser-trust fence and client roster, mounts the [`frontend-static`](../../host/frontend-static/README.md) fallback owner, registers the harness-source and web-surface prompt sections plus the bash-visible `DSH_WEB_URL` runtime variable when `surfaceContext` is true, and prints the `dsh web:` URL line when `printUrl` is true, after its Loader tree settles so a sibling failure cannot announce a dead app. This bundle also owns the app command line: the ordinary `web-startup` provider ([`src/startup.ts`](src/startup.ts)) injects `ctx.cmdlineArgs` ([`dsh-cmdline`](../../boot/cmdline/README.md)), parses `--host`, `--port`, repeatable `--trusted-host`, and the app's `--help`, then provides `webStartup`. Flag-configured rows inject that service and read it directly from lazy config, so nothing binds a port before argument resolution and `dsh --profile web --help` starts no server. [`dsh-headless`](../headless/README.md) is a sibling surface over the same base and does not mount this bundle. +The dsh browser-surface bundle. [`cordis.patch.yml`](cordis.patch.yml) rides over [`dsh-base`](../base/README.md): it sets the coding persona, inserts the Web host rows (webserver, API gateway, workspace, projection cache, storage) and the browser plugin roster, the always-on client-plugin reload chain ([`dsh-client-hmr`](../../client/hmr/README.md), idle until a rebuild watcher rewrites client bundles), and mounts this package's `web-runtime` glue plugin (config `{printUrl, surfaceContext, trustedHosts}`). That plugin resolves the built frontend dist through `@deepseek-ai/dsh-web-frontend`'s exports, samples bind-dependent LAN trust once, provides it as `webRuntime` to the browser-trust fence and client roster, mounts the [`frontend-static`](../../host/frontend-static/README.md) fallback owner, registers the harness-source and web-surface prompt sections plus the bash-visible `DSH_WEB_URL` runtime variable when `surfaceContext` is true, and prints the `dsh web:` URL line when `printUrl` is true, after its Loader tree settles so a sibling failure cannot announce a dead app. This bundle also owns the app command line: the ordinary `web-startup` provider ([`src/startup.ts`](src/startup.ts)) injects `ctx.cmdlineArgs` ([`dsh-cmdline`](../../boot/cmdline/README.md)), parses `--host`, `--port`, repeatable `--trusted-host`, and the app's `--help`, then provides `webStartup`. It rejects `--host 0.0.0.0` before publishing that service because the CLI intentionally does not support all-interfaces binding yet. Flag-configured rows inject the service and read it directly from lazy config, so nothing binds a port before argument resolution and `dsh --profile web --help` starts no server. [`dsh-headless`](../headless/README.md) is a sibling surface over the same base and does not mount this bundle. ## Model Experience diff --git a/packages/bundle/web-app/README.zh.md b/packages/bundle/web-app/README.zh.md index 357ca9946e..b7156bcab6 100644 --- a/packages/bundle/web-app/README.zh.md +++ b/packages/bundle/web-app/README.zh.md @@ -2,7 +2,7 @@ [English](README.md) | 中文 -dsh 浏览器表层组合包。[`cordis.patch.yml`](cordis.patch.yml) 叠加在 [`dsh-base`](../base/README.md) 之上:设置 coding persona,插入 Web 宿主行(webserver、API 网关、workspace、投影缓存、存储)、浏览器插件名录与始终挂载的客户端插件重载链([`dsh-client-hmr`](../../client/hmr/README.md),在重建 watcher 改写客户端 bundle 之前保持空闲),并挂载本包的 `web-runtime` 粘合插件(配置为 `{printUrl, surfaceContext, trustedHosts}`)。该插件通过 `@deepseek-ai/dsh-web-frontend` 的 exports 解析已构建的前端 dist,只采样一次依赖 bind 的 LAN 信任信息并将其作为 `webRuntime` 提供给浏览器信任栅栏和客户端名录,挂载 [`frontend-static`](../../host/frontend-static/README.md) 回退席位所有者,在 `surfaceContext` 为 true 时注册 Harness 源码与 Web 表层提示词段落,以及 bash 可见的 `DSH_WEB_URL` 运行时变量,并在 `printUrl` 为 true 时等自身的 Loader 配置树结算后再打印 `dsh web:` URL 行,避免兄弟行失败时公告一个已失效的应用。本组合包还持有应用命令行:普通 `web-startup` 提供方([`src/startup.ts`](src/startup.ts))注入 `ctx.cmdlineArgs`([`dsh-cmdline`](../../boot/cmdline/README.md)),解析 `--host`、`--port`、可重复的 `--trusted-host` 以及应用自己的 `--help`,再提供 `webStartup`。由 flag 配置的行会注入该服务,并在惰性配置中直接读取它,因此参数解析完成前不会有任何东西绑定端口,`dsh --profile web --help` 也不会启动服务器。[`dsh-headless`](../headless/README.md) 是同一 base 之上的同级表层,不挂载本组合包。 +dsh 浏览器表层组合包。[`cordis.patch.yml`](cordis.patch.yml) 叠加在 [`dsh-base`](../base/README.md) 之上:设置 coding persona,插入 Web 宿主行(webserver、API 网关、workspace、投影缓存、存储)、浏览器插件名录与始终挂载的客户端插件重载链([`dsh-client-hmr`](../../client/hmr/README.md),在重建 watcher 改写客户端 bundle 之前保持空闲),并挂载本包的 `web-runtime` 粘合插件(配置为 `{printUrl, surfaceContext, trustedHosts}`)。该插件通过 `@deepseek-ai/dsh-web-frontend` 的 exports 解析已构建的前端 dist,只采样一次依赖 bind 的 LAN 信任信息并将其作为 `webRuntime` 提供给浏览器信任栅栏和客户端名录,挂载 [`frontend-static`](../../host/frontend-static/README.md) 回退席位所有者,在 `surfaceContext` 为 true 时注册 Harness 源码与 Web 表层提示词段落,以及 bash 可见的 `DSH_WEB_URL` 运行时变量,并在 `printUrl` 为 true 时等自身的 Loader 配置树结算后再打印 `dsh web:` URL 行,避免兄弟行失败时公告一个已失效的应用。本组合包还持有应用命令行:普通 `web-startup` 提供方([`src/startup.ts`](src/startup.ts))注入 `ctx.cmdlineArgs`([`dsh-cmdline`](../../boot/cmdline/README.md)),解析 `--host`、`--port`、可重复的 `--trusted-host` 以及应用自己的 `--help`,再提供 `webStartup`。它会在发布该服务前拒绝 `--host 0.0.0.0`,因为 CLI 目前有意不支持绑定所有网络接口。由 flag 配置的行会注入该服务,并在惰性配置中直接读取它,因此参数解析完成前不会有任何东西绑定端口,`dsh --profile web --help` 也不会启动服务器。[`dsh-headless`](../headless/README.md) 是同一 base 之上的同级表层,不挂载本组合包。 ## 模型体验 diff --git a/packages/bundle/web-app/src/startup.ts b/packages/bundle/web-app/src/startup.ts index 2aaf89a742..26aa17eb46 100644 --- a/packages/bundle/web-app/src/startup.ts +++ b/packages/bundle/web-app/src/startup.ts @@ -45,28 +45,30 @@ function webCommand(): Command { .name('dsh --profile web') .description('Serve the DeepSeek Harness browser UI.') .helpOption('-h, --help', 'show this help') - .option('--host ', 'bind host; pass 0.0.0.0 to reach it from another machine') + .option('--host ', 'bind host') .option('--port ', 'listen port; pass 0 to let the OS pick a free one') .option('--trusted-host ', 'extra authority the /api browser-trust fence accepts (host or host:port; repeatable)') .addHelpText('after', ` Examples: dsh --profile web serve on the composed host and port dsh --profile web --port 8080 serve on another port - dsh --profile web --host 0.0.0.0 reach it from another machine on the LAN `) } /** * Parse and provide the Web invocation as an ordinary Cordis service. The - * command's action publishes the flags this invocation named; a non-numeric - * `--port` is a usage error, so on rejection (and on `--help`) nothing is - * provided. + * command's action publishes the flags this invocation named; an unsupported + * `--host` or non-numeric `--port` is a usage error, so on rejection (and on + * `--help`) nothing is provided. * @param ctx - plugin context carrying the command line. */ export function apply(ctx: Context): void { const program = webCommand() program.action(() => { const options = program.opts() + if (options.host === '0.0.0.0') { + program.error('error: --host 0.0.0.0 is intentionally not supported yet; use 127.0.0.1 instead') + } if (options.port !== undefined && !/^\d+$/.test(options.port)) { program.error(`error: --port must be a number, got ${JSON.stringify(options.port)}`) } diff --git a/packages/bundle/web-app/tests/startup.spec.ts b/packages/bundle/web-app/tests/startup.spec.ts index a00405378a..29d02a423d 100644 --- a/packages/bundle/web-app/tests/startup.spec.ts +++ b/packages/bundle/web-app/tests/startup.spec.ts @@ -88,13 +88,13 @@ export const apply = ctx => globalThis.__webStartupApply(ctx) describe('web command-line provider', () => { it('publishes each flag and releases direct service expressions', async () => { const { values, observed } = await bootProvider([ - '--host', '0.0.0.0', + '--host', '127.0.0.1', '--port', '8080', '--trusted-host', 'lab.internal', 'lab-2.internal', '--trusted-host', '10.0.0.9', ]) expect(values).toEqual({ - host: '0.0.0.0', + host: '127.0.0.1', port: 8080, trustedHosts: ['lab.internal', 'lab-2.internal', '10.0.0.9'], }) @@ -128,4 +128,12 @@ describe('web command-line provider', () => { expect(observed.readerConfig).toBeUndefined() expect(observed.exits).toEqual([1]) }) + + it('rejects the intentionally unsupported all-interfaces host before the consumer activates', async () => { + const { values, observed } = await bootProvider(['--host', '0.0.0.0']) + expect(observed.out).toContain('--host 0.0.0.0 is intentionally not supported yet; use 127.0.0.1 instead') + expect(values).toBeUndefined() + expect(observed.readerConfig).toBeUndefined() + expect(observed.exits).toEqual([1]) + }) }) From 0633add19d704f9abc7b9c997653c3e449b9ca59 Mon Sep 17 00:00:00 2001 From: Tianyi Cui <53024+tianyicui@users.noreply.github.com> Date: Thu, 13 Aug 2026 15:10:12 +0800 Subject: [PATCH 03/22] fix(web): clarify wildcard host safety warning --- packages/bundle/web-app/src/startup.ts | 2 +- packages/bundle/web-app/tests/startup.spec.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/bundle/web-app/src/startup.ts b/packages/bundle/web-app/src/startup.ts index 26aa17eb46..55a4b40f2e 100644 --- a/packages/bundle/web-app/src/startup.ts +++ b/packages/bundle/web-app/src/startup.ts @@ -67,7 +67,7 @@ export function apply(ctx: Context): void { program.action(() => { const options = program.opts() if (options.host === '0.0.0.0') { - program.error('error: --host 0.0.0.0 is intentionally not supported yet; use 127.0.0.1 instead') + program.error('error: --host 0.0.0.0 is intentionally not supported yet for safety: it would expose remote code execution to the network; use 127.0.0.1 instead') } if (options.port !== undefined && !/^\d+$/.test(options.port)) { program.error(`error: --port must be a number, got ${JSON.stringify(options.port)}`) diff --git a/packages/bundle/web-app/tests/startup.spec.ts b/packages/bundle/web-app/tests/startup.spec.ts index 29d02a423d..26e347a503 100644 --- a/packages/bundle/web-app/tests/startup.spec.ts +++ b/packages/bundle/web-app/tests/startup.spec.ts @@ -131,7 +131,7 @@ describe('web command-line provider', () => { it('rejects the intentionally unsupported all-interfaces host before the consumer activates', async () => { const { values, observed } = await bootProvider(['--host', '0.0.0.0']) - expect(observed.out).toContain('--host 0.0.0.0 is intentionally not supported yet; use 127.0.0.1 instead') + expect(observed.out).toContain('--host 0.0.0.0 is intentionally not supported yet for safety: it would expose remote code execution to the network; use 127.0.0.1 instead') expect(values).toBeUndefined() expect(observed.readerConfig).toBeUndefined() expect(observed.exits).toEqual([1]) From 1b03574fb5f9bc1f7f912b3c7f4a3396d059e67b Mon Sep 17 00:00:00 2001 From: j-xiang Date: Thu, 13 Aug 2026 15:25:00 +0800 Subject: [PATCH 04/22] docs(i18n): address focused README review --- packages/README.i18n.yaml | 2 +- packages/README.zh.md | 6 +++--- packages/core/agent-loop/README.i18n.yaml | 2 +- packages/core/agent-loop/README.zh.md | 10 +++++----- packages/core/system-prompt/README.i18n.yaml | 2 +- packages/core/system-prompt/README.zh.md | 16 ++++++++-------- packages/llm/llm/README.i18n.yaml | 2 +- packages/llm/llm/README.zh.md | 10 +++++----- packages/subagent/subagent/README.i18n.yaml | 2 +- packages/subagent/subagent/README.zh.md | 16 ++++++++-------- 10 files changed, 34 insertions(+), 34 deletions(-) diff --git a/packages/README.i18n.yaml b/packages/README.i18n.yaml index 06703a62c7..e9fed2a793 100644 --- a/packages/README.i18n.yaml +++ b/packages/README.i18n.yaml @@ -3,4 +3,4 @@ # after editing either side, bring the other along and re-record with: # pnpm run verify-translation-pairing --write packages/README.md README.md: 7904ec1fea8dbab361fcd90b2b32f1c743ce5537 -README.zh.md: f95a9b2868f13e0c3ad58bc6507b3615c76bc7dc +README.zh.md: 2d6b1de9f1f957ebeefeae297860408a4c3cd498 diff --git a/packages/README.zh.md b/packages/README.zh.md index f95a9b2868..2d6b1de9f1 100644 --- a/packages/README.zh.md +++ b/packages/README.zh.md @@ -22,12 +22,12 @@ npm scope 为 `@deepseek-ai/dsh-*`;Cordis `Service` 子类和函数插件通 | [`subprocess/`](subprocess/README.md) | 子进程能力系列:Service Definition + 本地进程树提供方 | 产品:稳定 API | | [`shell/`](shell/README.md) | Bash 能力系列:执行器 seam、本地实现、面向模型的工具 | 产品:稳定 API | | [`terminal/`](terminal/README.md) | 持久 PTY 能力系列:限定所有者范围的会话、本地实现和面向模型的工具 | 产品:稳定 API | -| [`code-runtime/`](code-runtime/README.md) | 代码执行能力系列:Service Definition + worker 线程提供方 + Code Mode 消费方 | 产品:稳定 API | +| [`code-runtime/`](code-runtime/README.md) | 代码执行能力系列:Service Definition + worker 线程提供方 + Code Mode Consumer | 产品:稳定 API | | [`sandbox/`](sandbox/README.md) | 进程限制 seam;bwrap/Landlock/Seatbelt 后端 | 产品:稳定 API | | [`fs/`](fs/README.md) | 文件系统能力系列:seam、本地实现、面向模型的文件工具、由 bash 支持的发现工具 | 产品:稳定 API | | [`lsp/`](lsp/README.md) | LSP 能力系列:seam、通用 stdio 提供方和 `lsp` 工具 | 产品:稳定 API | | [`skill/`](skill/README.md) | skill(技能)能力系列:提供方注册表、本地提供方和面向模型的目录/loader | 产品:稳定 API | -| [`compaction/`](compaction/README.md) | 压缩(compaction)能力系列:Service Definition + 基础提供方 + 命令消费方 | 产品:稳定 API | +| [`compaction/`](compaction/README.md) | 压缩(compaction)能力系列:Service Definition + 基础提供方 + 命令 Consumer | 产品:稳定 API | | [`context/`](context/README.md) | 模型可见请求上下文,包括 workspace 指令和时间上下文 | 产品:稳定 API | | [`subagent/`](subagent/README.md) | subagent 能力系列:提供方注册表约定和面向模型的委托工具 | 产品:稳定 API | | [`jobs/`](jobs/README.md) | 通用后台任务运行时和面向模型的 `job_*` 控制工具 | 产品:稳定 API | @@ -64,6 +64,6 @@ npm scope 为 `@deepseek-ai/dsh-*`;Cordis `Service` 子类和函数插件通 依赖图由工具生成:[docs/module-graph.md](../docs/module-graph.md)(`pnpm run gen-module-graph`,CI 中有新鲜度门禁)。 -**扩展插件依赖 Service Definition,绝不依赖具体提供方。** `dsh-agent-loop` 可替换;UI、钩子和工具插件使用 `dsh-agent`。包括 `dsh-agent-spine-demo` 在内的组合包可以依赖主干插件。能力会将需要独立演进的 Service Definition/Service Provider/消费方角色分离;详见[能力 seam](../.agents/notes/implemented/architecture/2026-06-13-capability-seams.md)。 +**扩展插件依赖 Service Definition,绝不依赖具体提供方。** `dsh-agent-loop` 可替换;UI、钩子和工具插件使用 `dsh-agent`。包括 `dsh-agent-spine-demo` 在内的组合包可以依赖主干插件。能力会将需要独立演进的 Service Definition/Service Provider/Consumer 角色分离;详见[能力 seam](../.agents/notes/implemented/architecture/2026-06-13-capability-seams.md)。 包 README 覆盖用途、API、扩展点和[模型体验](../docs/cookbook/adding-a-package.md#4-write-the-package-readme);列入模型无关[省略允许清单](../scripts/verify-package-readme-model-experience.ts)的包除外。它们还要包含 `## Known Limitations and Deferred Work`,或列入其[允许清单](../scripts/verify-package-readme-limitations.ts)。 diff --git a/packages/core/agent-loop/README.i18n.yaml b/packages/core/agent-loop/README.i18n.yaml index 00967e2c50..4d7aa55bd0 100644 --- a/packages/core/agent-loop/README.i18n.yaml +++ b/packages/core/agent-loop/README.i18n.yaml @@ -3,4 +3,4 @@ # after editing either side, bring the other along and re-record with: # pnpm run verify-translation-pairing --write packages/core/agent-loop/README.md README.md: 683799d1840c857981d4ff30dd3e8e078be03098 -README.zh.md: 75e4196795bc24fcdca4bd9a949adab9588e8152 +README.zh.md: 8ccc4a0b0d55c1660ee63405abc423d0ee2a8557 diff --git a/packages/core/agent-loop/README.zh.md b/packages/core/agent-loop/README.zh.md index 75e4196795..8ccc4a0b0d 100644 --- a/packages/core/agent-loop/README.zh.md +++ b/packages/core/agent-loop/README.zh.md @@ -14,13 +14,13 @@ agent(智能体)的唯一具体实现插件和循环驱动器。其包内部 调用方 fiber 与 AgentLoop 提供方共同拥有 agent。`AgentFactory.createAgent(ownerCtx, options)` 与 `resume(ownerCtx, options)` 显式接收调用方所有权,而工厂为 `sessions`/`llm`/`tools`/`systemPrompt` 保留自身的依赖上下文;这样,调用方可以只注入 `agents`,而不会缩减新 agent 的服务接口。调用方卸载、handle dispose(资源释放)或提供方卸载都会汇合到同一个记忆化的完全停稳边界。提供方关闭会同时等待资源 teardown,以及已经观测到停用的公开 create/resume 包装层,因此依赖消失后,任何 continuation 都无法继续发布。 -每个 agent 与其会话共享一个由调用方选择的 `SessionId`,并假设它在全局唯一;意外的 UUID 冲突不属于受支持模型。两个使用同一 id 的并发操作都可以进行准备,但最终的 `enter()` 调用会裁决发布,所有失败方都会回滚各自的私有资源。每次 detach 都绑定到确切进入的对象,因此陈旧 disposer 无法移除之后出现的同 id 替代项。在同步创建通知期间请求的 detach 会等待该次分发退栈,从而保留 created/disposed 配对。Teardown 按以下顺序执行:停止并排空 → 撤销作用域 → 分离 agent → 分离会话。私有作用域清理完成后,该 id 即可复用。不具否决能力的普通 `agent/*` 通知通过 `agentEvents(ctx, agent)` 发出;逐步骤组装通过 `assembleContextFor(agent)` 完成。 +每个 agent 与其会话共享一个由调用方选择的 `SessionId`,并假设它在全局唯一;意外的 UUID 冲突不属于受支持模型。两个使用同一 id 的并发操作都可以进行准备,但最终的 `enter()` 调用会裁决发布,所有失败方都会回滚各自的私有资源。每次 detach 都绑定到确切进入的对象,因此陈旧 disposer 无法移除之后出现的同 id 替代项。在同步创建通知期间请求的 detach 会等待该次分发退栈,从而保留 created/disposed 配对。Teardown 按以下顺序执行:停止并排空 → 撤销作用域 → detach agent → detach 会话。私有作用域清理完成后,该 id 即可复用。不具否决能力的普通 `agent/*` 通知通过 `agentEvents(ctx, agent)` 发出;逐步骤组装通过 `assembleContextFor(agent)` 完成。 - `ctx.agentLoop.create(id: SessionId, options?: AgentOptions, meta?: { cwd?: string }): Agent`:在确切共享的 agent/会话 id 下同步创建,不运行 setup,并随调用方 fiber 一同 dispose。声明式配置把 `agents[].id` 视为稳定 label,通常会先生成 `${label}-session-`,再调用此边界。应用也可以提供稳定且确切的 `sessionId`:首次使用时创建;重新挂载且持久化内容已存在时,则恢复已经实体化的历史。`resumeSessionId` 要求并加载现有的持久化 id,且与 `sessionId` 互斥。这样,默认情况下每次重启都会创建新会话,从而避免冲突,也无需保留第二个实时路由身份。 `AgentLoop` 还实现 `AgentFactory` 约定,并通过 `ctx.agents.setFactory(this)` 注册自身,因此插件会通过 `ctx.agents` 创建/恢复 agent: -- `ctx.agents.create({ sessionId, meta?, seed?, agentOptions?, setup?, signal? }): Promise`:使用调用方提供的共享 id 以编程方式创建。它会等待尚未发布的 setup 事务,然后才返回;`meta` 携带 cwd/谱系/seed 边界元数据,`seed` 则在会话边界验证并快照持久值后,重建 fork 子级的前缀。`signal` 只在此 Promise 结算前生效。返回的 [`AgentHandle`](../agent/README.md) 持有该 agent 的确切 teardown 能力。 +- `ctx.agents.create({ sessionId, meta?, seed?, agentOptions?, setup?, signal? }): Promise`:使用调用方提供的共享 id 以编程方式创建。它会等待尚未发布的 setup 事务,然后才返回;`meta` 携带 cwd/谱系/seed 边界元数据,`seed` 则在会话边界验证并快照持久值后,重建 fork 子级的前缀。`signal` 只在此 Promise 结算前生效。返回的 [`AgentHandle`](../agent/README.md) 拥有确切的 teardown 能力。 - `ctx.agents.resume({ resumeSessionId, agentOptions?, setup?, signal? }): Promise`:通过 `ctx.sessionPersistence` 加载持久化会话(参见[会话持久化](../../../.agents/notes/implemented/architecture/2026-06-14-session-persistence.md)),使用同一 id 注册 agent,重建历史,然后针对全新且尚未发布的 agent 作用域等待 setup,再执行受回滚保护的发布。轮次编号和派生历史从已加载日志继续。此操作要求存在会话持久化后端(不会硬注入,因此非持久化 demo 仍能工作;缺少持久化时,`resume` 会以明确错误拒绝)。`signal` 仅用于创建。返回 `AgentHandle`。 配置驱动的 `ctx.agentLoop.create()` 路径让循环 fiber 拥有其 agent(该路径会丢弃 handle)。对于以编程方式创建的 agent,handle 持有者是唯一面向消费方的 teardown 能力;AgentLoop 提供方卸载是一条独立的结构性 teardown 边,而不是向应用代码公开的另一个 handle。 @@ -65,9 +65,9 @@ interface Config { 每次提供方调用成功结束时,都会恰好追加一个 `assistant/message` 完成锚点,包括无内容调用和以 `max-tokens` 结束的调用。该锚点原样记录组装后的内容,在 `sourceEventSeqs` 中列出确切的分片 seq(流没有分片时为 `[]`),并在用量可用时包含用量;空内容不会进入派生消息历史。 -在 `agent/request` 返回提供方/模型调用配置后,循环会调用 `ctx.llm.prepareCall()`,在活跃轮次信号的控制下校验由适配器持有的字段,并填入配置的推理(reasoning)强度和输出 token 默认值。准备完成的调用会在这次异步解析、`request/header` 日志记录和最终分派期间保留同一项确切的适配器注册,因此 HMR(热模块替换)不会把某个适配器的能力解析结果与另一适配器的请求混用。请求 header 会记录生效配置以及哪些字段来自适配器。下一次 waterfall(瀑布式事件)前,循环会从提议中移除这些带标记字段,使当前精确路由重新填入自身默认值;未带标记的显式设置会跨步骤和路由变化保留。没有已注册适配器的路由会保留原定配置,使 `llm/stream` 监听器可以接管并短路该请求;最终分派仍会以 `NO_ADAPTER` 拒绝未得到处理的路由。新循环实例在恢复时会遵循同一套适配器默认值标记规则。 +在 `agent/request` 返回提供方/模型调用配置后,循环会调用 `ctx.llm.prepareCall()`,在活跃轮次信号的控制下校验由适配器负责的字段,并填入配置的推理(reasoning)强度和输出 token 默认值。准备完成的调用会在这次异步解析、`request/header` 日志记录和最终分派期间保留同一项确切的适配器注册,因此 HMR(热模块替换)不会把某个适配器的能力解析结果与另一适配器的请求混用。请求 header 会记录生效配置以及哪些字段来自适配器。下一次 waterfall(瀑布式事件)前,循环会从提议中移除这些带标记字段,使当前精确路由重新填入自身默认值;未带标记的显式设置会跨步骤和路由变化保留。没有已注册适配器的路由会保留原定配置,使 `llm/stream` 监听器可以接管并短路该请求;最终分派仍会以 `NO_ADAPTER` 拒绝未得到处理的路由。新循环实例在恢复时会遵循同一套适配器默认值标记规则。 -插件失败会结束当前轮次,而不是结束循环。最终适配器选择、分发与迭代失败会以终止错误或中止结束的形式由 `ctx.llm` 传来,并进入 `agent/request-error`;middleware、结果处理、工具及其他扩展失败仍会抛出并直接关闭轮次。恢复逻辑会接收请求坐标、不可变的提供方事实、准备完成的适配器注册所捕获的不可变重试策略以及轮次信号;middleware 接管未准备路由时,该策略缺失。处理失败的监听器返回 `{ kind: 'retry' }`;未被处理的失败是终态。AgentLoop 为当前准入操作或轮次持有一个取消信号。有效的 `cancel(cause)` 在未设置 `keepInbox` 时清除待处理工作,并以协作方式中止该信号;空闲取消是空操作。abort 触发后、活动收敛到空闲前到达的唤醒输入会被锁存(`wakeRequested`),并在 driver 自身的收敛边界重放,无需再发一条唤醒 send 即可执行;`disposed` 取消从不锁存,而 agent 已处于空闲时发送的唤醒总是打开自己的 turn 边界(即使消息已被清除,状态也会显示瞬态 `idle → running → idle` 对)。持久 `turn/end` 为 `user` 和 `parent` 记录 `aborted`,dispose 则记录 `disposed`;未分发的模型工具调用会收到合成的 `tool/call` 与 `ABORTED_BEFORE_DISPATCH` 结果对。取消原因只影响报告方式,不影响如何处理在取消后完成终结的结果上下文。dispose 会等待忽略信号的工作完成,然后才从注册表移除。[显式取消决策](../../../.agents/notes/implemented/architecture/2026-07-16-explicit-turn-cancellation.md)与[取消收敛窗口唤醒锁存](../../../.agents/notes/implemented/bug-fix/2026-08-07-cancel-convergence-wake-latch.md)规定生命周期与竞态约定。 +插件失败会结束当前轮次,而不是结束循环。最终适配器选择、分发与迭代失败会以终止错误或中止结束的形式由 `ctx.llm` 传来,并进入 `agent/request-error`;middleware、结果处理、工具及其他扩展失败仍会抛出并直接关闭轮次。恢复逻辑会接收请求坐标、不可变的提供方事实、准备完成的适配器注册所捕获的不可变重试策略以及轮次信号;middleware 接管未准备路由时,该策略缺失。处理失败的监听器返回 `{ kind: 'retry' }`;未被处理的失败是终态。AgentLoop 为当前准入操作或轮次管理一个取消信号。有效的 `cancel(cause)` 在未设置 `keepInbox` 时清除待处理工作,并以协作方式中止该信号;空闲取消是空操作。abort 触发后、活动收敛到空闲前到达的唤醒输入会被锁存(`wakeRequested`),并在 driver 自身的收敛边界重放,无需再发一条唤醒 send 即可执行;`disposed` 取消从不锁存,而 agent 已处于空闲时发送的唤醒总是打开自己的 turn 边界(即使消息已被清除,状态也会显示瞬态 `idle → running → idle` 对)。持久 `turn/end` 为 `user` 和 `parent` 记录 `aborted`,dispose 则记录 `disposed`;未分发的模型工具调用会收到合成的 `tool/call` 与 `ABORTED_BEFORE_DISPATCH` 结果对。取消原因只影响报告方式,不影响如何处理在取消后完成终结的结果上下文。dispose 会等待忽略信号的工作完成,然后才从注册表移除。[显式取消决策](../../../.agents/notes/implemented/architecture/2026-07-16-explicit-turn-cancellation.md)与[取消收敛窗口唤醒锁存](../../../.agents/notes/implemented/bug-fix/2026-08-07-cancel-convergence-wake-latch.md)规定生命周期与竞态约定。 在步骤内,独占调用形成屏障;并行安全调用使用有界滚动池,并在启动前重新分类。只有分发和调用主体的执行会发生重叠。策略、持久结果和结果上下文仍保持模型顺序。中止会阻止启动新的调用,等待已启动调用的结果处理完毕,并保留其完成终结后的结果上下文,不区分取消原因。内部调度器故障会停止新的分发,等待已启动的分发,然后在不虚构工具结果的情况下到达轮次错误边界。 @@ -76,7 +76,7 @@ interface Config { 超出「调用模型、运行工具、重复」的所有内容,都属于监听事件分类体系的插件: - 钩子与策略:相关的 `agent/*` 检查点,加上受守卫保护的 `tools/pre-execute` → `tools/execute` → `tools/post-execute` → 定义拥有的 `finalizeContent` → `tools/result` 流水线;确切事件签名与 mode 位于 [core.md](../../../docs/subsystems/core.md#cordis-surface) 与 [tools.md](../../../docs/subsystems/tools.md#cordis-surface) 的生成区块 - 压缩(compaction):在 `agent/pre-step` 上观测压力;在 `agent/request-error` 上进行规范的溢出修复 -- 模型请求恢复:`dsh-llm-retry` 在 `agent/request-error` 上记录并等待针对确切提供方配置的常规退避或无上限退避,发出不进入表层的 `llm/retry` 状态,然后返回重试动作 +- 模型请求恢复:`dsh-llm-retry` 在 `agent/request-error` 上记录并等待针对确切提供方配置的 normal 或无界退避,发出不进入表层的 `llm/retry` 状态,然后返回重试动作 - 沙箱、权限、计划模式:使用 `tools/pre-execute` 提供可扩展的拒绝/询问,使用 `tools.guard()` 提供单调拥有方策略,使用 `tools/post-execute` 处理结果决定,并使用 `tools/result` 进行最终观测 - subagent:在循环外部实现为 `ctx.subagents` 提供方;进程内提供方使用 `ctx.agents.create()` 创建 agent,并通过其持有的 `AgentHandle` 执行 teardown,而通用的 [`ctx.jobs`](../../jobs/jobs/) 与 [`dsh-tool-subagent`](../../subagent/tool-subagent/) 负责后台收集。 - 持久化:`session/event` 发生后立即安排 write-behind;`session/flush` 是显式观测屏障 diff --git a/packages/core/system-prompt/README.i18n.yaml b/packages/core/system-prompt/README.i18n.yaml index 18a974be44..5e5a3f6bea 100644 --- a/packages/core/system-prompt/README.i18n.yaml +++ b/packages/core/system-prompt/README.i18n.yaml @@ -3,4 +3,4 @@ # after editing either side, bring the other along and re-record with: # pnpm run verify-translation-pairing --write packages/core/system-prompt/README.md README.md: d750a507e628e7609af542227e4528d4d4934ce8 -README.zh.md: c81b850f2e93a90e5b69e1ae5258aa7cb911ab44 +README.zh.md: c535dbd0535be3a8e7b6f78979c63dc03e562d36 diff --git a/packages/core/system-prompt/README.zh.md b/packages/core/system-prompt/README.zh.md index c81b850f2e..c535dbd053 100644 --- a/packages/core/system-prompt/README.zh.md +++ b/packages/core/system-prompt/README.zh.md @@ -2,7 +2,7 @@ [English](README.md) | 中文 -系统提示词组装注册表。插件可以贡献有序段落、工具 schema 和具名变量。循环在每个步骤组装一次,并将结果渲染为完整的模型提示词。此插件拥有静态 harness 身份和全局部署 persona;agent(智能体)作用域的 persona 会遮蔽全局默认值。 +系统提示词组装注册表。插件可以贡献有序段、工具 schema 和具名变量。循环在每个步骤组装一次,并将结果渲染为完整的模型提示词。此插件拥有静态 harness 身份和全局部署 persona;agent(智能体)作用域的 persona 会遮蔽全局默认值。 ## 配置 @@ -10,8 +10,8 @@ |---|---|---| | `includeHarnessIdentity` | `true` | 是否包含顺序为 −100 的固定开场白 `You are an AI agent powered by DeepSeek Harness.`。仅当兼容性部署拥有完整系统提示词时设为 `false`。 | | `includeRuntimeContext` | `true` | 是否在组装中包含有序动态上下文。设为 false 时不会求值上下文提供方,并会在 waterfall 后丢弃 `system-prompt/assemble` 监听器添加的上下文;其他服务及其强制机制仍然生效。 | -| `persona` | `''` | 全局部署 persona 的默认值:这是唯一可由配置直接编写的提示词片段。除非被 agent 作用域的同名贡献遮蔽,否则它会渲染为顺序为 0 的 `deployment:persona` 段落。它是模板,完整的 `{{…}}` 组会严格按已注册变量解释(随附循环注册 `{{model}}`/`{{cwd}}`),目前没有表达字面量花括号的转义语法。为空 ⇒ 渲染时删除该段落。 | -| `toolOrder` | 无 | 显式指定面向模型的工具顺序。该列表由 `ToolSchema.name` 组成,并且必须恰好包含一个 `''` 剩余项标记(`TOOL_ORDER_REST`):已列工具按列表位置排列,未列工具则按名称字典序插入该标记所在的位置。缺席 ⇒ 直接按名称字典序排列。该顺序会在 `system-prompt/assemble` waterfall(瀑布式事件)之前应用于已收集的工具。与段落的 `order` 排序一样,它会规范化注册表贡献的内容;注册顺序只是插件加载时序的产物。waterfall 监听器如果修改列表,就必须对自身输出的确定性负责。配置错误会明确失败:列表没有恰好一个其余项或存在重复项,会在加载时抛出;已列名称没有对应已注册工具,会使每次 `assemble()` 被拒绝;工具提供方返回保留的其余项名称也会被拒绝。在随附循环下,轮次会在任何模型请求前失败。为何采用中心列表而非每插件权重,见[显式面向模型工具顺序](../../../.agents/notes/implemented/feature/2026-07-06-explicit-tool-order.md)。 | +| `persona` | `''` | 全局部署 persona 默认值:唯一由配置提供的提示词片段,渲染为顺序为 0 的 `deployment:persona` 段,除非 agent 作用域的贡献将其遮蔽。它是模板,完整的 `{{…}}` 组会严格按已注册变量解释(随附循环注册 `{{model}}`/`{{cwd}}`),目前没有表达字面量花括号的转义语法。为空 ⇒ 渲染时删除该段。 | +| `toolOrder` | 无 | 显式指定面向模型的工具顺序。该列表由 `ToolSchema.name` 组成,并且必须恰好包含一个 `''` 其余项标记(`TOOL_ORDER_REST`):已列工具按列表位置排列,未列工具则按名称字典序插入该标记所在的位置。缺席 ⇒ 直接按名称字典序排列。该顺序会在 `system-prompt/assemble` waterfall(瀑布式事件)之前应用于已收集的工具。与段的 `order` 排序一样,它会规范化注册表贡献的内容;注册顺序只是插件加载时序的产物。修改列表的 waterfall 监听器应对其输出的确定性负责。配置错误会明确失败:列表没有恰好一个其余项或存在重复项,会在加载时抛出;已列名称没有对应已注册工具,会使每次 `assemble()` 被拒绝;工具提供方返回保留的其余项名称也会被拒绝。在随附循环下,轮次会在任何模型请求前失败。为何采用中心列表而非每插件权重,见[显式面向模型工具顺序](../../../.agents/notes/implemented/feature/2026-07-06-explicit-tool-order.md)。 | ## 服务:`SystemPrompt`(ctx 键:`systemPrompt`) @@ -22,18 +22,18 @@ - `ctx.systemPrompt.suppressRuntimeContext(): () => void`:抑制调用作用域的所有动态上下文贡献。多个注册会独立组合;只有当不再存在抑制器时,dispose 返回的 effect 才会恢复上下文。 - `ctx.systemPrompt.tools(provider: (context: AssembleContext) => ToolProviderResult): () => void`:贡献工具 schema;每次组装时使用该次组装的上下文求值。`ToolProviderResult` = `{ schemas, knownNames? }`:`schemas` 是限制后的可见集合;`knownNames` 是限制前由 `toolOrder` 使用的全集。提供方不得返回名为 `TOOL_ORDER_REST` 的 schema。带作用域提供方只在其作用域的组装中查询。随调用 fiber 一并 dispose。 - `ctx.systemPrompt.variable(name: string, provider: (context) => string | undefined): () => void`:贡献提示词变量,在段文本中以 `{{name}}` 引用。带作用域变量会为该 agent 遮蔽同名全局变量。同层重复或无法引用的名称会抛出;`undefined` 表示「本次组装没有值」。随调用 fiber 一并 dispose。 -- `ctx.systemPrompt.assemble(context?: AssembleContext): Promise`:为一个调用方组装提示词:将全局层与 `context.scope` 的层合并,并在变换 waterfall 前分离工具 schema。它经过按作用域筛选的 `system-prompt/assemble` waterfall,之后将一个有效的 complete 段恢复为唯一的提示词段落,并实施任何活动的 runtime-context 抑制器。可选的 `context.signal` 显式控制本次组装请求;提供方与监听器可以配合该信号,但不得将它保留给另一轮次。存在多个 complete 段、已配置的 `toolOrder` 指名提供方 `knownNames` 全集以外的工具,或提供方返回保留的其余项名称时,调用会被拒绝。 +- `ctx.systemPrompt.assemble(context?: AssembleContext): Promise`:为一个调用方组装提示词:将全局层与 `context.scope` 的层合并,并在变换 waterfall 前分离工具 schema。它经过按作用域筛选的 `system-prompt/assemble` waterfall,之后将一个有效的 complete 段恢复为唯一的提示词段,并实施任何活动的 runtime-context 抑制器。可选的 `context.signal` 显式控制本次组装请求;提供方与监听器可以配合该信号,但不得将它保留给另一轮次。存在多个 complete 段、已配置的 `toolOrder` 指名提供方 `knownNames` 全集以外的工具,或提供方返回保留的其余项名称时,调用会被拒绝。 ### 实时事件 -普通段落以 `system-prompt/assemble` 的返回结果为准;complete 段落则会在 waterfall 之后作为最终提示词约束生效。替换条目的监听器必须保留任何已启用的 Code Mode 或结构化输出协议。筛选需要在呈现、查找与执行之间保持一致时,应使用 [`ToolRuntime.restrict()`](../tools/README.md)。注册表变更通知不经过筛选。事件签名和分发约定以 [system-prompt.md](../../../docs/subsystems/system-prompt.md#cordis-surface) 的生成区块为准。 +普通段以 `system-prompt/assemble` 的返回结果为准;complete 段则会在 waterfall 之后作为最终提示词约束生效。替换条目的监听器必须保留任何已启用的 Code Mode 或结构化输出协议。筛选需要在呈现、查找与执行之间保持一致时,应使用 [`ToolRuntime.restrict()`](../tools/README.md)。注册表变更通知不经过筛选。[system-prompt.md](../../../docs/subsystems/system-prompt.md#cordis-surface) 的生成区块拥有事件签名和分发约定。 ### 关键类型 - `AssembleContext`:说明一次 `assemble()` 调用的用途。它可通过合并扩展;此处声明 `scope?: ScopeKey`(层选择器)与 `signal?: AbortSignal`(显式请求控制能力),而 `dsh-agent` 声明 `agent?: Agent`(类型化 DX 字段;绝不能在没有 `scope` 时设置,应使用 `assembleContextFor(agent, signal)`)。提供方必须容忍字段缺席,因为裸 `assemble()` 携带的是无作用域、无信号的空上下文。`signal` 是请求值,不是环境 Agent 执行 frame 的一部分。 -- `PromptSection`:`{ name, order, text, complete? }`。各段按 `order` 升序拼接。顺序区间:`-100` 是 harness 身份,`0` 是部署 persona,工具引导使用 `100–199`。协作式组装完成后,一个有效的 `complete` 段会抑制其他所有段落。 +- `PromptSection`:`{ name, order, text, complete? }`。各段按 `order` 升序拼接。顺序区间:`-100` 是 harness 身份,`0` 是部署 persona,工具引导使用 `100–199`。协作式组装完成后,一个有效的 `complete` 段会抑制其他所有段。 - `PromptAssembly`:`{ sections: AssembledSection[], tools: ToolSchema[], variables: Record }`。各段文本到达时已求值,但尚未插值;`variables` 保存所有已注册变量在当前上下文中求得的值。工具 schema 按设计属于组装结果:「模型获知自己能做什么」是一个连贯整体,尽管适配器把 schema 作为独立 wire 字段传输。 - `renderPrompt(assembly)`:插值每个段中的 `{{variable}}` 引用,删除空段,并用空行连接。严格规则:未知引用(使用 `Object.hasOwn` 查找,因此 `{{constructor}}` 等原型名称未知)、已注册但无值的引用、格式错误的完整 `{{…}}` 组,或出现 `{{` 却没有形成完整的 `{{…}}` 组、而后文仍有 `}}`(`{{{model}}}`),都会抛出异常;明确失败胜过交付格式错误的提示词。孤立的 `{{` 如果后面任何位置都没有 `}}`,会按字面量通过;替换值绝不再次扫描。 @@ -41,7 +41,7 @@ ### 扩展点 -- 段落提供方:工具包负责提供自身的跨调用指导(`tool:bash`、`tool:read` 等);此插件负责提供 `harness:identity` 与 `deployment:persona`。 +- 段提供方:工具包拥有自身的跨调用指导(`tool:bash`、`tool:read` 等);此插件拥有 `harness:identity` 与 `deployment:persona`。 - 变量提供方:agent loop(智能体循环)注册 `model` 与 `cwd`;任何插件都可以注册自己拥有的事实(未来的 `date`、git 状态等)。 - 工具 schema 提供方:`ToolRuntime` 自动将自身注册为工具提供方。 - [`system-prompt/assemble` waterfall](#live-events):按调用方协作式修改或替换组装结果,之后再实施 complete 段约束。 @@ -54,7 +54,7 @@ #### 模型看到的内容 -默认情况下,每次组装都从下方 harness 身份开始,然后在严格变量插值后追加已配置 persona 与有序插件段。`includeHarnessIdentity: false` 仅省略这个固定开场白。空段会消失;带作用域的段和变量可以为一个 agent 遮蔽全局项。`system-prompt/assemble` waterfall 决定交付的提示词与工具 schema,除非一个有效段声明自身为 complete;此时,该确切段落会成为完整的系统提示词,而 waterfall 得到的上下文、工具和变量保持不变。有序动态上下文与系统提示词段落分离,只在存在时才会成为带来源的 user 角色快照。`includeRuntimeContext: false` 或带作用域的抑制器会移除所有这类上下文,包括监听器添加的内容,但不会禁用拥有底层策略或状态的服务。 +默认情况下,每次组装都从下方 harness 身份开始,然后在严格变量插值后追加已配置 persona 与有序插件段。`includeHarnessIdentity: false` 仅省略这个固定开场白。空段会消失;带作用域的段和变量可以为一个 agent 遮蔽全局项。`system-prompt/assemble` waterfall 决定交付的提示词与工具 schema,除非一个有效段声明自身为 complete;此时,该确切段会成为完整的系统提示词,而 waterfall 得到的上下文、工具和变量保持不变。有序动态上下文与系统提示词段落分离,只在存在时才会成为带来源的 user 角色快照。`includeRuntimeContext: false` 或带作用域的抑制器会移除所有这类上下文,包括监听器添加的内容,但不会禁用拥有底层策略或状态的服务。 ##### harness 身份 diff --git a/packages/llm/llm/README.i18n.yaml b/packages/llm/llm/README.i18n.yaml index 1023196cc4..e417c7d887 100644 --- a/packages/llm/llm/README.i18n.yaml +++ b/packages/llm/llm/README.i18n.yaml @@ -3,4 +3,4 @@ # after editing either side, bring the other along and re-record with: # pnpm run verify-translation-pairing --write packages/llm/llm/README.md README.md: 2cae9a05a58295b06d25382729a3304dbdc9a6fa -README.zh.md: ccf4d94e22d49efb26c8f8d92c518b89104e5adf +README.zh.md: afcf6d929608a010e7d45afd84222c43cf4d91d4 diff --git a/packages/llm/llm/README.zh.md b/packages/llm/llm/README.zh.md index ccf4d94e22..afcf6d9296 100644 --- a/packages/llm/llm/README.zh.md +++ b/packages/llm/llm/README.zh.md @@ -17,7 +17,7 @@ - `ctx.llm.registerModelDiscovery(settingsNs: string, discover): () => void` 为本插件负责的 settings namespace 提供查询提供方端点的能力。每个 namespace 只能有一个(`INVALID_DISCOVERY`/`DUPLICATE_DISCOVERY`),并随调用 fiber dispose。 - `ctx.llm.listModelDiscoveryNamespaces(): string[]` 列出可以询问端点的 namespace,让界面只在可用之处提供该动作。 - `ctx.llm.discoverModels(settingsNs: string, request: LlmModelDiscoveryRequest): Promise` 询问某个端点它公布了哪些模型。 -- `ctx.llm.providerRetryPolicy(provider: string): ResolvedRetryPolicy` 返回注册时捕获的提供方重试策略,并解析 `normal` 默认值。 +- `ctx.llm.providerRetryPolicy(provider: string): ResolvedRetryPolicy` 返回注册时捕获的提供方自身的重试策略,并解析 `normal` 默认值。 - `ctx.llm.listModels(provider: string): Promise` 发现某个已注册提供方当前公布的模型。 - `ctx.llm.resolveModelInfo(provider: string, model: string, signal?: AbortSignal): Promise` 从负责该精确路由的适配器中,解析并校验确切模型身份,以及可用上下文、输出默认值和推理(reasoning)元数据;异步适配器可选地支持取消。 - `ctx.llm.resolveCallConfig(config: LlmCallConfig, signal?: AbortSignal): Promise` 校验显式推理强度,并填入适配器配置的调用默认值,但不自动调整。 @@ -28,13 +28,13 @@ 询问端点属于配置期针对**草稿**的操作,以 settings namespace 而非提供方路由为键——界面正在新增的提供方还不存在,也就没有路由可点名。但请求仍可**点名**它正在编辑的路由,而已经描述该路由的适配器会用自己的知识作答,无需联网;路由名称和 `baseURL` 至少需要提供一项。除此之外,请求携带端点、协议,以及一条 harness 只用于这一次询问、绝不存储的凭据。这里既不读取也不写入 settings 或 credentials;返回内容是界面可以提供给用户采纳的候选元数据,而不是已注册的 catalog。`LlmDiscoveredModel` 除 `id` 外每个字段都是可选的,因为大多数提供方列表只公布 id;采纳其中一条的界面仍要补上其适配器所需的容量。重复与不可用的 id 会被丢弃,无人服务的 namespace 以 `NO_DISCOVERY` 失败,既不点名路由也不给端点的请求以 `INVALID_DISCOVERY` 失败。 -提供方和模型元数据用于发现,不构成路由白名单。`registerAdapter()` 仍负责保证提供方路由的排他注册,并为每条路由捕获适配器的重试策略;适配器可以接受未出现在 `listModels()` 中的模型 ID,消费方不得仅因模型未列出而拒绝请求。返回的 selector 元数据已分离;无效或重复的适配器条目会以 `INVALID_ADAPTER` 或 `INVALID_CATALOG` 失败。 +提供方和模型元数据用于发现,不构成路由白名单。`registerAdapter()` 仍负责保证提供方路由的排他注册,并为每条路由捕获适配器的重试策略;适配器可以接受未出现在 `listModels()` 中的模型 id,消费方不得仅因模型未列出而拒绝请求。返回的 selector 元数据已分离;无效或重复的适配器条目会以 `INVALID_ADAPTER` 或 `INVALID_CATALOG` 失败。 每个拓扑提交点——适配器路由注册或 dispose、目录条目出现或撤回——都会在变更之后发出无载荷的 `llm/adapters-updated` 事件,消费方因此会重新读取 `listProviders()`/`listModels()`/`listConfigurableProviders()`,而不是轮询。观察者故障会被记录并隔离,不能否决变更;只有带 `INVARIANT` 码的故障会在通知完所有观察者后重新抛出。 -确切模型元数据是独立的正确性查询,不是 catalog 装饰或全局 LLM 设置。`resolveModelInfo()` 会向拥有精确提供方/模型路由的适配器查询一次;适配器可以描述未列出的动态模型。缺少 `context` 表示模型容量未知;缺少 `defaultMaxTokens` 表示继续沿用提供方自身的输出默认行为;缺少 `reasoning` 则表示推理能力不可用。无效的身份、上下文、输出默认值或推理元数据会以 `INVALID_MODEL_INFO`、`INVALID_MODEL_CONTEXT`、`INVALID_MODEL_MAX_TOKENS` 或 `INVALID_MODEL_REASONING` 失败。 +确切模型元数据是独立的正确性查询,不是 catalog 装饰或全局 LLM 设置。`resolveModelInfo()` 会向拥有精确提供方/模型路由的适配器查询一次;适配器可以描述未列出的动态模型。缺少 `context` 表示模型容量未知;缺少 `defaultMaxTokens` 表示继续沿用提供方自身的输出默认值;缺少 `reasoning` 则表示推理能力不可用。无效的身份、上下文、输出默认值或推理元数据会以 `INVALID_MODEL_INFO`、`INVALID_MODEL_CONTEXT`、`INVALID_MODEL_MAX_TOKENS` 或 `INVALID_MODEL_REASONING` 失败。 -`defaultMaxTokens` 是适配器配置的单次请求输出上限,不是模型硬上限。仅当请求省略 `maxTokens` 时,`resolveCallConfig()` 才会填入该值;显式上限优先。推理标识符是由适配器持有的不透明字符串,而非核心枚举:同一次解析只接受与已公布标识符完全一致的值,在存在 `defaultEffort` 时填入它,否则保留提供方默认值。异步模型解析器会接收调用方的 `signal`,并且必须在取消后尽快结算。`prepareCall()` 还会返回同一次查询得到的、与适配器内部状态分离的上下文元数据,通过 `adapterDefaults` 标明填入了哪些 `maxTokens` 和 `reasoningEffort` 字段,并在请求头记录和最终分发期间始终保留同一项精确的适配器注册。因此,HMR(热模块替换)不会把一个适配器的能力结果与另一个适配器的请求混用;复用其一次性句柄或更改调用配置字段会以 `INVALID_PREPARED_CALL` 失败。不支持的显式或配置推理强度会在提供方 I/O 前以 `UNSUPPORTED_REASONING_EFFORT` 失败。 +`defaultMaxTokens` 是适配器配置的单次请求输出上限,不是模型硬上限。仅当请求省略 `maxTokens` 时,`resolveCallConfig()` 才会填入该值;显式上限优先。推理标识符是由适配器定义的不透明字符串,而非核心枚举:同一次解析只接受与已公布标识符完全一致的值,在存在 `defaultEffort` 时填入它,否则保留提供方默认值。异步模型解析器会接收调用方的 `signal`,并且必须在取消后尽快结算。`prepareCall()` 还会返回同一次查询得到的、与适配器内部状态分离的上下文元数据,通过 `adapterDefaults` 标明填入了哪些 `maxTokens` 和 `reasoningEffort` 字段,并在请求头记录和最终分发期间始终保留同一项精确的适配器注册。因此,HMR(热模块替换)不会把一个适配器的能力结果与另一个适配器的请求混用;复用其一次性句柄或更改调用配置字段会以 `INVALID_PREPARED_CALL` 失败。不支持的显式或配置推理强度会在提供方 I/O 前以 `UNSUPPORTED_REASONING_EFFORT` 失败。 ### 事件 @@ -44,7 +44,7 @@ ### 扩展点 -- 继承 `LlmAdapter` 并调用 `ctx.llm.registerAdapter(providers, adapter)`,添加一条或多条提供方路由。`GenerateOptions.provider` 选择适配器;`GenerateOptions.model` 属于适配器,可以动态解析。覆盖 `providerRetryPolicy()` 以提供由提供方持有的恢复配置,覆盖 `providerInfo()` 和异步 `listModels()` 以公开 selector 元数据;精确身份、容量、输出默认值或可选推理强度可用时,实现 `resolveModel()`;异步解析器必须响应其可选的取消 signal。默认实现使用有界的 normal 重试策略,将路由和模型 id 用作名称,不公布模型,也不返回容量、输出默认值或推理元数据。 +- 继承 `LlmAdapter` 并调用 `ctx.llm.registerAdapter(providers, adapter)`,添加一条或多条提供方路由。`GenerateOptions.provider` 选择适配器;`GenerateOptions.model` 属于适配器,可以动态解析。覆盖 `providerRetryPolicy()` 以提供由提供方定义的恢复配置,覆盖 `providerInfo()` 和异步 `listModels()` 以公开 selector 元数据;精确身份、容量、输出默认值或可选推理强度可用时,实现 `resolveModel()`;异步解析器必须响应其可选的取消 signal。默认实现使用有界的 normal 重试策略,将路由和模型 id 用作名称,不公布模型,也不返回容量、输出默认值或推理元数据。 - 包装 `llm/stream` 时,通过 `ctx.on()` waterfall listener 实现缓存、日志或路由。包装层如果在已经发出分片后重试,就没有可持久记录的尝试边界;因此,随产品交付的 agent 重试策略改用 `agent/request-error`。 ### 消息(`message.ts`)与内容块(`types.ts`) diff --git a/packages/subagent/subagent/README.i18n.yaml b/packages/subagent/subagent/README.i18n.yaml index 1dc307eaee..8ab47d1322 100644 --- a/packages/subagent/subagent/README.i18n.yaml +++ b/packages/subagent/subagent/README.i18n.yaml @@ -3,4 +3,4 @@ # after editing either side, bring the other along and re-record with: # pnpm run verify-translation-pairing --write packages/subagent/subagent/README.md README.md: ed4a9123a2dfa5b2fa5abc67f4513547feb3d140 -README.zh.md: 83ab345a0dbc0cbb117abcab2b054790dc3758da +README.zh.md: 1bb44b1c5c55400bb26c4c248eea76039f6296d3 diff --git a/packages/subagent/subagent/README.zh.md b/packages/subagent/subagent/README.zh.md index 83ab345a0d..1bb44b1c5c 100644 --- a/packages/subagent/subagent/README.zh.md +++ b/packages/subagent/subagent/README.zh.md @@ -16,16 +16,16 @@ subagent seam 允许一个 agent(智能体)通过具名提供方把工作委 | `getProvider(name)` | 返回提供方;不存在时返回 `undefined`。 | | `list()` | 按插入顺序返回提供方名称。 | | `start(name, request)` | 校验普通调用方请求,解析其已分离的 `one-shot` 描述符,然后等待提供方发布真正的一次性子 agent。兑现时返回由持有方拥有的 `SubagentRun`;如果调用被拒绝,提供方已经清理所有尚未发布的启动资源。发布后的轮次故障或基础设施故障则通过该 run 结算。可继续子 agent 绝不通过此操作进入。 | -| `startContinuable(spec)` | 建立一个持久化的可继续子 agent,并投递其初始提示词。子 agent 的 inbox 一接受该提示词,调用就会兑现为 `{ childId, messageId }`,无需等待轮次开始,也无需等待消息写入会话日志。在此之前发生的任何失败都会使调用被拒绝,不返回任何 ID,并完全回滚该子 agent。要求 `ctx.agents`、会话持久化以及具备 `prepareContinuable` 能力的提供方。 | +| `startContinuable(spec)` | 建立一个持久化的可继续子 agent,并投递其初始提示词。子 agent 的 inbox 一接受该提示词,调用就会兑现为 `{ childId, messageId }`,无需等待轮次开始,也无需等待消息写入会话日志。在此之前发生的任何失败都会使调用被拒绝,不返回任何 id,并完全回滚该子 agent。要求 `ctx.agents`、会话持久化以及具备 `prepareContinuable` 能力的提供方。 | | `followup(parent, childId, content, { source, signal })` | 将来自确切在线直接父级的一条后续消息作为子 agent 的下一个 FIFO 轮次投递,术语与 `Agent.followup()` 一致,并返回被接受的 `MessageId`。驻留中的子 agent 由其 inbox 直接接受(唤醒处于 waiting 的 Activation);不驻留的则从其持久化会话冷恢复。要求 `ctx.agents`;冷恢复还要求会话持久化。 | | `interrupt(targetSessionId, authority)` | 凭人类出示的持久化父级地址 `{ kind: 'user', parentSessionId }`,或确切在线的祖先 Agent `{ kind: 'ancestor', agent }` 进行授权,中断一个在线可继续子级的当前轮次。准入判定同步完成,但取消异步生效:该操作发出 `Agent.cancel(cause, { keepInbox: true })` 后立即返回,不等待目标观察到信号。尚未领取的待处理 inbox 工作、Activation 和已发布的后代均会保留;已经领取到被中断轮次中的工作不会重新入队。目标不存在时视为已接受的空操作;错误的父级地址,或陈旧、指向自身、并非祖先的调用方,会以 `UNAUTHORIZED` 被拒绝。 | | `reportFrom(child, content, { delivery, signal })` | 从确切在线可继续 child 向其确切在线直接 parent 投递一条选中消息,并返回已接受的稳定 `MessageId`。静默投递会注入上下文;唤醒投递会提交一个后续 parent 轮次。 | | `registerContinuableSetup(contribution)` | 把一项可选部署能力组合到每个可继续 child 尚未发布的作用域中,并支持从驻留 child 立即撤销。 | -| `drainContinuableDescendants(parents)` | 在由 host 持有的确切在线父级 Agent 之下关闭准入,只停止这些父级可见的可继续后代;等待已在这些根节点下获准的物化过程完成发布或回滚后,再按子级优先顺序释放所选的各棵树。该截止状态会持续到每个确切父级离开注册表;无关的父级树和管理器全局准入仍保持可用。 | -| `listChildren(parentSessionId, signal?)` | 按 `createdAt`、再按 ID 的顺序列出由会话支撑的直接 subagent,包括其 `one-shot`/`continuable` 模式、`running`/`inactive` 活动状态、根据 origin 分类得出的一层 `hasChildren` 提示,以及每个子级的诊断信息,且不会加载或恢复它们。该操作直接读取在线会话存储和可选的会话持久化(没有持久化时只枚举在线子级),并要求已挂载 `sessionProjections` 注册表;不要求 `ctx.agents`、继续执行管理器或任何查询服务。 | +| `drainContinuableDescendants(parents)` | 在由 host 拥有的确切在线父级 Agent 之下关闭准入,只停止这些父级可见的可继续后代;等待已在这些根节点下获准的物化过程完成发布或回滚后,再按子级优先顺序释放所选的各棵树。该截止状态会持续到每个确切父级离开注册表;无关的父级树仍在线,管理器全局准入仍保持开放。 | +| `listChildren(parentSessionId, signal?)` | 按 `createdAt`、再按 id 的顺序列出由会话支撑的直接 subagent,包括其 `one-shot`/`continuable` 模式、`running`/`inactive` 活动状态、根据 origin 分类得出的一层 `hasChildren` 提示,以及每个子级的诊断信息,且不会加载或恢复它们。该操作直接读取在线会话存储和可选的会话持久化(没有持久化时只枚举在线子级),并要求已挂载 `sessionProjections` 注册表;不要求 `ctx.agents`、继续执行管理器或任何查询服务。 | | `listDescendants(rootSessionId, signal?)` | 从同一份在线优先语料按稳定 pre-order 展平根的完整会话树,并为每个 subagent 条目附加持久 `parentId` 与相对根的 `depth`。普通会话与一次性 child 仍作为遍历节点,因此其下的可继续后代仍可发现。身份、diagnostic、依赖与取消约定均沿用 `listChildren()`。 | -`SubagentStartRequest.label` 是由会话支撑的一次性 child 所使用的可选简短持久化显示标签。面向模型的委派会提供其已有的 `description`;底层调用方无需凭空构造展示元数据。可继续启动始终携带自身的必填标签。`signal` 是必填项,也是一次性 `start` 的规范取消通道。发布前中止会使 `start()` 在回滚后拒绝;发布后中止会取消已返回 run 的剩余轮次工作,但不会隐藏其 id。请求还可以选择模型、要求结构化输出、限制委派深度、约束子 agent 工具或设置子 agent persona。对于可继续启动或后续操作,调用方信号的控制范围只包括 inbox 接受之前的查找、物化和准入。一旦 inbox 接受消息,Activation 就由管理器独立拥有;此后调用方取消既不会取消已接受的轮次,也不会 dispose(资源释放)子 agent。 +`SubagentStartRequest.label` 是由会话支撑的一次性 child 所使用的可选简短持久化显示标签。面向模型的委派会提供其已有的 `description`;底层调用方无需凭空构造展示元数据。可继续启动始终携带自身的必填标签。`signal` 是必填项,也是一次性 `start` 的规范取消通道。发布前中止会使 `start()` 在回滚后拒绝;发布后中止会取消已返回 run 的剩余轮次工作,但不会隐藏其 id。请求还可以选择模型、要求结构化输出、限制委派深度、约束子 agent 工具或设置子 agent persona。对于可继续启动或后续操作,调用方信号只负责 inbox 接受前的查找、物化和准入;此后,Activation 由管理器独立拥有,因此调用方取消既不会取消已接受的轮次,也不会 dispose(资源释放)子 agent。 后续操作的权限来自子 agent 持久化 header 中记录的确切在线直接父级。冷恢复会在重建前检查该权限,并在最终无 await 的 inbox 准入区间再次检查,因此在物化期间被注销或替换的 parent 无法授权投递。后续操作上的 `source` 记录谁提供了所投递的消息,不授予任何权限。 @@ -40,7 +40,7 @@ subagent seam 允许一个 agent(智能体)通过具名提供方把工作委 - `toolFilter`:应用请求的子 agent 工具限制; - `persona`:应用每个子 agent 独立的 persona。 -每个进程内子 agent 都通过一次 `applyChildComposition(childCtx, parent, composition)` 调用完成组装:先加入父级的 agent-preset 组合,再应用子 agent 自己的 persona 和工具限制。加入父级组合正是子 agent 获得能力的途径:所有面向模型的行都位于 agent 平面,完全没有加入任何组合的子 agent 抵达模型时会看到空的工具注册表(见 [`dsh-agent-presets`](../../preset/agent-presets/README.md))。将父级作为参数是刻意设计:这让“组装子 agent 却不做该加入”在各调用点无法表达,而这正是这一次调用所要杜绝的缺陷。未组装 preset roster 的部署不加入任何组合、也不需要加入;其面向模型的注册项位于宿主组合中,子 agent 已能通过工具注册表的全局层解析到它们。 +每个进程内子 agent 都通过一次 `applyChildComposition(childCtx, parent, composition)` 调用完成组装:先加入父级的 agent-preset 组合,再应用子 agent 自己的 persona 和工具限制。加入父级组合正是子 agent 获得能力的途径:所有面向模型的行都位于 agent 平面,完全没有加入任何组合的子 agent 抵达模型时会看到空的工具注册表(见 [`dsh-agent-presets`](../../preset/agent-presets/README.md))。将父级作为参数是刻意设计:这让“组装子 agent 却不做该加入”在各调用点无法表达,而这正是这一次调用所要杜绝的缺陷。未组装 preset roster 的部署不加入任何组合、也不需要加入;其面向模型的行位于宿主组合中,子 agent 已能通过工具注册表的全局层解析到它们。 `childSessionMeta()` 把所加入的 preset id 记在子 agent 的持久化 header 上,理由与顶层会话记录自己的那一个相同:preset 决定了模型所见的工具 schema 与提示段,因此冷读子 agent 的历史时必须重建那份组装,而不是部署默认值。该值从父方**活着的** scope 链读取,而不是从父方 header 读取,因为在空白期切换过 preset 的父方运行在更新的那份组装上,而它的 header 仍写着旧的那个。 @@ -64,13 +64,13 @@ subagent seam 允许一个 agent(智能体)通过具名提供方把工作委 `provider.start(request): Promise` 是所有权转移边界;委派工具也会在其由 Task 支撑的一次性后台路径中使用它。兑现前,提供方拥有设置过程,并且在任何失败路径上都必须取消、回滚并使尚未发布的资源完全停稳。兑现后,run 的所有权转移给调用方;调用方必须在每条路径上调用 `dispose()`。剩余提示词和轮次工作属于 `SubagentRun.result`。 -`SubagentRun.result` 兑现为 `{ output, structured?, stopReason }`。子 agent 级失败会以非 `completed` 原因兑现;只有 seam 无法表示的基础设施故障才可以拒绝。`dispose()` 是幂等的,会取消剩余工作,并等待结果结算以及子 agent 资源完全停稳。`result` 的拒绝只通过 `result` 本身报告;只有与结果无关的资源释放失败,才会使 `dispose()` 被拒绝。`output` 与 `subagent/end` 事件的 `lastAssistantMessage` 使用导出的 `AssistantOutputFold`/`finalAssistantOutput` 辅助函数选取子 agent 最后一条非空 assistant 消息;若没有这类消息,则选取其累积的 assistant 文本。子 agent 两种输出均未产生时,`output` 为 `[]`,该事件字段缺省(结果约定归 [`SubagentResult.output`](../../../docs/subsystems/subagent.md#the-terminal-result-subagentresult) 所有)。 +`SubagentRun.result` 兑现为 `{ output, structured?, stopReason }`。子 agent 级失败会以非 `completed` 原因兑现;只有 seam 无法表示的基础设施故障才可以拒绝。`dispose()` 是幂等的,会取消剩余工作,并等待结果结算以及子 agent 资源完全停稳。`result` 的拒绝只通过 `result` 本身报告;只有独立的资源释放失败,才会使 `dispose()` 被拒绝。`output` 与 `subagent/end` 事件的 `lastAssistantMessage` 使用导出的 `AssistantOutputFold`/`finalAssistantOutput` 辅助函数选取子 agent 最后一条非空 assistant 消息;若没有这类消息,则选取其累积的 assistant 文本。子 agent 两种输出均未产生时,`output` 为 `[]`,该事件字段缺省(结果约定归 [`SubagentResult.output`](../../../docs/subsystems/subagent.md#the-terminal-result-subagentresult) 所有)。 本地运行会在 `start()` 兑现前发布普通的子 agent/会话,把该共享会话 id 作为 `SubagentRun.id` 返回,以 `SubagentRun.localAgent` 公开准确的子 agent,把 `request.parent.session.id` 记录到子 agent 的 `parentSession` header,并在其初始轮次内追加已解析的描述符。远程提供方则生成 parent 作用域的生命周期 id,并返回 `localAgent: undefined`;由于没有本地 child 会话,其一次性运行不会进入基于追踪的枚举结果。 ## 可继续子 agent 与 Activation -每个可继续子 agent 都有一个持久化 Session,并且同一时刻至多有一个进程内 **Activation**。Activation 表示重建后的子 agent 的一次驻留时段,不是请求、结果、取消或 Task 的边界。Agent inbox 是唯一的轮次队列,因此继续执行管理器负责驻留,而 agent loop(智能体循环)负责所有轮次排序与执行。任何可继续路径都不会创建 Task 或中间的承载结果的包装层。 +每个可继续子 agent 都有一个持久化 Session,并且同一时刻至多有一个进程内 **Activation**。Activation 表示重建后的子 agent 的一次驻留时段,不是请求、结果、取消或 Task 的边界。Agent inbox 是唯一的轮次队列,因此驻留归继续执行管理器,所有轮次排序与执行归 agent loop(智能体循环)。任何可继续路径都不会创建 Task 或中间的承载结果的包装层。 管理器根据 Agent 的完全停稳状态和所拥有的子级集合推导三种内部驻留状态,而不维护第二套状态机:`running` 表示存在正在进行的准入、尚未结束的轮次,或会唤醒 Agent 的 inbox 工作;`waiting` 表示 Agent 已完全停稳,但仍拥有至少一个尚未 dispose 的子级;`settled` 表示 Agent 已完全停稳且所有拥有的子级均已 dispose,此时管理器会 dispose `AgentHandle` 并移除 Activation。每条后续消息都使用 `Agent.followup()` 并成为一个 FIFO 轮次,且不会对当前轮次进行 steering(中途引导)。路由只取决于驻留状态:running 入队、waiting 唤醒同一 Agent,无 Activation 时则冷恢复一个新的。 @@ -78,7 +78,7 @@ subagent seam 允许一个 agent(智能体)通过具名提供方把工作委 ### 结算投递 -当一个驻留 Activation 结算时,管理器会在父级自身的轮次流中告知该子级持久化的直接父级:这个子级已经产出它将产出的全部内容。对于每个已经向调用方返回过 ID 的子级,管理器都会无条件投递结算通知,不考虑该子级是否调用过 `report`。最需要说明结局的终止情形,包括达到 token 上限、模型失败、取消或拆卸,恰恰是子级根本没有机会选择的那些情形。在第一条消息被接受之前就回滚的物化保持静默,因为那位调用方已被告知该子级未建立。消息会携带该 epoch 的终止原因、它产出过的最终 assistant 内容,以及持久化来源 `{ kind: 'subagent-settled', form: 'notice', senderSessionId: }`——与子级自撰的 `subagent-report` 是不同的来源 kind,因此 transcript(文本记录)绝不会把运行时写下的话算到子级头上。 +当一个驻留 Activation 结算时,管理器会在父级自身的轮次流中告知该子级持久化的直接父级:这个子级已经产出它将产出的全部内容。对于每个已经向调用方返回过 id 的子级,管理器都会无条件投递结算通知,不考虑该子级是否调用过 `report`。最需要说明结局的终止情形,包括达到 token 上限、模型失败、取消或拆卸,恰恰是子级根本没有机会选择的那些情形。在第一条消息被接受之前就回滚的物化保持静默,因为那位调用方已被告知该子级未建立。消息会携带该 epoch 的终止原因、它产出过的最终 assistant 内容,以及持久化来源 `{ kind: 'subagent-settled', form: 'notice', senderSessionId: }`——与子级自撰的 `subagent-report` 是不同的来源 kind,因此 transcript(文本记录)绝不会把运行时写下的话算到子级头上。 有两条顺序规则让这条投递可靠而非侥幸,它们也正是这件事属于管理器而非外部 `subagent/end` listener 的原因。第一,发送发生在子级所有权释放**之前**,此时父级仍然计入该子级,因此在结构上不可能被判定为已结算。第二,如果父级本身也是驻留 Activation,该消息会采用与 report 相同的唤醒准入记账。这样,从同步发送消息到负责准入该消息的 microtask 运行之间的窗口,不会被误判为完全停稳——`Agent.status` 会把上下文维护折叠成 `idle`,而维护期间的唤醒发送只会预置一次延后唤醒。缺少其中任一条规则,父级都可能在通知仍留在 inbox 时被 dispose,而 `cancel()` 会清空该 inbox,于是通知被静默丢失。 From 944a0260ca9a66acb223b097cb2f067809dc97ce Mon Sep 17 00:00:00 2001 From: imccyu <276526105+imccyu@users.noreply.github.com> Date: Thu, 13 Aug 2026 16:05:57 +0800 Subject: [PATCH 05/22] fix: static ci --- README.i18n.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.i18n.yaml b/README.i18n.yaml index 727a781767..cb21ac2fa9 100644 --- a/README.i18n.yaml +++ b/README.i18n.yaml @@ -3,4 +3,4 @@ # after editing either side, bring the other along and re-record with: # pnpm run verify-translation-pairing --write README.md README.md: 098b514f8311de092bab18bdd560722b1e485913 -README.zh.md: f9dacc4e3cce1c83bfa65df9fbc8d6410a37fcc0 +README.zh.md: 639d519b6202ffe740d46e462feec2657d7e13ad From 9ee5aef98ca0cee8c905e426fe17ba5b45ae1339 Mon Sep 17 00:00:00 2001 From: ZiyaZhang <199893125+ZiyaZhang@users.noreply.github.com> Date: Thu, 13 Aug 2026 01:19:33 -0700 Subject: [PATCH 06/22] feat(web): unify onboarding dialogs --- ...seek-onboarding-credential-setup.i18n.yaml | 4 +- ...30-deepseek-onboarding-credential-setup.md | 8 +- ...deepseek-onboarding-credential-setup.zh.md | 8 +- ...versioned-gui-welcome-onboarding.i18n.yaml | 4 +- ...-07-30-versioned-gui-welcome-onboarding.md | 10 +- ...-30-versioned-gui-welcome-onboarding.zh.md | 10 +- ...2026-08-10-telemetry-default-off.i18n.yaml | 4 +- .../2026-08-10-telemetry-default-off.md | 2 +- .../2026-08-10-telemetry-default-off.zh.md | 2 +- ...-shared-modal-product-onboarding.i18n.yaml | 6 + ...6-08-13-shared-modal-product-onboarding.md | 33 +++ ...8-13-shared-modal-product-onboarding.zh.md | 33 +++ ...-13-remove-first-run-beta-notice.i18n.yaml | 4 +- ...2026-08-13-remove-first-run-beta-notice.md | 4 +- ...6-08-13-remove-first-run-beta-notice.zh.md | 4 +- apps/web/tests/README.i18n.yaml | 4 +- apps/web/tests/README.md | 3 +- apps/web/tests/README.zh.md | 2 +- apps/web/tests/goal-bar.e2e.ts | 2 +- .../tests/onboarding-deepseek-config.e2e.ts | 118 ++++++----- .../tests/onboarding-usable-provider.e2e.ts | 17 +- apps/web/tests/remote-welcome.e2e.ts | 60 ++++++ apps/web/tests/scaffold.ts | 27 +++ .../missing.expected.md | 7 +- .../welcome.expected.md | 5 + .../ui-settings-general/README.i18n.yaml | 4 +- packages/client/ui-settings-general/README.md | 6 +- .../client/ui-settings-general/README.zh.md | 6 +- .../src/client/SettingsRoot.tsx | 12 +- .../client/ui-settings-general/src/index.ts | 2 +- .../tests/settings-root.client.spec.tsx | 2 +- .../ui-settings-models/README.i18n.yaml | 4 +- packages/client/ui-settings-models/README.md | 6 +- .../client/ui-settings-models/README.zh.md | 6 +- .../client/ui-settings-models/package.json | 2 +- .../DeepSeekOnboardingDialog.module.css | 97 +-------- .../src/client/DeepSeekOnboardingDialog.tsx | 109 +++++----- .../src/client/EditorFooter.tsx | 4 +- .../src/client/OnboardingModal.module.css | 32 +++ .../src/client/OnboardingModal.tsx | 52 +++++ .../src/client/ProviderEditor.tsx | 55 +++-- .../src/client/WelcomeNotice.module.css | 36 ++++ .../src/client/WelcomeNotice.tsx | 77 +++++++ .../ui-settings-models/src/client/index.ts | 54 +++-- .../ui-settings-models/src/client/locales.ts | 18 +- .../src/client/welcome-store.ts | 126 +++++++++++ .../ui-settings-models/src/onboarding-copy.ts | 25 +++ .../tests/apply.client.spec.ts | 49 ++++- .../tests/components.client.spec.tsx | 59 ++++++ .../tests/onboarding-dialog.client.spec.tsx | 162 +++++++++++--- .../tests/welcome-notice.client.spec.tsx | 126 +++++++++++ .../tests/welcome-store.client.spec.ts | 199 ++++++++++++++++++ .../ui-settings/src/client/contract/slots.ts | 12 +- .../src/client/slot-catalog.ts | 7 +- 54 files changed, 1388 insertions(+), 342 deletions(-) create mode 100644 .agents/notes/implemented/feature/2026-08-13-shared-modal-product-onboarding.i18n.yaml create mode 100644 .agents/notes/implemented/feature/2026-08-13-shared-modal-product-onboarding.md create mode 100644 .agents/notes/implemented/feature/2026-08-13-shared-modal-product-onboarding.zh.md create mode 100644 apps/web/tests/remote-welcome.e2e.ts create mode 100644 apps/web/tests/snapshots/onboarding-deepseek-config/welcome.expected.md create mode 100644 packages/client/ui-settings-models/src/client/OnboardingModal.module.css create mode 100644 packages/client/ui-settings-models/src/client/OnboardingModal.tsx create mode 100644 packages/client/ui-settings-models/src/client/WelcomeNotice.module.css create mode 100644 packages/client/ui-settings-models/src/client/WelcomeNotice.tsx create mode 100644 packages/client/ui-settings-models/src/client/welcome-store.ts create mode 100644 packages/client/ui-settings-models/src/onboarding-copy.ts create mode 100644 packages/client/ui-settings-models/tests/welcome-notice.client.spec.tsx create mode 100644 packages/client/ui-settings-models/tests/welcome-store.client.spec.ts diff --git a/.agents/notes/implemented/feature/2026-07-30-deepseek-onboarding-credential-setup.i18n.yaml b/.agents/notes/implemented/feature/2026-07-30-deepseek-onboarding-credential-setup.i18n.yaml index 4f037737ff..5ef2099535 100644 --- a/.agents/notes/implemented/feature/2026-07-30-deepseek-onboarding-credential-setup.i18n.yaml +++ b/.agents/notes/implemented/feature/2026-07-30-deepseek-onboarding-credential-setup.i18n.yaml @@ -2,5 +2,5 @@ # side as of the last confirmed-consistent state. Both languages carry equal authority; # after editing either side, bring the other along and re-record with: # pnpm run verify-translation-pairing --write .agents/notes/implemented/feature/2026-07-30-deepseek-onboarding-credential-setup.md -2026-07-30-deepseek-onboarding-credential-setup.md: ebf5c66cffa8a7db90328dfcdd04e4134a78e3b1 -2026-07-30-deepseek-onboarding-credential-setup.zh.md: 3df63c59fd23acf32c16dac8f4ca373409ab2968 +2026-07-30-deepseek-onboarding-credential-setup.md: 823d10a723af70ec4ff51018b8b86198db0f5c29 +2026-07-30-deepseek-onboarding-credential-setup.zh.md: 7e8d79c23c4b1489bfd818c90558f36509635486 diff --git a/.agents/notes/implemented/feature/2026-07-30-deepseek-onboarding-credential-setup.md b/.agents/notes/implemented/feature/2026-07-30-deepseek-onboarding-credential-setup.md index ebf5c66cff..823d10a723 100644 --- a/.agents/notes/implemented/feature/2026-07-30-deepseek-onboarding-credential-setup.md +++ b/.agents/notes/implemented/feature/2026-07-30-deepseek-onboarding-credential-setup.md @@ -12,9 +12,9 @@ The [web configuration plane](../architecture/2026-07-30-web-config-plane.md) ma **One readiness projection owns both Models and onboarding facts.** `ui-settings-models` keeps a single store that joins `llm.providers({})`, redacted `settings.describe({})`, and batched `credentials.describe({refs})`. The onboarding projection selects the `deepseek-official` configurable-provider entry owned by the `llm-deepseek` namespace and empty settings path, reads the effective `apiKeyEnv`, and evaluates the matching credential descriptor. A live route with the same provider id but no matching configurable-provider declaration is adapter-absent for onboarding. A configured process-environment credential is ready and remains read-only. -**The settings shell contributes ordering and navigation, not provider policy.** `ui-settings` declares a root-scoped `settings.onboarding` list slot and mounts one ordered step at a time while the current surface is the empty Hero. The active registrant receives `complete()` and a private `openSection(id)` callback; completion transfers ownership to the next entry. `ui-settings-models` registers the DeepSeek step and its Models section through `slots.inject()`, so each contribution follows its declaration lifetime without making plugin load order a contract, and independently contributed dialogs cannot stack. The product-wide welcome step that precedes it is owned separately by [the versioned welcome decision](2026-07-30-versioned-gui-welcome-onboarding.md). +**The settings shell contributes ordering, not provider policy.** `ui-settings` declares a root-scoped `settings.onboarding` list slot and mounts one ordered step at a time while the current surface is the empty Hero. The active registrant receives `complete()` and a private `openSection(id)` callback; completion transfers ownership to the next entry. `ui-settings-models` registers the DeepSeek step, the preceding welcome notice, and its Models section through `slots.inject()`, so every contribution follows one client Cordis plugin's lifecycle and the dialogs cannot stack. Their common presentation is owned by the [shared-modal onboarding decision](2026-08-13-shared-modal-product-onboarding.md). -**The prompt routes to the one credential editor.** A mounted, active adapter with a resolved, writable, unconfigured reference presents one action that opens Settings on Models. The existing DeepSeek setup card there exclusively owns the password input, `credentials.set({ref, value})`, write failures, and post-write refresh; the onboarding overlay never holds or submits a secret. An unavailable settings or credential capability keeps its deployment diagnostic and routes to the same page, while an absent adapter remains skipped because navigation cannot mount a Cordis plugin. +**The prompt renders the existing credential editor inline.** A mounted, active adapter with a resolved, writable, unconfigured reference renders `ProviderEditor` in credential-only mode inside the shared onboarding modal. The same component owns the password input, validation, `credentials.set({ref, value})`, write failures, and post-write refresh; credential-only mode emits no provider-settings mutation. Configure later completes only this coordinator pass. An absent adapter remains skipped because the browser cannot mount a missing Cordis plugin. **Unavailable states do not capture the product.** An absent configurable-provider entry, inactive route, failed initial join, read-only deployment, or unresolved settings or credential capability completes the step without rendering because the onboarding action cannot repair that state. The Models page remains the deployment diagnostic and retry surface. Configure later completes a missing-credential step for the current mounted coordinator pass and writes no completion fact. Settings, credential, provider-topology, and connection invalidations all refresh the shared join, so an external credential update completes an open step without a reload. @@ -22,7 +22,7 @@ The [web configuration plane](../architecture/2026-07-30-web-config-plane.md) ma **A separate onboarding store and readiness RPC sequence** — rejected because it would create a second client-side interpretation of provider identity, settings paths, secret sidecars, credential references, and invalidation ordering beside the Models page. -**A second API-key editor inside onboarding** — rejected because the Models page already renders its DeepSeek setup card for exactly this state. Duplicating its secret draft, write errors, and configured-state convergence would add a second security-sensitive UI without another user capability. +**A standalone API-key implementation inside onboarding** — rejected because it would duplicate the Models editor's secret draft, validation, errors, and configured-state convergence. The modal renders the existing `ProviderEditor` in a constrained mode instead. **Writing the API key into provider settings** — rejected because a literal secret would enter the settings mutation path and whole-section replacement cannot safely reconstruct redacted values. Credential storage is already the product seam and supplies immediate invalidation. @@ -30,4 +30,4 @@ The [web configuration plane](../architecture/2026-07-30-web-config-plane.md) ma ## Consequences -The ordered flow leads from the product notice to the shipped adapter's existing editor without restarting: a keyless browser test boots the real Web composition under an isolated harness home, acknowledges the notice, follows the DeepSeek page to Models, stores a generated key through that page into the home's `.credentials.yaml`, verifies no key reaches DOM, ARIA, or browser console output, and confirms the running page reports configured. The full keyless Web replay lane also pins that a non-configurable replay route with the same provider id does not block unrelated journeys. Pure readiness and React tests pin managed-file and process-environment credentials, missing providers and capabilities, navigation, cancellation, external invalidation, and coordinator transfer. The flow deliberately inherits the configuration plane's documented base limitations rather than adding local secret storage, redaction, or settings replacement workarounds. +The ordered flow leads from the product notice to an inline key form without restarting: a keyless browser test boots the real Web composition under an isolated harness home, acknowledges the notice, stores a generated key from the shared modal into the home's `.credentials.yaml`, verifies no key reaches DOM, ARIA, or browser console output, and confirms the ordinary Models page reports configured. The full keyless Web replay lane also pins that a non-configurable replay route with the same provider id does not block unrelated journeys. Pure readiness and React tests pin managed-file and process-environment credentials, missing providers and capabilities, cancellation, external invalidation, and coordinator transfer. The flow deliberately inherits the configuration plane's documented base limitations rather than adding local secret storage, redaction, or settings replacement workarounds. diff --git a/.agents/notes/implemented/feature/2026-07-30-deepseek-onboarding-credential-setup.zh.md b/.agents/notes/implemented/feature/2026-07-30-deepseek-onboarding-credential-setup.zh.md index 3df63c59fd..7e8d79c23c 100644 --- a/.agents/notes/implemented/feature/2026-07-30-deepseek-onboarding-credential-setup.zh.md +++ b/.agents/notes/implemented/feature/2026-07-30-deepseek-onboarding-credential-setup.zh.md @@ -12,9 +12,9 @@ Status: implemented **Models 与首次使用引导共享同一个就绪状态投影。**`ui-settings-models` 维护一个 store,把 `llm.providers({})`、脱敏后的 `settings.describe({})` 和批量调用的 `credentials.describe({refs})` 联接为同一份状态。首次使用投影选取由 `llm-deepseek` namespace 与空 settings path 持有的 `deepseek-official` 可配置提供方条目,读取生效的 `apiKeyEnv`,并检查对应的凭据描述符。同 provider id 但没有匹配可配置提供方声明的存活路由,在首次使用引导中视为适配器缺失。通过进程环境提供的凭据若已配置,则判定为就绪并保持只读。 -**设置外壳只贡献排序与导航,不持有提供方策略。** `ui-settings` 声明一个根作用域的 `settings.onboarding` list slot,并在当前界面为空白 Hero 时,每次只挂载一个有序步骤。当前注册方会收到 `complete()` 和私有 `openSection(id)` 回调;完成当前步骤后,所有权转交给下一项。`ui-settings-models` 通过 `slots.inject()` 注册 DeepSeek 步骤及其 Models 分区,使每项贡献都跟随自身的声明生命周期,不让插件加载顺序成为约定;独立贡献的对话框也无法堆叠。排在它之前的产品级欢迎步骤由[版本化欢迎决策](2026-07-30-versioned-gui-welcome-onboarding.md)单独持有。 +**设置外壳只贡献排序,不持有提供方策略。** `ui-settings` 声明一个根作用域的 `settings.onboarding` list slot,并在当前界面为空白 Hero 时,每次只挂载一个有序步骤。当前注册方会收到 `complete()` 和私有 `openSection(id)` 回调;完成当前步骤后,所有权转交给下一项。`ui-settings-models` 通过 `slots.inject()` 注册 DeepSeek 步骤、排在它之前的欢迎声明及 Models 分区,因此所有贡献都跟随同一个 client Cordis 插件的生命周期,两个弹窗也无法堆叠。它们的共用展示由[共用弹窗引导决策](2026-08-13-shared-modal-product-onboarding.md)持有。 -**首次使用页面只负责跳转到唯一的凭据编辑器。**适配器已挂载且处于活跃状态,其引用可解析、可写但尚未配置时,界面会显示一个操作按钮,用于打开「设置」的 Models 分区。该分区已有的 DeepSeek 设置卡片全权负责密码输入框、`credentials.set({ref, value})`、写入失败处理和写入后刷新;首次使用页面绝不持有或提交 secret。 +**首次使用弹窗行内渲染既有凭据编辑器。** 适配器已挂载且处于活跃状态,其引用可解析、可写但尚未配置时,`ProviderEditor` 会以仅凭据模式渲染在共用引导弹窗中。同一个组件全权负责密码输入框、校验、`credentials.set({ref, value})`、写入失败处理和写入后刷新;仅凭据模式不会发出提供方 settings 变更。「稍后配置」只完成协调器当前这一轮。适配器缺失时仍跳过,因为浏览器不能挂载缺失的 Cordis 插件。 **不可用状态不会占住产品。** 可配置提供方条目缺失、路由不活跃、初始联接失败、部署只读或设置/凭据能力无法解析时,都会直接完成而不渲染该步骤,因为首次使用引导无法修复这些状态。Models 页仍是部署诊断与重试界面。「稍后配置」只会完成协调器当前这一次缺少凭据的步骤,不写入任何完成状态。设置、凭据、提供方拓扑和连接失效事件都会刷新共享联接,因此外部凭据更新无需重新加载页面即可完成已打开的步骤。 @@ -22,7 +22,7 @@ Status: implemented **为首次使用引导单设 store 与就绪状态 RPC 调用序列**:不予采用,因为这会在 Models 页之外,再建立一套客户端解释,用于判定提供方身份、设置路径、secret 槽位的伴随信息、凭据引用及失效事件顺序。 -**在首次使用引导中增设第二个 API key 编辑器**:不予采用,因为 Models 页已为这一状态渲染 DeepSeek 设置卡片。复制其中的 secret 草稿、写入错误处理和已配置状态收敛会增加第二个安全敏感的 UI,却不会带来新的用户能力。 +**在首次使用引导中单独实现 API key 表单**:不予采用,因为这会复制 Models 编辑器的 secret 草稿、校验、错误和已配置状态收敛。弹窗改为以受限模式渲染既有 `ProviderEditor`。 **把 API key 写入提供方设置**:不予采用,因为字面量 secret 会进入设置变更路径,而整个分节替换无法安全重建脱敏值。凭据存储已经是产品 seam,并能立即发出失效事件。 @@ -30,4 +30,4 @@ Status: implemented ## 后果 -有序流程从产品声明页开始,无需重启即可引导用户前往随产品提供的适配器已有的编辑器:无密钥浏览器测试在隔离的 harness 家目录下启动真实 Web 组合,确认声明后依照 DeepSeek 页面前往 Models,通过该页面把生成的密钥存入该目录的 `.credentials.yaml`,验证密钥未进入 DOM、ARIA 或浏览器控制台输出,并确认运行中的页面报告已配置。完整的无密钥 Web 回放也固定了同 id 的不可配置回放路由不会阻塞无关流程。纯就绪状态测试与 React 测试固化了受管文件凭据与进程环境凭据、提供方与能力缺失、导航、取消、外部失效和协调器移交。该流程直接继承配置平面已记录的基础限制,不会另加局部的机密存储、脱敏或设置替换变通方案。 +有序流程从产品声明页开始,无需重启即可进入行内密钥表单:无密钥浏览器测试在隔离的 harness 家目录下启动真实 Web 组合,确认声明后从共用弹窗把生成的密钥存入该目录的 `.credentials.yaml`,验证密钥未进入 DOM、ARIA 或浏览器控制台输出,并确认普通 Models 页面报告已配置。完整的无密钥 Web 回放也固定了同 id 的不可配置回放路由不会阻塞无关流程。纯就绪状态测试与 React 测试固化了受管文件凭据与进程环境凭据、提供方与能力缺失、取消、外部失效和协调器移交。该流程直接继承配置平面已记录的基础限制,不会另加局部的机密存储、脱敏或设置替换变通方案。 diff --git a/.agents/notes/implemented/feature/2026-07-30-versioned-gui-welcome-onboarding.i18n.yaml b/.agents/notes/implemented/feature/2026-07-30-versioned-gui-welcome-onboarding.i18n.yaml index 66b59c3509..630898f12a 100644 --- a/.agents/notes/implemented/feature/2026-07-30-versioned-gui-welcome-onboarding.i18n.yaml +++ b/.agents/notes/implemented/feature/2026-07-30-versioned-gui-welcome-onboarding.i18n.yaml @@ -2,5 +2,5 @@ # side as of the last confirmed-consistent state. Both languages carry equal authority; # after editing either side, bring the other along and re-record with: # pnpm run verify-translation-pairing --write .agents/notes/implemented/feature/2026-07-30-versioned-gui-welcome-onboarding.md -2026-07-30-versioned-gui-welcome-onboarding.md: 7a8c5c5b9ba1ec62ad8dd0f5bdf67c516ba0ddec -2026-07-30-versioned-gui-welcome-onboarding.zh.md: 646080b893bb6264a3a92f49400cb9207e29755b +2026-07-30-versioned-gui-welcome-onboarding.md: 9c8684c0510c50c28e8ece53fd794844c771e496 +2026-07-30-versioned-gui-welcome-onboarding.zh.md: 52c35bf46e40afca1248bcbb94f38d7154f138a4 diff --git a/.agents/notes/implemented/feature/2026-07-30-versioned-gui-welcome-onboarding.md b/.agents/notes/implemented/feature/2026-07-30-versioned-gui-welcome-onboarding.md index 7a8c5c5b9b..9c8684c051 100644 --- a/.agents/notes/implemented/feature/2026-07-30-versioned-gui-welcome-onboarding.md +++ b/.agents/notes/implemented/feature/2026-07-30-versioned-gui-welcome-onboarding.md @@ -10,13 +10,13 @@ The GUI's credential onboarding begins with a DeepSeek-specific readiness check, ## Decision -**The Settings shell coordinates ordered steps.** `settings.onboarding` remains a root-scoped list, but `ui-settings` projects its entry ids and order into one coordinator and mounts only the first incomplete step. The active registrant receives `complete()` and `openSection(id)`; no later step mounts until ownership transfers. `ui-settings-models` registers the conditional DeepSeek readiness and credential-routing step at order `0`, the only shipped occupant since the [first-run beta notice removal](../simplification/2026-08-13-remove-first-run-beta-notice.md). +**The Settings shell coordinates ordered steps.** `settings.onboarding` remains a root-scoped list, but `ui-settings` projects its entry ids and order into one coordinator and mounts only the first incomplete step. The active registrant receives `complete()` and `openSection(id)`; no later step mounts until ownership transfers. `ui-settings-models` now registers the restored welcome notice at order `-100` and the conditional DeepSeek credential step at order `0`; their current shared presentation is owned by the [shared-modal onboarding decision](2026-08-13-shared-modal-product-onboarding.md). -**The product welcome step is removed.** The versioned notice, its copy owner, and its acknowledgement store shipped from this decision until the [first-run beta notice removal](../simplification/2026-08-13-remove-first-run-beta-notice.md), which owns the removal rationale; `ui-settings-general` seats no onboarding step. +**The product welcome step is versioned and feature-owned.** The notice was historically removed by the [first-run beta notice removal](../simplification/2026-08-13-remove-first-run-beta-notice.md) and is now restored in `ui-settings-models` with new testing-stage copy. `ui-settings-general` still seats no onboarding step; the plugin that owns both current steps also owns the copy, store, and shared modal. -**The durable `ui-onboarding` section outlives the notice.** The Host half registers it in the user-settings seam under the active `$DSH_HOME/settings.yaml`; its `welcomeNoticeVersion` field keeps stored acknowledgements valid and has no reader. The connection plugin publishes whether the current page uses a loopback authority as `ctx.connection.isLoopback`; hostname classification remains internal to the connection package, and other client plugins consume the service state instead of importing its implementation. The API proxy exposes this one product namespace through a closed allowlist beside configurable-provider namespaces, without treating its changes as model-catalog invalidations. +**The durable `ui-onboarding` section owns acknowledgement.** The Host half registers it in the user-settings seam under the active `$DSH_HOME/settings.yaml`; the current welcome store reads and writes `welcomeNoticeVersion` through the existing public settings API. The connection plugin publishes whether the current page uses a loopback authority as `ctx.connection.isLoopback`; hostname classification remains internal to the connection package, and other client plugins consume the service state instead of importing its implementation. The API proxy exposes this one product namespace through a closed allowlist beside configurable-provider namespaces, without treating its changes as model-catalog invalidations. -**Onboarding temporarily owns the viewport as one continuous stage.** A solid product surface replaces the complete application view through a body-level portal and marks the underlying app root inert; the exact required mask remains mounted behind that surface with `position:absolute`, zero left/right/bottom offsets, `top:80px`, `rgba(0, 0, 0, 0.24)`, and `backdrop-filter: blur(2px)`. Onboarding steps render as successive pages in this stage instead of independent modals, reusing the Web UI's black `BrandWordmark`; the conditional credential setup is the only shipped page. +**Visible onboarding uses one shared modal contract.** Both current steps render through the same body-portaled `OnboardingModal`, and the underlying app root stays inert only while a dialog is visible. The shell renders no wrapper while a step loads its private facts. Explicit actions transfer coordinator ownership; Escape and mask clicks do not acknowledge or skip a step. ## Alternatives considered @@ -30,4 +30,4 @@ The GUI's credential onboarding begins with a DeepSeek-specific readiness check, ## Consequences -A fresh profile proceeds directly to provider-specific onboarding: the conditional DeepSeek step mounts when its credential is missing, and an already configured credential shows no onboarding page at all. Focused store and React tests pin coordinator ordering, conditional DeepSeek transfer, and HMR cleanup. The real Chromium scenario boots the shipped Web composition with an isolated harness home, verifies the exact mask geometry and computed styles while the credential step owns the viewport, continues into missing-credential setup, and checks the browser console. +A fresh profile sees the current testing-stage notice, then the conditional DeepSeek key dialog when no provider is usable. Focused store and React tests pin exact-version acknowledgement, coordinator ordering, conditional transfer, shared modal behavior, and HMR cleanup. The real Chromium scenario boots the shipped Web composition with an isolated harness home, verifies both dialogs, writes the key through the existing credential boundary, and checks that no secret reaches the DOM, ARIA, or browser console. diff --git a/.agents/notes/implemented/feature/2026-07-30-versioned-gui-welcome-onboarding.zh.md b/.agents/notes/implemented/feature/2026-07-30-versioned-gui-welcome-onboarding.zh.md index 646080b893..52c35bf46e 100644 --- a/.agents/notes/implemented/feature/2026-07-30-versioned-gui-welcome-onboarding.zh.md +++ b/.agents/notes/implemented/feature/2026-07-30-versioned-gui-welcome-onboarding.zh.md @@ -10,13 +10,13 @@ GUI 的凭据引导从 DeepSeek 专用的就绪状态检查开始,但内部测 ## 决策 -**设置外壳协调有序步骤。** `settings.onboarding` 仍是根作用域 list,但 `ui-settings` 会把其中各条目的 id 和顺序投影到一个协调器中,并且只挂载第一个未完成的步骤。当前注册方会收到 `complete()` 和 `openSection(id)`;所有权转移前,不会挂载后续步骤。`ui-settings-models` 注册顺序为 `0` 的 DeepSeek 条件式就绪状态与凭据跳转步骤,自[移除首次启动内测声明](../simplification/2026-08-13-remove-first-run-beta-notice.md)起,它是当前唯一的注册方。 +**设置外壳协调有序步骤。** `settings.onboarding` 仍是根作用域 list,但 `ui-settings` 会把其中各条目的 id 和顺序投影到一个协调器中,并且只挂载第一个未完成的步骤。当前注册方会收到 `complete()` 和 `openSection(id)`;所有权转移前,不会挂载后续步骤。`ui-settings-models` 现在以顺序 `-100` 注册恢复后的欢迎声明,以顺序 `0` 注册 DeepSeek 条件式凭据步骤;两者当前的共用展示由[共用弹窗引导决策](2026-08-13-shared-modal-product-onboarding.md)持有。 -**产品欢迎步骤已移除。** 版本化通知、其文案所有者文件和确认 store 自本决策起随产品发布,直至[移除首次启动内测声明](../simplification/2026-08-13-remove-first-run-beta-notice.md);移除理由由该 note 持有。`ui-settings-general` 不再注册任何引导步骤。 +**产品欢迎步骤按版本管理并归功能插件所有。** 该声明曾由[移除首次启动内测声明](../simplification/2026-08-13-remove-first-run-beta-notice.md)历史决策移除,现在以新的测试阶段文案恢复在 `ui-settings-models` 中。`ui-settings-general` 仍不注册任何引导步骤;持有当前两个步骤的插件也持有文案、store 和共用弹窗。 -**持久化的 `ui-onboarding` 分节在通知移除后继续存在。** 宿主端在 user-settings seam 中注册它,存入当前 `$DSH_HOME/settings.yaml`;其中的 `welcomeNoticeVersion` 字段让已存储的确认记录保持有效,没有读取方。connection 插件通过 `ctx.connection.isLoopback` 统一发布当前页面是否使用 loopback authority;hostname 判定留在 connection 包内,其他客户端插件只消费服务状态,而不导入其实现。API Proxy 在可配置提供方 namespace 之外,通过封闭的允许列表暴露这一个产品 namespace,同时不会把它的变更视为模型目录失效事件。 +**持久化的 `ui-onboarding` 分节持有确认状态。** 宿主端在 user-settings seam 中注册它,存入当前 `$DSH_HOME/settings.yaml`;当前欢迎 store 通过既有公开 settings API 读写其中的 `welcomeNoticeVersion`。connection 插件通过 `ctx.connection.isLoopback` 统一发布当前页面是否使用 loopback authority;hostname 判定留在 connection 包内,其他客户端插件只消费服务状态,而不导入其实现。API Proxy 在可配置提供方 namespace 之外,通过封闭的允许列表暴露这一个产品 namespace,同时不会把它的变更视为模型目录失效事件。 -**引导流程会暂时接管视口,形成一个连续阶段。** 纯色产品界面通过挂载到 `body` 的 portal 取代完整的应用视图,并将底层应用根节点标记为 inert;严格符合要求的遮罩仍挂载在该界面后方,并保留 `position:absolute`、left/right/bottom 偏移量为零、`top:80px`、`rgba(0, 0, 0, 0.24)` 和 `backdrop-filter: blur(2px)`。引导步骤在这一阶段中依次呈现,而不是各自作为独立的模态窗口,并复用 Web UI 的黑色 `BrandWordmark`;按条件显示的凭据设置页是当前唯一的页面。 +**可见引导使用同一个弹窗契约。** 当前两个步骤都通过 body portal 的同一个 `OnboardingModal` 渲染,且只在弹窗可见期间把下层应用根节点设为 inert。步骤加载私有事实时,外壳不渲染任何包装。明确操作会移交协调器所有权;Escape 和点击遮罩都不会确认或跳过步骤。 ## 曾考虑的替代方案 @@ -30,4 +30,4 @@ GUI 的凭据引导从 DeepSeek 专用的就绪状态检查开始,但内部测 ## 后果 -全新 profile 直接进入提供方专用引导:DeepSeek 步骤仅在其凭据缺失时挂载,凭据已配置时不会出现任何引导页面。针对性的 store 与 React 测试固化了协调器顺序、按条件移交 DeepSeek 步骤和 HMR(热模块替换)清理行为。真实 Chromium 场景会使用隔离的 harness 家目录启动随产品提供的 Web 组合,在凭据步骤占据视口时验证遮罩的精确几何尺寸和计算样式,继续进入凭据缺失设置流程,并检查浏览器控制台。 +全新 profile 会先看到当前测试阶段声明;当没有任何可用提供方时,再看到条件式 DeepSeek 密钥弹窗。定向 store 与 React 测试固定精确版本确认、协调器顺序、条件式移交、共用弹窗行为与 HMR 清理。真实 Chromium 场景会在隔离的 harness 家目录下启动已发布 Web 组合,验证两个弹窗,通过既有凭据边界写入密钥,并检查 secret 未进入 DOM、ARIA 或浏览器控制台。 diff --git a/.agents/notes/implemented/feature/2026-08-10-telemetry-default-off.i18n.yaml b/.agents/notes/implemented/feature/2026-08-10-telemetry-default-off.i18n.yaml index 434bd14018..5a4552f5d0 100644 --- a/.agents/notes/implemented/feature/2026-08-10-telemetry-default-off.i18n.yaml +++ b/.agents/notes/implemented/feature/2026-08-10-telemetry-default-off.i18n.yaml @@ -2,5 +2,5 @@ # side as of the last confirmed-consistent state. Both languages carry equal authority; # after editing either side, bring the other along and re-record with: # pnpm run verify-translation-pairing --write .agents/notes/implemented/feature/2026-08-10-telemetry-default-off.md -2026-08-10-telemetry-default-off.md: b70fdbc64074936ae910cba305a59111d6f9b572 -2026-08-10-telemetry-default-off.zh.md: abb5cafa9f877659dca1d53c0be9df9414799cf9 +2026-08-10-telemetry-default-off.md: 3f56817c9c23ec55f2173b66fa915ab05646b2a7 +2026-08-10-telemetry-default-off.zh.md: aa7b640f292713aa4e598f5ea1194f806dd6ae0d diff --git a/.agents/notes/implemented/feature/2026-08-10-telemetry-default-off.md b/.agents/notes/implemented/feature/2026-08-10-telemetry-default-off.md index b70fdbc640..3f56817c9c 100644 --- a/.agents/notes/implemented/feature/2026-08-10-telemetry-default-off.md +++ b/.agents/notes/implemented/feature/2026-08-10-telemetry-default-off.md @@ -14,7 +14,7 @@ Both feeds use `DSH_TELEMETRY_MODE` as their positive consent setting. Unset and The dsh-sdk launcher reads the same variable without parsing `cordis.yml` or booting Cordis. `FULL` permits reporting; `FEEDBACK_ONLY`, `DISABLED`, unset, and empty values deny it. Consent is frozen from the launching environment before the command runs, because `dsh-sdk start` loads a project `.env` and project code can mutate `process.env`: resolving afterwards would let a project grant reporting of its own configuration, which the [configuration source ownership decision](../architecture/2026-08-04-configuration-source-ownership.md) denies for the whole `DSH_*` namespace. An unsupported mode denies rather than throwing at that boundary, since telemetry may never change a command's result. This rule superseded the default-on launcher consent before the launcher and its proposal were deleted by the [SDK project toolchain removal](../simplification/2026-08-11-remove-sdk-project-toolchain.md). -The [CLI reference README](../../../../apps/cli/reference/README.md) documents the deployment stance: Session Log upload is off by default, `DSH_TELEMETRY_MODE=FEEDBACK_ONLY` and `DSH_TELEMETRY_MODE=FULL` are the two opt-in choices, and explicitly enabled exports can contain complete session content. The product itself presents no prompt about enabling telemetry since the [first-run beta notice removal](../simplification/2026-08-13-remove-first-run-beta-notice.md). +The [CLI reference README](../../../../apps/cli/reference/README.md) documents the deployment stance: Session Log upload is off by default, `DSH_TELEMETRY_MODE=FEEDBACK_ONLY` and `DSH_TELEMETRY_MODE=FULL` are the two opt-in choices, and explicitly enabled exports can contain complete session content. The restored [testing-stage onboarding notice](2026-08-13-shared-modal-product-onboarding.md) contains no telemetry copy, so the product still presents no prompt about enabling upload. ## Alternatives considered diff --git a/.agents/notes/implemented/feature/2026-08-10-telemetry-default-off.zh.md b/.agents/notes/implemented/feature/2026-08-10-telemetry-default-off.zh.md index abb5cafa9f..aa7b640f29 100644 --- a/.agents/notes/implemented/feature/2026-08-10-telemetry-default-off.zh.md +++ b/.agents/notes/implemented/feature/2026-08-10-telemetry-default-off.zh.md @@ -14,7 +14,7 @@ DeepSeek Harness 有两路出站遥测数据流。在内测阶段,共享基础 dsh-sdk 启动器读取同一变量,不解析 `cordis.yml`,也不启动 Cordis。`FULL` 允许上报;`FEEDBACK_ONLY`、`DISABLED`、未设置和空值都会拒绝。授权在命令执行前从启动环境冻结:`dsh-sdk start` 会加载项目 `.env`,项目代码也能修改 `process.env`,若在执行后解析,项目便能自行授权上报其自身配置,而[配置来源所有权决策](../architecture/2026-08-04-configuration-source-ownership.md)对整个 `DSH_*` 命名空间禁止这种行为。在该边界上,不受支持的模式按拒绝处理而非抛出,因为遥测不得改变命令结果。此规则在启动器及其提案被[SDK 项目工具链移除决策](../simplification/2026-08-11-remove-sdk-project-toolchain.md)删除之前,仅取代了启动器默认允许上报的规则。 -[CLI reference README](../../../../apps/cli/reference/README.md) 记录了这一部署口径:会话日志上传默认关闭,`DSH_TELEMETRY_MODE=FEEDBACK_ONLY` 和 `DSH_TELEMETRY_MODE=FULL` 是两种显式启用选项,显式开启后的导出可能包含完整会话内容。自[移除首次启动内测声明](../simplification/2026-08-13-remove-first-run-beta-notice.md)起,产品本身不提供任何关于开启遥测的提示。 +[CLI reference README](../../../../apps/cli/reference/README.md) 记录了这一部署口径:会话日志上传默认关闭,`DSH_TELEMETRY_MODE=FEEDBACK_ONLY` 和 `DSH_TELEMETRY_MODE=FULL` 是两种显式启用选项,显式开启后的导出可能包含完整会话内容。恢复后的[测试阶段引导声明](2026-08-13-shared-modal-product-onboarding.md)不包含遥测文案,因此产品仍不提供任何关于开启上传的提示。 ## 考虑过的替代方案 diff --git a/.agents/notes/implemented/feature/2026-08-13-shared-modal-product-onboarding.i18n.yaml b/.agents/notes/implemented/feature/2026-08-13-shared-modal-product-onboarding.i18n.yaml new file mode 100644 index 0000000000..abf480f6b2 --- /dev/null +++ b/.agents/notes/implemented/feature/2026-08-13-shared-modal-product-onboarding.i18n.yaml @@ -0,0 +1,6 @@ +# Bilingual-pair consistency record (docs/i18n/README.md): the git blob hash of each +# side as of the last confirmed-consistent state. Both languages carry equal authority; +# after editing either side, bring the other along and re-record with: +# pnpm run verify-translation-pairing --write .agents/notes/implemented/feature/2026-08-13-shared-modal-product-onboarding.md +2026-08-13-shared-modal-product-onboarding.md: 771b6675ea170c5001fca7c880f6c246e19fe7f1 +2026-08-13-shared-modal-product-onboarding.zh.md: ebbcb73344b531e90a6d27641f25fa9961d572ac diff --git a/.agents/notes/implemented/feature/2026-08-13-shared-modal-product-onboarding.md b/.agents/notes/implemented/feature/2026-08-13-shared-modal-product-onboarding.md new file mode 100644 index 0000000000..771b6675ea --- /dev/null +++ b/.agents/notes/implemented/feature/2026-08-13-shared-modal-product-onboarding.md @@ -0,0 +1,33 @@ +# Agent Note: Shared-modal product onboarding + +Status: implemented + +English | [中文](2026-08-13-shared-modal-product-onboarding.zh.md) + +## Problem + +First-run onboarding mixed two interaction models: a viewport takeover for product context and a credential prompt that redirected users into Settings before they could enter a key. That made a short, ordered flow feel like two unrelated surfaces and left onboarding UI ownership split across packages. The product still needs a versioned testing-stage notice before provider setup, but restoring it must not add a second independent overlay or change the Host settings and credential boundaries. + +## Decision + +**One existing client Cordis plugin owns both shipped steps.** `ui-settings-models` registers `welcome-notice` at order `-100` and `deepseek-official` at order `0` in `settings.onboarding`. The shell continues to mount only the first incomplete entry, so the dialogs cannot stack. No additional client package or plugin row is introduced. + +**Both steps share one modal component.** `OnboardingModal` wraps the existing ui-primitives `Modal`, supplies the common title and content geometry, and owns `#root` inert for exactly the visible lifetime. Escape and mask clicks do not silently complete mandatory onboarding; each step exposes only its explicit actions. A step still loading private facts returns `null`, so it paints and blocks nothing. + +**The welcome notice reuses the existing durable field.** Its exact copy and version live in `onboarding-copy.ts`. Loopback clients compare and write `ui-onboarding.welcomeNoticeVersion` through the existing settings API, and only Continue acknowledges the current version. Remote clients retain the existing process-local fallback because the settings namespace is loopback-only. No Host schema, API-proxy allowlist, or persistence implementation changes. + +**The credential dialog reuses the existing editor and write boundary.** The Models join still decides whether any provider is usable. When the official DeepSeek reference is writable and missing, `ProviderEditor` renders in credential-only mode inside the shared modal. It validates the key and calls the existing `credentials.set`; it does not mutate provider settings. Save and continue waits for the write and refreshed readiness, while Configure later completes only the current coordinator pass. + +## Alternatives considered + +**Separate client plugins for the notice and credential steps.** Rejected because the product asks for one client Cordis plugin and the two surfaces share copy, ordering, modal chrome, and invalidation ownership. + +**Move acknowledgement or credential logic into a new Host API.** Rejected because both backend contracts already express the required state and writes. A new endpoint would widen scope without changing user capability. + +**Keep the credential step as navigation into Models.** Rejected because the key is the only required first-run field, and the existing editor can expose that write safely without sending the user through a second dialog. + +**Keep the former full-viewport stage.** Rejected because the requested onboarding is a pair of dialogs over the current app, and the common ui-primitives modal already provides the appropriate portal, mask, and accessibility contract. + +## Consequences + +A fresh loopback profile sees the specified internal-testing notice, then an inline DeepSeek key dialog only when no provider is usable. Acknowledgement remains versioned in `settings.yaml`, secrets remain write-only in `.credentials.yaml`, and already-ready or unsupported deployments render no onboarding chrome while readiness loads. The Models package now owns product-onboarding presentation as well as provider configuration; its README and browser coverage make that broader responsibility explicit. This decision restores a concise testing-stage notice after the historical [full-viewport beta notice removal](../simplification/2026-08-13-remove-first-run-beta-notice.md) without restoring that notice's telemetry copy or takeover layout. diff --git a/.agents/notes/implemented/feature/2026-08-13-shared-modal-product-onboarding.zh.md b/.agents/notes/implemented/feature/2026-08-13-shared-modal-product-onboarding.zh.md new file mode 100644 index 0000000000..ebbcb73344 --- /dev/null +++ b/.agents/notes/implemented/feature/2026-08-13-shared-modal-product-onboarding.zh.md @@ -0,0 +1,33 @@ +# Agent Note: 共用弹窗的产品引导 + +Status: implemented + +[English](2026-08-13-shared-modal-product-onboarding.md) | 中文 + +## 问题 + +首次使用引导混用了两种交互:产品背景说明占满整个视口,凭据提示则先把用户带进「设置」,之后才能输入密钥。一个很短的有序流程因此像两个互不相关的界面,引导 UI 的归属也分散在多个包中。产品仍需要在提供方配置之前显示版本化的测试阶段声明,但恢复它不能增加第二个独立浮层,也不能改变 Host 的设置与凭据边界。 + +## 决策 + +**由同一个既有 client Cordis 插件持有两个已发布步骤。** `ui-settings-models` 在 `settings.onboarding` 中以顺序 `-100` 注册 `welcome-notice`,以顺序 `0` 注册 `deepseek-official`。外壳仍然只挂载第一个未完成条目,因此两个弹窗不会堆叠。不新增 client 包或插件配置行。 + +**两个步骤共用同一个弹窗组件。** `OnboardingModal` 包装既有 ui-primitives `Modal`,提供统一的标题和内容布局,并只在可见期间持有 `#root` 的 inert 状态。Escape 和遮罩点击不会静默完成强制引导;每个步骤只暴露自己的明确操作。步骤仍在加载私有事实时返回 `null`,因此不会绘制或阻塞界面。 + +**欢迎声明复用既有持久化字段。** 完整文案与版本由 `onboarding-copy.ts` 持有。回环客户端通过既有 settings API 比较和写入 `ui-onboarding.welcomeNoticeVersion`,且只有点击「继续」才确认当前版本。远程客户端继续使用既有的进程内回退,因为该 settings namespace 仅限回环访问。不改变 Host schema、API Proxy 允许列表或持久化实现。 + +**凭据弹窗复用既有编辑器与写入边界。** Models 联接仍负责判断是否已有任意可用提供方。当 DeepSeek 官方引用可写但缺失时,`ProviderEditor` 以仅凭据模式渲染在共用弹窗中。它校验密钥并调用既有 `credentials.set`,不会修改提供方设置。「保存并继续」会等待写入与就绪状态刷新;「稍后配置」只完成协调器当前这一轮。 + +## 曾考虑的替代方案 + +**让声明与凭据步骤分别成为 client 插件。** 不采用:产品要求只使用一个 client Cordis 插件,且两个界面共享文案、顺序、弹窗框架与失效刷新归属。 + +**把确认或凭据逻辑移入新的 Host API。** 不采用:两个既有后端契约已经能表达所需状态与写入;新增 endpoint 只会扩大范围,不会增加用户能力。 + +**继续从凭据步骤跳转到 Models。** 不采用:首次使用唯一必填的是密钥,既有编辑器可以安全暴露这项写入,无需再把用户送进第二个对话框。 + +**保留此前占满视口的展示层。** 不采用:本次需要的是叠加在当前应用上的两个弹窗,既有 ui-primitives modal 已提供合适的 portal、遮罩与无障碍契约。 + +## 后果 + +新的回环 profile 会先看到指定的内测声明;仅当没有任何可用提供方时,之后才会出现行内 DeepSeek 密钥弹窗。确认仍按版本写入 `settings.yaml`,secret 仍以只写方式存入 `.credentials.yaml`,已就绪或无法修复的部署在加载判定期间不会渲染任何引导框架。Models 包现在同时持有产品引导展示与提供方配置;README 和浏览器覆盖明确记录了这项扩展后的职责。本决策在历史上的[全屏内测声明移除](../simplification/2026-08-13-remove-first-run-beta-notice.md)之后恢复简洁的测试阶段声明,但不会恢复那份声明中的遥测文案或接管式布局。 diff --git a/.agents/notes/implemented/simplification/2026-08-13-remove-first-run-beta-notice.i18n.yaml b/.agents/notes/implemented/simplification/2026-08-13-remove-first-run-beta-notice.i18n.yaml index 7a48a069c5..e48ec3de3b 100644 --- a/.agents/notes/implemented/simplification/2026-08-13-remove-first-run-beta-notice.i18n.yaml +++ b/.agents/notes/implemented/simplification/2026-08-13-remove-first-run-beta-notice.i18n.yaml @@ -2,5 +2,5 @@ # side as of the last confirmed-consistent state. Both languages carry equal authority; # after editing either side, bring the other along and re-record with: # pnpm run verify-translation-pairing --write .agents/notes/implemented/simplification/2026-08-13-remove-first-run-beta-notice.md -2026-08-13-remove-first-run-beta-notice.md: 69f47be445ebfa9f10e6ba1217e4674a98c747f1 -2026-08-13-remove-first-run-beta-notice.zh.md: 51c91918baaf1ae3db28434d7d86093fbd5ffb4e +2026-08-13-remove-first-run-beta-notice.md: 21396eb9cc3e0e766238115967e354abe1032bd2 +2026-08-13-remove-first-run-beta-notice.zh.md: 2818343804e88e7114f5a6298393780b0fdcaf24 diff --git a/.agents/notes/implemented/simplification/2026-08-13-remove-first-run-beta-notice.md b/.agents/notes/implemented/simplification/2026-08-13-remove-first-run-beta-notice.md index 69f47be445..21396eb9cc 100644 --- a/.agents/notes/implemented/simplification/2026-08-13-remove-first-run-beta-notice.md +++ b/.agents/notes/implemented/simplification/2026-08-13-remove-first-run-beta-notice.md @@ -10,7 +10,7 @@ Every GUI first launch opened with a full-viewport internal-test statement (内 ## Decision -The first-run notice is removed from the assembled product rather than reworded. `ui-settings-general` seats no `settings.onboarding` step; the notice component, its durable acknowledgement store, its copy owner, and its locale keys are deleted. The `settings.onboarding` coordinator and its takeover stage stay ([ordered onboarding](../feature/2026-07-30-versioned-gui-welcome-onboarding.md)), and the conditional DeepSeek credential step is the only shipped occupant. The Host half still registers the `ui-onboarding` settings namespace: its `welcomeNoticeVersion` field keeps acknowledgements already stored in `$DSH_HOME/settings.yaml` valid, and nothing reads or writes it. Telemetry opt-in remains an explicit deployment environment choice documented in the [CLI reference README](../../../../apps/cli/reference/README.md); the product presents no prompt about enabling it. +This decision removed the first-run notice from the assembled product rather than rewording it. `ui-settings-general` seated no `settings.onboarding` step; the notice component, acknowledgement store, copy owner, and locale keys were deleted, while the Host kept the `ui-onboarding` namespace so stored documents remained valid. The later [shared-modal product onboarding](../feature/2026-08-13-shared-modal-product-onboarding.md) restores a new concise testing-stage notice in `ui-settings-models`, reusing that field and backend contract without restoring the removed takeover layout or telemetry instructions. Telemetry opt-in remains an explicit deployment environment choice documented in the [CLI reference README](../../../../apps/cli/reference/README.md); the restored notice says nothing about enabling it. ## Alternatives considered @@ -22,4 +22,4 @@ The first-run notice is removed from the assembled product rather than reworded. ## Consequences -A fresh profile boots into the credential step when the DeepSeek credential is missing and directly into the product otherwise; no full-viewport notice precedes either. The assembled onboarding scenario starts at the credential step, the remote-notice scenario is deleted with the feature, and the goal-bar fixture keeps the settings shell disabled because the fixture API client rejects settings traffic. Restoring a first-run notice requires a new onboarding registration and a new versioned field; the retained namespace does not resurrect the old acknowledgement semantics. +This removal eliminated the full-viewport notice and its telemetry copy. The later restoration is intentionally a different presentation and copy revision: a shared modal precedes the inline credential dialog, the remote scenario again covers process-local acknowledgement, and the existing `welcomeNoticeVersion` field records the new copy version. The historical telemetry prompt remains absent. diff --git a/.agents/notes/implemented/simplification/2026-08-13-remove-first-run-beta-notice.zh.md b/.agents/notes/implemented/simplification/2026-08-13-remove-first-run-beta-notice.zh.md index 51c91918ba..2818343804 100644 --- a/.agents/notes/implemented/simplification/2026-08-13-remove-first-run-beta-notice.zh.md +++ b/.agents/notes/implemented/simplification/2026-08-13-remove-first-run-beta-notice.zh.md @@ -10,7 +10,7 @@ GUI 每次首启都会先显示占满视口的内测声明:内部测试的定 ## 决策 -首启声明从组装后的产品中整体移除,而不是改写。`ui-settings-general` 不再注册任何 `settings.onboarding` 步骤;声明组件、其持久化确认 store、文案所有者文件和 locale 键全部删除。`settings.onboarding` 协调器及其接管式展示阶段保留([有序引导](../feature/2026-07-30-versioned-gui-welcome-onboarding.md)),按条件显示的 DeepSeek 凭据步骤是当前唯一的注册方。宿主端仍注册 `ui-onboarding` 设置 namespace:其中的 `welcomeNoticeVersion` 字段让 `$DSH_HOME/settings.yaml` 中已写入的确认记录保持有效,没有任何代码读取或写入它。遥测的开启仍是显式的部署环境变量选择,记录在 [CLI reference README](../../../../apps/cli/reference/README.md) 中;产品界面不出现任何关于开启遥测的提示。 +本决策当时把首启声明从组装后的产品中整体移除,而不是改写。`ui-settings-general` 不再注册任何 `settings.onboarding` 步骤;声明组件、确认 store、文案所有者文件和 locale 键均被删除,Host 则保留 `ui-onboarding` namespace,使既有设置文档继续有效。后续的[共用弹窗产品引导](../feature/2026-08-13-shared-modal-product-onboarding.md)在 `ui-settings-models` 中恢复了一份新的简洁测试阶段声明,复用该字段与后端契约,但不会恢复已移除的接管式布局或遥测说明。遥测的开启仍是显式的部署环境变量选择,记录在 [CLI reference README](../../../../apps/cli/reference/README.md) 中;恢复后的声明不涉及如何开启遥测。 ## 曾考虑的替代方案 @@ -22,4 +22,4 @@ GUI 每次首启都会先显示占满视口的内测声明:内部测试的定 ## 后果 -全新 profile 在缺少 DeepSeek 凭据时直接进入凭据步骤,凭据已配置时直接进入产品,两种情况都没有占满视口的声明。组装级引导场景从凭据步骤开始,远程声明场景随功能一并删除,goal-bar fixture 继续禁用设置外壳,因为 fixture API 客户端会拒绝设置请求。将来若要恢复首启声明,需要新的引导注册和新的版本化字段;保留的 namespace 不会复活旧的确认语义。 +这次移除消除了占满视口的声明及其遥测文案。后续恢复有意采用不同的展示与文案版本:共用弹窗先于行内凭据弹窗出现,远程场景重新覆盖进程内确认,既有 `welcomeNoticeVersion` 字段记录新的文案版本。历史上的遥测提示仍未恢复。 diff --git a/apps/web/tests/README.i18n.yaml b/apps/web/tests/README.i18n.yaml index fd0b89b541..b366a7ff52 100644 --- a/apps/web/tests/README.i18n.yaml +++ b/apps/web/tests/README.i18n.yaml @@ -2,5 +2,5 @@ # side as of the last confirmed-consistent state. Both languages carry equal authority; # after editing either side, bring the other along and re-record with: # pnpm run verify-translation-pairing --write apps/web/tests/README.md -README.md: 4d7236ef69189845dbc2847289d497fc54c94ae9 -README.zh.md: 21c2f2ce7ccc8fe5314d766c06235453aa292031 +README.md: acb0c300bafe221f6a92f0168908bebf965377b9 +README.zh.md: fd3d950a106375bb038b205415407b4a31bd2b32 diff --git a/apps/web/tests/README.md b/apps/web/tests/README.md index 4d7236ef69..acb0c300ba 100644 --- a/apps/web/tests/README.md +++ b/apps/web/tests/README.md @@ -30,7 +30,8 @@ artifact it produces itself. When a scenario needs a Client-owned constant or pure function, mirror it here instead, next to the commented-out import that names the source module. A drift then surfaces as a missed selector or a stale mirrored value — a loud failure, -never a silent pass. +never a silent pass. `scaffold.ts` follows this rule for the welcome-notice +namespace, acknowledgement field, version, and asserted Chinese copy. Two kinds of Client import stand. `assembled-boot.ts` drives the shell itself, so it imports `AppWebEntry` from `@deepseek-ai/dsh-client-web` and the boot-manifest diff --git a/apps/web/tests/README.zh.md b/apps/web/tests/README.zh.md index 21c2f2ce7c..fd3d950a10 100644 --- a/apps/web/tests/README.zh.md +++ b/apps/web/tests/README.zh.md @@ -24,7 +24,7 @@ Client face,而该 face 必须等 Host tsdown 生成 `@deepseek-ai/dsh-goal/re 当某个场景需要 Client 持有的常量或纯函数时,改为在此处镜像一份,并紧挨着一条注释掉的 import 点明源模块。这样漂移会表现为选择器未命中或镜像值过期——是响亮的失败,绝不会是静默 -通过。 +通过。`scaffold.ts` 按此规则镜像欢迎声明的 namespace、确认字段、版本和被断言的中文文案。 有两类 Client import 是长期成立的。`assembled-boot.ts` 驱动 shell 本身,因此它从 `@deepseek-ai/dsh-client-web` import `AppWebEntry`、从 diff --git a/apps/web/tests/goal-bar.e2e.ts b/apps/web/tests/goal-bar.e2e.ts index f4a0d8d34b..00260a79ee 100644 --- a/apps/web/tests/goal-bar.e2e.ts +++ b/apps/web/tests/goal-bar.e2e.ts @@ -26,7 +26,7 @@ describe('web e2e: goal bar clear convergence', () => { let tripwire: ReturnType beforeAll(async () => { - scaffold = await launchWebScaffold({ extraOverlayPath: OVERLAY }) + scaffold = await launchWebScaffold({ extraOverlayPath: OVERLAY, welcomeNoticePending: true }) browser = await chromium.launch() page = await newEnglishPage(browser) tripwire = watchConsole(page) diff --git a/apps/web/tests/onboarding-deepseek-config.e2e.ts b/apps/web/tests/onboarding-deepseek-config.e2e.ts index 08cfeda4d3..ad9bc0903f 100644 --- a/apps/web/tests/onboarding-deepseek-config.e2e.ts +++ b/apps/web/tests/onboarding-deepseek-config.e2e.ts @@ -1,6 +1,7 @@ // Keyless browser e2e: the shipped DeepSeek adapter stays mounted while its -// credential is absent, onboarding routes to the real Models editor, and its -// write lands in an isolated harness home without a reload or model call. +// credential is absent, both ordered steps share the shipped modal chrome, +// and the inline key write lands in an isolated harness home without a reload +// or model call. import { randomBytes } from 'node:crypto' import { readFile } from 'node:fs/promises' import { fileURLToPath } from 'node:url' @@ -8,13 +9,17 @@ import { join } from 'node:path' import type { Browser, Page } from 'playwright' import { chromium } from 'playwright' import { afterAll, beforeAll, describe, expect, it, onTestFailed } from 'vitest' +import { settingsNamespace } from '@deepseek-ai/dsh-settings' import { acknowledgeReloadConnectionLoss, assertFixtureInventory, captureStableAria, compareOrRefreshGolden, launchWebScaffold, watchConsole, webSnapshotMode, type WebScaffold, + WELCOME_NOTICE_ACK_FIELD, WELCOME_NOTICE_COPY, WELCOME_NOTICE_SETTINGS_NAMESPACE, + WELCOME_NOTICE_VERSION, } from './scaffold.ts' import { ZH_BROWSER_LOCALE, connectFreshWorkspaceZh, saveFailureShot } from './support.ts' const SNAPSHOT_DIR = fileURLToPath(new URL('./snapshots/onboarding-deepseek-config', import.meta.url)) +const WELCOME_EXPECTED = join(SNAPSHOT_DIR, 'welcome.expected.md') const MISSING_EXPECTED = join(SNAPSHOT_DIR, 'missing.expected.md') const MODELS_EXPECTED = join(SNAPSHOT_DIR, 'models.expected.md') const MODE = webSnapshotMode() @@ -27,7 +32,7 @@ describe.skipIf(MODE === 'record')('web e2e: first-run DeepSeek credential setup const browserConsole: string[] = [] beforeAll(async () => { - scaffold = await launchWebScaffold({ deepSeekMissingCredential: true }) + scaffold = await launchWebScaffold({ deepSeekMissingCredential: true, welcomeNoticePending: true }) browser = await chromium.launch() // The scenario asserts the shipped Chinese copy, so the browser asks for it. page = await browser.newPage({ viewport: { width: 1440, height: 960 }, locale: ZH_BROWSER_LOCALE }) @@ -44,53 +49,40 @@ describe.skipIf(MODE === 'record')('web e2e: first-run DeepSeek credential setup it('stores a key write-only and observes configured state without restarting', async () => { onTestFailed(() => saveFailureShot(page, 'web-e2e-onboarding-deepseek-config')) - const credentialStep = page.getByRole('region', { name: '添加一个 API Key 开始使用' }) - await credentialStep.waitFor({ timeout: 15_000 }) + const welcome = page.getByRole('dialog', { name: WELCOME_NOTICE_COPY.zh.title }) + await welcome.waitFor({ timeout: 15_000 }) expect(await page.locator('#root').evaluate(root => (root as HTMLElement).inert)).toBe(true) + for (const paragraph of WELCOME_NOTICE_COPY.zh.body.split('\n\n')) { + expect(await welcome.getByText(paragraph, { exact: true }).count()).toBe(1) + } + expect(await welcome.getByRole('button').allTextContents()).toEqual([ + WELCOME_NOTICE_COPY.zh.continueLabel, + ]) + const welcomeAria = await captureStableAria(page, '[role="dialog"]', scaffold.workspaceCwd) + await compareOrRefreshGolden(WELCOME_EXPECTED, welcomeAria, MODE) - const mask = page.locator('[class*="onboardingMask"]') - expect(await mask.count()).toBe(1) - const maskStyles = await mask.evaluate((mask) => { - const style = getComputedStyle(mask) - const rect = mask.getBoundingClientRect() - return { - position: style.position, - left: style.left, - right: style.right, - top: style.top, - bottom: style.bottom, - background: style.backgroundColor, - backdropFilter: style.backdropFilter, - rect: { left: rect.left, top: rect.top, right: rect.right, bottom: rect.bottom }, - } - }) - expect(maskStyles).toEqual({ - position: 'absolute', - left: '0px', - right: '0px', - top: '80px', - bottom: '0px', - background: 'rgba(0, 0, 0, 0.24)', - backdropFilter: 'blur(2px)', - rect: { left: 0, top: 80, right: 1440, bottom: 960 }, - }) + // Observation is not acknowledgement: the exact version is persisted + // only by the explicit action, so a reload still presents this dialog. + const firstReloadWarnings = tripwire.warnings.length + await page.reload({ waitUntil: 'load' }) + acknowledgeReloadConnectionLoss(tripwire, firstReloadWarnings) + await welcome.waitFor({ timeout: 15_000 }) - expect(await credentialStep.getByRole('textbox').count()).toBe(0) - const initial = await captureStableAria(page, '[role="region"]', scaffold.workspaceCwd) - await compareOrRefreshGolden(MISSING_EXPECTED, initial, MODE) + await welcome.getByRole('button', { name: WELCOME_NOTICE_COPY.zh.continueLabel }).click() + await welcome.waitFor({ state: 'detached', timeout: 15_000 }) - await credentialStep.getByRole('button', { name: '前往配置' }).click() - await credentialStep.waitFor({ state: 'detached', timeout: 15_000 }) - const settings = page.getByRole('dialog', { name: '设置' }) - await settings.waitFor({ timeout: 10_000 }) - expect(await page.locator('#root').evaluate(root => (root as HTMLElement).inert)).toBe(false) - const keyInput = settings.getByLabel('API 密钥', { exact: true }) + const credentialStep = page.getByRole('dialog', { name: '添加一个 API Key 开始使用' }) + await credentialStep.waitFor({ timeout: 15_000 }) + const keyInput = credentialStep.getByLabel('API 密钥', { exact: true }) await keyInput.waitFor({ timeout: 10_000 }) + const initial = await captureStableAria(page, '[role="dialog"]', scaffold.workspaceCwd) + await compareOrRefreshGolden(MISSING_EXPECTED, initial, MODE) const secret = `dsh_onboarding_${randomBytes(12).toString('hex')}` await keyInput.fill(secret) - await settings.getByRole('button', { name: '保存', exact: true }).click() - await keyInput.waitFor({ state: 'detached', timeout: 15_000 }) + await credentialStep.getByRole('button', { name: '保存并继续' }).click() + await credentialStep.waitFor({ state: 'detached', timeout: 15_000 }) + expect(await page.locator('#root').evaluate(root => (root as HTMLElement).inert)).toBe(false) const stored = await readFile(join(scaffold.harnessHome, '.credentials.yaml'), 'utf8') expect(stored.includes(`DEEPSEEK_API_KEY: ${secret}`)).toBe(true) @@ -98,8 +90,15 @@ describe.skipIf(MODE === 'record')('web e2e: first-run DeepSeek credential setup expect((await page.locator('body').ariaSnapshot()).includes(secret)).toBe(false) expect(browserConsole.some(line => line.includes(secret))).toBe(false) - // The same open Models surface reuses the refreshed join and exposes the + const acknowledgedSettings = await readFile(join(scaffold.harnessHome, 'settings.yaml'), 'utf8') + expect(acknowledgedSettings).toContain(`${WELCOME_NOTICE_ACK_FIELD}: ${WELCOME_NOTICE_VERSION}`) + + // The ordinary Models surface reuses the refreshed join and exposes the // configured write-only placeholder without a reload. + await page.getByRole('button', { name: '设置', exact: true }).click() + const settings = page.getByRole('dialog', { name: '设置' }) + await settings.waitFor({ timeout: 10_000 }) + await settings.getByRole('button', { name: '模型' }).click() const deepSeekRow = settings.getByText('DeepSeek', { exact: true }).first() await deepSeekRow.waitFor({ timeout: 10_000 }) await deepSeekRow.locator('xpath=ancestor::li').getByRole('button', { name: '编辑' }).click() @@ -114,7 +113,21 @@ describe.skipIf(MODE === 'record')('web e2e: first-run DeepSeek credential setup await page.reload({ waitUntil: 'load' }) acknowledgeReloadConnectionLoss(tripwire, secondReloadWarnings) await page.waitForSelector('[class*="frame"]', { timeout: 15_000 }) - expect(await page.getByRole('region', { name: '添加一个 API Key 开始使用' }).count()).toBe(0) + expect(await page.getByRole('dialog', { name: WELCOME_NOTICE_COPY.zh.title }).count()).toBe(0) + expect(await page.getByRole('dialog', { name: '添加一个 API Key 开始使用' }).count()).toBe(0) + + // An old acknowledgement means materially revised copy: welcome returns, + // while the already-configured provider step remains complete. + await scaffold.ctx.settings.mutate(settingsNamespace(WELCOME_NOTICE_SETTINGS_NAMESPACE), [{ + op: 'set', path: [WELCOME_NOTICE_ACK_FIELD], value: 'previous-copy-version', + }]) + const thirdReloadWarnings = tripwire.warnings.length + await page.reload({ waitUntil: 'load' }) + acknowledgeReloadConnectionLoss(tripwire, thirdReloadWarnings) + await welcome.waitFor({ timeout: 15_000 }) + await welcome.getByRole('button', { name: WELCOME_NOTICE_COPY.zh.continueLabel }).click() + await welcome.waitFor({ state: 'detached', timeout: 15_000 }) + expect(await page.getByRole('dialog', { name: '添加一个 API Key 开始使用' }).count()).toBe(0) expect((await page.content()).includes(secret)).toBe(false) expect((await page.locator('body').ariaSnapshot()).includes(secret)).toBe(false) @@ -125,10 +138,9 @@ describe.skipIf(MODE === 'record')('web e2e: first-run DeepSeek credential setup it('never paints the takeover chrome on a configured reload, even with the settings join held open', async () => { onTestFailed(() => saveFailureShot(page, 'web-e2e-onboarding-configured-reload')) - // Regression pin for the reload white flash: the credential step is - // satisfied (credential configured), yet it must LOAD its - // private join before it can decide not to show. The chrome lives inside - // the step (OnboardingSurface), so the deciding window paints and blocks + // Regression pin for the reload flash: both steps are satisfied, yet each + // must load private facts before deciding not to show. Dialog chrome lives + // inside each visible branch, so the deciding window paints and blocks // nothing. Holding settings.describe widens that window from loopback // RTT scale to a deterministic hundreds of milliseconds, removing all // timing dependence from the sampler assertions below. @@ -141,7 +153,10 @@ describe.skipIf(MODE === 'record')('web e2e: first-run DeepSeek credential setup const sightings: string[] = [] ;(window as unknown as { __takeoverSightings: string[] }).__takeoverSightings = sightings setInterval(() => { - if (document.querySelector('[class*="onboardingStage"], [class*="onboardingMask"]') !== null) { + if (document.querySelector( + '[role="dialog"][aria-label="内测声明"], ' + + '[role="dialog"][aria-label="添加一个 API Key 开始使用"]', + ) !== null) { sightings.push('chrome') } if (document.getElementById('root')?.inert === true) sightings.push('inert') @@ -171,7 +186,8 @@ describe.skipIf(MODE === 'record')('web e2e: first-run DeepSeek credential setup acknowledgeReloadConnectionLoss(tripwire, warningsBefore) expect(await page.evaluate(() => (window as unknown as { __takeoverSightings: string[] }).__takeoverSightings)).toEqual([]) - expect(await page.locator('[class*="onboardingStage"]').count()).toBe(0) + expect(await page.getByRole('dialog', { name: WELCOME_NOTICE_COPY.zh.title }).count()).toBe(0) + expect(await page.getByRole('dialog', { name: '添加一个 API Key 开始使用' }).count()).toBe(0) expect(tripwire.pageErrors).toEqual([]) }, 60_000) @@ -228,7 +244,7 @@ describe.skipIf(MODE === 'record')('web e2e: first-run DeepSeek credential setup it('keeps the fixture inventory closed', async () => { await assertFixtureInventory( SNAPSHOT_DIR, - ['missing.expected.md', 'models.expected.md'], + ['welcome.expected.md', 'missing.expected.md', 'models.expected.md'], ) }) }) diff --git a/apps/web/tests/onboarding-usable-provider.e2e.ts b/apps/web/tests/onboarding-usable-provider.e2e.ts index 09e3923064..5638668705 100644 --- a/apps/web/tests/onboarding-usable-provider.e2e.ts +++ b/apps/web/tests/onboarding-usable-provider.e2e.ts @@ -44,14 +44,17 @@ describe.skipIf(MODE === 'record')('web e2e: another usable provider ends first- it('closes the setup card without discarding the add card beside it', async () => { onTestFailed(() => saveFailureShot(page, 'web-e2e-onboarding-setup-card-cancel')) - const credentialStep = page.getByRole('region', { name: CREDENTIAL_STEP }) + const credentialStep = page.getByRole('dialog', { name: CREDENTIAL_STEP }) await credentialStep.waitFor({ timeout: 15_000 }) - await credentialStep.getByRole('button', { name: '前往配置' }).click() + await credentialStep.getByRole('button', { name: '稍后配置' }).click() await credentialStep.waitFor({ state: 'detached', timeout: 15_000 }) + await page.getByRole('button', { name: '设置', exact: true }).click() const settings = page.getByRole('dialog', { name: '设置' }) await settings.waitFor({ timeout: 10_000 }) - // Nothing is reachable yet, so DeepSeek presents itself as its open card. + // The onboarding step no longer navigates into Settings on dismissal, so + // enter the Models section explicitly before exercising its normal cards. + await settings.getByRole('button', { name: '模型' }).click() const setupKey = settings.getByRole('textbox', { name: 'API 密钥', exact: true }) await setupKey.waitFor({ timeout: 10_000 }) @@ -66,15 +69,14 @@ describe.skipIf(MODE === 'record')('web e2e: another usable provider ends first- { timeout: 10_000 }, ).toBe(2) - // Cancelling the setup card is the regression: it used to leave itself open - // and close the add card, discarding that draft. + // Cancelling the setup card must not close the independent add-provider + // draft beside it. await settings.getByRole('button', { name: '取消', exact: true }).first().click() expect(await settings.getByLabel('提供方').count()).toBe(1) await expect.poll( async () => settings.getByRole('textbox', { name: 'API 密钥', exact: true }).count(), { timeout: 10_000 }, ).toBe(1) - // DeepSeek is now an ordinary row: a missing-key dot and an Edit button. await settings.getByRole('button', { name: '编辑 DeepSeek (deepseek-official)' }).waitFor({ timeout: 10_000 }) const dismissed = await captureStableAria(page, '[role="dialog"]', scaffold.workspaceCwd) await compareOrRefreshGolden(DISMISSED_EXPECTED, dismissed, MODE) @@ -104,10 +106,9 @@ describe.skipIf(MODE === 'record')('web e2e: another usable provider ends first- // The regression: the step read only the official route's credential, so a // fully configured user was taken over on every blank session. await expect.poll( - async () => page.getByRole('region', { name: CREDENTIAL_STEP }).count(), + async () => page.getByRole('dialog', { name: CREDENTIAL_STEP }).count(), { timeout: 10_000 }, ).toBe(0) - expect(await page.locator('[class*="onboardingStage"]').count()).toBe(0) expect(await page.locator('#root').evaluate(root => (root as HTMLElement).inert)).toBe(false) // The Models page agrees: DeepSeek stays a row rather than reopening its diff --git a/apps/web/tests/remote-welcome.e2e.ts b/apps/web/tests/remote-welcome.e2e.ts new file mode 100644 index 0000000000..256afaeede --- /dev/null +++ b/apps/web/tests/remote-welcome.e2e.ts @@ -0,0 +1,60 @@ +// Trusted non-loopback Web access cannot call the loopback-only settings API; +// the notice therefore advances for this browser process and returns on reload. +import type { Browser, Page } from 'playwright' +import { chromium } from 'playwright' +import { afterAll, beforeAll, describe, expect, it } from 'vitest' +import { + acknowledgeReloadConnectionLoss, launchWebScaffold, watchConsole, webSnapshotMode, + WELCOME_NOTICE_COPY, + type WebScaffold, +} from './scaffold.ts' +import { ZH_BROWSER_LOCALE } from './support.ts' + +const MODE = webSnapshotMode() + +describe.skipIf(MODE === 'record')('web e2e: remote welcome notice', () => { + let scaffold: WebScaffold + let browser: Browser + let page: Page + let tripwire: ReturnType + + beforeAll(async () => { + scaffold = await launchWebScaffold({ + remoteAuthority: 'remote.localhost', + welcomeNoticePending: true, + }) + browser = await chromium.launch() + page = await browser.newPage({ + viewport: { width: 1440, height: 960 }, + locale: ZH_BROWSER_LOCALE, + }) + tripwire = watchConsole(page) + await page.goto(scaffold.baseUrl, { waitUntil: 'load' }) + await page.waitForSelector('#root', { timeout: 30_000 }) + }, 120_000) + + afterAll(async () => { + await browser?.close() + await scaffold?.close() + }) + + it('advances process-locally and presents the notice again after reload', async () => { + const welcome = page.getByRole('dialog', { name: WELCOME_NOTICE_COPY.zh.title }) + await welcome.waitFor({ timeout: 15_000 }) + expect(await page.locator('#root').evaluate(root => (root as HTMLElement).inert)).toBe(true) + + await welcome.getByRole('button', { name: WELCOME_NOTICE_COPY.zh.continueLabel }).click() + await welcome.waitFor({ state: 'detached', timeout: 15_000 }) + await expect.poll( + () => page.locator('#root').evaluate(root => (root as HTMLElement).inert), + { timeout: 15_000 }, + ).toBe(false) + + const reloadWarnings = tripwire.warnings.length + await page.reload({ waitUntil: 'load' }) + acknowledgeReloadConnectionLoss(tripwire, reloadWarnings) + await welcome.waitFor({ timeout: 15_000 }) + expect(tripwire.warnings).toEqual([]) + expect(tripwire.pageErrors).toEqual([]) + }, 60_000) +}) diff --git a/apps/web/tests/scaffold.ts b/apps/web/tests/scaffold.ts index a94a9602c2..f1ba62d881 100644 --- a/apps/web/tests/scaffold.ts +++ b/apps/web/tests/scaffold.ts @@ -41,6 +41,7 @@ import { loadOverlayPatches, } from '@deepseek-ai/dsh-app-boot' import { dshHomePath } from '@deepseek-ai/dsh-home-paths' +import { settingsNamespace } from '@deepseek-ai/dsh-settings' import { LlmAdapter } from '@deepseek-ai/dsh-llm' import type { LlmModelInfo, LlmProviderInfo, LlmResolvedModelInfo, StreamChunk, @@ -62,6 +63,25 @@ import type {} from '@deepseek-ai/dsh-agent' import { provideCmdline } from '@deepseek-ai/dsh-cmdline' import { REPO_ROOT, requireDist } from './support.ts' +// Host-side web e2e cannot import a browser package: doing so would pull that +// package's complete TS project into this graph. Mirrored from +// packages/client/ui-settings-models/src/onboarding-copy.ts; drift makes the +// default pre-acknowledgement stop suppressing the notice and fails loudly. +// import { +// WELCOME_NOTICE_ACK_FIELD, WELCOME_NOTICE_SETTINGS_NAMESPACE, +// WELCOME_NOTICE_VERSION, WELCOME_NOTICE_COPY, +// } from '@deepseek-ai/dsh-client-ui-settings-models' +export const WELCOME_NOTICE_SETTINGS_NAMESPACE = 'ui-onboarding' +export const WELCOME_NOTICE_ACK_FIELD = 'welcomeNoticeVersion' +export const WELCOME_NOTICE_VERSION = '2026-08-13.1' +export const WELCOME_NOTICE_COPY = { + zh: { + title: '内测声明', + body: 'DeepSeek Harness 目前的 0.1 版本仍处在面向 Harness 开发者进行测试的阶段,还有许多地方需要持续改进和打磨,希望听取广大开发者的反馈建议。预计 DeepSeek Harness 的核心插件以及基础 API 都会在接下来的一段时间内快速迭代、持续演化。\n\n我们期待与全球开发者一起,在开源、开放、可复用、可组合的基础设施之上,共同探索智能上限。欢迎全球 Harness 开发者加入 DSH 插件生态。', + continueLabel: '继续', + }, +} as const + /** Snapshot mode for the lane, from $DSH_SNAPSHOT (same vocabulary as the other snapshot suites). */ export type WebSnapshotMode = 'replay' | 'record' | 'refresh' @@ -213,6 +233,8 @@ export interface LaunchOptions { * keyless first-run configuration lane; the default disables the adapter. */ deepSeekMissingCredential?: boolean + /** Leave the current welcome notice pending; ordinary scenarios pre-acknowledge it before browser boot. */ + welcomeNoticePending?: boolean /** * Patch the shipped DeepSeek search row to a deterministic endpoint and * credential reference. Browser search scenarios keep the real provider and @@ -510,6 +532,11 @@ export async function launchWebScaffold(options: LaunchOptions = {}): Promise )} - {/* The takeover chrome (OnboardingSurface: mask, opaque stage, `#root` - inert) lives inside the step component, wrapped around its visible - content — a step still deciding (private facts loading) renders - null, so nothing paints or blocks while it decides. */} + {/* Dialog chrome and `#root` inert ownership live inside each step's + visible branch. A step still deciding (private facts loading) + renders null, so nothing paints or blocks while it decides. */} {onboardingStep !== undefined && renderSlot('settings.onboarding', { stepId: onboardingStep.id, complete: () => { completeOnboardingStep(onboardingStep.id) }, diff --git a/packages/client/ui-settings-general/src/index.ts b/packages/client/ui-settings-general/src/index.ts index ce11f4e0be..ed600b1c1c 100644 --- a/packages/client/ui-settings-general/src/index.ts +++ b/packages/client/ui-settings-general/src/index.ts @@ -8,7 +8,7 @@ import { settingsNamespace } from '@deepseek-ai/dsh-settings' const ONBOARDING_SETTINGS_NAMESPACE = 'ui-onboarding' interface OnboardingSettings { - /** Last welcome-notice version acknowledged by a since-removed first-run notice; kept so stored documents stay valid. */ + /** Last version acknowledged by the current product welcome step. */ welcomeNoticeVersion?: string } diff --git a/packages/client/ui-settings-general/tests/settings-root.client.spec.tsx b/packages/client/ui-settings-general/tests/settings-root.client.spec.tsx index 430bb2daee..c9ec593974 100644 --- a/packages/client/ui-settings-general/tests/settings-root.client.spec.tsx +++ b/packages/client/ui-settings-general/tests/settings-root.client.spec.tsx @@ -229,7 +229,7 @@ describe('SettingsPanel navigation', () => { it('paints no takeover chrome of its own around the mounted step', () => { // The chrome (mask, opaque stage, #root inert) belongs to the step via - // the OnboardingSurface primitive — a mounted-but-deciding step that + // the step-owned dialog surface — a mounted-but-deciding step that // renders null must show and block nothing (the reload white-flash fix; // onboarding-surface.spec.tsx pins the primitive's half). const appRoot = document.createElement('div') diff --git a/packages/client/ui-settings-models/README.i18n.yaml b/packages/client/ui-settings-models/README.i18n.yaml index ddd679e690..f26ca67bc3 100644 --- a/packages/client/ui-settings-models/README.i18n.yaml +++ b/packages/client/ui-settings-models/README.i18n.yaml @@ -2,5 +2,5 @@ # side as of the last confirmed-consistent state. Both languages carry equal authority; # after editing either side, bring the other along and re-record with: # pnpm run verify-translation-pairing --write packages/client/ui-settings-models/README.md -README.md: 642dc3ffc7f3f45a523cd6e84b13d34e2d25dc2a -README.zh.md: 408f2017636ef2d9a5a57fef253f2f05b61a22fb +README.md: f0094c4f2687beaf6a5e5f7a1a8dc3d4ebdbcbc0 +README.zh.md: 68bb64ddeebfd65644edbb5e11fd2e147214d44a diff --git a/packages/client/ui-settings-models/README.md b/packages/client/ui-settings-models/README.md index 642dc3ffc7..f0094c4f26 100644 --- a/packages/client/ui-settings-models/README.md +++ b/packages/client/ui-settings-models/README.md @@ -2,11 +2,13 @@ English | [中文](README.zh.md) -Models settings plugin: the provider configuration page and official-DeepSeek conditional onboarding step. It joins three wire domains into one shared snapshot — `llm.providers` (the configurable-provider directory with each route's live/dormant state), `settings.describe` (serialized schemas, layered redacted values, secret slots), and `credentials.describe` (value-free configured/source/writable badges) — and renders provider rows with one editor card at a time, without presenting route liveness as provider status. +Models settings and product-onboarding plugin. The same client Cordis plugin registers the Models page plus two ordered first-run dialogs: a versioned internal-testing notice and the conditional official-DeepSeek credential step. Both steps share one modal wrapper and remain sequenced by `settings.onboarding`. The Models plane joins three wire domains into one shared snapshot — `llm.providers` (the configurable-provider directory with each route's live/dormant state), `settings.describe` (serialized schemas, layered redacted values, secret slots), and `credentials.describe` (value-free configured/source/writable badges) — and renders provider rows with one editor card at a time, without presenting route liveness as provider status. Rows are the *configured* providers (their profile resolves in the owning namespace); a whole-section provider whose key is not configured anywhere renders as its open setup card instead of a row, but only in the first-run posture — while no provider is registered with the credential its profile names — and only until the user closes that card, after which it is an ordinary row carrying the missing-key dot. Each card kind owns its own open state, so closing one never discards a draft in another. The add flow is a card carrying the dormant-directory provider select — a bare-mounted `llm-pi-ai` offers its whole installed catalog before any route exists. The pi-ai card additionally edits that route's **model list** and can ask the provider what it serves. A row labels API-key state with a green solid dot only when a referenced credential is confirmed configured, and with a red solid dot only when a named reference is confirmed missing; reference-free provider-native authentication and unavailable credential enrichment remain unmarked. The editor is a hand-written card per adapter family: the primary field is a single **API key** input — the page never asks for an environment-variable name; a typed key stores **write-only** through `credentials.set` under the profile's reference, deriving `_API_KEY` when the profile has none, and the pi-ai profile records that derivation as `apiKeyEnv`, so `settings.yaml` never carries a key value. Leaving a new pi-ai provider's key blank saves a reference-free profile and therefore preserves provider-native authentication such as the Bedrock credential chain or Vertex ADC. A successful Apply emits a local accessible status message without echoing secret material. The collapsed 自定义设置 fold carries the curated extras — `baseURL` for both families (the deepseek placeholder shows the public endpoint), each adapter's model catalog, and the **display name** and **API protocol** of a pi-ai route the adapter does not ship. Those two are what a hand-declared route names for itself: the create card asks for both because nothing can default them, so the editor reaches both rather than leaving them to `settings.yaml`. Clearing the name unsets it and the route falls back to its id, which is what the placeholder shows; the protocol has no such fallback. A catalog route gets neither — it defaults its name from its catalog entry, and its models each carry their own protocol, so a route-level one could only override every one of them. The Provider ID stays fixed: it is the settings key, the name every other namespace and every logged session references, and the stem of a credential reference the page cannot read back to move. Reasoning effort is deliberately NOT among them: it is a per-model capability and the models under one provider disagree about which levels they accept, so a provider-scoped control could only be set to a value some of them reject — which would hide even the models that support the level. The composer's model picker offers each model its own levels, and a switch there records provider, model, and effort together as the default for the next session. The profile field stays in `settings.yaml` for a deployment that knows its route. Each DeepSeek row edits `id`, optional display `name`, and optional `contextWindow`/`maxTokens`; existing fields outside that curated set survive edits, while every other profile field stays owned by `settings.yaml`. A row is deletable only when the user layer alone carries it (removal restores the composition base), and its localized confirmation dialog names the provider in the title, description, and final action. A row is tagged **Custom** when the directory entry says the owning adapter ships nothing under that key. The tag follows that answer alone: having a stored profile does not make a route custom — narrowing a shipped provider's models stores one too — and an adapter that reports nothing leaves its rows untagged rather than being read as shipped. -The DeepSeek step projects first-run readiness from that same joined snapshot after earlier onboarding pages complete. The step exists to leave the user with a model to talk to, so ANY provider they can already reach ends it without rendering — a registered route whose named credential reference is stored, including a read-only launch-environment credential, or one whose profile names no reference at all and therefore authenticates natively. Only a user with none of those is asked about DeepSeek, the one route the prompt can offer a key field for. It recognizes the official adapter through its `llm-deepseek` configurable-provider declaration, so an undeclared live route with the same provider id is not treated as repairable configuration. Only a mounted, active adapter with a missing writable reference shows the page that opens Settings on Models, whose existing setup card exclusively owns key input and `credentials.set`; the step never holds a secret. An absent adapter, inactive route, failed join, read-only deployment, or unusable settings or credential capability completes the step without rendering so onboarding cannot block the product; Models remains the diagnostic surface. +The notice step owns its exact copy and version in `src/onboarding-copy.ts`. On loopback it compares and writes `ui-onboarding.welcomeNoticeVersion` through the existing settings API; only an explicit Continue records the current version. A non-loopback browser cannot use that Host-only namespace, so acknowledgement is process-local and the notice returns after reload. + +After that notice completes, the DeepSeek step projects first-run readiness from the same joined Models snapshot. ANY provider the user can already reach ends it without rendering — a registered route whose named credential reference is stored, including a read-only launch-environment credential, or one whose profile names no reference and therefore authenticates natively. Only a user with none is asked for the official DeepSeek key. A mounted, active adapter with a missing writable reference renders the existing `ProviderEditor` in credential-only mode inside the shared onboarding modal; `credentials.set` stays the only secret write, and no provider settings are changed. Configure later completes only this coordinator pass. An absent adapter, inactive route, failed join, read-only deployment, or unusable settings or credential capability completes the step without rendering; Models remains the diagnostic surface. Every edit lands as `settings.mutate` path ops against the stored section — a set per changed field, an unset per cleared one, and a single unset for a deleted provider row. The page only ever holds the REDACTED descriptor, so it mutates the fields it can see rather than rebuilding a section. DeepSeek's `models` is one replace-by-value array: the editor shows inherited effective rows until the first model edit materializes the complete array in the user layer, while reset unsets that override. A row carries the model id and display name; its context window and output cap sit behind the row's own disclosure, with the same fields the pi-ai provider form uses. Either capacity is typed as a count with an optional decimal `K` or `M` suffix (`256K`, `1M`; `1M` is 1000K) and stored as the plain count, spelled back in the shortest form that round-trips. Empty ids, duplicate ids, empty explicit names, and unreadable, non-positive, or fractional capacities fail before any write. A typed API key is judged on its own field the same way: after trimming, it must be non-empty and every character must be printable ASCII (`[\x21-\x7E]`), which is exactly what an HTTP header value can carry — the twin of `normalizeApiKey` in `@deepseek-ai/dsh-llm`, mirrored here because the source-plane split forbids importing it. A value matching a pasted `NAME=value` environment line or wrapped in matching quotes is refused as the same format failure; that pasted-line check runs only in the browser, since a false positive in a resolver would leave the environment refusing the key as well. A field holding only whitespace fails rather than being silently dropped, while an empty field is not a failure at all: it means keep the stored key on an editor card, and authenticate some other way on a create card. A refused key blocks both the write and the endpoint interrogation, so the page never spends a round trip to be told what the field already says. Each settings write carries the card's current `revision`, so a concurrent write from another tab or an external `settings.yaml` edit is refused as `settings-conflict`; after settings commit, the card adopts the returned redacted user subtree and revision before storing the credential, which makes a failed credential stage retry only that stage. Deletion removes a configured, writable credential only when the profile names the page's derived `_API_KEY` target, then unsets the profile; both operations are idempotent, and a partial failure remains in the identified confirmation dialog for retry. Environment credentials, custom references, and credentials whose target cannot be identified remain untouched. Once loaded, the page subscribes directly to forwarded `settings/document-updated`, `credentials/updated`, and `llm/adapters-updated` owner events, plus local `connection/reset`, so an external `settings.yaml` edit, a second tab, or a settings-born route converges without polling. diff --git a/packages/client/ui-settings-models/README.zh.md b/packages/client/ui-settings-models/README.zh.md index 408f201763..68bb64ddee 100644 --- a/packages/client/ui-settings-models/README.zh.md +++ b/packages/client/ui-settings-models/README.zh.md @@ -2,11 +2,13 @@ [English](README.md) | 中文 -模型设置插件:提供方配置页和按条件显示的 DeepSeek 官方首次使用引导步骤。它把三个协议领域汇聚为一个共享快照:`llm.providers`(可配置提供方目录,含每条路由的存活/休眠状态)、`settings.describe`(序列化 schema、分层脱敏值、secret slot)与 `credentials.describe`(不含值的 configured/source/writable 徽标);页面据此渲染提供方行,一次只展开一张编辑卡片,且不把路由存活状态呈现为提供方状态。 +模型设置与产品引导插件。同一个 client Cordis 插件会注册 Models 页面和两个有序的首次使用弹窗:版本化内测声明,以及按条件显示的 DeepSeek 官方凭据步骤。两个步骤共用同一套弹窗组件,并继续由 `settings.onboarding` 排序。Models 平面把三个协议领域汇聚为一个共享快照:`llm.providers`(可配置提供方目录,含每条路由的存活/休眠状态)、`settings.describe`(序列化 schema、分层脱敏值、secret slot)与 `credentials.describe`(不含值的 configured/source/writable 徽标);页面据此渲染提供方行,一次只展开一张编辑卡片,且不把路由存活状态呈现为提供方状态。 行是*已配置*的提供方(其 profile 在所属 namespace 中解析得出);其配置键未在任何位置配置的整分节提供方会渲染为其展开的设置卡片而非一行,但仅限首次运行姿态——即尚无任何提供方已注册且备齐其 profile 所指名的凭据——且仅持续到用户关闭该卡片为止,此后它就是一行带缺失密钥点的普通行。每一类卡片各自持有自己的展开状态,因此关掉其中一张绝不会丢弃另一张里的草稿。「新增」流程则是一张承载休眠目录提供方选择框的卡片——裸挂载的 `llm-pi-ai` 在任何路由存在之前就能提供其完整的已安装 catalog。pi-ai 卡片还会编辑该路由的**模型列表**,并可查询提供方所提供的模型。只有确认引用的凭据已配置时,行才会以绿色实心点标示 API 密钥状态;只有确认具名引用缺失时,才会以红色实心点标示。无引用的提供方原生认证以及无法取得凭据补充信息时都不显示状态点。编辑器是每个适配器家族各一张的手写卡片:主字段是单独一个 **API 密钥**输入框——页面从不询问环境变量名;键入的密钥经 `credentials.set` 以**只写**方式存入 profile 的引用之下,profile 没有引用时便派生 `_API_KEY`,pi-ai profile 会把这次派生记录为 `apiKeyEnv`,因此 `settings.yaml` 从不携带密钥值。为新的 pi-ai 提供方留空密钥会保存一个不带引用的 profile,因此能保留提供方原生认证,例如 Bedrock 凭据链或 Vertex ADC。「应用」成功后会发出本地无障碍状态消息,且绝不回显任何机密内容。收起的「自定义设置」折叠区承载精选的额外字段——两个家族都有 `baseURL`(deepseek 的占位符显示公共端点)、各适配器自己的模型目录,以及适配器未提供的那类 pi-ai 路由的**显示名称**与 **API 协议**。这两个字段是手工声明路由为自己命名的东西:创建卡片之所以索要它们,正因为没有东西能为它们兜底,因此编辑器也够得着这两个,而不是把它们留给 `settings.yaml`。清空名称即取消设置,路由退回自己的 id——占位符显示的就是它;协议没有这样的兜底。内置目录路由两个都不给:它的名称由目录条目兜底,它的每个模型各自带着自己的协议,路由级协议只可能把它们全部覆盖掉。Provider ID 保持固定:它是 settings 的键、是其他每个 namespace 与每一条已记录会话引用的名字,也是页面读不回、因而搬不走的凭据引用词干。推理等级刻意**不在**其中:它是按模型的能力,而同一提供方下各模型接受的档位并不一致,因此提供方级的控件只可能被设成其中一些模型会拒绝的值——那会连支持该档位的模型也一并隐藏。输入框的模型选择器为每个模型提供它自己的档位,在那里切换会把提供方、模型、推理等级一并记为下一个会话的默认值。profile 字段仍留在 `settings.yaml`,供清楚自己路由的部署使用。每条 DeepSeek 模型行可编辑 `id`、可选的显示名称 `name` 与可选的 `contextWindow`/`maxTokens`;精选集合以外的现有字段会在编辑后保留,其余每个 profile 字段仍归 `settings.yaml` 所有。只有当某行仅由用户层承载时它才可删除(删除会还原组合 base),其本地化确认对话框会在标题、说明和最终操作中点名该提供方。当目录条目表明拥有该路由的适配器在这个键下什么都没有时,该行会带上 **自定义** 标签。标签只跟随这个答案:存了 profile 并不使一条路由成为自定义——收窄一个内置提供方的模型同样会存下 profile——而什么都不回答的适配器,其路由保持无标签,不会被当成内置。 -前序首次使用引导页面完成后,DeepSeek 步骤会从同一个联接快照得出首次运行就绪状态。该步骤的存在是为了让用户手上有一个可对话的模型,因此只要用户已经能触达**任何**一个提供方,它就直接完成而不渲染——已注册且其具名凭据引用已存储的路由(包括来自启动环境且只读的凭据),或 profile 根本不指名任何引用、因而走原生认证的路由。只有二者皆无的用户才会被问到 DeepSeek,即这条提示唯一能为其提供密钥输入框的路由。它通过 `llm-deepseek` 的可配置提供方声明识别官方适配器,因此同 id 但未声明的存活路由不属于可修复配置。只有已挂载且活跃、引用可写但尚未配置的适配器才会显示前往「设置」Models 分区的页面;密钥输入和 `credentials.set` 仅由该分区已有的设置卡片负责,该步骤绝不持有 secret。适配器缺失、路由不活跃、联接失败、部署只读或设置/凭据能力不可用时,该步骤均不渲染并直接完成,以免首次使用引导阻塞产品;Models 页仍是诊断界面。 +声明步骤在 `src/onboarding-copy.ts` 中持有完整文案和版本。回环访问会通过既有 settings API 比较并写入 `ui-onboarding.welcomeNoticeVersion`;只有明确点击「继续」才会记录当前版本。非回环浏览器无法使用这项仅限 Host 的 namespace,因此确认仅在当前进程有效,重载后声明会再次出现。 + +声明完成后,DeepSeek 步骤会从同一个 Models 联接快照得出首次运行就绪状态。只要用户已经能触达**任何**一个提供方,它就直接完成而不渲染——已注册且其具名凭据引用已存储的路由(包括来自启动环境且只读的凭据),或 profile 根本不指名引用、因而走原生认证的路由。只有二者皆无的用户才会被要求填写 DeepSeek 官方密钥。适配器已挂载且活跃、引用可写但尚未配置时,既有 `ProviderEditor` 会以仅凭据模式渲染在共用引导弹窗中;`credentials.set` 仍是唯一的 secret 写入,且不会改变提供方设置。「稍后配置」只完成协调器当前这一轮。适配器缺失、路由不活跃、联接失败、部署只读或设置/凭据能力不可用时,该步骤不渲染并直接完成;Models 页仍是诊断界面。 每一次编辑都以 `settings.mutate` 的路径 op 落到已存分节上——每个变更字段一条 set、每个清空字段一条 unset、删除提供方行则是单独一条 unset。页面自始至终只持有**脱敏后**的 descriptor,因此它只修改自己看得见的字段,而不重建分节。DeepSeek 的 `models` 是一个按值整体替换的数组:编辑器会显示继承而来的生效模型行,直到第一次模型编辑将完整数组具化到用户层;重置则会取消该覆盖。每个模型行承载模型 ID 与显示名称,其上下文窗口与最大输出 token 数则收在该行自己的折叠区里,使用与 pi-ai 提供方表单相同的字段。两项容量都按数值键入,可带十进制的 `K` 或 `M` 后缀(`256K`、`1M`;`1M` 即 1000K),存储为纯数值,回显时写成能够往返的最短形式。空 ID、重复 ID、显式填写的空名称,以及无法读取、非正数或非整数的容量都会在写入前失败。键入的 API 密钥同样在它自己的字段上被判定:trim 之后必须非空,且每个字符都是可打印 ASCII(`[\x21-\x7E]`)——这正是 HTTP 标头值所能承载的范围,是 `@deepseek-ai/dsh-llm` 中 `normalizeApiKey` 的孪生体,因源码平面分割禁止直接引入而在此镜像。与整行粘贴的 `NAME=value` 环境变量匹配或首尾成对引号包裹的值,会以同一条格式失败被拒绝;这项粘贴行检查只在浏览器中运行,因为 resolver 中的一次误判会连带让环境变量这条路也拒绝该密钥。只含空白的输入框会失败而不是被静默丢弃;留空则完全不是失败:在编辑卡片上意味着保持已存储的密钥,在新建卡片上则意味着以其他方式鉴权。被拒绝的密钥会同时拦截写入与端点探测,因此页面不会白花一次往返去换取字段上已经写明的答案。每次 settings 写入都携带卡片当前的 `revision`,因此来自另一个标签页或对 `settings.yaml` 的外部编辑所产生的并发写入会以 `settings-conflict` 被拒绝;settings 提交成功后,卡片会在存储凭据前采用响应返回的脱敏用户子树与 revision,因此凭据阶段失败时,重试只会重复该阶段。删除操作只会在 profile 指向页面派生的 `_API_KEY` 目标时清除已配置且可写的凭据,随后取消设置 profile;两项操作都具备幂等性,部分失败会停留在点名目标的确认对话框中供重试。环境凭据、自定义引用和无法识别目标的凭据保持不变。页面加载完成后会直接订阅转发的 owner 事件 `settings/document-updated`、`credentials/updated`、`llm/adapters-updated`,以及本地 `connection/reset`,因此外部的 `settings.yaml` 编辑、第二个标签页或 settings 新生的路由都无需轮询即可收敛。 diff --git a/packages/client/ui-settings-models/package.json b/packages/client/ui-settings-models/package.json index c69fc62153..c2a08faa78 100644 --- a/packages/client/ui-settings-models/package.json +++ b/packages/client/ui-settings-models/package.json @@ -1,6 +1,6 @@ { "name": "@deepseek-ai/dsh-client-ui-settings-models", - "description": "Models settings and official-DeepSeek first-run routing over one live provider/settings/credential join", + "description": "Models settings and shared product-onboarding dialogs over existing settings and credential joins", "version": "0.0.1-rc.5", "publishConfig": { "access": "restricted" diff --git a/packages/client/ui-settings-models/src/client/DeepSeekOnboardingDialog.module.css b/packages/client/ui-settings-models/src/client/DeepSeekOnboardingDialog.module.css index 221239d7bb..9f7ecbc611 100644 --- a/packages/client/ui-settings-models/src/client/DeepSeekOnboardingDialog.module.css +++ b/packages/client/ui-settings-models/src/client/DeepSeekOnboardingDialog.module.css @@ -1,99 +1,16 @@ -.page { - position: relative; - z-index: 1; - width: min(640px, calc(100vw - 64px)); - max-height: 100vh; - padding: clamp(104px, 18vh, 156px) 0 40px; - box-sizing: border-box; - overflow-y: auto; - color: var(--dsw-alias-label-primary); -} - -.brand { - display: flex; - align-items: center; - margin-bottom: 42px; - color: var(--dsw-alias-label-primary); -} - -.title { - margin: 0; - font-size: 28px; - line-height: 36px; - font-weight: 600; - letter-spacing: -0.02em; - outline: none; -} - .description { - margin: 16px 0 0; - font-size: 16px; - line-height: 28px; + margin: 0; + font-size: 14px; + line-height: 24px; color: var(--dsw-alias-label-secondary); } -.actions { - display: flex; - align-items: center; - justify-content: flex-end; - gap: 12px; - margin-top: 32px; -} - -.primary { - min-width: 132px; -} - -.brand, -.title, -.description, -.actions { - animation: credential-enter 280ms cubic-bezier(0.23, 1, 0.32, 1) both; -} - -.title { animation-delay: 40ms; } -.description { animation-delay: 80ms; } -.actions { animation-delay: 120ms; } - -@keyframes credential-enter { - from { - opacity: 0; - transform: translateY(8px); - } - - to { - opacity: 1; - transform: translateY(0); - } -} - -@media (prefers-reduced-motion: reduce) { - .brand, - .title, - .description, - .actions { - animation: none; - } +.editor { + margin-top: 24px; } @media (max-width: 560px) { - .page { - width: calc(100vw - 40px); - padding-top: 64px; - } - - .brand { - margin-bottom: 30px; - } - - .actions { - align-items: stretch; - flex-direction: column-reverse; - margin-top: 32px; - } - - .primary, - .later { - width: 100%; + .editor { + margin-top: 20px; } } diff --git a/packages/client/ui-settings-models/src/client/DeepSeekOnboardingDialog.tsx b/packages/client/ui-settings-models/src/client/DeepSeekOnboardingDialog.tsx index 302d4592f8..24e2112096 100644 --- a/packages/client/ui-settings-models/src/client/DeepSeekOnboardingDialog.tsx +++ b/packages/client/ui-settings-models/src/client/DeepSeekOnboardingDialog.tsx @@ -2,33 +2,39 @@ * Official-DeepSeek first-run step. Readiness comes from the same * provider/settings/credential join as the Models page: any provider the user * can already talk to ends the step, and only a user with none is offered the - * official DeepSeek route. The prompt itself only routes to that page's single - * credential editor. + * official DeepSeek route. The step reuses that page's credential editor in + * the onboarding plugin's shared modal, so the key is entered once. */ -import { useEffect, useRef } from 'react' +import { useEffect } from 'react' import type { ReactNode } from 'react' -import type { PropsRuntime } from '@deepseek-ai/dsh-client-ui-slots' -import { BrandWordmark, Button, OnboardingSurface } from '@deepseek-ai/dsh-client-ui-primitives' -import type { SnapshotSelectorHook } from '@deepseek-ai/dsh-client-web-react' +import type { IApiClient } from '@deepseek-ai/dsh-api-remotes/client' +import type { SnapshotStore } from '@deepseek-ai/dsh-client-runtime/client' +import type { InjectFace, PropsRuntime } from '@deepseek-ai/dsh-client-ui-slots' import type { ModelsSettingsState, ModelsSettingsStore } from './store.ts' import { onboardingReadiness } from './store.ts' +import { ProviderEditor } from './ProviderEditor.tsx' import type { en } from './locales.ts' +import { OnboardingModal } from './OnboardingModal.tsx' import styles from './DeepSeekOnboardingDialog.module.css' -/** Injected dependencies of {@link DeepSeekOnboardingDialog}. */ +/** Registration-side dependencies of {@link DeepSeekOnboardingDialog}. */ export interface DeepSeekOnboardingInjected { + hooks: { + /** Shared Models-page join state, bound by the slot renderer. */ + models: SnapshotStore + } /** Shared Models-page join controller. */ controller: ModelsSettingsStore - /** Subscription hook bound to the shared join snapshot. */ - useSnapshot: SnapshotSelectorHook + /** Existing wire face reused by the Models credential editor. */ + api: Pick /** Feature copy. */ t: (key: keyof typeof en) => string } /** Slot owner props plus the feature's injected dependencies. */ export type DeepSeekOnboardingDialogProps = - PropsRuntime<'settings.onboarding'> & DeepSeekOnboardingInjected + PropsRuntime<'settings.onboarding'> & InjectFace /* v8 ignore next 3 -- closed-union defaults only defend future source widening */ function assertNever(_value: never): never { @@ -36,16 +42,15 @@ function assertNever(_value: never): never { } /** - * Prompt a first-run user to open Models while no provider can serve requests - * and the official adapter exists with an unconfigured effective credential. + * Prompt a first-run user for the official DeepSeek credential while no + * provider can serve requests and that credential is writable. * @param props - settings-shell owner state and Models feature dependencies. - * @returns the onboarding page or null when onboarding needs no intervention. + * @returns the onboarding modal or null when onboarding needs no intervention. */ export function DeepSeekOnboardingDialog(props: DeepSeekOnboardingDialogProps): ReactNode { - const { complete, openSection, controller, useSnapshot, t } = props - const state = useSnapshot(snapshot => snapshot) + const { complete, controller, useModels, api, t } = props + const state = useModels(snapshot => snapshot) const readiness = onboardingReadiness(state) - const titleRef = useRef(null) useEffect(() => { if (state.status === 'idle') void controller.load() @@ -59,18 +64,6 @@ export function DeepSeekOnboardingDialog(props: DeepSeekOnboardingDialogProps): ) complete() }, [complete, readiness.kind]) - useEffect(() => { - if (readiness.kind === 'credential-missing') titleRef.current?.focus() - }, [readiness.kind]) - - const openModels = (): void => { - complete() - openSection('models') - } - - // Null covers the still-deciding and nothing-to-do states alike: the - // takeover chrome below is part of THIS render, so declining paints and - // blocks nothing while the shared join is in flight. switch (readiness.kind) { case 'loading': case 'adapter-absent': @@ -84,28 +77,44 @@ export function DeepSeekOnboardingDialog(props: DeepSeekOnboardingDialogProps): return assertNever(readiness) } + const row = state.rows.find(candidate => + candidate.entry.provider === 'deepseek-official' + && candidate.entry.settingsNs === 'llm-deepseek' + && candidate.entry.settingsPath.length === 0) + const namespace = state.namespaces.get('llm-deepseek') + /* v8 ignore next 2 -- credential-missing is derived only from this exact joined row. */ + if (row === undefined || namespace === undefined) return null + + const finishCredential = (changed: boolean): void => { + if (!changed) { + complete() + return + } + void controller.load() + } + return ( - -
- -

- {t('onboardingTitle')} -

-

{t('onboardingDescription')}

-
- - -
-
-
+ +

{t('onboardingDescription')}

+
+ +
+
) } diff --git a/packages/client/ui-settings-models/src/client/EditorFooter.tsx b/packages/client/ui-settings-models/src/client/EditorFooter.tsx index adcb009cdf..6306609ca5 100644 --- a/packages/client/ui-settings-models/src/client/EditorFooter.tsx +++ b/packages/client/ui-settings-models/src/client/EditorFooter.tsx @@ -29,6 +29,8 @@ export interface EditorFooterProps { submitLabel: keyof typeof en /** Commit label while a commit is in flight. */ submitBusyLabel: keyof typeof en + /** Dismiss label; defaults to the settings editor copy. */ + cancelLabel?: keyof typeof en /** Dismiss the card without committing. */ onCancel: () => void /** Run the card's commit. */ @@ -50,7 +52,7 @@ export function EditorFooter(props: EditorFooterProps): ReactNode { disabled={props.busy} onClick={props.onCancel} > - {t('cancel')} + {t(props.cancelLabel ?? 'cancel')} + + + ) +} diff --git a/packages/client/ui-settings-models/src/client/index.ts b/packages/client/ui-settings-models/src/client/index.ts index 08d77a1832..dc7f32e370 100644 --- a/packages/client/ui-settings-models/src/client/index.ts +++ b/packages/client/ui-settings-models/src/client/index.ts @@ -1,8 +1,9 @@ /** - * Models settings plugin, browser half. Registers the `models` nav entry and - * official-DeepSeek first-run overlay into shell-declared slots. Both consume - * one provider/settings/credential join; the overlay routes missing-key users - * to the full page's single credential editor. Export discipline: + * Models settings and product-onboarding plugin, browser half. It registers + * the Models page plus the ordered internal-testing and official-DeepSeek + * onboarding dialogs, whose UI shares this package's modal wrapper. The Host + * settings and credential contracts stay behind their existing wire APIs. + * Export discipline: * packages/client/AGENTS.md. */ import type { ClientContext } from '@deepseek-ai/dsh-client-runtime/client' @@ -19,15 +20,19 @@ import { ModelsSection } from './ModelsSection.tsx' import type { ModelsSectionInjected } from './ModelsSection.tsx' import { DeepSeekOnboardingDialog } from './DeepSeekOnboardingDialog.tsx' import type { DeepSeekOnboardingInjected } from './DeepSeekOnboardingDialog.tsx' +import { WelcomeNotice } from './WelcomeNotice.tsx' +import type { WelcomeNoticeInjected } from './WelcomeNotice.tsx' +import { refreshWelcomeIfLoaded, WelcomeNoticeStore } from './welcome-store.ts' import { ModelsSettingsStore } from './store.ts' import { en, zh, type ModelsKey } from './locales.ts' +import { WELCOME_NOTICE_SETTINGS_NAMESPACE } from '../onboarding-copy.ts' export type { ModelsSectionInjected, ModelsSectionProps } from './ModelsSection.tsx' export type { ModelsKey } from './locales.ts' declare module '@deepseek-ai/dsh-client-ui-slots' { interface LocaleNamespaceMap { - /** The Models page + onboarding overlay copy. */ + /** The Models page + product-onboarding copy. */ 'settings.models': ModelsKey } } @@ -74,21 +79,38 @@ export function apply(ctx: ClientContext): void { api: connection.api, t, }) - const onboardingInjected = (): DeepSeekOnboardingInjected => ({ + const deepSeekOnboardingInjected = (): DeepSeekOnboardingInjected => ({ controller, - useSnapshot, + hooks: { models: controller.store }, + api: connection.api, + t, + }) + const welcomeController = new WelcomeNoticeStore( + connection.api, + connection.isLoopback ? 'host' : 'memory', + ) + const welcomeInjected = (): WelcomeNoticeInjected => ({ + controller: welcomeController, + hooks: { welcome: welcomeController.store }, t, }) // Pushed invalidations converge every open surface without polling: any // settings/credentials/topology change refetches once the page loaded. ctx.effect(() => { - const refresh = (): void => { refreshIfLoaded(controller) } + const refreshModels = (): void => { refreshIfLoaded(controller) } + const refreshAll = (): void => { + refreshModels() + refreshWelcomeIfLoaded(welcomeController) + } const disposers = [ - ctx.remote.$on('settings/document-updated', refresh), - ctx.remote.$on('credentials/updated', refresh), - ctx.remote.$on('llm/adapters-updated', refresh), - ctx.on('connection/reset', refresh), + ctx.remote.$on('settings/document-updated', (ns) => { + refreshModels() + if (ns === WELCOME_NOTICE_SETTINGS_NAMESPACE) refreshWelcomeIfLoaded(welcomeController) + }), + ctx.remote.$on('credentials/updated', refreshModels), + ctx.remote.$on('llm/adapters-updated', refreshModels), + ctx.on('connection/reset', refreshAll), ] return () => { for (const dispose of disposers) dispose() } }, 'ui-settings-models: pushed invalidations') @@ -100,10 +122,16 @@ export function apply(ctx: ClientContext): void { label: () => t('nav'), inject: injected, }, ModelsSection)) + ctx.slots.inject('settings.onboarding', () => ctx.slots.register({ + name: 'settings.onboarding', + id: 'welcome-notice', + order: -100, + inject: welcomeInjected, + }, WelcomeNotice)) ctx.slots.inject('settings.onboarding', () => ctx.slots.register({ name: 'settings.onboarding', id: 'deepseek-official', order: 0, - inject: onboardingInjected, + inject: deepSeekOnboardingInjected, }, DeepSeekOnboardingDialog)) } diff --git a/packages/client/ui-settings-models/src/client/locales.ts b/packages/client/ui-settings-models/src/client/locales.ts index 561a5df494..5804e164f6 100644 --- a/packages/client/ui-settings-models/src/client/locales.ts +++ b/packages/client/ui-settings-models/src/client/locales.ts @@ -1,5 +1,7 @@ /** Copy dictionaries for the Models settings section. */ +import { WELCOME_NOTICE_COPY } from '../onboarding-copy.ts' + /** English strings (the key-set source of truth for this pair). */ export const en = { nav: 'Models', @@ -85,10 +87,16 @@ export const en = { customNeedsModels: 'A custom provider needs at least one model.', create: 'Create provider', creating: 'Creating\u2026', + welcomeTitle: WELCOME_NOTICE_COPY.en.title, + welcomeBody: WELCOME_NOTICE_COPY.en.body, + welcomeContinue: WELCOME_NOTICE_COPY.en.continueLabel, + welcomeError: 'The acknowledgement could not be saved. Please try again.', onboardingTitle: 'Add an API key to get started', onboardingDescription: 'Configure the official DeepSeek provider to start building.', - onboardingGoToSettings: 'Go to settings', onboardingLater: 'Configure later', + onboardingSave: 'Save and continue', + onboardingSaving: 'Saving…', + keyRequired: 'Enter an API key to continue.', } /** The settings.models namespace key union. */ @@ -179,8 +187,14 @@ export const zh: typeof en = { customNeedsModels: '自定义提供方至少需要一个模型。', create: '创建提供方', creating: '创建中\u2026', + welcomeTitle: WELCOME_NOTICE_COPY.zh.title, + welcomeBody: WELCOME_NOTICE_COPY.zh.body, + welcomeContinue: WELCOME_NOTICE_COPY.zh.continueLabel, + welcomeError: '暂时无法保存确认状态,请重试。', onboardingTitle: '添加一个 API Key 开始使用', onboardingDescription: '配置 DeepSeek 官方模型,即可开始使用。', - onboardingGoToSettings: '前往配置', onboardingLater: '稍后配置', + onboardingSave: '保存并继续', + onboardingSaving: '保存中…', + keyRequired: '请输入 API 密钥后继续。', } diff --git a/packages/client/ui-settings-models/src/client/welcome-store.ts b/packages/client/ui-settings-models/src/client/welcome-store.ts new file mode 100644 index 0000000000..6e139f1a43 --- /dev/null +++ b/packages/client/ui-settings-models/src/client/welcome-store.ts @@ -0,0 +1,126 @@ +/** Welcome-notice state, durable when the browser may use Host settings. */ + +import type { IApiClient, SettingsNamespaceView } from '@deepseek-ai/dsh-api-remotes/client' +import type { SnapshotStore } from '@deepseek-ai/dsh-client-runtime/client' +import { createSnapshotStore } from '@deepseek-ai/dsh-client-runtime/client' +import { + WELCOME_NOTICE_ACK_FIELD, WELCOME_NOTICE_SETTINGS_NAMESPACE, WELCOME_NOTICE_VERSION, +} from '../onboarding-copy.ts' + +/** State rendered by the welcome step. */ +export interface WelcomeNoticeState { + status: 'idle' | 'loading' | 'ready' | 'saving' | 'error' + acknowledged: boolean + error: string | null +} + +function messageOf(error: unknown): string { + return error instanceof Error ? error.message : String(error) +} + +function acknowledgementOf(view: SettingsNamespaceView): string | undefined { + if (typeof view.value !== 'object' || view.value === null) return undefined + const value = (view.value as Record)[WELCOME_NOTICE_ACK_FIELD] + return typeof value === 'string' ? value : undefined +} + +/** Coordinates durable Host acknowledgement or a process-local remote fallback. */ +export class WelcomeNoticeStore { + /** uSES-safe state source shared by the registered welcome step. */ + readonly store: SnapshotStore = createSnapshotStore({ + status: 'idle', acknowledged: false, error: null, + }) + + private generation = 0 + + /** + * @param api - settings wire face used for durable reads and writes. + * @param persistence - remote browsers use memory because settings is loopback-only. + */ + constructor( + private readonly api: Pick, + private readonly persistence: 'host' | 'memory' = 'host', + ) {} + + /** Load the acknowledgement from Host settings or initialize process-local state. */ + async load(): Promise { + const generation = ++this.generation + if (this.persistence === 'memory') { + this.store.update((state) => { state.status = 'ready'; state.error = null }) + return + } + this.store.update((state) => { state.status = 'loading'; state.error = null }) + try { + const response = await this.api.settings.describe({}) + if (!response.result.ok) throw new Error(response.result.error.message) + const view = response.result.value.namespaces.find( + candidate => candidate.ns === WELCOME_NOTICE_SETTINGS_NAMESPACE, + ) + if (view === undefined) throw new Error('welcome acknowledgement settings are unavailable') + if (generation !== this.generation) return + this.store.update((state) => { + state.status = 'ready' + state.acknowledged = acknowledgementOf(view) === WELCOME_NOTICE_VERSION + state.error = null + }) + } catch (error) { + if (generation !== this.generation) return + this.store.update((state) => { + state.status = 'error' + state.acknowledged = false + state.error = messageOf(error) + }) + } + } + + /** + * Persist this copy version, or advance only this process for a remote browser. + * @returns true when the selected persistence mode accepted the acknowledgement. + */ + async acknowledge(): Promise { + const generation = ++this.generation + if (this.persistence === 'memory') { + this.store.update((state) => { + state.status = 'ready' + state.acknowledged = true + state.error = null + }) + return true + } + this.store.update((state) => { state.status = 'saving'; state.error = null }) + try { + const response = await this.api.settings.mutate({ + ns: WELCOME_NOTICE_SETTINGS_NAMESPACE, + ops: [{ op: 'set', path: [WELCOME_NOTICE_ACK_FIELD], value: WELCOME_NOTICE_VERSION }], + }) + if (!response.result.ok) throw new Error(response.result.error.message) + if (generation === this.generation) { + this.store.update((state) => { + state.status = 'ready' + state.acknowledged = true + state.error = null + }) + } + return true + } catch (error) { + if (generation === this.generation) { + this.store.update((state) => { + state.status = 'error' + state.acknowledged = false + state.error = messageOf(error) + }) + } + return false + } + } +} + +/** + * Refresh only after welcome state has left idle. A memory-mode load retains + * acknowledgement so reconnect does not reopen a process-local notice. + * @param controller - welcome state owner whose current status decides whether to load. + */ +export function refreshWelcomeIfLoaded(controller: WelcomeNoticeStore): void { + if (controller.store.getSnapshot().status === 'idle') return + void controller.load() +} diff --git a/packages/client/ui-settings-models/src/onboarding-copy.ts b/packages/client/ui-settings-models/src/onboarding-copy.ts new file mode 100644 index 0000000000..66492bde23 --- /dev/null +++ b/packages/client/ui-settings-models/src/onboarding-copy.ts @@ -0,0 +1,25 @@ +/** Durable settings namespace for product-wide GUI onboarding facts. */ +export const WELCOME_NOTICE_SETTINGS_NAMESPACE = 'ui-onboarding' + +/** Field storing the last welcome notice version the user acknowledged. */ +export const WELCOME_NOTICE_ACK_FIELD = 'welcomeNoticeVersion' + +/** + * Bump only when the notice changes materially and every user should see it + * again. The acknowledgement is compared for exact equality. + */ +export const WELCOME_NOTICE_VERSION = '2026-08-13.1' + +/** The complete editable internal-testing notice in both supported GUI locales. */ +export const WELCOME_NOTICE_COPY = { + zh: { + title: '内测声明', + body: 'DeepSeek Harness 目前的 0.1 版本仍处在面向 Harness 开发者进行测试的阶段,还有许多地方需要持续改进和打磨,希望听取广大开发者的反馈建议。预计 DeepSeek Harness 的核心插件以及基础 API 都会在接下来的一段时间内快速迭代、持续演化。\n\n我们期待与全球开发者一起,在开源、开放、可复用、可组合的基础设施之上,共同探索智能上限。欢迎全球 Harness 开发者加入 DSH 插件生态。', + continueLabel: '继续', + }, + en: { + title: '内测声明', + body: 'DeepSeek Harness 目前的 0.1 版本仍处在面向 Harness 开发者进行测试的阶段,还有许多地方需要持续改进和打磨,希望听取广大开发者的反馈建议。预计 DeepSeek Harness 的核心插件以及基础 API 都会在接下来的一段时间内快速迭代、持续演化。\n\n我们期待与全球开发者一起,在开源、开放、可复用、可组合的基础设施之上,共同探索智能上限。欢迎全球 Harness 开发者加入 DSH 插件生态。', + continueLabel: '继续', + }, +} as const diff --git a/packages/client/ui-settings-models/tests/apply.client.spec.ts b/packages/client/ui-settings-models/tests/apply.client.spec.ts index e914b1fe5b..d8fc11496b 100644 --- a/packages/client/ui-settings-models/tests/apply.client.spec.ts +++ b/packages/client/ui-settings-models/tests/apply.client.spec.ts @@ -8,6 +8,7 @@ import { TestRemote, usePinnedBrowserLanguages } from '@deepseek-ai/dsh-client-t import { apply, inject, refreshIfLoaded } from '@deepseek-ai/dsh-client-ui-settings-models/client' import { ModelsSection } from '../src/client/ModelsSection.tsx' import { DeepSeekOnboardingDialog } from '../src/client/DeepSeekOnboardingDialog.tsx' +import { WelcomeNotice } from '../src/client/WelcomeNotice.tsx' // The service reads its initial locale from the browser; these specs assert // the shipped Chinese copy, so they state the browser they assume. @@ -23,7 +24,7 @@ async function bench() { new TestRemote(ctx) // The apply path only captures the wire face; no call leaves this fake // until a section actually loads. - ctx.provide('connection', { api: {} } as never) + ctx.provide('connection', { api: {}, isLoopback: true } as never) return { ctx, slots: ctx.get('slots') as SlotRegistry, locale } } @@ -60,9 +61,20 @@ describe('ui-settings-models apply', () => { expect(typeof injected.controller.load).toBe('function') expect(typeof injected.useSnapshot).toBe('function') expect(injected.api).toBeDefined() - const onboarding = before.slots.entries('settings.onboarding')[0]! - expect(onboarding.component).toBe(DeepSeekOnboardingDialog) - expect(onboarding.options).toMatchObject({ id: 'deepseek-official', order: 0 }) + const onboarding = before.slots.entries('settings.onboarding') + expect(onboarding).toHaveLength(2) + expect(onboarding.find(entry => entry.options.id === 'welcome-notice')).toMatchObject({ + component: WelcomeNotice, + options: { id: 'welcome-notice', order: -100 }, + }) + const deepSeek = onboarding.find(entry => entry.options.id === 'deepseek-official')! + expect(deepSeek.component).toBe(DeepSeekOnboardingDialog) + expect(deepSeek.options).toMatchObject({ id: 'deepseek-official', order: 0 }) + const deepSeekInjected = ( + deepSeek.inject as unknown as () => import('../src/client/DeepSeekOnboardingDialog.tsx').DeepSeekOnboardingInjected + )() + expect(deepSeekInjected.hooks.models).toBe(injected.controller.store) + expect(deepSeekInjected.api).toBeDefined() const after = await bench() await after.ctx.plugin({ inject: [...inject], apply }).await() @@ -71,7 +83,7 @@ describe('ui-settings-models apply', () => { declare(after.slots) await Promise.resolve() expect(after.slots.entries('settings.section')[0]!.component).toBe(ModelsSection) - expect(after.slots.entries('settings.onboarding')[0]!.component).toBe(DeepSeekOnboardingDialog) + expect(after.slots.entries('settings.onboarding')).toHaveLength(2) // The self-inflicted ledger notifications hit the duplicate guard. expect(after.slots.entries('settings.section')).toHaveLength(1) }) @@ -110,7 +122,7 @@ describe('ui-settings-models apply', () => { declare(b.slots) await Promise.resolve() expect(b.slots.entries('settings.section')[0]!.component).toBe(ModelsSection) - expect(b.slots.entries('settings.onboarding')[0]!.component).toBe(DeepSeekOnboardingDialog) + expect(b.slots.entries('settings.onboarding')).toHaveLength(2) // The locale path also recovers through the same ledger re-check. b.locale.setLocale('en') expect(resolveSlotLabel(b.slots.entries('settings.section')[0]!.options.label)).toBe('Models') @@ -164,8 +176,10 @@ describe('pushed invalidations', () => { const b = await bench() declare(b.slots) await b.ctx.plugin({ inject: [...inject], apply }).await() + const entry = b.slots.entries('settings.onboarding') + .find(candidate => candidate.options.id === 'deepseek-official')! const injected = ( - b.slots.entries('settings.onboarding')[0]!.inject as unknown as + entry.inject as unknown as () => import('../src/client/DeepSeekOnboardingDialog.tsx').DeepSeekOnboardingInjected )() injected.controller.store.update((state) => { state.status = 'ready' }) @@ -173,4 +187,25 @@ describe('pushed invalidations', () => { b.ctx.remote.$dispatch('credentials/updated', ['DEEPSEEK_API_KEY']) expect(load).toHaveBeenCalledTimes(1) }) + + it('routes only the onboarding namespace invalidation into welcome state', async () => { + const b = await bench() + declare(b.slots) + await b.ctx.plugin({ inject: [...inject], apply }).await() + const entry = b.slots.entries('settings.onboarding') + .find(candidate => candidate.options.id === 'welcome-notice')! + const injected = ( + entry.inject as unknown as + () => import('../src/client/WelcomeNotice.tsx').WelcomeNoticeInjected + )() + injected.hooks.welcome.update((state) => { state.status = 'ready' }) + const load = vi.spyOn(injected.controller, 'load').mockResolvedValue() + + b.ctx.remote.$dispatch('settings/document-updated', ['llm-deepseek', 1]) + expect(load).not.toHaveBeenCalled() + b.ctx.remote.$dispatch('settings/document-updated', ['ui-onboarding', 2]) + expect(load).toHaveBeenCalledOnce() + b.ctx.emit('connection/reset') + expect(load).toHaveBeenCalledTimes(2) + }) }) diff --git a/packages/client/ui-settings-models/tests/components.client.spec.tsx b/packages/client/ui-settings-models/tests/components.client.spec.tsx index 01f0a32349..d7643522dd 100644 --- a/packages/client/ui-settings-models/tests/components.client.spec.tsx +++ b/packages/client/ui-settings-models/tests/components.client.spec.tsx @@ -355,6 +355,65 @@ describe('ModelsSection', () => { expect(screen.queryByRole('status')).toBeNull() }) + it('reuses the provider editor as a required credential-only onboarding form', async () => { + let finishSet: ((response: RpcResponse>) => void) | undefined + const set = vi.fn(() => new Promise>>((resolve) => { + finishSet = resolve + })) + const { face, mutate } = scriptedFace({ set }) + const onClose = vi.fn() + const { ProviderEditor } = await import('../src/client/ProviderEditor.tsx') + + render() + + const key = screen.getByLabelText(en.keyInput) + const save = screen.getByText(en.onboardingSave) + expect(document.activeElement).toBe(key) + expect(key.required).toBe(true) + expect(save.disabled).toBe(true) + expect(screen.getByText(en.onboardingLater)).toBeTruthy() + expect(screen.queryByText(en.customized)).toBeNull() + expect(screen.queryByLabelText(en.baseUrl)).toBeNull() + + fireEvent.change(key, { target: { value: ' ' } }) + expect(screen.getByText(en.keyRequired)).toBeTruthy() + expect(key.getAttribute('aria-invalid')).toBe('true') + expect(save.disabled).toBe(true) + + fireEvent.change(key, { target: { value: ' sk-onboarding ' } }) + expect(screen.queryByText(en.keyRequired)).toBeNull() + expect(save.disabled).toBe(false) + fireEvent.click(save) + + expect(await screen.findByText(en.onboardingSaving)).toBeTruthy() + expect(set).toHaveBeenCalledWith({ ref: 'DEEPSEEK_API_KEY', value: 'sk-onboarding' }) + expect(mutate).not.toHaveBeenCalled() + expect(onClose).not.toHaveBeenCalled() + + if (finishSet === undefined) throw new Error('credential write did not start') + await act(async () => { + finishSet?.(ok({})) + await Promise.resolve() + }) + expect(onClose).toHaveBeenCalledWith(true) + }) + it('applies customized deepseek fields as path ops', async () => { const { mutate } = await mountDeepSeekCard({ mutate: vi.fn(() => Promise.resolve(ok(wireNamespaces()[0]))), diff --git a/packages/client/ui-settings-models/tests/onboarding-dialog.client.spec.tsx b/packages/client/ui-settings-models/tests/onboarding-dialog.client.spec.tsx index 2aea95b705..3c3074f3e7 100644 --- a/packages/client/ui-settings-models/tests/onboarding-dialog.client.spec.tsx +++ b/packages/client/ui-settings-models/tests/onboarding-dialog.client.spec.tsx @@ -2,14 +2,18 @@ /** First-run DeepSeek prompt behavior over the shared Models join. */ import { act, cleanup, fireEvent, render, screen, waitFor } from '@testing-library/react' import { afterEach, describe, expect, it, vi } from 'vitest' -import type { RpcResponse } from '@deepseek-ai/dsh-api-remotes/client' +import Schema from '@deepseek-ai/schemastery' +import type { RpcResponse, SettingsNamespaceView } from '@deepseek-ai/dsh-api-remotes/client' import { bindSnapshotSelector } from '@deepseek-ai/dsh-client-web-react' import { DeepSeekOnboardingDialog } from '../src/client/DeepSeekOnboardingDialog.tsx' import type { DeepSeekOnboardingDialogProps } from '../src/client/DeepSeekOnboardingDialog.tsx' import { ModelsSettingsStore } from '../src/client/store.ts' import { en } from '../src/client/locales.ts' -afterEach(cleanup) +afterEach(() => { + cleanup() + document.getElementById('root')?.remove() +}) let nextRpc = 0 function ok(value: T): RpcResponse { @@ -22,6 +26,33 @@ function fail(message: string): RpcResponse { } } +const DeepSeekConfig = Schema.object({ + apiKeyEnv: Schema.string().role('credential-ref'), + baseURL: Schema.string().pattern(/^https:\/\//), + reasoningEffort: Schema.union(['off', 'high', 'max']), + defaultContextWindow: Schema.number().step(1).min(1), + models: Schema.array(Schema.object({ + id: Schema.string().required(), + name: Schema.string(), + description: Schema.string(), + contextWindow: Schema.number().step(1).min(1), + })), +}) + +function deepSeekNamespace(apiKeyEnv: string | null): SettingsNamespaceView { + const value = apiKeyEnv === null ? {} : { apiKeyEnv } + return { + ns: 'llm-deepseek', + schema: JSON.parse(JSON.stringify(DeepSeekConfig.toJSON())) as unknown, + value, + base: value, + user: {}, + applies: 'live', + secrets: [], + revision: 0, + } +} + function harness(options: { provider?: boolean providerSettingsNs?: string @@ -33,9 +64,24 @@ function harness(options: { describeFailure?: string settingsWritable?: boolean providersReject?: boolean + setFailure?: string + setReject?: string } = {}) { + if (document.getElementById('root') === null) { + const appRoot = document.createElement('div') + appRoot.id = 'root' + document.body.append(appRoot) + } let fileConfigured = false const configured = options.configured ?? (() => fileConfigured) + const apiKeyEnv = options.apiKeyEnv === undefined ? 'DEEPSEEK_API_KEY' : options.apiKeyEnv + const mutate = vi.fn(() => Promise.resolve(ok(deepSeekNamespace(apiKeyEnv)))) + const set = vi.fn((_payload: { ref: string; value: string }) => { + if (options.setReject !== undefined) return Promise.reject(new Error(options.setReject)) + if (options.setFailure !== undefined) return Promise.resolve(fail(options.setFailure)) + fileConfigured = true + return Promise.resolve(ok({})) + }) const face = { llm: { providers: () => { @@ -56,19 +102,10 @@ function harness(options: { settings: { describe: () => Promise.resolve(ok({ writable: options.settingsWritable ?? true, - namespaces: options.settingsNamespace === false - ? [] - : [{ - ns: 'llm-deepseek', - schema: {}, - value: options.apiKeyEnv === null - ? {} - : { apiKeyEnv: options.apiKeyEnv ?? 'DEEPSEEK_API_KEY' }, - applies: 'live' as const, - secrets: [], - revision: 0, - }], + hasDocument: false, + namespaces: options.settingsNamespace === false ? [] : [deepSeekNamespace(apiKeyEnv)], })), + mutate, }, credentials: { describe: () => options.describeFailure === undefined @@ -84,6 +121,7 @@ function harness(options: { }, })) : Promise.resolve(fail(options.describeFailure)), + set, }, } const controller = new ModelsSettingsStore(face as never) @@ -97,40 +135,100 @@ function harness(options: { useSessions: unusedHook, useWorkspaces: unusedHook, controller, - useSnapshot: bindSnapshotSelector(controller.store), + useModels: bindSnapshotSelector(controller.store), + api: face as never, t: key => en[key], } - return { controller, complete, openSection, props, configure: () => { fileConfigured = true } } + return { + controller, complete, openSection, props, mutate, set, + configure: () => { fileConfigured = true }, + } } describe('DeepSeekOnboardingDialog', () => { - it('loads on first entry and presents one accessible route to Models', async () => { + it('loads a credential-only modal, inerts the product, and focuses the key', async () => { const h = harness() render() - expect(await screen.findByRole('region', { name: en.onboardingTitle })).toBeTruthy() + expect(await screen.findByRole('dialog', { name: en.onboardingTitle })).toBeTruthy() + expect(document.getElementById('root')?.inert).toBe(true) expect(screen.getByText(en.onboardingDescription)).toBeTruthy() - const action = screen.getByRole('button', { name: en.onboardingGoToSettings }) - expect(action).toBeTruthy() - expect(document.activeElement).toBe(screen.getByRole('heading', { name: en.onboardingTitle })) - expect(screen.queryByRole('textbox')).toBeNull() + const key = screen.getByLabelText(en.keyInput) + await waitFor(() => { expect(document.activeElement).toBe(key) }) + expect(screen.queryByText(en.customized)).toBeNull() }) - it('opens the Models section and dismisses the prompt', async () => { + it('cannot be dismissed implicitly and restores the previous inert state', async () => { + const h = harness() + const appRoot = document.getElementById('root')! + appRoot.inert = true + const view = render() + await screen.findByRole('dialog') + + fireEvent.keyDown(document, { key: 'Escape' }) + fireEvent.click(document.querySelector('[class*="mask"]')!) + expect(screen.getByRole('dialog')).toBeTruthy() + expect(h.complete).not.toHaveBeenCalled() + + view.unmount() + expect(appRoot.inert).toBe(true) + }) + + it('requires a non-blank key before Save and continue is available', async () => { const h = harness() render() - await screen.findByRole('region') - fireEvent.click(screen.getByRole('button', { name: en.onboardingGoToSettings })) - expect(h.complete).toHaveBeenCalledOnce() - expect(h.openSection).toHaveBeenCalledWith('models') + await screen.findByRole('dialog') + const save = screen.getByRole('button', { name: en.onboardingSave }) + expect(save.disabled).toBe(true) + fireEvent.change(screen.getByLabelText(en.keyInput), { target: { value: ' ' } }) + expect(save.disabled).toBe(true) + expect(screen.getByText(en.keyRequired)).toBeTruthy() + expect(h.set).not.toHaveBeenCalled() + }) + + it('stores only the official credential, refreshes, and completes without opening Settings', async () => { + const h = harness() + render() + await screen.findByRole('dialog') + fireEvent.change(screen.getByLabelText(en.keyInput), { target: { value: ' sk-live ' } }) + fireEvent.click(screen.getByRole('button', { name: en.onboardingSave })) + await waitFor(() => { + expect(h.set).toHaveBeenCalledWith({ ref: 'DEEPSEEK_API_KEY', value: 'sk-live' }) + }) + expect(h.mutate).not.toHaveBeenCalled() + expect(h.openSection).not.toHaveBeenCalled() + await waitFor(() => { expect(h.complete).toHaveBeenCalledOnce() }) + expect(screen.queryByRole('dialog')).toBeNull() + expect(document.getElementById('root')?.inert).toBe(false) + }) + + it('keeps the modal open and reports rejected and failed credential writes', async () => { + for (const [options, message] of [ + [{ setFailure: 'credential was rejected' }, 'credential was rejected'], + [{ setReject: 'connection lost' }, 'connection lost'], + ] as const) { + const h = harness(options) + const view = render() + await screen.findByRole('dialog') + fireEvent.change(screen.getByLabelText(en.keyInput), { target: { value: 'sk-live' } }) + fireEvent.click(screen.getByRole('button', { name: en.onboardingSave })) + expect(await screen.findByText(message)).toBeTruthy() + expect(screen.getByRole('dialog')).toBeTruthy() + expect(screen.getByRole('button', { name: en.onboardingSave }).disabled).toBe(false) + expect(h.complete).not.toHaveBeenCalled() + expect(h.mutate).not.toHaveBeenCalled() + view.unmount() + } }) it('allows configure-later dismissal without opening settings', async () => { const h = harness() render() - await screen.findByRole('region') + await screen.findByRole('dialog') fireEvent.click(screen.getByRole('button', { name: en.onboardingLater })) expect(h.complete).toHaveBeenCalledOnce() expect(h.openSection).not.toHaveBeenCalled() + expect(h.set).not.toHaveBeenCalled() + expect(h.mutate).not.toHaveBeenCalled() }) it('does not block the product when DeepSeek setup is unavailable', async () => { @@ -145,7 +243,7 @@ describe('DeepSeekOnboardingDialog', () => { ]) { const view = render() await act(async () => { await h.controller.load() }) - expect(screen.queryByRole('region')).toBeNull() + expect(screen.queryByRole('dialog')).toBeNull() await waitFor(() => { expect(h.complete).toHaveBeenCalledOnce() }) expect(h.openSection).not.toHaveBeenCalled() view.unmount() @@ -160,7 +258,7 @@ describe('DeepSeekOnboardingDialog', () => { ]) { const view = render() await act(async () => { await h.controller.load() }) - expect(screen.queryByRole('region')).toBeNull() + expect(screen.queryByRole('dialog')).toBeNull() await waitFor(() => { expect(h.complete).toHaveBeenCalledOnce() }) view.unmount() } @@ -169,10 +267,10 @@ describe('DeepSeekOnboardingDialog', () => { it('closes when an external credential invalidation refreshes the shared join', async () => { const h = harness() render() - await screen.findByRole('region') + await screen.findByRole('dialog') h.configure() await act(async () => { await h.controller.load() }) - await waitFor(() => { expect(screen.queryByRole('region')).toBeNull() }) + await waitFor(() => { expect(screen.queryByRole('dialog')).toBeNull() }) expect(h.complete).toHaveBeenCalledOnce() }) }) diff --git a/packages/client/ui-settings-models/tests/welcome-notice.client.spec.tsx b/packages/client/ui-settings-models/tests/welcome-notice.client.spec.tsx new file mode 100644 index 0000000000..09fc2485cf --- /dev/null +++ b/packages/client/ui-settings-models/tests/welcome-notice.client.spec.tsx @@ -0,0 +1,126 @@ +// @vitest-environment jsdom +import { act, cleanup, fireEvent, render, screen } from '@testing-library/react' +import { afterEach, describe, expect, it, vi } from 'vitest' +import { bindSnapshotSelector } from '@deepseek-ai/dsh-client-web-react' +import { WelcomeNotice } from '../src/client/WelcomeNotice.tsx' +import type { WelcomeNoticeProps } from '../src/client/WelcomeNotice.tsx' +import { WelcomeNoticeStore } from '../src/client/welcome-store.ts' +import { en, zh } from '../src/client/locales.ts' +import { + WELCOME_NOTICE_ACK_FIELD, WELCOME_NOTICE_COPY, WELCOME_NOTICE_SETTINGS_NAMESPACE, + WELCOME_NOTICE_VERSION, +} from '../src/onboarding-copy.ts' + +afterEach(() => { + cleanup() + document.getElementById('root')?.remove() +}) + +function response(value: T) { + return { rpcId: 'welcome-rpc' as never, result: { ok: true as const, value } } +} + +function mount(version?: string, mutateImpl: () => Promise = () => Promise.resolve(response({}))) { + const appRoot = document.createElement('div') + appRoot.id = 'root' + document.body.append(appRoot) + const mutate = vi.fn(mutateImpl) + const api = { + settings: { + describe: () => Promise.resolve(response({ + writable: true, + hasDocument: false, + namespaces: [{ + ns: WELCOME_NOTICE_SETTINGS_NAMESPACE, + schema: {}, + value: version === undefined ? {} : { [WELCOME_NOTICE_ACK_FIELD]: version }, + base: {}, + user: {}, + applies: 'live' as const, + secrets: [], + revision: 0, + }], + })), + mutate, + }, + } + const controller = new WelcomeNoticeStore(api as never) + const complete = vi.fn() + const unusedHook = (() => { throw new Error('unused standard hook') }) as never + const props: WelcomeNoticeProps = { + stepId: 'welcome-notice', + complete, + openSection: vi.fn(), + useSessions: unusedHook, + useWorkspaces: unusedHook, + controller, + useWelcome: bindSnapshotSelector(controller.store), + t: key => zh[key], + } + return { ...render(), complete, controller, mutate, appRoot } +} + +describe('WelcomeNotice', () => { + it('uses the exact owner copy in both GUI locales', () => { + expect(WELCOME_NOTICE_COPY.en).toEqual(WELCOME_NOTICE_COPY.zh) + expect(en.welcomeBody).toBe(WELCOME_NOTICE_COPY.en.body) + expect(zh.welcomeBody).toBe(WELCOME_NOTICE_COPY.zh.body) + }) + + it('renders one blocking modal action and focuses the title', async () => { + const h = mount() + const dialog = await screen.findByRole('dialog', { name: WELCOME_NOTICE_COPY.zh.title }) + for (const paragraph of WELCOME_NOTICE_COPY.zh.body.split('\n\n')) { + expect(screen.getByText(paragraph, { exact: true })).toBeTruthy() + } + expect(dialog.querySelectorAll('p')).toHaveLength(2) + expect(dialog.querySelectorAll('button')).toHaveLength(1) + expect(screen.getByRole('button', { name: WELCOME_NOTICE_COPY.zh.continueLabel })).toBeTruthy() + expect(document.activeElement).toBe(screen.getByRole('heading', { name: WELCOME_NOTICE_COPY.zh.title })) + expect(h.appRoot.inert).toBe(true) + + fireEvent.keyDown(document, { key: 'Escape' }) + fireEvent.click(document.querySelector('[class*="mask"]')!) + expect(h.complete).not.toHaveBeenCalled() + expect(screen.getByRole('dialog')).toBeTruthy() + }) + + it('completes only after the acknowledgement write commits', async () => { + const h = mount() + await screen.findByRole('dialog') + fireEvent.click(screen.getByRole('button', { name: WELCOME_NOTICE_COPY.zh.continueLabel })) + await act(async () => { await Promise.resolve() }) + expect(h.mutate).toHaveBeenCalledOnce() + expect(h.complete).toHaveBeenCalledOnce() + }) + + it('skips itself when this exact version was already acknowledged', async () => { + const h = mount(WELCOME_NOTICE_VERSION) + await act(async () => { await h.controller.load() }) + expect(screen.queryByRole('dialog')).toBeNull() + expect(h.complete).toHaveBeenCalledOnce() + }) + + it('keeps the sole action disabled while saving and reports a refused write', async () => { + let resolveWrite!: (value: unknown) => void + const write = new Promise((resolve) => { resolveWrite = resolve }) + const h = mount(undefined, () => write) + await screen.findByRole('dialog') + const action = screen.getByRole('button', { name: WELCOME_NOTICE_COPY.zh.continueLabel }) + fireEvent.click(action) + expect(action.disabled).toBe(true) + resolveWrite({ + rpcId: 'welcome-refused' as never, + result: { + ok: false, + error: { + code: 'settings-rejected', + message: 'read only', + details: { ns: WELCOME_NOTICE_SETTINGS_NAMESPACE }, + }, + }, + }) + expect((await screen.findByRole('alert')).textContent).toBe(zh.welcomeError) + expect(h.complete).not.toHaveBeenCalled() + }) +}) diff --git a/packages/client/ui-settings-models/tests/welcome-store.client.spec.ts b/packages/client/ui-settings-models/tests/welcome-store.client.spec.ts new file mode 100644 index 0000000000..97c026df1a --- /dev/null +++ b/packages/client/ui-settings-models/tests/welcome-store.client.spec.ts @@ -0,0 +1,199 @@ +import { describe, expect, it, vi } from 'vitest' +import type { RpcResponse } from '@deepseek-ai/dsh-api-remotes/client' +import { refreshWelcomeIfLoaded, WelcomeNoticeStore } from '../src/client/welcome-store.ts' +import { + WELCOME_NOTICE_ACK_FIELD, WELCOME_NOTICE_SETTINGS_NAMESPACE, WELCOME_NOTICE_VERSION, +} from '../src/onboarding-copy.ts' + +let rpc = 0 +function ok(value: T): RpcResponse { + return { rpcId: `welcome-${rpc++}` as never, result: { ok: true, value } } +} + +function namespace(version?: string) { + return { + ns: WELCOME_NOTICE_SETTINGS_NAMESPACE, + schema: {}, + value: version === undefined ? {} : { [WELCOME_NOTICE_ACK_FIELD]: version }, + base: {}, + user: {}, + applies: 'live' as const, + secrets: [], + revision: 0, + } +} + +function deferred() { + let resolve!: (value: T) => void + let reject!: (reason: unknown) => void + const promise = new Promise((res, rej) => { resolve = res; reject = rej }) + return { promise, resolve, reject } +} + +describe('WelcomeNoticeStore', () => { + it('acknowledges in memory without calling loopback-only settings APIs', async () => { + const describe = vi.fn() + const mutate = vi.fn() + const controller = new WelcomeNoticeStore({ settings: { describe, mutate } } as never, 'memory') + + await controller.load() + expect(controller.store.getSnapshot()).toEqual({ status: 'ready', acknowledged: false, error: null }) + await expect(controller.acknowledge()).resolves.toBe(true) + expect(controller.store.getSnapshot()).toEqual({ status: 'ready', acknowledged: true, error: null }) + await controller.load() + expect(controller.store.getSnapshot()).toEqual({ status: 'ready', acknowledged: true, error: null }) + expect(describe).not.toHaveBeenCalled() + expect(mutate).not.toHaveBeenCalled() + }) + + it('acknowledges only the exact current copy version', async () => { + for (const [version, acknowledged] of [ + [undefined, false], + ['older-copy', false], + [WELCOME_NOTICE_VERSION, true], + ] as const) { + const api = { + settings: { + describe: vi.fn(() => Promise.resolve(ok({ + writable: true, hasDocument: false, namespaces: [namespace(version)], + }))), + }, + } + const controller = new WelcomeNoticeStore(api as never) + await controller.load() + expect(controller.store.getSnapshot()).toMatchObject({ status: 'ready', acknowledged }) + } + }) + + it('persists the owner version through one idempotent path mutation', async () => { + const mutate = vi.fn(() => Promise.resolve(ok(namespace(WELCOME_NOTICE_VERSION)))) + const controller = new WelcomeNoticeStore({ settings: { mutate } } as never) + await expect(controller.acknowledge()).resolves.toBe(true) + expect(mutate).toHaveBeenCalledWith({ + ns: WELCOME_NOTICE_SETTINGS_NAMESPACE, + ops: [{ op: 'set', path: [WELCOME_NOTICE_ACK_FIELD], value: WELCOME_NOTICE_VERSION }], + }) + expect(controller.store.getSnapshot()).toMatchObject({ status: 'ready', acknowledged: true }) + }) + + it('keeps the notice pending when loading or persistence fails', async () => { + const load = new WelcomeNoticeStore({ + settings: { describe: () => Promise.reject(new Error('offline')) }, + } as never) + await load.load() + expect(load.store.getSnapshot()).toEqual({ status: 'error', acknowledged: false, error: 'offline' }) + + const save = new WelcomeNoticeStore({ + settings: { mutate: () => Promise.reject(new Error('disk full')) }, + } as never) + await expect(save.acknowledge()).resolves.toBe(false) + expect(save.store.getSnapshot()).toEqual({ status: 'error', acknowledged: false, error: 'disk full' }) + + const nonError = new WelcomeNoticeStore({ + // Durable/wire failures are unknown; exercise containment of a non-Error rejection. + settings: { describe: () => Promise.reject('offline string') }, + } as never) + await nonError.load() + expect(nonError.store.getSnapshot().error).toBe('offline string') + }) + + it('reports business failures, missing namespaces, and malformed durable values', async () => { + for (const describe of [ + () => Promise.resolve({ + rpcId: 'failed' as never, + result: { ok: false as const, error: { code: 'internal' as const, message: 'denied', details: {} } }, + }), + () => Promise.resolve(ok({ writable: true, hasDocument: false, namespaces: [] })), + ]) { + const controller = new WelcomeNoticeStore({ settings: { describe } } as never) + await controller.load() + expect(controller.store.getSnapshot().status).toBe('error') + } + + for (const value of [null, 42, { [WELCOME_NOTICE_ACK_FIELD]: 42 }]) { + const controller = new WelcomeNoticeStore({ + settings: { describe: () => Promise.resolve(ok({ + writable: true, + hasDocument: false, + namespaces: [{ ...namespace(), value }], + })) }, + } as never) + await controller.load() + expect(controller.store.getSnapshot()).toMatchObject({ status: 'ready', acknowledged: false }) + } + + const save = new WelcomeNoticeStore({ + settings: { mutate: () => Promise.resolve({ + rpcId: 'failed-save' as never, + result: { + ok: false, + error: { + code: 'settings-rejected', + message: 'denied', + details: { ns: WELCOME_NOTICE_SETTINGS_NAMESPACE }, + }, + }, + }) }, + } as never) + await expect(save.acknowledge()).resolves.toBe(false) + expect(save.store.getSnapshot().error).toBe('denied') + }) + + it('lets the latest load win over stale success and failure', async () => { + const first = deferred>() + const describe = vi.fn() + .mockImplementationOnce(() => first.promise) + .mockImplementationOnce(() => Promise.resolve(ok({ + writable: true, hasDocument: false, namespaces: [namespace()], + }))) + const controller = new WelcomeNoticeStore({ settings: { describe } } as never) + const stale = controller.load() + await controller.load() + first.resolve(ok({ + writable: true, hasDocument: false, namespaces: [namespace(WELCOME_NOTICE_VERSION)], + })) + await stale + expect(controller.store.getSnapshot().acknowledged).toBe(false) + + const failed = deferred>() + describe + .mockImplementationOnce(() => failed.promise) + .mockImplementationOnce(() => Promise.resolve(ok({ + writable: true, hasDocument: false, namespaces: [namespace(WELCOME_NOTICE_VERSION)], + }))) + const staleFailure = controller.load() + await controller.load() + failed.reject('stale failure') + await staleFailure + expect(controller.store.getSnapshot()).toMatchObject({ status: 'ready', acknowledged: true, error: null }) + }) + + it('contains stale acknowledgement settlements and refreshes only a loaded store', async () => { + const write = deferred>() + const describe = vi.fn(() => Promise.resolve(ok({ + writable: true, hasDocument: false, namespaces: [namespace()], + }))) + const controller = new WelcomeNoticeStore({ + settings: { mutate: () => write.promise, describe }, + } as never) + refreshWelcomeIfLoaded(controller) + expect(describe).not.toHaveBeenCalled() + const staleWrite = controller.acknowledge() + await controller.load() + write.resolve(ok(namespace(WELCOME_NOTICE_VERSION))) + await expect(staleWrite).resolves.toBe(true) + expect(controller.store.getSnapshot().acknowledged).toBe(false) + refreshWelcomeIfLoaded(controller) + await vi.waitFor(() => { expect(describe).toHaveBeenCalledTimes(2) }) + + const failedWrite = deferred>() + const staleFailure = new WelcomeNoticeStore({ + settings: { mutate: () => failedWrite.promise, describe }, + } as never) + const pending = staleFailure.acknowledge() + await staleFailure.load() + failedWrite.reject('late failure') + await expect(pending).resolves.toBe(false) + expect(staleFailure.store.getSnapshot().status).toBe('ready') + }) +}) diff --git a/packages/client/ui-settings/src/client/contract/slots.ts b/packages/client/ui-settings/src/client/contract/slots.ts index 76c5f540f9..5413f8cb29 100644 --- a/packages/client/ui-settings/src/client/contract/slots.ts +++ b/packages/client/ui-settings/src/client/contract/slots.ts @@ -64,13 +64,11 @@ declare module '@deepseek-ai/dsh-client-ui-slots' { * Root-scoped onboarding steps contributed by settings features. The * shell mounts one ordered step at a time; the active registrant either * completes itself or keeps ownership until the user completes its sole - * path. Registrants own readiness, copy, dialog behavior, AND the - * takeover chrome: a step wraps its visible content in the - * OnboardingSurface primitive (mask, opaque stage, `#root` inert) and - * renders null while its private facts are still loading — the shell - * paints no chrome of its own, so a mounted-but-deciding step shows and - * blocks nothing (prevents a white flash on reload: a bare unwrapped step - * would render without mask or stage). + * path. Registrants own readiness, copy, dialog behavior, AND visible + * chrome: a step wraps its visible content in its modal surface (including + * `#root` inert ownership) and renders null while private facts are still + * loading. The shell paints no chrome of its own, so a mounted-but-deciding + * step shows and blocks nothing. */ 'settings.onboarding': { kind: 'list'; scope: 'root'; owner: SettingsOnboardingOwnerProps } /** diff --git a/packages/extensions/cordis-client-runner/src/client/slot-catalog.ts b/packages/extensions/cordis-client-runner/src/client/slot-catalog.ts index 015d36e896..0cd1f51cd2 100644 --- a/packages/extensions/cordis-client-runner/src/client/slot-catalog.ts +++ b/packages/extensions/cordis-client-runner/src/client/slot-catalog.ts @@ -1192,7 +1192,7 @@ export const CLIENT_SLOT_API: readonly ClientSlotEntry[] = [ ], replaceRisk: 'none', example: 'return {\n inject: [\'slots\'],\n apply(ctx) {\n ctx.slots.inject(\'settings.general.item\', () => ctx.slots.register(\n { name: \'settings.general.item\', id: \'my-entry\', order: 100, label: \'My entry\' },\n () => React.createElement(\'div\', null, \'hello\'),\n ))\n },\n}', - source: 'packages/client/ui-settings/src/client/contract/slots.ts:90', + source: 'packages/client/ui-settings/src/client/contract/slots.ts:88', }, { key: 'settings.header', @@ -1225,7 +1225,7 @@ export const CLIENT_SLOT_API: readonly ClientSlotEntry[] = [ kind: 'list', scope: 'root', summary: 'Root-scoped onboarding steps contributed by settings features.', - doc: 'Root-scoped onboarding steps contributed by settings features. The\nshell mounts one ordered step at a time; the active registrant either\ncompletes itself or keeps ownership until the user completes its sole\npath. Registrants own readiness, copy, dialog behavior, AND the\ntakeover chrome: a step wraps its visible content in the\nOnboardingSurface primitive (mask, opaque stage, `#root` inert) and\nrenders null while its private facts are still loading — the shell\npaints no chrome of its own, so a mounted-but-deciding step shows and\nblocks nothing (prevents a white flash on reload: a bare unwrapped step\nwould render without mask or stage).', + doc: 'Root-scoped onboarding steps contributed by settings features. The\nshell mounts one ordered step at a time; the active registrant either\ncompletes itself or keeps ownership until the user completes its sole\npath. Registrants own readiness, copy, dialog behavior, AND visible\nchrome: a step wraps its visible content in its modal surface (including\n`#root` inert ownership) and renders null while private facts are still\nloading. The shell paints no chrome of its own, so a mounted-but-deciding\nstep shows and blocks nothing.', registerOptions: [ { name: 'id', @@ -1259,11 +1259,12 @@ export const CLIENT_SLOT_API: readonly ClientSlotEntry[] = [ slotInject: '', declaredBy: 'an entry in \'sidebar.settings\' (client-ui-settings-general), so it exists while that entry is mounted', occupants: [ + 'client-ui-settings-models WelcomeNotice id \'welcome-notice\'', 'client-ui-settings-models DeepSeekOnboardingDialog id \'deepseek-official\'', ], replaceRisk: 'none', example: 'return {\n inject: [\'slots\'],\n apply(ctx) {\n ctx.slots.inject(\'settings.onboarding\', () => ctx.slots.register(\n { name: \'settings.onboarding\', id: \'my-entry\', order: 100, label: \'My entry\' },\n () => React.createElement(\'div\', null, \'hello\'),\n ))\n },\n}', - source: 'packages/client/ui-settings/src/client/contract/slots.ts:75', + source: 'packages/client/ui-settings/src/client/contract/slots.ts:73', }, { key: 'settings.plugin.item', From df9ea1681f2faa714d884846284348ebc3f4b568 Mon Sep 17 00:00:00 2001 From: imccyu <276526105+imccyu@users.noreply.github.com> Date: Thu, 13 Aug 2026 16:20:19 +0800 Subject: [PATCH 07/22] fix: snapshot --- .../translation-prompt-v4/request-response.expected.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/snapshots/translation-prompt-v4/request-response.expected.json b/scripts/snapshots/translation-prompt-v4/request-response.expected.json index 627097be23..c5f0822791 100644 --- a/scripts/snapshots/translation-prompt-v4/request-response.expected.json +++ b/scripts/snapshots/translation-prompt-v4/request-response.expected.json @@ -8,11 +8,11 @@ }, { "role": "user", - "content": "# DeepSeek Harness\n\nEnglish | [中文](README.zh.md)\n\nDeepSeek Harness (`dsh`) is an open-source agent harness developed by [DeepSeek AI](https://deepseek.com).\n\nIt uses an architecture where **everything is a plugin**, and is powered by [Cordis](https://github.com/cordiverse/cordis).\n\n## Developer preview\n\nDeepSeek Harness is currently in _developer preview_ and is iterating rapidly. **THERE WILL BE COMPATIBILITY-BREAKING CHANGES.**\n\n## Run\n\n### Run from `npm`\n\nInstall `Node.js`, then run:\n\n```sh\nnpx @deepseek-ai/dsh web\n```\n\nThe command starts the Web UI, served at `http://127.0.0.1:3080` by default. See [Web UI guide](docs/user/guide/index.md).\n\n### Run from source\n\nTo run from a repository checkout:\n\n```sh\ngit clone https://github.com/deepseek-ai/deepseek-harness.git\ncd deepseek-harness\npnpm install\npnpm run build\npnpm dsh web\n```\n\n## Community and support\n\n- Feel free to submit feedback or bug reports through [GitHub Discussions](https://github.com/deepseek-ai/deepseek-harness/discussions).\n- Add the [`dsh-plugin`](https://github.com/topics/dsh-plugin) topic to your plugin repository for discoverability.\n\n## Contributing\n\nSee [CONTRIBUTING.md](CONTRIBUTING.md).\n\n## Development\n\nStart with the [development guide](docs/development.md) and [architecture documentation](docs/architecture.md).\n\nFor agents, follow [AGENTS.md](AGENTS.md).\n\n## License\n\n[MIT](LICENSE)\n\nThird-party dependencies and their licenses are disclosed in [THIRD_PARTY_NOTICES.md](THIRD_PARTY_NOTICES.md).\n" + "content": "# DeepSeek Harness\n\nEnglish | [中文](README.zh.md)\n\nDeepSeek Harness (`dsh`) is an open-source agent harness developed by [DeepSeek AI](https://deepseek.com).\n\nIt uses an architecture where **everything is a plugin**, and is powered by [Cordis](https://github.com/cordiverse/cordis).\n\n## Developer preview\n\nDeepSeek Harness is currently in _developer preview_ and is iterating rapidly. **THERE WILL BE COMPATIBILITY-BREAKING CHANGES.**\n\n## Run\n\n### Run from `npm`\n\nInstall `Node.js`, then run:\n\n```sh\nnpx @deepseek-ai/dsh web\n```\n\nThe command starts the Web UI, served at `http://127.0.0.1:3080` by default. See [Web UI guide](docs/user/guide/index.md).\n\n### Run from source\n\nTo run from a repository checkout:\n\n```sh\ngit clone https://github.com/deepseek-ai/deepseek-harness.git\ncd deepseek-harness\npnpm install\npnpm run build\npnpm dsh web\n```\n\n## Community and support\n\n- Feel free to submit feedback or bug reports through [GitHub Discussions](https://github.com/deepseek-ai/deepseek-harness/discussions).\n- Add the [`dsh-plugin`](https://github.com/topics/dsh-plugin) topic to your plugin repository for discoverability.\n- Join DeepSeek Harness Discord community.\n\n## Contributing\n\nSee [CONTRIBUTING.md](CONTRIBUTING.md).\n\n## Development\n\nStart with the [development guide](docs/development.md) and [architecture documentation](docs/architecture.md).\n\nFor agents, follow [AGENTS.md](AGENTS.md).\n\n## License\n\n[MIT](LICENSE)\n\nThird-party dependencies and their licenses are disclosed in [THIRD_PARTY_NOTICES.md](THIRD_PARTY_NOTICES.md).\n" }, { "role": "assistant", - "content": "# DeepSeek Harness\n\n[English](README.md) | 中文\n\nDeepSeek Harness(`dsh`)是由 [DeepSeek AI](https://deepseek.com) 开发的开源 agent harness(智能体框架)。\n\n它采用**一切皆插件**的架构,并由 [Cordis](https://github.com/cordiverse/cordis) 驱动。\n\n## 开发者预览\n\nDeepSeek Harness 目前处于 _开发者预览_ 阶段,正在快速迭代。**未来将出现破坏兼容性的变更。**\n\n## 运行\n\n### 通过 `npm` 运行\n\n安装 `Node.js`,然后运行:\n\n```sh\nnpx @deepseek-ai/dsh web\n```\n\n该命令会启动 Web UI,默认地址为 `http://127.0.0.1:3080`。详见 [Web UI 指南](docs/user/guide/index.md)。\n\n### 从源码运行\n\n如需从仓库源码运行:\n\n```sh\ngit clone https://github.com/deepseek-ai/deepseek-harness.git\ncd deepseek-harness\npnpm install\npnpm run build\npnpm dsh web\n```\n\n## 社区与支持\n\n- 欢迎通过 [GitHub Discussions](https://github.com/deepseek-ai/deepseek-harness/discussions) 提交反馈或 bug 报告。\n- 为你的插件仓库添加 [`dsh-plugin`](https://github.com/topics/dsh-plugin) 主题,便于被发现。\n\n## 参与贡献\n\n参见 [CONTRIBUTING.md](CONTRIBUTING.md)。\n\n## 开发\n\n请先阅读[开发指南](docs/development.md)与[架构文档](docs/architecture.md)。\n\n面向 agent:请遵循 [AGENTS.md](AGENTS.md)。\n\n## 许可证\n\n[MIT](LICENSE)\n\n第三方依赖及其许可证见 [THIRD_PARTY_NOTICES.md](THIRD_PARTY_NOTICES.md)。\n" + "content": "# DeepSeek Harness\n\n[English](README.md) | 中文\n\nDeepSeek Harness(`dsh`)是由 [DeepSeek AI](https://deepseek.com) 开发的开源 agent harness(智能体框架)。\n\n它采用**一切皆插件**的架构,并由 [Cordis](https://github.com/cordiverse/cordis) 驱动。\n\n## 开发者预览\n\nDeepSeek Harness 目前处于 _开发者预览_ 阶段,正在快速迭代。**未来将出现破坏兼容性的变更。**\n\n## 运行\n\n### 通过 `npm` 运行\n\n安装 `Node.js`,然后运行:\n\n```sh\nnpx @deepseek-ai/dsh web\n```\n\n该命令会启动 Web UI,默认地址为 `http://127.0.0.1:3080`。详见 [Web UI 指南](docs/user/guide/index.md)。\n\n### 从源码运行\n\n如需从仓库源码运行:\n\n```sh\ngit clone https://github.com/deepseek-ai/deepseek-harness.git\ncd deepseek-harness\npnpm install\npnpm run build\npnpm dsh web\n```\n\n## 社区与支持\n\n- 欢迎通过 [GitHub Discussions](https://github.com/deepseek-ai/deepseek-harness/discussions) 提交反馈或 bug 报告。\n- 为你的插件仓库添加 [`dsh-plugin`](https://github.com/topics/dsh-plugin) 话题,便于被发现。\n- 欢迎加入 DeepSeek Harness 企微群:扫码添加企微小助手并填写入群问卷,完成后小助手会邀请你入群。\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
企微小助手入群问卷微信公众号
\"DeepSeek\"DeepSeek\"DeepSeek
\n\n## 参与贡献\n\n参见 [CONTRIBUTING.md](CONTRIBUTING.md)。\n\n## 开发\n\n请先阅读[开发指南](docs/development.md)与[架构文档](docs/architecture.md)。\n\n面向 agent:请遵循 [AGENTS.md](AGENTS.md)。\n\n## 许可证\n\n[MIT](LICENSE)\n\n第三方依赖及其许可证见 [THIRD_PARTY_NOTICES.md](THIRD_PARTY_NOTICES.md)。\n" }, { "role": "user", From 22ab3beac101f381616d1552627c929033426b9f Mon Sep 17 00:00:00 2001 From: imccyu Date: Thu, 13 Aug 2026 15:56:35 +0800 Subject: [PATCH 08/22] release(dsh): 0.1.0-rc.1 --- apps/cli/package.json | 2 +- apps/web/package.json | 2 +- package.json | 2 +- packages/acp/acp/package.json | 2 +- packages/api/gateway/package.json | 2 +- packages/api/remotes/package.json | 2 +- packages/attachment/attachment-local/package.json | 2 +- packages/attachment/attachment/package.json | 2 +- packages/boot/app-boot/package.json | 2 +- packages/boot/cmdline/package.json | 2 +- packages/bundle/base/package.json | 2 +- packages/bundle/headless/package.json | 2 +- packages/bundle/web-app/package.json | 2 +- packages/client/connection/package.json | 2 +- packages/client/hmr/package.json | 2 +- packages/client/locale/package.json | 2 +- packages/client/modules/package.json | 2 +- packages/client/runtime/package.json | 2 +- packages/client/schema-form/package.json | 2 +- packages/client/ui-agent-preset/package.json | 2 +- packages/client/ui-attachment/package.json | 2 +- packages/client/ui-commands/package.json | 2 +- packages/client/ui-conversation/package.json | 2 +- packages/client/ui-deliverables/package.json | 2 +- packages/client/ui-directory-picker-browse/package.json | 2 +- packages/client/ui-directory-picker-native/package.json | 2 +- packages/client/ui-goal/package.json | 2 +- packages/client/ui-input-trigger/package.json | 2 +- packages/client/ui-jobs/package.json | 2 +- packages/client/ui-layout/package.json | 2 +- packages/client/ui-message-feedback/package.json | 2 +- packages/client/ui-model-selection/package.json | 2 +- packages/client/ui-permission-presets/package.json | 2 +- packages/client/ui-plan/package.json | 2 +- packages/client/ui-primitives/package.json | 2 +- packages/client/ui-settings-general/package.json | 2 +- packages/client/ui-settings-models/package.json | 2 +- packages/client/ui-settings-plugin-inventory/package.json | 2 +- packages/client/ui-settings-plugins/package.json | 2 +- packages/client/ui-settings/package.json | 2 +- packages/client/ui-sidebar/package.json | 2 +- packages/client/ui-skill/package.json | 2 +- packages/client/ui-slots/package.json | 2 +- packages/client/ui-subagent/package.json | 2 +- packages/client/ui-theme/package.json | 2 +- packages/client/ui-tool/package.json | 2 +- packages/client/ui-trajectory/package.json | 2 +- packages/client/ui-user-questions/package.json | 2 +- packages/client/ui-workflow-run/package.json | 2 +- packages/client/ui-workspace/package.json | 2 +- packages/client/web-react/package.json | 2 +- packages/client/web/package.json | 2 +- packages/code-runtime/code-runtime-worker-thread/package.json | 2 +- packages/code-runtime/code-runtime/package.json | 2 +- packages/compaction/command-compact/package.json | 2 +- packages/compaction/compaction-basic/package.json | 2 +- packages/compaction/compaction-tool-result-pruner/package.json | 2 +- packages/compaction/compaction/package.json | 2 +- packages/context/agent-instructions/package.json | 2 +- packages/context/session-reference/package.json | 2 +- packages/context/time-context/package.json | 2 +- packages/context/tmux-context/package.json | 2 +- packages/core/agent-default-model/package.json | 2 +- packages/core/agent-loop/package.json | 2 +- packages/core/agent-tool-presentation/package.json | 2 +- packages/core/agent/package.json | 2 +- packages/core/scope/package.json | 2 +- packages/core/session/package.json | 2 +- packages/core/system-prompt/package.json | 2 +- packages/core/tools/package.json | 2 +- packages/credentials/credentials-local/package.json | 2 +- packages/credentials/credentials/package.json | 2 +- packages/e2b/e2b/package.json | 2 +- packages/e2b/fs-e2b/package.json | 2 +- packages/e2b/subprocess-e2b/package.json | 2 +- packages/examples/acp-demo/package.json | 2 +- packages/examples/agent-spine-demo/package.json | 2 +- packages/examples/jsonrpc-demo/package.json | 2 +- packages/extensions/cordis-client-runner/package.json | 2 +- packages/extensions/cordis-host-runner/package.json | 2 +- packages/extensions/tool-cordis/package.json | 2 +- packages/extensions/ui-cordis/package.json | 2 +- packages/feedback/command-feedback/package.json | 2 +- packages/feedback/message-feedback/package.json | 2 +- packages/fs/fs-local/package.json | 2 +- packages/fs/fs-observation-policy/package.json | 2 +- packages/fs/fs-sandbox/package.json | 2 +- packages/fs/fs/package.json | 2 +- packages/fs/tool-fs-search/package.json | 2 +- packages/fs/tool-fs/package.json | 2 +- packages/fs/tool-str-replace-editor/package.json | 2 +- packages/goal/command-goal/package.json | 2 +- packages/goal/goal-round-driver/package.json | 2 +- packages/goal/goal/package.json | 2 +- packages/goal/tool-goal/package.json | 2 +- packages/guard/repeat-tool-reminder/package.json | 2 +- packages/guard/timeout-policy/package.json | 2 +- packages/hooks/hook-protocol/package.json | 2 +- packages/hooks/hooks-claude-code/package.json | 2 +- packages/hooks/hooks-codex/package.json | 2 +- packages/host/apiproxy/package.json | 2 +- packages/host/directory-picker-auto/package.json | 2 +- packages/host/directory-picker-browse/package.json | 2 +- packages/host/directory-picker-native/package.json | 2 +- packages/host/directory-picker/package.json | 2 +- packages/host/frontend-static/package.json | 2 +- packages/host/plugin-inventory/package.json | 2 +- packages/host/webserver/package.json | 2 +- packages/identity/anonymous-user-id/package.json | 2 +- packages/interaction/commands/package.json | 2 +- packages/interaction/permission-presets/package.json | 2 +- packages/interaction/tool-ask-user/package.json | 2 +- packages/interaction/user-approval/package.json | 2 +- packages/interaction/user-questions/package.json | 2 +- packages/jobs/jobs-local/package.json | 2 +- packages/jobs/jobs/package.json | 2 +- packages/jobs/tool-jobs/package.json | 2 +- packages/llm/llm-deepseek/package.json | 2 +- packages/llm/llm-pi-ai/package.json | 2 +- packages/llm/llm-retry/package.json | 2 +- packages/llm/llm/package.json | 2 +- packages/llm/token-meter/package.json | 2 +- packages/lsp/lsp-stdio/package.json | 2 +- packages/lsp/lsp/package.json | 2 +- packages/lsp/tool-lsp/package.json | 2 +- packages/mcp/mcp-client/package.json | 2 +- packages/plan/plan-mode/package.json | 2 +- packages/preset/agent-presets/package.json | 2 +- packages/preset/persona/package.json | 2 +- packages/runtime-diagnostics/invariants/package.json | 2 +- packages/sandbox/sandbox-local/package.json | 2 +- packages/sandbox/sandbox-policy/package.json | 2 +- packages/sandbox/sandbox-windows-acl/package.json | 2 +- packages/sandbox/sandbox/package.json | 2 +- packages/schedule/schedule/package.json | 2 +- packages/sdk/client/package.json | 2 +- packages/sdk/protocol/package.json | 2 +- packages/sdk/server/package.json | 2 +- packages/session-query/session-log-export/package.json | 2 +- packages/session-query/session-query-sqlite/package.json | 2 +- packages/session-query/session-query/package.json | 2 +- packages/session-query/tool-session-query/package.json | 2 +- packages/session/session-checkpoint-policy/package.json | 2 +- packages/session/session-persistence-jsonl/package.json | 2 +- packages/session/session-persistence-sqlite/package.json | 2 +- packages/session/session-persistence/package.json | 2 +- packages/session/session-projection-cache/package.json | 2 +- packages/session/session-projection/package.json | 2 +- packages/session/session-stats/package.json | 2 +- packages/session/session-telemetry-otel/package.json | 2 +- packages/session/session-telemetry/package.json | 2 +- packages/session/session-title-all-prompts-llm/package.json | 2 +- packages/session/session-title-first-prompt-llm/package.json | 2 +- packages/session/session-title-llm/package.json | 2 +- packages/session/session-title/package.json | 2 +- packages/settings/settings-file/package.json | 2 +- packages/settings/settings/package.json | 2 +- packages/shell/bash-local/package.json | 2 +- packages/shell/bash-sandbox/package.json | 2 +- packages/shell/pwsh-local/package.json | 2 +- packages/shell/pwsh-sandbox/package.json | 2 +- packages/shell/shell-env/package.json | 2 +- packages/shell/shell/package.json | 2 +- packages/shell/tool-bash-persistent/package.json | 2 +- packages/shell/tool-bash/package.json | 2 +- packages/shell/tool-pwsh/package.json | 2 +- packages/skill/skill-badge/package.json | 2 +- packages/skill/skill-filesystem/package.json | 2 +- packages/skill/skill/package.json | 2 +- packages/skill/tool-skill/package.json | 2 +- packages/spill/spill-local/package.json | 2 +- packages/spill/spill-policy/package.json | 2 +- packages/spill/spill/package.json | 2 +- packages/storage/storage-domain/package.json | 2 +- packages/storage/storage-json/package.json | 2 +- packages/storage/storage-sqlite/package.json | 2 +- packages/storage/storage/package.json | 2 +- packages/subagent/subagent-acp/package.json | 2 +- packages/subagent/subagent-claude-code/package.json | 2 +- packages/subagent/subagent-codex/package.json | 2 +- packages/subagent/subagent-dsh-sdk/package.json | 2 +- packages/subagent/subagent-fork-in-process/package.json | 2 +- packages/subagent/subagent-in-process-driver/package.json | 2 +- packages/subagent/subagent-spawn-in-process/package.json | 2 +- packages/subagent/subagent/package.json | 2 +- packages/subagent/tool-subagent-control/package.json | 2 +- packages/subagent/tool-subagent-report/package.json | 2 +- packages/subagent/tool-subagent/package.json | 2 +- packages/subprocess/subprocess-local/package.json | 2 +- packages/subprocess/subprocess/package.json | 2 +- packages/terminal/terminal-bash/package.json | 2 +- packages/terminal/terminal/package.json | 2 +- packages/terminal/tool-terminal/package.json | 2 +- packages/test-support/acp-snapshot/package.json | 2 +- packages/test-support/agent-loop-testkit/package.json | 2 +- packages/test-support/client-runtime/package.json | 2 +- packages/test-support/llm-mock-server/package.json | 2 +- packages/test-support/llm-replay/package.json | 2 +- packages/test-support/loader-smoke/package.json | 2 +- packages/todo/tool-todo/package.json | 2 +- packages/typert/generator/package.json | 2 +- packages/typert/loader/package.json | 2 +- packages/typert/protocol/package.json | 2 +- packages/typert/registry/package.json | 2 +- packages/util/atomic-write/package.json | 2 +- packages/util/brand/package.json | 2 +- packages/util/home-paths/package.json | 2 +- packages/util/launch-environment/package.json | 2 +- packages/util/native-command/package.json | 2 +- packages/util/output-retention/package.json | 2 +- packages/util/timeout/package.json | 2 +- packages/web/tool-web/package.json | 2 +- packages/web/web-fetch-http/package.json | 2 +- packages/web/web-search-deepseek/package.json | 2 +- packages/web/web-search-exa/package.json | 2 +- packages/web/web-search-perplexity/package.json | 2 +- packages/web/web/package.json | 2 +- packages/workflow/tool-ralph/package.json | 2 +- packages/workflow/tool-workflow/package.json | 2 +- packages/workflow/workflow-worker-thread/package.json | 2 +- packages/workflow/workflow/package.json | 2 +- packages/workspace/workspace/package.json | 2 +- 222 files changed, 222 insertions(+), 222 deletions(-) diff --git a/apps/cli/package.json b/apps/cli/package.json index ff7cc07407..9617da8869 100644 --- a/apps/cli/package.json +++ b/apps/cli/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh", "description": "dsh CLI: profile boot, plugin management, and the browser UI alias", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/apps/web/package.json b/apps/web/package.json index 32d6c06d78..7e85392d34 100644 --- a/apps/web/package.json +++ b/apps/web/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-web-frontend", "description": "Web application entry: vite build over the @deepseek-ai/dsh-client-web shell library; dist/ served by apps/cli's dsh web", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/package.json b/package.json index 9adfdf5cb4..ffbe648eaa 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@deepseek-ai/dsh-root", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "license": "MIT", "private": true, "type": "module", diff --git a/packages/acp/acp/package.json b/packages/acp/acp/package.json index 2c8b3cc826..02e8294f1f 100644 --- a/packages/acp/acp/package.json +++ b/packages/acp/acp/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-acp", "description": "Automation-only Agent Client Protocol server for driving DeepSeek Harness agents over JSON-RPC stdio", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/api/gateway/package.json b/packages/api/gateway/package.json index 722d052fc1..a034a01af2 100644 --- a/packages/api/gateway/package.json +++ b/packages/api/gateway/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-api-gateway", "description": "Typert Remote Host dispatcher and Client API endpoint", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/api/remotes/package.json b/packages/api/remotes/package.json index 7f8182fedb..3d4a9b40b7 100644 --- a/packages/api/remotes/package.json +++ b/packages/api/remotes/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-api-remotes", "description": "Remote BFF assembly and Host Agent/Session lookup policy", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/attachment/attachment-local/package.json b/packages/attachment/attachment-local/package.json index 2caa098326..499b8ef226 100644 --- a/packages/attachment/attachment-local/package.json +++ b/packages/attachment/attachment-local/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-attachment-local", "description": "Private content-addressed DSH_HOME attachment storage", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/attachment/attachment/package.json b/packages/attachment/attachment/package.json index 43a36a1d84..a853154ab8 100644 --- a/packages/attachment/attachment/package.json +++ b/packages/attachment/attachment/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-attachment", "description": "Durable immutable attachment storage seam for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/boot/app-boot/package.json b/packages/boot/app-boot/package.json index 368cd8ce22..9e60cd8af4 100644 --- a/packages/boot/app-boot/package.json +++ b/packages/boot/app-boot/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-app-boot", "description": "Shared boot glue for the app bins: .env loading, fail-loud Loader guards, snapshot-aware config resolution, and the Loader boot sequence", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/boot/cmdline/package.json b/packages/boot/cmdline/package.json index ddbfd025fd..c1b0732a8e 100644 --- a/packages/boot/cmdline/package.json +++ b/packages/boot/cmdline/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-cmdline", "description": "Immutable command-line handoff from a dsh launcher to any app plugin that injects cmdlineArgs", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/bundle/base/package.json b/packages/bundle/base/package.json index 8ae83abdbb..0881d4ea58 100644 --- a/packages/bundle/base/package.json +++ b/packages/bundle/base/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-base", "description": "The shared dsh core as a profile bundle: every profile's first patch layer, inserting the base plugin rows over the empty profile root", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/bundle/headless/package.json b/packages/bundle/headless/package.json index 9f8ebca111..ee10bc368b 100644 --- a/packages/bundle/headless/package.json +++ b/packages/bundle/headless/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-headless", "description": "The dsh one-shot bundle: a direct core Agent/Session runner over dsh-base with no Host, HTTP, or browser layer", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/bundle/web-app/package.json b/packages/bundle/web-app/package.json index 0c8193088f..888512a8f7 100644 --- a/packages/bundle/web-app/package.json +++ b/packages/bundle/web-app/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-web-app", "description": "The dsh browser-surface bundle: the web patch layer over dsh-base plus the runtime glue plugin (frontend dist serving, web-surface prompt, bash runtime variables, URL line)", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/connection/package.json b/packages/client/connection/package.json index 8d954c28d1..36a3a08cc2 100644 --- a/packages/client/connection/package.json +++ b/packages/client/connection/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-connection", "description": "Wire consumer layer: HTTP-up/WebSocket-down client, ConnectionController dual streams with reconnect, and fixture api", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/hmr/package.json b/packages/client/hmr/package.json index 994634005c..149c464e28 100644 --- a/packages/client/hmr/package.json +++ b/packages/client/hmr/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-hmr", "description": "Dev-only hot-reload driver for script-loaded client entries: SSE rebuilt frames → invalidate/prefetch → fiber swap through the vendored Loader entry", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/locale/package.json b/packages/client/locale/package.json index 30f82a4828..53ff24c993 100644 --- a/packages/client/locale/package.json +++ b/packages/client/locale/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-locale", "description": "Locale plugin: Host-backed zh/en preference, browser-derived fallback, locale snapshots, and typed namespace dictionaries", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/modules/package.json b/packages/client/modules/package.json index d7b3a155ac..e57918aa4c 100644 --- a/packages/client/modules/package.json +++ b/packages/client/modules/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-modules", "description": "Client module system, dual-face: node half composes the __DSH_BOOT__ entry graph (incremental dsh.client scan, bundle route, index tap, webPlugins service); browser half is the lazy-CJS module table the vendored cordis Loader consumes as its internal seam", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/runtime/package.json b/packages/client/runtime/package.json index 1855f2c7f7..6e93112cc1 100644 --- a/packages/client/runtime/package.json +++ b/packages/client/runtime/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-runtime", "description": "Client core services: SlotRegistry, SessionRuntime (scope tree + object layer)", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/schema-form/package.json b/packages/client/schema-form/package.json index a6fd68893b..9e47ccf3ce 100644 --- a/packages/client/schema-form/package.json +++ b/packages/client/schema-form/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-schema-form", "description": "Schema/draft model layer for settings editors: rehydrates a serialized schemastery schema, validates drafts, and edits them immutably by path", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-agent-preset/package.json b/packages/client/ui-agent-preset/package.json index 8b6788513d..617186b81e 100644 --- a/packages/client/ui-agent-preset/package.json +++ b/packages/client/ui-agent-preset/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-agent-preset", "description": "Agent-preset surfaces: the default for later sessions, this session's seat, and the composition editor", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-attachment/package.json b/packages/client/ui-attachment/package.json index 007c4092e1..a65822fa16 100644 --- a/packages/client/ui-attachment/package.json +++ b/packages/client/ui-attachment/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-attachment", "description": "Pure React attachment atoms for the dsh web UI: draft-image rail, message image gallery, and original-image lightbox (zero cordis)", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-commands/package.json b/packages/client/ui-commands/package.json index 2739b05cee..6f08e1a511 100644 --- a/packages/client/ui-commands/package.json +++ b/packages/client/ui-commands/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-commands", "description": "Client command surface: global directory cache, '/' source, three command UI kinds, popupSelect registry", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-conversation/package.json b/packages/client/ui-conversation/package.json index 2cab53f03e..ae9dc9150a 100644 --- a/packages/client/ui-conversation/package.json +++ b/packages/client/ui-conversation/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-conversation", "description": "Conversation domain: skeleton, ordered chat flow, composer with the Host-backed busy-Enter preference, and details host", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-deliverables/package.json b/packages/client/ui-deliverables/package.json index d21883da32..1036166334 100644 --- a/packages/client/ui-deliverables/package.json +++ b/packages/client/ui-deliverables/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-deliverables", "description": "Produced-files turn tail and clickable final-response file references for Web", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-directory-picker-browse/package.json b/packages/client/ui-directory-picker-browse/package.json index 105b64dc2d..d3957208bd 100644 --- a/packages/client/ui-directory-picker-browse/package.json +++ b/packages/client/ui-directory-picker-browse/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-directory-picker-browse", "description": "In-app directory browsing surface: the workspace directory-flow owner rendering the host's listing and creation primitives", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-directory-picker-native/package.json b/packages/client/ui-directory-picker-native/package.json index acc587e532..1384a08ead 100644 --- a/packages/client/ui-directory-picker-native/package.json +++ b/packages/client/ui-directory-picker-native/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-directory-picker-native", "description": "Native directory-picker surface: the renderless workspace directory-flow occupant driving the host's OS chooser", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-goal/package.json b/packages/client/ui-goal/package.json index bdad883101..fbb5569543 100644 --- a/packages/client/ui-goal/package.json +++ b/packages/client/ui-goal/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-goal", "description": "Session goal surface: GoalBar docked above the composer, read from the goal session projection", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-input-trigger/package.json b/packages/client/ui-input-trigger/package.json index 2a41e5fe58..3fc54c3faf 100644 --- a/packages/client/ui-input-trigger/package.json +++ b/packages/client/ui-input-trigger/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-input-trigger", "description": "Input trigger pipeline: '/' and '@' detection, candidate menu, pick routing to registered sources", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-jobs/package.json b/packages/client/ui-jobs/package.json index c4608b04b2..bdcb634e8e 100644 --- a/packages/client/ui-jobs/package.json +++ b/packages/client/ui-jobs/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-jobs", "description": "Session-header background-job list: live registry state mirrored from session/jobs frames", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "type": "module", "main": "lib/index.js", "types": "lib/types/index.d.ts", diff --git a/packages/client/ui-layout/package.json b/packages/client/ui-layout/package.json index e89aa6deba..db914cbd20 100644 --- a/packages/client/ui-layout/package.json +++ b/packages/client/ui-layout/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-layout", "description": "Shell plugin: three-column AppFrame with drag handles, ctx.layout viewing-state service (navigation + panels)", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-message-feedback/package.json b/packages/client/ui-message-feedback/package.json index f498ba9213..6faf159bc2 100644 --- a/packages/client/ui-message-feedback/package.json +++ b/packages/client/ui-message-feedback/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-message-feedback", "description": "Per-message feedback controls contributed to the assistant-message action strip, backed by the messageFeedback Host Remote", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-model-selection/package.json b/packages/client/ui-model-selection/package.json index 03bfbb163f..ea9843992a 100644 --- a/packages/client/ui-model-selection/package.json +++ b/packages/client/ui-model-selection/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-model-selection", "description": "Model selection: the /model popupSelect over session.models / session.selectModel", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-permission-presets/package.json b/packages/client/ui-permission-presets/package.json index 9e5702a29e..dc6fd4e2f1 100644 --- a/packages/client/ui-permission-presets/package.json +++ b/packages/client/ui-permission-presets/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-permission-presets", "description": "Permission surfaces: a new-session default in General settings and a current-session /permission popup over the permissions projection", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-plan/package.json b/packages/client/ui-plan/package.json index 41c106a391..2b5d64b057 100644 --- a/packages/client/ui-plan/package.json +++ b/packages/client/ui-plan/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-plan", "description": "Plan-mode composer control: the conversation.input.plan seat over the plan projection and the /plan command channel", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-primitives/package.json b/packages/client/ui-primitives/package.json index 28685575b4..66a1bb672b 100644 --- a/packages/client/ui-primitives/package.json +++ b/packages/client/ui-primitives/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-primitives", "description": "Pure React atoms for the dsh web UI: controls, icons, markdown, and JSON inspectors (zero cordis)", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-settings-general/package.json b/packages/client/ui-settings-general/package.json index df051694a5..878c339e0b 100644 --- a/packages/client/ui-settings-general/package.json +++ b/packages/client/ui-settings-general/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-settings-general", "description": "Settings ownerless-copy and product onboarding plugin: the General section, shell trigger/header chrome content, settings dictionaries, and the versioned welcome notice", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-settings-models/package.json b/packages/client/ui-settings-models/package.json index c69fc62153..3a78f1716e 100644 --- a/packages/client/ui-settings-models/package.json +++ b/packages/client/ui-settings-models/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-settings-models", "description": "Models settings and official-DeepSeek first-run routing over one live provider/settings/credential join", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-settings-plugin-inventory/package.json b/packages/client/ui-settings-plugin-inventory/package.json index 02fb7fc18d..c4260096a8 100644 --- a/packages/client/ui-settings-plugin-inventory/package.json +++ b/packages/client/ui-settings-plugin-inventory/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-settings-plugin-inventory", "description": "Read-only Cordis Loader inventory tab in Web Plugins settings", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-settings-plugins/package.json b/packages/client/ui-settings-plugins/package.json index b9573329c4..42e5f3e534 100644 --- a/packages/client/ui-settings-plugins/package.json +++ b/packages/client/ui-settings-plugins/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-settings-plugins", "description": "Plugins settings section with feature-owned tabs and configurable host-plane plugin cards", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-settings/package.json b/packages/client/ui-settings/package.json index fcdc871cc0..a0b6c8ee2f 100644 --- a/packages/client/ui-settings/package.json +++ b/packages/client/ui-settings/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-settings", "description": "Settings domain base plugin: the settings-namespace scope service and the canonical settings slot-type contract", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-sidebar/package.json b/packages/client/ui-sidebar/package.json index ba67acf035..b6c7813033 100644 --- a/packages/client/ui-sidebar/package.json +++ b/packages/client/ui-sidebar/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-sidebar", "description": "Sidebar plugin: session multi-level tree, search, grouping, state dots", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-skill/package.json b/packages/client/ui-skill/package.json index 9725afb999..1bd1a3d109 100644 --- a/packages/client/ui-skill/package.json +++ b/packages/client/ui-skill/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-skill", "description": "Web skill references and the dedicated skill tool row", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-slots/package.json b/packages/client/ui-slots/package.json index d7d24d41cc..eb9f076ea3 100644 --- a/packages/client/ui-slots/package.json +++ b/packages/client/ui-slots/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-slots", "description": "Slot registry pure core: SlotMap declaration merging, single register composition API, four-share props types, store-seat types, renderer install seam", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-subagent/package.json b/packages/client/ui-subagent/package.json index 695eb44242..4f16c65d03 100644 --- a/packages/client/ui-subagent/package.json +++ b/packages/client/ui-subagent/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-subagent", "description": "Subagent conversation catalog, continuation routing UI, and '@' reference source", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-theme/package.json b/packages/client/ui-theme/package.json index af0d9c4d72..4b3ecdc24f 100644 --- a/packages/client/ui-theme/package.json +++ b/packages/client/ui-theme/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-theme", "description": "Theme plugin: Host bootstrap for the pre-plugin palette; DOM-free ThemeRuntime for light/dark/system state; --dsw-* token styles and Appearance settings row", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-tool/package.json b/packages/client/ui-tool/package.json index 77126b3acd..5c2e7f47f9 100644 --- a/packages/client/ui-tool/package.json +++ b/packages/client/ui-tool/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-tool", "description": "Client Tool call-tree renderer and keyed per-tool presentation slot", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-trajectory/package.json b/packages/client/ui-trajectory/package.json index 64cc7bf3a8..1dc0c9bbde 100644 --- a/packages/client/ui-trajectory/package.json +++ b/packages/client/ui-trajectory/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-trajectory", "description": "Trajectory event ledger with an interactive timing overview: pure-consumer plugin registering into the conversation ViewMap (no service)", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-user-questions/package.json b/packages/client/ui-user-questions/package.json index df45a9d006..3afa43d70b 100644 --- a/packages/client/ui-user-questions/package.json +++ b/packages/client/ui-user-questions/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-user-questions", "description": "Web ask_user_question feature: host tool mount plus composer-takeover question UI", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-workflow-run/package.json b/packages/client/ui-workflow-run/package.json index c405348651..71695e6394 100644 --- a/packages/client/ui-workflow-run/package.json +++ b/packages/client/ui-workflow-run/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-workflow-run", "description": "Durable workflow-run Conversation Node and nested member disclosure for dsh web", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-workspace/package.json b/packages/client/ui-workspace/package.json index 4665c00faa..105f0afa63 100644 --- a/packages/client/ui-workspace/package.json +++ b/packages/client/ui-workspace/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-workspace", "description": "Workspace picker plugin: one WorkspacePicker registered into the sidebar and empty-state workspace slots", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/web-react/package.json b/packages/client/web-react/package.json index 0fcc91e373..ade5833056 100644 --- a/packages/client/web-react/package.json +++ b/packages/client/web-react/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-web-react", "description": "Shell-side React glue: createSlotRenderer, SessionProvider, bindSnapshotSelector (uSES bridge), useInvoke", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/web/package.json b/packages/client/web/package.json index fe900dd289..cfe38fe698 100644 --- a/packages/client/web/package.json +++ b/packages/client/web/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-web", "description": "Web shell kernel: bootWebShell (module system holding + seed table + two-stage boot + AppRoot gate + app-shell assembly entry), consumed by the apps/web vite entry", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/code-runtime/code-runtime-worker-thread/package.json b/packages/code-runtime/code-runtime-worker-thread/package.json index dbb8ef3911..e4286cbdd5 100644 --- a/packages/code-runtime/code-runtime-worker-thread/package.json +++ b/packages/code-runtime/code-runtime-worker-thread/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-code-runtime-worker-thread", "description": "Worker-thread implementation of the DeepSeek Harness code-execution seam", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/code-runtime/code-runtime/package.json b/packages/code-runtime/code-runtime/package.json index d1e878347f..20c1bdb859 100644 --- a/packages/code-runtime/code-runtime/package.json +++ b/packages/code-runtime/code-runtime/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-code-runtime", "description": "Abstract code-execution seam (ctx.codeRuntime) for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/compaction/command-compact/package.json b/packages/compaction/command-compact/package.json index 7c7c7405d9..c3cdffaec3 100644 --- a/packages/compaction/command-compact/package.json +++ b/packages/compaction/command-compact/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-command-compact", "description": "Human-facing slash command for explicit session compaction", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/compaction/compaction-basic/package.json b/packages/compaction/compaction-basic/package.json index 65093551f7..2b91fa4630 100644 --- a/packages/compaction/compaction-basic/package.json +++ b/packages/compaction/compaction-basic/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-compaction-basic", "description": "Token-meter-driven compaction policy and LLM summarization backend for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/compaction/compaction-tool-result-pruner/package.json b/packages/compaction/compaction-tool-result-pruner/package.json index 9a3260bc2c..1ee9dcbb0a 100644 --- a/packages/compaction/compaction-tool-result-pruner/package.json +++ b/packages/compaction/compaction-tool-result-pruner/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-compaction-tool-result-pruner", "description": "Replay-safe model-free head/middle/tail pruning for tool-result surface nodes", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/compaction/compaction/package.json b/packages/compaction/compaction/package.json index 981e78fbf9..4c6900c6c3 100644 --- a/packages/compaction/compaction/package.json +++ b/packages/compaction/compaction/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-compaction", "description": "Abstract compaction service seam (ctx.compaction) for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/context/agent-instructions/package.json b/packages/context/agent-instructions/package.json index 1bd5d1b78c..c84bb2bde7 100644 --- a/packages/context/agent-instructions/package.json +++ b/packages/context/agent-instructions/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-agent-instructions", "description": "Workspace context loader for AGENTS.md/CLAUDE.md instruction files", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/context/session-reference/package.json b/packages/context/session-reference/package.json index 4a4de322b6..83fe078eb8 100644 --- a/packages/context/session-reference/package.json +++ b/packages/context/session-reference/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-reference", "description": "Cross-session snapshot references and durable untrusted model context (ctx.sessionReferenceResolver)", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/context/time-context/package.json b/packages/context/time-context/package.json index 31eedc1e3e..83eb05dc6e 100644 --- a/packages/context/time-context/package.json +++ b/packages/context/time-context/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-time-context", "description": "Opt-in durable per-step context with the current time and elapsed time", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/context/tmux-context/package.json b/packages/context/tmux-context/package.json index 2ff4123d59..dd63d592e5 100644 --- a/packages/context/tmux-context/package.json +++ b/packages/context/tmux-context/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tmux-context", "description": "Opt-in durable per-step context with this agent's tmux pane and window location", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/core/agent-default-model/package.json b/packages/core/agent-default-model/package.json index 657738564c..617139dbf2 100644 --- a/packages/core/agent-default-model/package.json +++ b/packages/core/agent-default-model/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-agent-default-model", "description": "Default model selection shared by Agent entry points", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/core/agent-loop/package.json b/packages/core/agent-loop/package.json index 5b5decf6dc..a25f1d938f 100644 --- a/packages/core/agent-loop/package.json +++ b/packages/core/agent-loop/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-agent-loop", "description": "The concrete agent loop plugin for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/core/agent-tool-presentation/package.json b/packages/core/agent-tool-presentation/package.json index b73d7e5906..9610ebe18e 100644 --- a/packages/core/agent-tool-presentation/package.json +++ b/packages/core/agent-tool-presentation/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-agent-tool-presentation", "description": "Agent-plane presentation selector: composes one agent's tools as Code Mode, native, or both", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/core/agent/package.json b/packages/core/agent/package.json index 2aadce0f3a..0bfc2e2fce 100644 --- a/packages/core/agent/package.json +++ b/packages/core/agent/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-agent", "description": "Agent interface, registry, initiator scope, and event vocabulary for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/core/scope/package.json b/packages/core/scope/package.json index 0a905db770..09bc97963c 100644 --- a/packages/core/scope/package.json +++ b/packages/core/scope/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-scope", "description": "Scoped-context registration primitive (scope tags, scope-filtered event dispatch) for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/core/session/package.json b/packages/core/session/package.json index 2c71fd5914..2c5648e07d 100644 --- a/packages/core/session/package.json +++ b/packages/core/session/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session", "description": "Event-sourced session store for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/core/system-prompt/package.json b/packages/core/system-prompt/package.json index 3d5fecb898..f34d70d4cd 100644 --- a/packages/core/system-prompt/package.json +++ b/packages/core/system-prompt/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-system-prompt", "description": "System prompt assembly registry for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/core/tools/package.json b/packages/core/tools/package.json index b472b72eae..e0dcd5ae30 100644 --- a/packages/core/tools/package.json +++ b/packages/core/tools/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tools", "description": "Tool registry and execution pipeline for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/credentials/credentials-local/package.json b/packages/credentials/credentials-local/package.json index 3e6336abf9..75d574b1c0 100644 --- a/packages/credentials/credentials-local/package.json +++ b/packages/credentials/credentials-local/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-credentials-local", "description": "File-backed credentials provider ($DSH_HOME/.env under the live process environment) for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/credentials/credentials/package.json b/packages/credentials/credentials/package.json index c4e9b22fc2..7bd964b31d 100644 --- a/packages/credentials/credentials/package.json +++ b/packages/credentials/credentials/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-credentials", "description": "Abstract credential seam (ctx.credentials): settings carry references to secrets, providers own the values", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/e2b/e2b/package.json b/packages/e2b/e2b/package.json index 50619aab9b..d073feebae 100644 --- a/packages/e2b/e2b/package.json +++ b/packages/e2b/e2b/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-e2b", "description": "Shared E2B sandbox lifecycle for DeepSeek Harness provider adapters", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/e2b/fs-e2b/package.json b/packages/e2b/fs-e2b/package.json index e4cad4d1dd..7f03bfa801 100644 --- a/packages/e2b/fs-e2b/package.json +++ b/packages/e2b/fs-e2b/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-fs-e2b", "description": "E2B filesystem implementation for DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/e2b/subprocess-e2b/package.json b/packages/e2b/subprocess-e2b/package.json index 9d939df557..55739a65ed 100644 --- a/packages/e2b/subprocess-e2b/package.json +++ b/packages/e2b/subprocess-e2b/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subprocess-e2b", "description": "E2B subprocess implementation for DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/examples/acp-demo/package.json b/packages/examples/acp-demo/package.json index a3791b086a..6694257e88 100644 --- a/packages/examples/acp-demo/package.json +++ b/packages/examples/acp-demo/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-acp-demo", "description": "ACP automation server app: agent spine + JSONL persistence + ACP transport, with a JSON-RPC stdio bin", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/examples/agent-spine-demo/package.json b/packages/examples/agent-spine-demo/package.json index 84f36fe690..67b01c29fa 100644 --- a/packages/examples/agent-spine-demo/package.json +++ b/packages/examples/agent-spine-demo/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-agent-spine-demo", "description": "The default executor-less/UI-less agent spine with fallback session titles, provider-routed retry, and optional persisted goals", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/examples/jsonrpc-demo/package.json b/packages/examples/jsonrpc-demo/package.json index f756389787..e8519495fa 100644 --- a/packages/examples/jsonrpc-demo/package.json +++ b/packages/examples/jsonrpc-demo/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-sdk-jsonrpc-demo", "description": "Bin that boots an external Cordis config for the stdio JSON-RPC SDK runtime", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/extensions/cordis-client-runner/package.json b/packages/extensions/cordis-client-runner/package.json index fe183445d0..0e6903ce57 100644 --- a/packages/extensions/cordis-client-runner/package.json +++ b/packages/extensions/cordis-client-runner/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-cordis-client-runner", "description": "Browser half of dynamic dual-half plugin packages: event subscription, closure evaluation, guard facade, and loader entries", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/extensions/cordis-host-runner/package.json b/packages/extensions/cordis-host-runner/package.json index 263a673466..59e78a1ec9 100644 --- a/packages/extensions/cordis-host-runner/package.json +++ b/packages/extensions/cordis-host-runner/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-cordis-host-runner", "description": "Dynamic package definition registry, host-half sandbox lifecycle, and invoke handler table for model-mounted dual-half packages", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/extensions/tool-cordis/package.json b/packages/extensions/tool-cordis/package.json index d1badb3d1f..0279f6d424 100644 --- a/packages/extensions/tool-cordis/package.json +++ b/packages/extensions/tool-cordis/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-cordis", "description": "Self-referential cordis toolset: inspect the live runtime, mount and dispose model-written plugins", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/extensions/ui-cordis/package.json b/packages/extensions/ui-cordis/package.json index 9e16d3a4a5..1a717b2cb7 100644 --- a/packages/extensions/ui-cordis/package.json +++ b/packages/extensions/ui-cordis/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-cordis", "description": "Cordis dynamic-plugin definition card: the keyed cordis_define tool row with its run/stop switch", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/feedback/command-feedback/package.json b/packages/feedback/command-feedback/package.json index 62a0b6e6fc..33a9e4ad37 100644 --- a/packages/feedback/command-feedback/package.json +++ b/packages/feedback/command-feedback/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-command-feedback", "description": "Log-only session feedback producer and human-facing slash command", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/feedback/message-feedback/package.json b/packages/feedback/message-feedback/package.json index 92fd1b69e1..dcc3a173ac 100644 --- a/packages/feedback/message-feedback/package.json +++ b/packages/feedback/message-feedback/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-message-feedback", "description": "Lifecycle-bound per-message rating and note sidecar for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/fs/fs-local/package.json b/packages/fs/fs-local/package.json index e1a08d5b26..efe9d4de4f 100644 --- a/packages/fs/fs-local/package.json +++ b/packages/fs/fs-local/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-fs-local", "description": "Local-filesystem implementation of the DeepSeek Harness filesystem seam (ctx.fs)", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/fs/fs-observation-policy/package.json b/packages/fs/fs-observation-policy/package.json index a58f7dffa1..1bbd7f1039 100644 --- a/packages/fs/fs-observation-policy/package.json +++ b/packages/fs/fs-observation-policy/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-fs-observation-policy", "description": "File-context policy plugin for the DeepSeek Harness — observed-state, read-before-edit, and version-guarded write/edit added over the ctx.fs provider seam through the fs/* event gate (no service API)", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/fs/fs-sandbox/package.json b/packages/fs/fs-sandbox/package.json index 14bb7688ad..255709e6e7 100644 --- a/packages/fs/fs-sandbox/package.json +++ b/packages/fs/fs-sandbox/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-fs-sandbox", "description": "Sandbox-enforcing implementation of the DeepSeek Harness filesystem seam: fences write/edit by the per-call sandbox mode (read-only denies mutation, workspace-write contains it to the workspace + temp roots) while reads pass through", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/fs/fs/package.json b/packages/fs/fs/package.json index 0b7fa7de95..c3c7c2353b 100644 --- a/packages/fs/fs/package.json +++ b/packages/fs/fs/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-fs", "description": "Abstract filesystem capability seam (ctx.fs) for the DeepSeek Harness — vocabulary types, the FileSystem service (text IO + optional version-guarded atomic mutations), and the fs/* policy event vocabulary", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/fs/tool-fs-search/package.json b/packages/fs/tool-fs-search/package.json index fb605640e2..fbb740d186 100644 --- a/packages/fs/tool-fs-search/package.json +++ b/packages/fs/tool-fs-search/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-fs-search", "description": "Model-facing filesystem discovery tools (glob, grep) backed by the packaged ripgrep binary (@vscode/ripgrep)", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/fs/tool-fs/package.json b/packages/fs/tool-fs/package.json index 52afc01c71..668fb9106d 100644 --- a/packages/fs/tool-fs/package.json +++ b/packages/fs/tool-fs/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-fs", "description": "Model-facing filesystem tools (read, write, edit) over the DeepSeek Harness filesystem seam (ctx.fs)", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/fs/tool-str-replace-editor/package.json b/packages/fs/tool-str-replace-editor/package.json index 0ba3199de1..3aca8e7c8f 100644 --- a/packages/fs/tool-str-replace-editor/package.json +++ b/packages/fs/tool-str-replace-editor/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-str-replace-editor", "description": "Model-facing view, create, literal replace, and line insert tool over the Harness filesystem service", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/goal/command-goal/package.json b/packages/goal/command-goal/package.json index 37856f82c1..a0ecf3ca9b 100644 --- a/packages/goal/command-goal/package.json +++ b/packages/goal/command-goal/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-command-goal", "description": "Human-facing slash command for persisted same-session goals", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/goal/goal-round-driver/package.json b/packages/goal/goal-round-driver/package.json index 04039bccf5..af5d415729 100644 --- a/packages/goal/goal-round-driver/package.json +++ b/packages/goal/goal-round-driver/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-goal-round-driver", "description": "Race-fenced same-session goal-round driver", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/goal/goal/package.json b/packages/goal/goal/package.json index 7a70042efd..13fcddeecd 100644 --- a/packages/goal/goal/package.json +++ b/packages/goal/goal/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-goal", "description": "Event-sourced same-session goal state and lifecycle service for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/goal/tool-goal/package.json b/packages/goal/tool-goal/package.json index a55b4aecc2..9c8ce67a76 100644 --- a/packages/goal/tool-goal/package.json +++ b/packages/goal/tool-goal/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-goal", "description": "Model-facing same-session goal tools with execution-time authority checks", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/guard/repeat-tool-reminder/package.json b/packages/guard/repeat-tool-reminder/package.json index 3ce74bf325..46996c42c9 100644 --- a/packages/guard/repeat-tool-reminder/package.json +++ b/packages/guard/repeat-tool-reminder/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-repeat-tool-reminder", "description": "Repeat-tool-call guard plugin: advisory reminders when an agent loops on identical tool calls", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/guard/timeout-policy/package.json b/packages/guard/timeout-policy/package.json index 1f79e44170..947415cb62 100644 --- a/packages/guard/timeout-policy/package.json +++ b/packages/guard/timeout-policy/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-call-timeout-policy", "description": "Tool-call timeout policy: a tools/execute wrapper that arms a per-tool deadline on exec.signal and returns TOOL_TIMEOUT when it wins", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/hooks/hook-protocol/package.json b/packages/hooks/hook-protocol/package.json index 9f10386e1c..853b79f934 100644 --- a/packages/hooks/hook-protocol/package.json +++ b/packages/hooks/hook-protocol/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-hook-protocol", "description": "Shared Claude Code / Codex hook wire protocol: matcher engine, stdin/exit-code/stdout codec, multi-hook merge, and hook/* session events", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/hooks/hooks-claude-code/package.json b/packages/hooks/hooks-claude-code/package.json index a3bd642b42..2e19511840 100644 --- a/packages/hooks/hooks-claude-code/package.json +++ b/packages/hooks/hooks-claude-code/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-hooks-claude-code", "description": "Bridge plugin: run a Claude Code hooks.json / settings hook config on the DeepSeek Harness interception seams", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/hooks/hooks-codex/package.json b/packages/hooks/hooks-codex/package.json index 340c2ceb22..7b849242dd 100644 --- a/packages/hooks/hooks-codex/package.json +++ b/packages/hooks/hooks-codex/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-hooks-codex", "description": "Bridge plugin: run a Codex hooks.json hook config on the DeepSeek Harness interception seams", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/host/apiproxy/package.json b/packages/host/apiproxy/package.json index 307581a3f3..d0e75a11f5 100644 --- a/packages/host/apiproxy/package.json +++ b/packages/host/apiproxy/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-host-apiproxy", "description": "API gateway: the ApiProxy contract (api/), the fetch carrier pair (fetch/), and the host-side gateway plugin providing ctx.apiProxy", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/host/directory-picker-auto/package.json b/packages/host/directory-picker-auto/package.json index d79af2594e..3e5112dde7 100644 --- a/packages/host/directory-picker-auto/package.json +++ b/packages/host/directory-picker-auto/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-host-directory-picker-auto", "description": "Adaptive chooser of the directory-picker seam: resolves the host situation at boot and mounts the native or browse backend for the DeepSeek Harness web GUI host", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/host/directory-picker-browse/package.json b/packages/host/directory-picker-browse/package.json index 5749e795fa..9eacb79ccc 100644 --- a/packages/host/directory-picker-browse/package.json +++ b/packages/host/directory-picker-browse/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-host-directory-picker-browse", "description": "In-app browsing backend of the directory-picker seam (listing/creation primitives over the host filesystem)", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/host/directory-picker-native/package.json b/packages/host/directory-picker-native/package.json index 62c375f5fa..933cfbe3a2 100644 --- a/packages/host/directory-picker-native/package.json +++ b/packages/host/directory-picker-native/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-host-directory-picker-native", "description": "Native-OS-chooser backend of the directory-picker seam for the DeepSeek Harness web GUI host", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/host/directory-picker/package.json b/packages/host/directory-picker/package.json index f197d31250..7196855c85 100644 --- a/packages/host/directory-picker/package.json +++ b/packages/host/directory-picker/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-host-directory-picker", "description": "Abstract workspace-directory picking seam (ctx.directoryPicker) for the DeepSeek Harness web GUI host", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/host/frontend-static/package.json b/packages/host/frontend-static/package.json index 5cbd0d8628..7c2cfe281d 100644 --- a/packages/host/frontend-static/package.json +++ b/packages/host/frontend-static/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-host-frontend-static", "description": "SPA dist server for the Web shell: owns the webserver fallback seat, serving the built frontend with index-tap injection, traversal rejection, and SPA index fallback", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/host/plugin-inventory/package.json b/packages/host/plugin-inventory/package.json index 99833b8ea9..4da7af74ac 100644 --- a/packages/host/plugin-inventory/package.json +++ b/packages/host/plugin-inventory/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-host-plugin-inventory", "description": "Read-only Remote projection of current Cordis Loader plugin state", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/host/webserver/package.json b/packages/host/webserver/package.json index 891fa49b23..63fceb801b 100644 --- a/packages/host/webserver/package.json +++ b/packages/host/webserver/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-host-webserver", "description": "Web route-registration plugin: HTTP and upgrade routes, index transform taps, and static dist fallback; knows no harness concepts", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/identity/anonymous-user-id/package.json b/packages/identity/anonymous-user-id/package.json index 604b308f15..1c4997c054 100644 --- a/packages/identity/anonymous-user-id/package.json +++ b/packages/identity/anonymous-user-id/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-anonymous-user-id", "description": "Shared anonymous user identity for DeepSeek Harness telemetry and feedback correlation", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/interaction/commands/package.json b/packages/interaction/commands/package.json index c08b1294a4..575f2b4e8c 100644 --- a/packages/interaction/commands/package.json +++ b/packages/interaction/commands/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-commands", "description": "Plugin-owned human command registry for DeepSeek Harness UIs", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/interaction/permission-presets/package.json b/packages/interaction/permission-presets/package.json index 3b3160baae..dd328cd3bb 100644 --- a/packages/interaction/permission-presets/package.json +++ b/packages/interaction/permission-presets/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-permission-presets", "description": "User-facing permission presets (ctx.permissionPresets) for the DeepSeek Harness: one product-level Permissions select bundling the sandbox-mode and approval-policy knobs, written through to their own session events", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/interaction/tool-ask-user/package.json b/packages/interaction/tool-ask-user/package.json index af45d56ab1..c18000ae91 100644 --- a/packages/interaction/tool-ask-user/package.json +++ b/packages/interaction/tool-ask-user/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-ask-user", "description": "Model-facing ask_user_question tool over the ctx.userQuestions seam", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/interaction/user-approval/package.json b/packages/interaction/user-approval/package.json index aa1e6a5ee7..ca559c94fa 100644 --- a/packages/interaction/user-approval/package.json +++ b/packages/interaction/user-approval/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-user-approval", "description": "User-approval seam (ctx.approval) for the DeepSeek Harness: one-shot permission decisions dispatched to composed answerers over the approval/request waterfall, fail-closed by default", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/interaction/user-questions/package.json b/packages/interaction/user-questions/package.json index 04b7355dd1..6ce971cd0d 100644 --- a/packages/interaction/user-questions/package.json +++ b/packages/interaction/user-questions/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-user-questions", "description": "Abstract user-questions seam (ctx.userQuestions) for asking the human during agent runs", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/jobs/jobs-local/package.json b/packages/jobs/jobs-local/package.json index 4b1120a92d..6d2fe5c18b 100644 --- a/packages/jobs/jobs-local/package.json +++ b/packages/jobs/jobs-local/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-jobs-local", "description": "Process-local implementation of the DeepSeek Harness background job registry seam", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/jobs/jobs/package.json b/packages/jobs/jobs/package.json index 83235ec22b..89b5116808 100644 --- a/packages/jobs/jobs/package.json +++ b/packages/jobs/jobs/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-jobs", "description": "Background job registry (ctx.jobs) for the DeepSeek Harness — shared ids, owner isolation, polling, cancellation, and completion listeners for long-running tool work", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/jobs/tool-jobs/package.json b/packages/jobs/tool-jobs/package.json index 73ddb5f657..eb68bf5cac 100644 --- a/packages/jobs/tool-jobs/package.json +++ b/packages/jobs/tool-jobs/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-jobs", "description": "Model-facing background job control tools (job_output, job_list, job_kill) over the ctx.jobs registry", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/llm/llm-deepseek/package.json b/packages/llm/llm-deepseek/package.json index 9c86b3c98e..c556cdb298 100644 --- a/packages/llm/llm-deepseek/package.json +++ b/packages/llm/llm-deepseek/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-llm-deepseek", "description": "DeepSeek chat-completions adapter for the DeepSeek Harness LLM seam", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/llm/llm-pi-ai/package.json b/packages/llm/llm-pi-ai/package.json index 5c2845394e..2dedb51af2 100644 --- a/packages/llm/llm-pi-ai/package.json +++ b/packages/llm/llm-pi-ai/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-llm-pi-ai", "description": "pi-ai-backed DeepSeek adapter for the DeepSeek Harness LLM seam (design-verification twin of dsh-llm-deepseek)", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/llm/llm-retry/package.json b/packages/llm/llm-retry/package.json index e6c3013da1..0b1ca065ad 100644 --- a/packages/llm/llm-retry/package.json +++ b/packages/llm/llm-retry/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-llm-retry", "description": "Provider-routed LLM request retry policy for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/llm/llm/package.json b/packages/llm/llm/package.json index c6018de902..c0393011c5 100644 --- a/packages/llm/llm/package.json +++ b/packages/llm/llm/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-llm", "description": "Provider-neutral LLM service interface for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/llm/token-meter/package.json b/packages/llm/token-meter/package.json index efaf61ef86..33aa87f85c 100644 --- a/packages/llm/token-meter/package.json +++ b/packages/llm/token-meter/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-token-meter", "description": "Replay-aware token measurement service (ctx.tokenMeter) for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/lsp/lsp-stdio/package.json b/packages/lsp/lsp-stdio/package.json index 04088296fb..47ef93e772 100644 --- a/packages/lsp/lsp-stdio/package.json +++ b/packages/lsp/lsp-stdio/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-lsp-stdio", "description": "Generic stdio language-server provider for the DeepSeek Harness LSP capability seam (ctx.lsp) — spawns configured servers, translates JSON-RPC, and serves transient-open goToDefinition/findReferences/goToImplementation/hover queries in the host filesystem namespace", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/lsp/lsp/package.json b/packages/lsp/lsp/package.json index 4f16df5a2f..8e7f2173ef 100644 --- a/packages/lsp/lsp/package.json +++ b/packages/lsp/lsp/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-lsp", "description": "Abstract LSP capability seam (ctx.lsp) for the DeepSeek Harness — language-server provider registry keyed by branded id and extension mapping, order-independent per-query selection, normalized definition/references/implementation/hover requests and results, and the LspError taxonomy", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/lsp/tool-lsp/package.json b/packages/lsp/tool-lsp/package.json index bd4bda1388..f30e62d2ae 100644 --- a/packages/lsp/tool-lsp/package.json +++ b/packages/lsp/tool-lsp/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-lsp", "description": "Model-facing lsp tool over the DeepSeek Harness LSP capability seam (ctx.lsp) — one read-only tool with goToDefinition/findReferences/goToImplementation/hover operations, one-based UTF-16 cursor coordinates, bounded location rendering, and hover normalization", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/mcp/mcp-client/package.json b/packages/mcp/mcp-client/package.json index d42b425730..89e77392d0 100644 --- a/packages/mcp/mcp-client/package.json +++ b/packages/mcp/mcp-client/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-mcp-client", "description": "MCP client bridge: connects to MCP servers and registers their tools on ctx.tools", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/plan/plan-mode/package.json b/packages/plan/plan-mode/package.json index d13c7606b1..6fe63abc6c 100644 --- a/packages/plan/plan-mode/package.json +++ b/packages/plan/plan-mode/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-plan-mode", "description": "Logged per-agent plan mode with deployment guidance, a direct slash command, and a user-reviewed exit", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/preset/agent-presets/package.json b/packages/preset/agent-presets/package.json index 241cf74ce7..c7821b7a16 100644 --- a/packages/preset/agent-presets/package.json +++ b/packages/preset/agent-presets/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-agent-presets", "description": "Per-session agent composition from preset cordis.yml files for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/preset/persona/package.json b/packages/preset/persona/package.json index 24fb8660a1..4aeba42c70 100644 --- a/packages/preset/persona/package.json +++ b/packages/preset/persona/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-persona", "description": "Composition-authored deployment persona section for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/runtime-diagnostics/invariants/package.json b/packages/runtime-diagnostics/invariants/package.json index 41d8c631e1..a3d19e49f0 100644 --- a/packages/runtime-diagnostics/invariants/package.json +++ b/packages/runtime-diagnostics/invariants/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-invariants", "description": "Registry service for package-owned DeepSeek Harness runtime invariants", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/sandbox/sandbox-local/package.json b/packages/sandbox/sandbox-local/package.json index dfe13545ad..2c2ca2d3c9 100644 --- a/packages/sandbox/sandbox-local/package.json +++ b/packages/sandbox/sandbox-local/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-sandbox-local", "description": "Local process-sandbox backends for the DeepSeek Harness sandbox seam: bwrap, the npm-distributed landlock-run launcher, macOS Seatbelt, or the Windows ACL restricted-token runner — functionally probed, fail-closed", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/sandbox/sandbox-policy/package.json b/packages/sandbox/sandbox-policy/package.json index 06ea90d1cf..553f607ab7 100644 --- a/packages/sandbox/sandbox-policy/package.json +++ b/packages/sandbox/sandbox-policy/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-sandbox-policy", "description": "Per-call sandbox policy resolver and current model context: deployment fallbacks plus each session's mode and workspace root, shared by every enforcing capability family", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/sandbox/sandbox-windows-acl/package.json b/packages/sandbox/sandbox-windows-acl/package.json index 7faad86ea0..cd977461a0 100644 --- a/packages/sandbox/sandbox-windows-acl/package.json +++ b/packages/sandbox/sandbox-windows-acl/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-sandbox-windows-acl", "description": "Windows ACL write-restriction sandbox backend (restricted-token spawn with capability-SID write allowlist) for the DeepSeek Harness sandbox seam", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/sandbox/sandbox/package.json b/packages/sandbox/sandbox/package.json index 00ebcfd612..3f12853539 100644 --- a/packages/sandbox/sandbox/package.json +++ b/packages/sandbox/sandbox/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-sandbox", "description": "Abstract process-sandbox seam (ctx.sandbox) for the DeepSeek Harness: same-world confinement vocabulary and the SandboxProvider contract", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/schedule/schedule/package.json b/packages/schedule/schedule/package.json index f7e2fd6406..8b70287cc8 100644 --- a/packages/schedule/schedule/package.json +++ b/packages/schedule/schedule/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-schedule", "description": "Agent-scoped durable after, at, and fixed-rate reminders over the session event log", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/sdk/client/package.json b/packages/sdk/client/package.json index 6e8d4d5dd9..7b2e70e143 100644 --- a/packages/sdk/client/package.json +++ b/packages/sdk/client/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-sdk-client", "description": "TypeScript client SDK for driving a DeepSeek Harness runtime subprocess over stdio JSON-RPC: the DeepSeekHarness high-level turns API and the lower-level HarnessClient", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/sdk/protocol/package.json b/packages/sdk/protocol/package.json index 966d35d538..594058d322 100644 --- a/packages/sdk/protocol/package.json +++ b/packages/sdk/protocol/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-sdk-protocol", "description": "Shared wire protocol for the DeepSeek Harness SDK runtime: the newline-delimited JSON-RPC stdio transport and the named request, result, and notification types spoken between the runtime server and SDK clients", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/sdk/server/package.json b/packages/sdk/server/package.json index aad971d714..68011759bc 100644 --- a/packages/sdk/server/package.json +++ b/packages/sdk/server/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-sdk-jsonrpc-server", "description": "Stdio JSON-RPC server plugin for out-of-process DeepSeek Harness SDK clients", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/session-query/session-log-export/package.json b/packages/session-query/session-log-export/package.json index b020ce301b..a1e423409a 100644 --- a/packages/session-query/session-log-export/package.json +++ b/packages/session-query/session-log-export/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-log-export", "description": "Web Session-log export command and shared download dialog", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, "repository": { "type": "git", diff --git a/packages/session-query/session-query-sqlite/package.json b/packages/session-query/session-query-sqlite/package.json index 1644203ecd..9f7abce839 100644 --- a/packages/session-query/session-query-sqlite/package.json +++ b/packages/session-query/session-query-sqlite/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-query-sqlite", "description": "Concrete ctx.sessionQuery backend with SQLite FTS5 search", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/session-query/session-query/package.json b/packages/session-query/session-query/package.json index ce88a9665b..7d7c0ae6c4 100644 --- a/packages/session-query/session-query/package.json +++ b/packages/session-query/session-query/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-query", "description": "Combined session query service contract with concrete reads, traces, and filters", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/session-query/tool-session-query/package.json b/packages/session-query/tool-session-query/package.json index 58bd6ee7ef..f5a29a594f 100644 --- a/packages/session-query/tool-session-query/package.json +++ b/packages/session-query/tool-session-query/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-session-query", "description": "Workspace-authorized model-facing session history search, trace, and event read tools", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-checkpoint-policy/package.json b/packages/session/session-checkpoint-policy/package.json index a2b275ed29..b77ce150d2 100644 --- a/packages/session/session-checkpoint-policy/package.json +++ b/packages/session/session-checkpoint-policy/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-checkpoint-policy", "description": "Semantic session durability checkpoints before model requests and tool side effects", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-persistence-jsonl/package.json b/packages/session/session-persistence-jsonl/package.json index cd48bbae0b..5e4f01ccb8 100644 --- a/packages/session/session-persistence-jsonl/package.json +++ b/packages/session/session-persistence-jsonl/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-persistence-jsonl", "description": "JSONL durable session persistence backend for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-persistence-sqlite/package.json b/packages/session/session-persistence-sqlite/package.json index f824b9b3a8..35fbc2cf58 100644 --- a/packages/session/session-persistence-sqlite/package.json +++ b/packages/session/session-persistence-sqlite/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-persistence-sqlite", "description": "SQLite durable session persistence backend for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-persistence/package.json b/packages/session/session-persistence/package.json index f42b496e6d..bcb10b6d81 100644 --- a/packages/session/session-persistence/package.json +++ b/packages/session/session-persistence/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-persistence", "description": "Abstract durable session persistence seam (ctx.sessionPersistence) for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-projection-cache/package.json b/packages/session/session-projection-cache/package.json index 1697967808..c80be96d6b 100644 --- a/packages/session/session-projection-cache/package.json +++ b/packages/session/session-projection-cache/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-projection-cache", "description": "Persisted projection cache (ctx.sessionProjectionCache): durable per-session projection checkpoints over the domain data form, throttled write-behind, and the cold-read ladder (cache row + persistence tail replay)", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-projection/package.json b/packages/session/session-projection/package.json index cdf61ac3a3..fa2da3c4f0 100644 --- a/packages/session/session-projection/package.json +++ b/packages/session/session-projection/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-projection", "description": "Session-projection seam: the merge-extensible projection type table, the provider contract, and the ctx.sessionProjections registry serving whole current values of log-derived per-session state", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-stats/package.json b/packages/session/session-stats/package.json index c7006a5061..fcb1e8de18 100644 --- a/packages/session/session-stats/package.json +++ b/packages/session/session-stats/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-stats", "description": "Whole-log conversation counts and wall times projection (sessionStats) for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-telemetry-otel/package.json b/packages/session/session-telemetry-otel/package.json index 37b5893cce..3bd006cb01 100644 --- a/packages/session/session-telemetry-otel/package.json +++ b/packages/session/session-telemetry-otel/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-telemetry-otel", "description": "OpenTelemetry backend for the DeepSeek Harness telemetry seam: hands captured session records to the OTel JS SDK's log pipeline", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-telemetry/package.json b/packages/session/session-telemetry/package.json index 132545f502..2d9f660292 100644 --- a/packages/session/session-telemetry/package.json +++ b/packages/session/session-telemetry/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-telemetry", "description": "SessionTelemetryBackend seam for the DeepSeek Harness: session-event capture, projection, redaction, and handoff to a reporting backend", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-title-all-prompts-llm/package.json b/packages/session/session-title-all-prompts-llm/package.json index c165327beb..1329571c6e 100644 --- a/packages/session/session-title-all-prompts-llm/package.json +++ b/packages/session/session-title-all-prompts-llm/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-title-all-prompts-llm", "description": "All-user-messages LLM provider plugin for DeepSeek Harness session titles", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-title-first-prompt-llm/package.json b/packages/session/session-title-first-prompt-llm/package.json index 0e53d07e7f..1df72b6ab3 100644 --- a/packages/session/session-title-first-prompt-llm/package.json +++ b/packages/session/session-title-first-prompt-llm/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-title-first-prompt-llm", "description": "First-message LLM provider plugin for DeepSeek Harness session titles", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-title-llm/package.json b/packages/session/session-title-llm/package.json index 10d63c1d89..9077b14215 100644 --- a/packages/session/session-title-llm/package.json +++ b/packages/session/session-title-llm/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-title-llm", "description": "Shared LLM generation policy for DeepSeek Harness session-title providers", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-title/package.json b/packages/session/session-title/package.json index 8a014863fe..d1df0c207d 100644 --- a/packages/session/session-title/package.json +++ b/packages/session/session-title/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-title", "description": "Log-backed session title service and provider registry for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/settings/settings-file/package.json b/packages/settings/settings-file/package.json index 0cdbdbef35..bcf1024c5b 100644 --- a/packages/settings/settings-file/package.json +++ b/packages/settings/settings-file/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-settings-file", "description": "File-backed settings provider (settings.yaml) for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/settings/settings/package.json b/packages/settings/settings/package.json index 4208b479d4..962ae5fb37 100644 --- a/packages/settings/settings/package.json +++ b/packages/settings/settings/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-settings", "description": "Abstract user-settings seam (ctx.settings) for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/shell/bash-local/package.json b/packages/shell/bash-local/package.json index db1c919311..7121c45e03 100644 --- a/packages/shell/bash-local/package.json +++ b/packages/shell/bash-local/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-bash-local", "description": "Local-subprocess implementation of the DeepSeek Harness bash executor seam", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/shell/bash-sandbox/package.json b/packages/shell/bash-sandbox/package.json index bb68dc855b..ea352a7a52 100644 --- a/packages/shell/bash-sandbox/package.json +++ b/packages/shell/bash-sandbox/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-bash-sandbox", "description": "Sandbox-consuming implementation of the DeepSeek Harness bash executor seam (confines every command via ctx.sandbox, reports denial/enforcement result facts)", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/shell/pwsh-local/package.json b/packages/shell/pwsh-local/package.json index f6882f5c3e..e3962071e7 100644 --- a/packages/shell/pwsh-local/package.json +++ b/packages/shell/pwsh-local/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-pwsh-local", "description": "Local PowerShell implementation of the DeepSeek Harness bash executor seam", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/shell/pwsh-sandbox/package.json b/packages/shell/pwsh-sandbox/package.json index 74f1c5b3c1..7bf8a0b6d3 100644 --- a/packages/shell/pwsh-sandbox/package.json +++ b/packages/shell/pwsh-sandbox/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-pwsh-sandbox", "description": "Sandbox-consuming implementation of the DeepSeek Harness PowerShell executor seam (confines every command via ctx.sandbox, reports denial/enforcement result facts)", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/shell/shell-env/package.json b/packages/shell/shell-env/package.json index f5ef9d869a..a8f7c3e6a2 100644 --- a/packages/shell/shell-env/package.json +++ b/packages/shell/shell-env/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-shell-env", "description": "Tool-independent managed DSH_* shell environment registry", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/shell/shell/package.json b/packages/shell/shell/package.json index ab8a31dd7d..590acc3cf8 100644 --- a/packages/shell/shell/package.json +++ b/packages/shell/shell/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-shell", "description": "Abstract bash executor seam (ctx.shell) for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/shell/tool-bash-persistent/package.json b/packages/shell/tool-bash-persistent/package.json index 14648a2231..a075fd28e7 100644 --- a/packages/shell/tool-bash-persistent/package.json +++ b/packages/shell/tool-bash-persistent/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-bash-persistent", "description": "Model-facing owner-scoped persistent Bash tool backed by the Harness PTY service", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/shell/tool-bash/package.json b/packages/shell/tool-bash/package.json index e762320465..1ca91a61c4 100644 --- a/packages/shell/tool-bash/package.json +++ b/packages/shell/tool-bash/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-bash", "description": "Model-facing bash tool with optional generic background-job and sandbox-escalation support", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/shell/tool-pwsh/package.json b/packages/shell/tool-pwsh/package.json index 195940e82b..2ea1df9724 100644 --- a/packages/shell/tool-pwsh/package.json +++ b/packages/shell/tool-pwsh/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-pwsh", "description": "Model-facing pwsh tool over the bash executor seam", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/skill/skill-badge/package.json b/packages/skill/skill-badge/package.json index d012804e96..0336e7c6d1 100644 --- a/packages/skill/skill-badge/package.json +++ b/packages/skill/skill-badge/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-skill-badge", "description": "Bundled dsh badge skill provider for DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/skill/skill-filesystem/package.json b/packages/skill/skill-filesystem/package.json index 954a843c2b..67b558e868 100644 --- a/packages/skill/skill-filesystem/package.json +++ b/packages/skill/skill-filesystem/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-skill-filesystem", "description": "Local filesystem skill provider for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/skill/skill/package.json b/packages/skill/skill/package.json index 4688a93064..ef1e78ae76 100644 --- a/packages/skill/skill/package.json +++ b/packages/skill/skill/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-skill", "description": "Agent skill provider registry for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/skill/tool-skill/package.json b/packages/skill/tool-skill/package.json index 19b10f8bb6..5073ee38b5 100644 --- a/packages/skill/tool-skill/package.json +++ b/packages/skill/tool-skill/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-skill", "description": "Model-facing skill loading tool for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/spill/spill-local/package.json b/packages/spill/spill-local/package.json index 07c2134591..ac140d4a49 100644 --- a/packages/spill/spill-local/package.json +++ b/packages/spill/spill-local/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-spill-local", "description": "Local-filesystem implementation of the DeepSeek Harness spill storage seam (private session-scoped files)", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/spill/spill-policy/package.json b/packages/spill/spill-policy/package.json index f74a5c4135..c6cc6592f9 100644 --- a/packages/spill/spill-policy/package.json +++ b/packages/spill/spill-policy/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-spill-policy", "description": "Tool-result spill policy for the DeepSeek Harness — replaces oversized plain-text tool results with a retained preview plus a spill-file path (no service API)", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/spill/spill/package.json b/packages/spill/spill/package.json index 3d0f444b1d..dd3ec4f108 100644 --- a/packages/spill/spill/package.json +++ b/packages/spill/spill/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-spill", "description": "Abstract spill storage seam (ctx.spillStore) for the DeepSeek Harness — save oversized tool text and return a retrieval locator", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/storage/storage-domain/package.json b/packages/storage/storage-domain/package.json index aa8983a712..c2cdb316f7 100644 --- a/packages/storage/storage-domain/package.json +++ b/packages/storage/storage-domain/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-storage-domain", "description": "Domain data form (ctx.storage.domain): schema-validated, event-emitting KV domains over storage backends for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/storage/storage-json/package.json b/packages/storage/storage-json/package.json index 5c04e79096..9f4e25061e 100644 --- a/packages/storage/storage-json/package.json +++ b/packages/storage/storage-json/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-storage-json", "description": "JSON file KV storage backend for the DeepSeek Harness storage hub", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/storage/storage-sqlite/package.json b/packages/storage/storage-sqlite/package.json index 88d5958419..860a4f0b43 100644 --- a/packages/storage/storage-sqlite/package.json +++ b/packages/storage/storage-sqlite/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-storage-sqlite", "description": "SQLite storage backend (kv facet) for the DeepSeek Harness storage hub", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/storage/storage/package.json b/packages/storage/storage/package.json index f4f39039b0..0daa5ae28f 100644 --- a/packages/storage/storage/package.json +++ b/packages/storage/storage/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-storage", "description": "Storage hub (ctx.storage): named backend registry plus mounted data-form facilities for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/subagent-acp/package.json b/packages/subagent/subagent-acp/package.json index 72f725f040..32a8f97876 100644 --- a/packages/subagent/subagent-acp/package.json +++ b/packages/subagent/subagent-acp/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subagent-acp", "description": "Out-of-process ACP subagent backend: drives a child agent in a spawned subprocess over the Agent Client Protocol", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/subagent-claude-code/package.json b/packages/subagent/subagent-claude-code/package.json index ec5da9e8ac..1fdf54c912 100644 --- a/packages/subagent/subagent-claude-code/package.json +++ b/packages/subagent/subagent-claude-code/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subagent-claude-code", "description": "One-shot Claude Code subagent provider over the official Agent SDK", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/subagent-codex/package.json b/packages/subagent/subagent-codex/package.json index 269bf2e996..0ae0955426 100644 --- a/packages/subagent/subagent-codex/package.json +++ b/packages/subagent/subagent-codex/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subagent-codex", "description": "One-shot Codex subagent provider over the official app-server protocol", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/subagent-dsh-sdk/package.json b/packages/subagent/subagent-dsh-sdk/package.json index f7eac52a8e..56295ca0b9 100644 --- a/packages/subagent/subagent-dsh-sdk/package.json +++ b/packages/subagent/subagent-dsh-sdk/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subagent-dsh-sdk", "description": "Out-of-process SDK subagent backend: drives a child DeepSeek Harness runtime subprocess over stdio JSON-RPC through the TypeScript SDK client", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/subagent-fork-in-process/package.json b/packages/subagent/subagent-fork-in-process/package.json index 5ccbe0e465..874213bd51 100644 --- a/packages/subagent/subagent-fork-in-process/package.json +++ b/packages/subagent/subagent-fork-in-process/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subagent-fork-in-process", "description": "In-process fork subagent backend: runs a child agent seeded with a prefix of the parent's log", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/subagent-in-process-driver/package.json b/packages/subagent/subagent-in-process-driver/package.json index f3398a76e7..d214362cfd 100644 --- a/packages/subagent/subagent-in-process-driver/package.json +++ b/packages/subagent/subagent-in-process-driver/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subagent-in-process-driver", "description": "Shared in-process subagent run driver: drives a child agent on ctx.agents (used by the spawn and fork backends)", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/subagent-spawn-in-process/package.json b/packages/subagent/subagent-spawn-in-process/package.json index 8c2c71c9c9..e6a778082c 100644 --- a/packages/subagent/subagent-spawn-in-process/package.json +++ b/packages/subagent/subagent-spawn-in-process/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subagent-spawn-in-process", "description": "In-process spawn subagent backend: runs a fresh child agent on ctx.agents", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/subagent/package.json b/packages/subagent/subagent/package.json index 87ec069782..3fe78a62c8 100644 --- a/packages/subagent/subagent/package.json +++ b/packages/subagent/subagent/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subagent", "description": "Abstract subagent seam (ctx.subagents): named-provider registry for delegating to child agents", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/tool-subagent-control/package.json b/packages/subagent/tool-subagent-control/package.json index 6be2ae1d26..59fb7785b9 100644 --- a/packages/subagent/tool-subagent-control/package.json +++ b/packages/subagent/tool-subagent-control/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-subagent-control", "description": "Globally named send_message, interrupt_agent, and list_agents tools over ctx.subagents continuations", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/tool-subagent-report/package.json b/packages/subagent/tool-subagent-report/package.json index b3c8083f8c..f748d63426 100644 --- a/packages/subagent/tool-subagent-report/package.json +++ b/packages/subagent/tool-subagent-report/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-subagent-report", "description": "Child-scoped report tool over ctx.subagents continuations", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/tool-subagent/package.json b/packages/subagent/tool-subagent/package.json index b1a73d0e8c..b02716a10a 100644 --- a/packages/subagent/tool-subagent/package.json +++ b/packages/subagent/tool-subagent/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-subagent", "description": "Model-facing subagent delegation tool over the ctx.subagents seam", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/subprocess/subprocess-local/package.json b/packages/subprocess/subprocess-local/package.json index 7581f54183..ee033c48d2 100644 --- a/packages/subprocess/subprocess-local/package.json +++ b/packages/subprocess/subprocess-local/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subprocess-local", "description": "Local-subprocess implementation of the DeepSeek Harness subprocess seam", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/subprocess/subprocess/package.json b/packages/subprocess/subprocess/package.json index 5d2d4fa09d..43ecf68ba4 100644 --- a/packages/subprocess/subprocess/package.json +++ b/packages/subprocess/subprocess/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subprocess", "description": "Subprocess seam (ctx.subprocess) for the DeepSeek Harness — managed process groups, bounded spill-backed output, and escalated kills behind one abstract service", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/terminal/terminal-bash/package.json b/packages/terminal/terminal-bash/package.json index cad0c60fba..654063d0cd 100644 --- a/packages/terminal/terminal-bash/package.json +++ b/packages/terminal/terminal-bash/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-terminal-bash", "description": "Persistent shell PTY backend over the DeepSeek Harness subprocess terminal primitive", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/terminal/terminal/package.json b/packages/terminal/terminal/package.json index f0dc5e84c7..ea902d6cda 100644 --- a/packages/terminal/terminal/package.json +++ b/packages/terminal/terminal/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-terminal", "description": "Persistent PTY session seam for the DeepSeek Harness — owner-scoped ids, backend registry, interactive sends, reads, signals, and awaited cleanup", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/terminal/tool-terminal/package.json b/packages/terminal/tool-terminal/package.json index 6eebf5d33e..ea98adead2 100644 --- a/packages/terminal/tool-terminal/package.json +++ b/packages/terminal/tool-terminal/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-terminal", "description": "Six model-facing persistent PTY tools with owner isolation and generic background-job integration", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/test-support/acp-snapshot/package.json b/packages/test-support/acp-snapshot/package.json index a0a3697896..8f8659c9ce 100644 --- a/packages/test-support/acp-snapshot/package.json +++ b/packages/test-support/acp-snapshot/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-acp-snapshot", "description": "ACP test kit: shared subprocess launcher, snapshot scenario harness, expected-output normalizers, and suite factory", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/test-support/agent-loop-testkit/package.json b/packages/test-support/agent-loop-testkit/package.json index 4e0bb8aa9c..03c08b9e8e 100644 --- a/packages/test-support/agent-loop-testkit/package.json +++ b/packages/test-support/agent-loop-testkit/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-agent-loop-testkit", "description": "Shared prerequisite mounting for tests that exercise the concrete agent loop", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/test-support/client-runtime/package.json b/packages/test-support/client-runtime/package.json index 9a6fb3a7a0..6146e1e3f9 100644 --- a/packages/test-support/client-runtime/package.json +++ b/packages/test-support/client-runtime/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-test-runtime", "description": "jsdom slot test runtime: real Cordis Context + SlotRegistry + web-react renderer with test-owned session/workspace doubles for feature specs", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/test-support/llm-mock-server/package.json b/packages/test-support/llm-mock-server/package.json index 2555c27275..a03ea4ea15 100644 --- a/packages/test-support/llm-mock-server/package.json +++ b/packages/test-support/llm-mock-server/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-llm-mock-server", "description": "Scriptable OpenAI-compatible HTTP/SSE fault server for LLM recovery tests", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/test-support/llm-replay/package.json b/packages/test-support/llm-replay/package.json index 3d5d70010b..1015d1fe08 100644 --- a/packages/test-support/llm-replay/package.json +++ b/packages/test-support/llm-replay/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-llm-replay", "description": "Replay LLM plugin: short-circuits llm/stream with model chunks reconstructed from a recorded session JSONL (keyless snapshot tests)", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/test-support/loader-smoke/package.json b/packages/test-support/loader-smoke/package.json index 20e6c1a6d8..decd480ea5 100644 --- a/packages/test-support/loader-smoke/package.json +++ b/packages/test-support/loader-smoke/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-loader-smoke", "description": "Shared subprocess and direct-agent harness for keyless real-Loader example smoke tests", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/todo/tool-todo/package.json b/packages/todo/tool-todo/package.json index c14ac4358b..bee55f9118 100644 --- a/packages/todo/tool-todo/package.json +++ b/packages/todo/tool-todo/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-todo", "description": "Model-facing todo_write tool over the DeepSeek Harness event-sourced session log", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/typert/generator/package.json b/packages/typert/generator/package.json index 39136c2877..08b2327841 100644 --- a/packages/typert/generator/package.json +++ b/packages/typert/generator/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-typert-generator", "description": "TypeScript project analyzer and model-driven Typert artifact generator", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/typert/loader/package.json b/packages/typert/loader/package.json index 20a7172175..80fd93ae1d 100644 --- a/packages/typert/loader/package.json +++ b/packages/typert/loader/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-typert-loader", "description": "Loader integration for generated Typert package contributions", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/typert/protocol/package.json b/packages/typert/protocol/package.json index 7b5c6b4d91..485cf849fb 100644 --- a/packages/typert/protocol/package.json +++ b/packages/typert/protocol/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-typert-protocol", "description": "Compiler-independent Remote metadata and Typert provider protocols", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/typert/registry/package.json b/packages/typert/registry/package.json index 7c34532970..5eeb04da93 100644 --- a/packages/typert/registry/package.json +++ b/packages/typert/registry/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-typert-registry", "description": "Runtime registry for generated package reflection and Zod schemas", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/util/atomic-write/package.json b/packages/util/atomic-write/package.json index 964fcba265..f8926bc7a4 100644 --- a/packages/util/atomic-write/package.json +++ b/packages/util/atomic-write/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-atomic-write", "description": "Zero-dependency atomic file replacement: exclusive-create random-suffix temp + rename carrying the caller-stated permissions (writeFileAtomic)", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/util/brand/package.json b/packages/util/brand/package.json index 63a9bd0ac8..f990faa87f 100644 --- a/packages/util/brand/package.json +++ b/packages/util/brand/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-brand", "description": "Type-only Branded nominal-typing primitive for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/util/home-paths/package.json b/packages/util/home-paths/package.json index 3bd0db8091..bb62be9920 100644 --- a/packages/util/home-paths/package.json +++ b/packages/util/home-paths/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-home-paths", "description": "Shared filesystem path helpers for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/util/launch-environment/package.json b/packages/util/launch-environment/package.json index eeea9a70ee..1a5bf4b8a9 100644 --- a/packages/util/launch-environment/package.json +++ b/packages/util/launch-environment/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-launch-environment", "description": "Immutable DeepSeek Harness launch environment that records which layer supplied each value", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/util/native-command/package.json b/packages/util/native-command/package.json index 36547ffee9..7412df7965 100644 --- a/packages/util/native-command/package.json +++ b/packages/util/native-command/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-native-command", "description": "Zero-dependency no-shell execFile runner for host-native OS integrations: utf8 stdio capture, abort propagation, Windows hide", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/util/output-retention/package.json b/packages/util/output-retention/package.json index cdd47c905c..849c5a9d15 100644 --- a/packages/util/output-retention/package.json +++ b/packages/util/output-retention/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-output-retention", "description": "Zero-dependency bounded-retention primitive: ItemRetainer/TextRetainer + neutral notice helpers (what did we keep, what did we omit)", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/util/timeout/package.json b/packages/util/timeout/package.json index cbe16cfcaf..cffe8854e7 100644 --- a/packages/util/timeout/package.json +++ b/packages/util/timeout/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-timeout", "description": "Zero-dependency timeout/deadline primitive: clampTimeout, deadline, timeoutOf, TimeoutReason (timing + classification only, no termination)", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/web/tool-web/package.json b/packages/web/tool-web/package.json index ecc7717b2b..584e04e5b4 100644 --- a/packages/web/tool-web/package.json +++ b/packages/web/tool-web/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-web", "description": "Model-facing web tools (web_search, web_fetch) over the DeepSeek Harness web capability seam (ctx.web)", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/web/web-fetch-http/package.json b/packages/web/web-fetch-http/package.json index 0089033964..1187a55be6 100644 --- a/packages/web/web-fetch-http/package.json +++ b/packages/web/web-fetch-http/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-web-fetch-http", "description": "Anonymous public HTTP(S) fetch provider for the DeepSeek Harness web capability seam (ctx.web)", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/web/web-search-deepseek/package.json b/packages/web/web-search-deepseek/package.json index 55bd7ecdf2..ccbe17a2cf 100644 --- a/packages/web/web-search-deepseek/package.json +++ b/packages/web/web-search-deepseek/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-web-search-deepseek", "description": "DeepSeek-backed search provider (native web_search via the Anthropic-compatible API) for the DeepSeek Harness web capability seam (ctx.web)", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/web/web-search-exa/package.json b/packages/web/web-search-exa/package.json index ae0aa563cf..246b7af9ba 100644 --- a/packages/web/web-search-exa/package.json +++ b/packages/web/web-search-exa/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-web-search-exa", "description": "Exa-backed search provider for the DeepSeek Harness web capability seam (ctx.web)", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/web/web-search-perplexity/package.json b/packages/web/web-search-perplexity/package.json index 7f4aa73079..3904b3bc1f 100644 --- a/packages/web/web-search-perplexity/package.json +++ b/packages/web/web-search-perplexity/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-web-search-perplexity", "description": "Perplexity-backed search provider for the DeepSeek Harness web capability seam (ctx.web)", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/web/web/package.json b/packages/web/web/package.json index 16db0b092c..8ef9244233 100644 --- a/packages/web/web/package.json +++ b/packages/web/web/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-web", "description": "Abstract web access capability seam (ctx.web) for the DeepSeek Harness — search/fetch provider registry, registration-order-independent selection, request/result vocabulary, and the WebError taxonomy", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/workflow/tool-ralph/package.json b/packages/workflow/tool-ralph/package.json index ca7b5f4889..b9d88e49dd 100644 --- a/packages/workflow/tool-ralph/package.json +++ b/packages/workflow/tool-ralph/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-ralph", "description": "Model-facing fresh-agent Ralph loop over the workflow and subagent seams", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/workflow/tool-workflow/package.json b/packages/workflow/tool-workflow/package.json index 6abde88c22..929e8cfc99 100644 --- a/packages/workflow/tool-workflow/package.json +++ b/packages/workflow/tool-workflow/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-workflow", "description": "Model-facing workflow tool: run a JavaScript orchestration script over ctx.workflowEngine", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/workflow/workflow-worker-thread/package.json b/packages/workflow/workflow-worker-thread/package.json index 4f32c42493..c853979b4d 100644 --- a/packages/workflow/workflow-worker-thread/package.json +++ b/packages/workflow/workflow-worker-thread/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-workflow-worker-thread", "description": "worker-thread workflow engine: executes model-written orchestration scripts off the host event loop, bridging agent() calls back to ctx.subagents", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/workflow/workflow/package.json b/packages/workflow/workflow/package.json index 1b689da55a..09e03fa472 100644 --- a/packages/workflow/workflow/package.json +++ b/packages/workflow/workflow/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-workflow", "description": "Workflow capability seam: ctx.workflowEngine service, run vocabulary, and workflow/* events", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, diff --git a/packages/workspace/workspace/package.json b/packages/workspace/workspace/package.json index abcd7bc903..b16e7ec327 100644 --- a/packages/workspace/workspace/package.json +++ b/packages/workspace/workspace/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-workspace", "description": "Workspace entity registry (ctx.workspaceRegistry): durable workspace records with validated session attachment over the domain data form for the DeepSeek Harness", - "version": "0.0.1-rc.5", + "version": "0.1.0-rc.1", "publishConfig": { "access": "restricted" }, From 9afdf79782328334f560be646eddd39378dc7f03 Mon Sep 17 00:00:00 2001 From: j-xiang Date: Thu, 13 Aug 2026 16:23:03 +0800 Subject: [PATCH 09/22] docs(i18n): resolve remaining README review --- README.i18n.yaml | 2 +- packages/README.i18n.yaml | 2 +- packages/README.zh.md | 4 ++-- packages/core/agent-loop/README.i18n.yaml | 2 +- packages/core/agent-loop/README.zh.md | 6 +++--- packages/core/system-prompt/README.i18n.yaml | 2 +- packages/core/system-prompt/README.zh.md | 8 ++++---- packages/llm/llm/README.i18n.yaml | 2 +- packages/llm/llm/README.zh.md | 14 +++++++------- packages/subagent/subagent/README.i18n.yaml | 2 +- packages/subagent/subagent/README.zh.md | 8 ++++---- 11 files changed, 26 insertions(+), 26 deletions(-) diff --git a/README.i18n.yaml b/README.i18n.yaml index 727a781767..cb21ac2fa9 100644 --- a/README.i18n.yaml +++ b/README.i18n.yaml @@ -3,4 +3,4 @@ # after editing either side, bring the other along and re-record with: # pnpm run verify-translation-pairing --write README.md README.md: 098b514f8311de092bab18bdd560722b1e485913 -README.zh.md: f9dacc4e3cce1c83bfa65df9fbc8d6410a37fcc0 +README.zh.md: 639d519b6202ffe740d46e462feec2657d7e13ad diff --git a/packages/README.i18n.yaml b/packages/README.i18n.yaml index e9fed2a793..cdc5428234 100644 --- a/packages/README.i18n.yaml +++ b/packages/README.i18n.yaml @@ -3,4 +3,4 @@ # after editing either side, bring the other along and re-record with: # pnpm run verify-translation-pairing --write packages/README.md README.md: 7904ec1fea8dbab361fcd90b2b32f1c743ce5537 -README.zh.md: 2d6b1de9f1f957ebeefeae297860408a4c3cd498 +README.zh.md: c39b65dad7e9c277779a85d7327982597628e007 diff --git a/packages/README.zh.md b/packages/README.zh.md index 2d6b1de9f1..c39b65dad7 100644 --- a/packages/README.zh.md +++ b/packages/README.zh.md @@ -14,7 +14,7 @@ npm scope 为 `@deepseek-ai/dsh-*`;Cordis `Service` 子类和函数插件通 | [`api/`](api/README.md) | Remote BFF 装配与 Typert RPC 网关 | 产品:稳定 API | | [`typert/`](typert/README.md) | 类型图生成、产物加载与运行时注册表 | 产品:稳定 API | | [`goal/`](goal/README.md) | 同会话 goal 的持久化与生命周期 | 产品:稳定 API | -| [`schedule/`](schedule/README.md) | 仅限会话内的定时 follow-up | 产品:稳定 API | +| [`schedule/`](schedule/README.md) | 仅限会话内的定时后续操作 | 产品:稳定 API | | [`feedback/`](feedback/README.md) | 人类反馈 | 产品:稳定 API | | [`identity/`](identity/README.md) | 共享匿名身份 | 产品:稳定 API | | [`llm/`](llm/README.md) | LLM(大语言模型)能力系列:抽象服务 + 提供方适配器 | 产品:稳定 API | @@ -41,7 +41,7 @@ npm scope 为 `@deepseek-ai/dsh-*`;Cordis `Service` 子类和函数插件通 | [`guard/`](guard/README.md) | 循环卫生守卫:建议性重复调用提醒 + `tools/execute` 截止时间强制执行器 | 产品:稳定 API | | [`bundle/`](bundle/README.md) | 可安装的 `dsh --profile` 补丁层 | 产品:稳定 API | | [`extensions/`](extensions/README.md) | agent 运行时自修改:实时插件/服务检查和模型所写插件挂载/卸载([设计](../.agents/notes/implemented/feature/2026-07-08-self-referential-cordis-toolset.md)) | 产品:稳定 API | -| [`hooks/`](hooks/README.md) | 钩子桥接 + 共享的 Claude Code/Codex wire protocol 库 | 产品:稳定 API | +| [`hooks/`](hooks/README.md) | 钩子桥接 + 共享的 Claude Code/Codex 线协议库 | 产品:稳定 API | | [`session/`](session/README.md) | 持久会话数据平面:持久化 seam + JSONL/SQLite 后端、投影 seam、基于日志的标题、会话上报 | 产品:稳定 API | | [`session-query/`](session-query/README.md) | 会话检索系列:逻辑语料库、有界读取、血缘、事件关系、语义过滤和 SQLite 全文搜索 | 产品:稳定 API | | [`settings/`](settings/README.md) | 用户设置 seam + 基于文件的提供方 | 产品:稳定 API | diff --git a/packages/core/agent-loop/README.i18n.yaml b/packages/core/agent-loop/README.i18n.yaml index 4d7aa55bd0..3778277a88 100644 --- a/packages/core/agent-loop/README.i18n.yaml +++ b/packages/core/agent-loop/README.i18n.yaml @@ -3,4 +3,4 @@ # after editing either side, bring the other along and re-record with: # pnpm run verify-translation-pairing --write packages/core/agent-loop/README.md README.md: 683799d1840c857981d4ff30dd3e8e078be03098 -README.zh.md: 8ccc4a0b0d55c1660ee63405abc423d0ee2a8557 +README.zh.md: 8009f72a387f5c65ed258eed9ca6d1f14835c41f diff --git a/packages/core/agent-loop/README.zh.md b/packages/core/agent-loop/README.zh.md index 8ccc4a0b0d..8009f72a38 100644 --- a/packages/core/agent-loop/README.zh.md +++ b/packages/core/agent-loop/README.zh.md @@ -67,7 +67,7 @@ interface Config { 在 `agent/request` 返回提供方/模型调用配置后,循环会调用 `ctx.llm.prepareCall()`,在活跃轮次信号的控制下校验由适配器负责的字段,并填入配置的推理(reasoning)强度和输出 token 默认值。准备完成的调用会在这次异步解析、`request/header` 日志记录和最终分派期间保留同一项确切的适配器注册,因此 HMR(热模块替换)不会把某个适配器的能力解析结果与另一适配器的请求混用。请求 header 会记录生效配置以及哪些字段来自适配器。下一次 waterfall(瀑布式事件)前,循环会从提议中移除这些带标记字段,使当前精确路由重新填入自身默认值;未带标记的显式设置会跨步骤和路由变化保留。没有已注册适配器的路由会保留原定配置,使 `llm/stream` 监听器可以接管并短路该请求;最终分派仍会以 `NO_ADAPTER` 拒绝未得到处理的路由。新循环实例在恢复时会遵循同一套适配器默认值标记规则。 -插件失败会结束当前轮次,而不是结束循环。最终适配器选择、分发与迭代失败会以终止错误或中止结束的形式由 `ctx.llm` 传来,并进入 `agent/request-error`;middleware、结果处理、工具及其他扩展失败仍会抛出并直接关闭轮次。恢复逻辑会接收请求坐标、不可变的提供方事实、准备完成的适配器注册所捕获的不可变重试策略以及轮次信号;middleware 接管未准备路由时,该策略缺失。处理失败的监听器返回 `{ kind: 'retry' }`;未被处理的失败是终态。AgentLoop 为当前准入操作或轮次管理一个取消信号。有效的 `cancel(cause)` 在未设置 `keepInbox` 时清除待处理工作,并以协作方式中止该信号;空闲取消是空操作。abort 触发后、活动收敛到空闲前到达的唤醒输入会被锁存(`wakeRequested`),并在 driver 自身的收敛边界重放,无需再发一条唤醒 send 即可执行;`disposed` 取消从不锁存,而 agent 已处于空闲时发送的唤醒总是打开自己的 turn 边界(即使消息已被清除,状态也会显示瞬态 `idle → running → idle` 对)。持久 `turn/end` 为 `user` 和 `parent` 记录 `aborted`,dispose 则记录 `disposed`;未分发的模型工具调用会收到合成的 `tool/call` 与 `ABORTED_BEFORE_DISPATCH` 结果对。取消原因只影响报告方式,不影响如何处理在取消后完成终结的结果上下文。dispose 会等待忽略信号的工作完成,然后才从注册表移除。[显式取消决策](../../../.agents/notes/implemented/architecture/2026-07-16-explicit-turn-cancellation.md)与[取消收敛窗口唤醒锁存](../../../.agents/notes/implemented/bug-fix/2026-08-07-cancel-convergence-wake-latch.md)规定生命周期与竞态约定。 +插件失败会结束当前轮次,而不是结束循环。最终适配器选择、分发与迭代失败会以终止错误或中止结束的形式由 `ctx.llm` 传来,并进入 `agent/request-error`;middleware、结果处理、工具及其他扩展失败仍会抛出并直接关闭轮次。恢复逻辑会接收请求坐标、不可变的提供方事实、准备完成的适配器注册所捕获的不可变重试策略以及轮次信号;middleware 接管未准备路由时,该策略缺失。处理失败的监听器返回 `{ kind: 'retry' }`;未被处理的失败是终态。AgentLoop 为当前准入操作或轮次拥有一个取消信号。有效的 `cancel(cause)` 在未设置 `keepInbox` 时清除待处理工作,并以协作方式中止该信号;空闲取消是空操作。abort 触发后、活动收敛到空闲前到达的唤醒输入会被锁存(`wakeRequested`),并在 driver 自身的收敛边界重放,无需再发一条唤醒 send 即可执行;`disposed` 取消从不锁存,而 agent 已处于空闲时发送的唤醒总是打开自己的 turn 边界(即使消息已被清除,状态也会显示瞬态 `idle → running → idle` 对)。持久 `turn/end` 为 `user` 和 `parent` 记录 `aborted`,dispose 则记录 `disposed`;未分发的模型工具调用会收到合成的 `tool/call` 与 `ABORTED_BEFORE_DISPATCH` 结果对。取消原因只影响报告方式,不影响如何处理在取消后完成终结的结果上下文。dispose 会等待忽略信号的工作完成,然后才从注册表移除。[显式取消决策](../../../.agents/notes/implemented/architecture/2026-07-16-explicit-turn-cancellation.md)与[取消收敛窗口唤醒锁存](../../../.agents/notes/implemented/bug-fix/2026-08-07-cancel-convergence-wake-latch.md)规定生命周期与竞态约定。 在步骤内,独占调用形成屏障;并行安全调用使用有界滚动池,并在启动前重新分类。只有分发和调用主体的执行会发生重叠。策略、持久结果和结果上下文仍保持模型顺序。中止会阻止启动新的调用,等待已启动调用的结果处理完毕,并保留其完成终结后的结果上下文,不区分取消原因。内部调度器故障会停止新的分发,等待已启动的分发,然后在不虚构工具结果的情况下到达轮次错误边界。 @@ -78,8 +78,8 @@ interface Config { - 压缩(compaction):在 `agent/pre-step` 上观测压力;在 `agent/request-error` 上进行规范的溢出修复 - 模型请求恢复:`dsh-llm-retry` 在 `agent/request-error` 上记录并等待针对确切提供方配置的 normal 或无界退避,发出不进入表层的 `llm/retry` 状态,然后返回重试动作 - 沙箱、权限、计划模式:使用 `tools/pre-execute` 提供可扩展的拒绝/询问,使用 `tools.guard()` 提供单调拥有方策略,使用 `tools/post-execute` 处理结果决定,并使用 `tools/result` 进行最终观测 -- subagent:在循环外部实现为 `ctx.subagents` 提供方;进程内提供方使用 `ctx.agents.create()` 创建 agent,并通过其持有的 `AgentHandle` 执行 teardown,而通用的 [`ctx.jobs`](../../jobs/jobs/) 与 [`dsh-tool-subagent`](../../subagent/tool-subagent/) 负责后台收集。 -- 持久化:`session/event` 发生后立即安排 write-behind;`session/flush` 是显式观测屏障 +- subagent:在循环外部实现为 `ctx.subagents` 提供方;进程内提供方使用 `ctx.agents.create()` 创建 agent,并通过其拥有的 `AgentHandle` 执行 teardown,而通用的 [`ctx.jobs`](../../jobs/jobs/) 与 [`dsh-tool-subagent`](../../subagent/tool-subagent/) 负责后台收集。 +- 持久化:`session/event` 发生后立即安排延后写入;`session/flush` 是显式观测屏障 - UI:`session/event`(assistant token 流、边界、工具活动)+ `agent/*` 控制事件(`agent/status`、`agent/created`/`agent/disposed`) ## 模型体验 diff --git a/packages/core/system-prompt/README.i18n.yaml b/packages/core/system-prompt/README.i18n.yaml index 5e5a3f6bea..28bc2cf1ab 100644 --- a/packages/core/system-prompt/README.i18n.yaml +++ b/packages/core/system-prompt/README.i18n.yaml @@ -3,4 +3,4 @@ # after editing either side, bring the other along and re-record with: # pnpm run verify-translation-pairing --write packages/core/system-prompt/README.md README.md: d750a507e628e7609af542227e4528d4d4934ce8 -README.zh.md: c535dbd0535be3a8e7b6f78979c63dc03e562d36 +README.zh.md: fcf5ebfad1e467b060b2efaa6c6f2816d75945d1 diff --git a/packages/core/system-prompt/README.zh.md b/packages/core/system-prompt/README.zh.md index c535dbd053..fcf5ebfad1 100644 --- a/packages/core/system-prompt/README.zh.md +++ b/packages/core/system-prompt/README.zh.md @@ -8,10 +8,10 @@ | 键 | 默认值 | 含义 | |---|---|---| -| `includeHarnessIdentity` | `true` | 是否包含顺序为 −100 的固定开场白 `You are an AI agent powered by DeepSeek Harness.`。仅当兼容性部署拥有完整系统提示词时设为 `false`。 | +| `includeHarnessIdentity` | `true` | 是否包含顺序为 −100 的固定开场白 `You are an AI agent powered by DeepSeek Harness.`。仅当兼容性部署拥有完整系统提示词时设为 false。 | | `includeRuntimeContext` | `true` | 是否在组装中包含有序动态上下文。设为 false 时不会求值上下文提供方,并会在 waterfall 后丢弃 `system-prompt/assemble` 监听器添加的上下文;其他服务及其强制机制仍然生效。 | | `persona` | `''` | 全局部署 persona 默认值:唯一由配置提供的提示词片段,渲染为顺序为 0 的 `deployment:persona` 段,除非 agent 作用域的贡献将其遮蔽。它是模板,完整的 `{{…}}` 组会严格按已注册变量解释(随附循环注册 `{{model}}`/`{{cwd}}`),目前没有表达字面量花括号的转义语法。为空 ⇒ 渲染时删除该段。 | -| `toolOrder` | 无 | 显式指定面向模型的工具顺序。该列表由 `ToolSchema.name` 组成,并且必须恰好包含一个 `''` 其余项标记(`TOOL_ORDER_REST`):已列工具按列表位置排列,未列工具则按名称字典序插入该标记所在的位置。缺席 ⇒ 直接按名称字典序排列。该顺序会在 `system-prompt/assemble` waterfall(瀑布式事件)之前应用于已收集的工具。与段的 `order` 排序一样,它会规范化注册表贡献的内容;注册顺序只是插件加载时序的产物。修改列表的 waterfall 监听器应对其输出的确定性负责。配置错误会明确失败:列表没有恰好一个其余项或存在重复项,会在加载时抛出;已列名称没有对应已注册工具,会使每次 `assemble()` 被拒绝;工具提供方返回保留的其余项名称也会被拒绝。在随附循环下,轮次会在任何模型请求前失败。为何采用中心列表而非每插件权重,见[显式面向模型工具顺序](../../../.agents/notes/implemented/feature/2026-07-06-explicit-tool-order.md)。 | +| `toolOrder` | 无 | 显式指定面向模型的工具顺序。该列表由 `ToolSchema.name` 组成,并且必须恰好包含一个 `''` 其余项标记(`TOOL_ORDER_REST`):已列工具按列表位置排列,未列工具则按名称字典序插入该标记所在的位置。缺席 ⇒ 直接按名称字典序排列。该顺序会在 `system-prompt/assemble` waterfall(瀑布式事件)之前应用于已收集的工具。与段的 `order` 排序一样,它会规范化注册表贡献的内容;注册顺序只是插件加载时序的产物。修改列表的 waterfall 监听器对其输出的确定性负责。配置错误会明确失败:列表没有恰好一个其余项或存在重复项,会在加载时抛出;已列名称没有对应已注册工具,会使每次 `assemble()` 被拒绝;工具提供方返回保留的其余项名称也会被拒绝。在随附循环下,轮次会在任何模型请求前失败。为何采用中心列表而非每插件权重,见[显式面向模型工具顺序](../../../.agents/notes/implemented/feature/2026-07-06-explicit-tool-order.md)。 | ## 服务:`SystemPrompt`(ctx 键:`systemPrompt`) @@ -35,7 +35,7 @@ - `AssembleContext`:说明一次 `assemble()` 调用的用途。它可通过合并扩展;此处声明 `scope?: ScopeKey`(层选择器)与 `signal?: AbortSignal`(显式请求控制能力),而 `dsh-agent` 声明 `agent?: Agent`(类型化 DX 字段;绝不能在没有 `scope` 时设置,应使用 `assembleContextFor(agent, signal)`)。提供方必须容忍字段缺席,因为裸 `assemble()` 携带的是无作用域、无信号的空上下文。`signal` 是请求值,不是环境 Agent 执行 frame 的一部分。 - `PromptSection`:`{ name, order, text, complete? }`。各段按 `order` 升序拼接。顺序区间:`-100` 是 harness 身份,`0` 是部署 persona,工具引导使用 `100–199`。协作式组装完成后,一个有效的 `complete` 段会抑制其他所有段。 - `PromptAssembly`:`{ sections: AssembledSection[], tools: ToolSchema[], variables: Record }`。各段文本到达时已求值,但尚未插值;`variables` 保存所有已注册变量在当前上下文中求得的值。工具 schema 按设计属于组装结果:「模型获知自己能做什么」是一个连贯整体,尽管适配器把 schema 作为独立 wire 字段传输。 -- `renderPrompt(assembly)`:插值每个段中的 `{{variable}}` 引用,删除空段,并用空行连接。严格规则:未知引用(使用 `Object.hasOwn` 查找,因此 `{{constructor}}` 等原型名称未知)、已注册但无值的引用、格式错误的完整 `{{…}}` 组,或出现 `{{` 却没有形成完整的 `{{…}}` 组、而后文仍有 `}}`(`{{{model}}}`),都会抛出异常;明确失败胜过交付格式错误的提示词。孤立的 `{{` 如果后面任何位置都没有 `}}`,会按字面量通过;替换值绝不再次扫描。 +- `renderPrompt(assembly)`:插值每个段中的 `{{variable}}` 引用,删除空段,并用空行连接。严格规则:未知引用(使用 `Object.hasOwn` 查找,因此 `{{constructor}}` 等原型名称未知)、已注册但无值的引用、格式错误的完整 `{{…}}` 组,或出现 `{{` 却没有形成完整组、而后文仍有 `}}`(`{{{model}}}`),都会抛出异常;明确失败胜过交付格式错误的提示词。孤立的 `{{` 如果后面任何位置都没有 `}}`,会按字面量通过;替换值绝不再次扫描。 可通过合并扩展:插件可以借助声明合并,为 `PromptAssembly` 和 `AssembleContext` 声明额外字段。 @@ -54,7 +54,7 @@ #### 模型看到的内容 -默认情况下,每次组装都从下方 harness 身份开始,然后在严格变量插值后追加已配置 persona 与有序插件段。`includeHarnessIdentity: false` 仅省略这个固定开场白。空段会消失;带作用域的段和变量可以为一个 agent 遮蔽全局项。`system-prompt/assemble` waterfall 决定交付的提示词与工具 schema,除非一个有效段声明自身为 complete;此时,该确切段会成为完整的系统提示词,而 waterfall 得到的上下文、工具和变量保持不变。有序动态上下文与系统提示词段落分离,只在存在时才会成为带来源的 user 角色快照。`includeRuntimeContext: false` 或带作用域的抑制器会移除所有这类上下文,包括监听器添加的内容,但不会禁用拥有底层策略或状态的服务。 +默认情况下,每次组装都从下方 harness 身份开始,然后在严格变量插值后追加已配置 persona 与有序插件段。`includeHarnessIdentity: false` 仅省略这个固定开场白。空段会消失;带作用域的段和变量可以为一个 agent 遮蔽全局项。`system-prompt/assemble` waterfall 决定交付的提示词与工具 schema,除非一个有效段声明自身为 complete;此时,该确切段会成为完整的系统提示词,而 waterfall 得到的上下文、工具和变量保持不变。有序动态上下文与系统提示词段分离,只在存在时才会成为带来源的 user 角色快照。`includeRuntimeContext: false` 或带作用域的抑制器会移除所有这类上下文,包括监听器添加的内容,但不会禁用拥有底层策略或状态的服务。 ##### harness 身份 diff --git a/packages/llm/llm/README.i18n.yaml b/packages/llm/llm/README.i18n.yaml index e417c7d887..07702ff54a 100644 --- a/packages/llm/llm/README.i18n.yaml +++ b/packages/llm/llm/README.i18n.yaml @@ -3,4 +3,4 @@ # after editing either side, bring the other along and re-record with: # pnpm run verify-translation-pairing --write packages/llm/llm/README.md README.md: 2cae9a05a58295b06d25382729a3304dbdc9a6fa -README.zh.md: afcf6d929608a010e7d45afd84222c43cf4d91d4 +README.zh.md: a9c4f2908fb3047238f337ab93490ddd4ffc8d63 diff --git a/packages/llm/llm/README.zh.md b/packages/llm/llm/README.zh.md index afcf6d9296..a9c4f2908f 100644 --- a/packages/llm/llm/README.zh.md +++ b/packages/llm/llm/README.zh.md @@ -13,13 +13,13 @@ - `ctx.llm.registerAdapter(providers: string[], adapter: LlmAdapter): AdapterRegistrationHandle` 为给定提供方路由注册一个适配器实例。注册要么全部成功,要么全部不生效,并且会随调用 fiber 一起 dispose(资源释放)。返回的句柄还提供 `replace(providers)`:候选路由集合会在注册状态发生任何变化前完成整体验证,因此与另一适配器发生冲突时,当前路由仍保持注册并继续提供服务。替换会在一次同步操作中完成,不会出现可观察的空档。`replace([])` 合法,表示保留注册但不持有任何路由;初始注册则不得为空。 - `ctx.llm.listProviders(): LlmProviderInfo[]` 按注册顺序描述已注册提供方路由。 - `ctx.llm.registerConfigurableProviders(entries: readonly LlmConfigurableProvider[]): DirectoryRegistrationHandle` 声明适配器插件可通过配置激活的提供方路由——无论已注册还是休眠——每个条目指明其所属 settings namespace,以及 profile 在该分节内的路径。要么全部成功,要么全部不生效(`INVALID_DIRECTORY`/`DUPLICATE_DIRECTORY`),并随调用 fiber dispose。该句柄还带 `replace(entries)`:候选集合会先被整体校验,因此其中若有条目已被另一个注册声明,当前集合原封不动;此处允许传空数组。声明集合随配置变化的插件必须使用 `replace`,而不是先 dispose 再重新注册——后者会在新集合被拒时让目录整个落空。 -- `ctx.llm.listConfigurableProviders(): LlmConfigurableProvider[]` 按声明顺序列出可配置提供方目录;配置界面将其与 `listProviders()` 合并,为每个条目标注存活或休眠。条目可携带 `declared`,表示负责该路由的适配器是否只因配置点名才知道它。`declared` 缺失时,只表示该适配器不区分这两种来源,不能据此判断路由是否随产品交付。 -- `ctx.llm.registerModelDiscovery(settingsNs: string, discover): () => void` 为本插件负责的 settings namespace 提供查询提供方端点的能力。每个 namespace 只能有一个(`INVALID_DISCOVERY`/`DUPLICATE_DISCOVERY`),并随调用 fiber dispose。 +- `ctx.llm.listConfigurableProviders(): LlmConfigurableProvider[]` 按声明顺序列出可配置提供方目录;配置界面将其与 `listProviders()` 合并,为每个条目标注存活或休眠。条目可携带 `declared`,表示拥有该路由的适配器是否只因配置点名才知道它。该字段缺失时,只表示该适配器不区分这两种来源,不能据此判断路由是否随产品交付。 +- `ctx.llm.registerModelDiscovery(settingsNs: string, discover): () => void` 为本插件拥有的 settings namespace 提供查询提供方端点的能力。每个 namespace 只能有一个(`INVALID_DISCOVERY`/`DUPLICATE_DISCOVERY`),并随调用 fiber dispose。 - `ctx.llm.listModelDiscoveryNamespaces(): string[]` 列出可以询问端点的 namespace,让界面只在可用之处提供该动作。 - `ctx.llm.discoverModels(settingsNs: string, request: LlmModelDiscoveryRequest): Promise` 询问某个端点它公布了哪些模型。 -- `ctx.llm.providerRetryPolicy(provider: string): ResolvedRetryPolicy` 返回注册时捕获的提供方自身的重试策略,并解析 `normal` 默认值。 +- `ctx.llm.providerRetryPolicy(provider: string): ResolvedRetryPolicy` 返回注册时捕获的提供方自身的重试策略,并解析 normal 默认值。 - `ctx.llm.listModels(provider: string): Promise` 发现某个已注册提供方当前公布的模型。 -- `ctx.llm.resolveModelInfo(provider: string, model: string, signal?: AbortSignal): Promise` 从负责该精确路由的适配器中,解析并校验确切模型身份,以及可用上下文、输出默认值和推理(reasoning)元数据;异步适配器可选地支持取消。 +- `ctx.llm.resolveModelInfo(provider: string, model: string, signal?: AbortSignal): Promise` 从拥有该精确路由的适配器中,解析并校验确切模型身份,以及可用上下文、输出默认值和推理(reasoning)元数据;异步适配器可选地支持取消。 - `ctx.llm.resolveCallConfig(config: LlmCallConfig, signal?: AbortSignal): Promise` 校验显式推理强度,并填入适配器配置的调用默认值,但不自动调整。 - `ctx.llm.prepareCall(config: LlmCallConfig, signal?: AbortSignal): Promise` 在一次精确模型查询中解析配置、脱耦的上下文元数据以及标明哪些字段由适配器默认值填入的标记,再将当前适配器注册和不可变重试策略捕获为一次可取消、一次性调用。 - `ctx.llm.stream(options: GenerateOptions): AsyncIterable` 将一次模型调用流式输出为原始分片(token 级增量)。消费方使用 `BlockAssembler` 将分片组装为块/消息。 @@ -28,13 +28,13 @@ 询问端点属于配置期针对**草稿**的操作,以 settings namespace 而非提供方路由为键——界面正在新增的提供方还不存在,也就没有路由可点名。但请求仍可**点名**它正在编辑的路由,而已经描述该路由的适配器会用自己的知识作答,无需联网;路由名称和 `baseURL` 至少需要提供一项。除此之外,请求携带端点、协议,以及一条 harness 只用于这一次询问、绝不存储的凭据。这里既不读取也不写入 settings 或 credentials;返回内容是界面可以提供给用户采纳的候选元数据,而不是已注册的 catalog。`LlmDiscoveredModel` 除 `id` 外每个字段都是可选的,因为大多数提供方列表只公布 id;采纳其中一条的界面仍要补上其适配器所需的容量。重复与不可用的 id 会被丢弃,无人服务的 namespace 以 `NO_DISCOVERY` 失败,既不点名路由也不给端点的请求以 `INVALID_DISCOVERY` 失败。 -提供方和模型元数据用于发现,不构成路由白名单。`registerAdapter()` 仍负责保证提供方路由的排他注册,并为每条路由捕获适配器的重试策略;适配器可以接受未出现在 `listModels()` 中的模型 id,消费方不得仅因模型未列出而拒绝请求。返回的 selector 元数据已分离;无效或重复的适配器条目会以 `INVALID_ADAPTER` 或 `INVALID_CATALOG` 失败。 +提供方和模型元数据用于发现,不构成路由白名单。`registerAdapter()` 仍拥有提供方路由的排他性,并为每条路由捕获适配器的重试策略;适配器可以接受未出现在 `listModels()` 中的模型 id,消费方不得仅因模型未列出而拒绝请求。返回的 selector 元数据已分离;无效或重复的适配器条目会以 `INVALID_ADAPTER` 或 `INVALID_CATALOG` 失败。 每个拓扑提交点——适配器路由注册或 dispose、目录条目出现或撤回——都会在变更之后发出无载荷的 `llm/adapters-updated` 事件,消费方因此会重新读取 `listProviders()`/`listModels()`/`listConfigurableProviders()`,而不是轮询。观察者故障会被记录并隔离,不能否决变更;只有带 `INVARIANT` 码的故障会在通知完所有观察者后重新抛出。 确切模型元数据是独立的正确性查询,不是 catalog 装饰或全局 LLM 设置。`resolveModelInfo()` 会向拥有精确提供方/模型路由的适配器查询一次;适配器可以描述未列出的动态模型。缺少 `context` 表示模型容量未知;缺少 `defaultMaxTokens` 表示继续沿用提供方自身的输出默认值;缺少 `reasoning` 则表示推理能力不可用。无效的身份、上下文、输出默认值或推理元数据会以 `INVALID_MODEL_INFO`、`INVALID_MODEL_CONTEXT`、`INVALID_MODEL_MAX_TOKENS` 或 `INVALID_MODEL_REASONING` 失败。 -`defaultMaxTokens` 是适配器配置的单次请求输出上限,不是模型硬上限。仅当请求省略 `maxTokens` 时,`resolveCallConfig()` 才会填入该值;显式上限优先。推理标识符是由适配器定义的不透明字符串,而非核心枚举:同一次解析只接受与已公布标识符完全一致的值,在存在 `defaultEffort` 时填入它,否则保留提供方默认值。异步模型解析器会接收调用方的 `signal`,并且必须在取消后尽快结算。`prepareCall()` 还会返回同一次查询得到的、与适配器内部状态分离的上下文元数据,通过 `adapterDefaults` 标明填入了哪些 `maxTokens` 和 `reasoningEffort` 字段,并在请求头记录和最终分发期间始终保留同一项精确的适配器注册。因此,HMR(热模块替换)不会把一个适配器的能力结果与另一个适配器的请求混用;复用其一次性句柄或更改调用配置字段会以 `INVALID_PREPARED_CALL` 失败。不支持的显式或配置推理强度会在提供方 I/O 前以 `UNSUPPORTED_REASONING_EFFORT` 失败。 +`defaultMaxTokens` 是适配器配置的单次请求输出上限,不是模型硬上限。仅当请求省略 `maxTokens` 时,`resolveCallConfig()` 才会填入该值;显式上限优先。推理标识符是由适配器定义的不透明字符串,而非核心枚举:同一次解析只接受与已公布标识符完全一致的值,在存在 `defaultEffort` 时填入它,否则保留提供方默认值。异步模型解析器会接收调用方信号,并且必须在取消后尽快结算。`prepareCall()` 还会返回同一次查询得到的、与适配器内部状态分离的上下文元数据,通过 `adapterDefaults` 标明填入了哪些 `maxTokens` 和 `reasoningEffort` 字段,并在请求头记录和最终分发期间始终保留同一项精确的适配器注册。因此,HMR(热模块替换)不会把一个适配器的能力结果与另一个适配器的请求混用;复用其一次性句柄或更改调用配置字段会以 `INVALID_PREPARED_CALL` 失败。不支持的显式或配置推理强度会在提供方 I/O 前以 `UNSUPPORTED_REASONING_EFFORT` 失败。 ### 事件 @@ -73,7 +73,7 @@ - `BlockAssembler`:将原始分片逐步组装为完整内容块,并能据此创建带标识且冻结的 assistant 消息。agent loop 向它提供原始分片(同时记录以供回放),并读取已组装块以构建历史。 - `HarnessError`:harness 错误分类体系的基类,包含稳定 `code` 字符串(与面向人的 `message` 不同)以及 `cause` 链。它位于所有其他包都从中导入的叶子包中,因此可以共享单一基类,无需新的依赖边。各包的错误(`LlmError`、`ToolArgsError`、`InvariantError` 等)都继承自它。`isHarnessError(value)` 在进程边界处收窄类型。 - `LlmError`:继承自 `HarnessError`;其稳定 `code` 字符串(`NO_ADAPTER`、`DUPLICATE_ADAPTER` 与 `AUTH`/`RATE_LIMIT` 等适配器 code)与冻结可序列化 `failure.code` 匹配。Payload 还可以保留已验证状态、`Retry-After` 和品牌化提供方请求 id 事实;策略位于错误之外。 -- `errorChain(value)`:渲染抛出值的完整 `cause` 链与 AggregateError 成员,供诊断输出使用,包括 UI 通知、logger 行和持久 `turn/end` 消息。因此 undici 的 `TypeError: fetch failed` 等传输包装层会显示底层 `ECONNREFUSED`/DNS/TLS 详细信息,而不是将其遮蔽。`errorChain(value)` 只负责生成诊断文本。调用方必须依据稳定的 `code` 选择错误处理路径,绝不能通过解析渲染后的文本作出判断。 +- `errorChain(value)`:渲染抛出值的完整 `cause` 链与 AggregateError 成员,供诊断输出使用,包括 UI 通知、logger 行和持久 `turn/end` 消息。因此 undici 的 `TypeError: fetch failed` 等传输包装层会显示底层 `ECONNREFUSED`/DNS/TLS 详细信息,而不是将其遮蔽。该函数只负责生成诊断文本。调用方必须依据稳定的 `code` 选择错误处理路径,绝不能通过解析渲染后的文本作出判断。 - `CONTEXT_WINDOW_EXCEEDED_CODE`:当请求超过模型上下文窗口时,无论通过 HTTP 异常抛出还是带内 finish 交付,两个 DeepSeek 适配器都使用的提供方无关 code。`isContextWindowExceededError(detail)` 是它们针对 OpenAI 兼容提供方详细信息的共享保守分类器。 - `QUOTA_EXCEEDED_CODE`:帐户配额、余额、点数、预算或用量限制耗尽时使用的非暂时性提供方无关 code。`isQuotaExceededError(detail)` 使这些失败与请求速率限制保持区分。 - `EMPTY_RESPONSE_CODE`:两个适配器都使用的提供方无关 code,用于表示退化的提供方生成结果:一个未携带任何内容块的终止 `stop`。它会被分类为错误 finish(而非成功空消息),因为尝试未产生持久内容;`dsh-llm-retry` 默认重试它。 diff --git a/packages/subagent/subagent/README.i18n.yaml b/packages/subagent/subagent/README.i18n.yaml index 8ab47d1322..d7acd85d6b 100644 --- a/packages/subagent/subagent/README.i18n.yaml +++ b/packages/subagent/subagent/README.i18n.yaml @@ -3,4 +3,4 @@ # after editing either side, bring the other along and re-record with: # pnpm run verify-translation-pairing --write packages/subagent/subagent/README.md README.md: ed4a9123a2dfa5b2fa5abc67f4513547feb3d140 -README.zh.md: 1bb44b1c5c55400bb26c4c248eea76039f6296d3 +README.zh.md: 9c08dcb84619e4ecd0282d4d113e3f3952a6a103 diff --git a/packages/subagent/subagent/README.zh.md b/packages/subagent/subagent/README.zh.md index 1bb44b1c5c..9c08dcb846 100644 --- a/packages/subagent/subagent/README.zh.md +++ b/packages/subagent/subagent/README.zh.md @@ -58,7 +58,7 @@ subagent seam 允许一个 agent(智能体)通过具名提供方把工作委 ## 委派策略 -两条进程内委派路径都会通过共享的子 agent 辅助函数,在委派边界固定子 agent 的权限范围。`captureDelegatedPolicyOverrides(parent)` 会为父会话的显式沙箱覆盖项(`sandboxPolicy.overrideOf()`)创建快照,并在审批能力已组合时将子 agent 的审批策略固定为 `'never'`,无论父级自身采用何种策略。这样,被委派的子 agent 只能在继承的沙箱范围内行动,每次审批请求(例如 `sandbox_permissions` 升权)都会被确定性拒绝,而不会等待无人处理的提示(这两个服务都是可选的 `ctx.get` 消费方)。`appendDelegatedPolicyOverrides()` 则在未发布的设置阶段、在任何 fork 种子之后,把每个值作为一条 `source: 'delegation'` 的 `sandbox/mode` 或 `approval/policy` 事件写入子 agent 自己的日志。因此,新捕获的策略会覆盖种子中的陈旧状态,而子 agent 的生效策略始终可以仅凭其日志重建。沙箱的部署默认值绝不复制:未切换的父级不会记录 `sandbox/mode`,其子 agent 会动态跟随部署默认值。可继续启动会在第一次 `await` 前捕获策略,并且只为全新物化写入这些委派事件;冷恢复只会重放已持久化的委派事件,不会重新捕获父级策略,因此创建之后的父级切换绝不会追溯性地改变持久化子 agent。每个进程内子 agent 还会收到一条作用域内的运行时上下文声明(`subagent:delegation`),告知其权限范围已固定,需要更宽访问的任务应以上报限制收尾,而不是重试。参见[一次性](../../../.agents/notes/implemented/feature/2026-07-25-subagent-policy-inheritance.md)与[可继续](../../../.agents/notes/implemented/feature/2026-08-10-continuable-subagent-policy-inheritance.md)两篇委派策略 Agent Note。 +两条进程内委派路径都会通过共享的子 agent 辅助函数,在委派边界固定子 agent 的权限范围。`captureDelegatedPolicyOverrides(parent)` 会为父会话的显式沙箱覆盖项(`sandboxPolicy.overrideOf()`)创建快照,并在审批能力已组合时将子 agent 的审批策略固定为 `'never'`,无论父级自身采用何种策略。这样,被委派的子 agent 只能在继承的沙箱范围内行动,每次审批请求(例如 `sandbox_permissions` 升权)都会被确定性拒绝,而不会等待无人处理的提示(这两个服务都是可选的 `ctx.get` 消费方)。`appendDelegatedPolicyOverrides()` 则在未发布的设置阶段、在任何 fork 种子之后,把每个值作为一条 `source: 'delegation'` 的 `sandbox/mode` 或 `approval/policy` 事件写入子 agent 自己的日志。因此,新捕获的策略会覆盖种子中的陈旧状态,而子 agent 的生效策略始终可以仅凭其日志重建。沙箱的部署默认值绝不复制:未切换的父级不会记录 `sandbox/mode`,其子 agent 会动态跟随部署默认值。可继续启动会在第一次 await 前捕获策略,并且只为全新物化写入这些委派事件;冷恢复只会重放已持久化的委派事件,不会重新捕获父级策略,因此创建之后的父级切换绝不会追溯性地改变持久化子 agent。每个进程内子 agent 还会收到一条作用域内的运行时上下文声明(`subagent:delegation`),告知其权限范围已固定,需要更宽访问的任务应以上报限制收尾,而不是重试。参见[一次性](../../../.agents/notes/implemented/feature/2026-07-25-subagent-policy-inheritance.md)与[可继续](../../../.agents/notes/implemented/feature/2026-08-10-continuable-subagent-policy-inheritance.md)两篇委派策略 Agent Note。 ## 一次性所有权与生命周期 @@ -72,7 +72,7 @@ subagent seam 允许一个 agent(智能体)通过具名提供方把工作委 每个可继续子 agent 都有一个持久化 Session,并且同一时刻至多有一个进程内 **Activation**。Activation 表示重建后的子 agent 的一次驻留时段,不是请求、结果、取消或 Task 的边界。Agent inbox 是唯一的轮次队列,因此驻留归继续执行管理器,所有轮次排序与执行归 agent loop(智能体循环)。任何可继续路径都不会创建 Task 或中间的承载结果的包装层。 -管理器根据 Agent 的完全停稳状态和所拥有的子级集合推导三种内部驻留状态,而不维护第二套状态机:`running` 表示存在正在进行的准入、尚未结束的轮次,或会唤醒 Agent 的 inbox 工作;`waiting` 表示 Agent 已完全停稳,但仍拥有至少一个尚未 dispose 的子级;`settled` 表示 Agent 已完全停稳且所有拥有的子级均已 dispose,此时管理器会 dispose `AgentHandle` 并移除 Activation。每条后续消息都使用 `Agent.followup()` 并成为一个 FIFO 轮次,且不会对当前轮次进行 steering(中途引导)。路由只取决于驻留状态:running 入队、waiting 唤醒同一 Agent,无 Activation 时则冷恢复一个新的。 +管理器根据 Agent 的完全停稳状态和所拥有的子级集合推导三种内部驻留状态,而不维护第二套状态机:running 表示存在正在进行的准入、尚未结束的轮次,或会唤醒 Agent 的 inbox 工作;waiting 表示 Agent 已完全停稳,但仍拥有至少一个尚未 dispose 的子级;settled 表示 Agent 已完全停稳且所有拥有的子级均已 dispose,此时管理器会 dispose `AgentHandle` 并移除 Activation。每条后续消息都使用 `Agent.followup()` 并成为一个 FIFO 轮次,且不会对当前轮次进行 steering(中途引导)。路由只取决于驻留状态:running 入队、waiting 唤醒同一 Agent,无 Activation 时则冷恢复一个新的。 管理器预留子 agent 身份、解析持久化描述符,通过私有的 activation-owner 作用域调用 `ctx.agents.create()`(冷恢复时为 `ctx.agents.resume()`),把返回的 `AgentHandle` 安装到 Activation 中,建立任何可继续父级所有权,然后提交提示词。冷恢复绝不通过提供方分发,因为持久化会话已持有初始前缀,折叠后的描述符即是全部重建输入。 @@ -82,13 +82,13 @@ subagent seam 允许一个 agent(智能体)通过具名提供方把工作委 有两条顺序规则让这条投递可靠而非侥幸,它们也正是这件事属于管理器而非外部 `subagent/end` listener 的原因。第一,发送发生在子级所有权释放**之前**,此时父级仍然计入该子级,因此在结构上不可能被判定为已结算。第二,如果父级本身也是驻留 Activation,该消息会采用与 report 相同的唤醒准入记账。这样,从同步发送消息到负责准入该消息的 microtask 运行之间的窗口,不会被误判为完全停稳——`Agent.status` 会把上下文维护折叠成 `idle`,而维护期间的唤醒发送只会预置一次延后唤醒。缺少其中任一条规则,父级都可能在通知仍留在 inbox 时被 dispose,而 `cancel()` 会清空该 inbox,于是通知被静默丢失。 -空闲父级会以一个普通的后续轮次收到该通知。繁忙父级则被 steer 到其最近的 step 边界,因此同时结算的多个子级只消耗一个 step,而不是各自一个轮次;采用 steer 而非 inject 还意味着:即便驱动在状态读取与发送之间退出,该消息仍会被认领。如果父级所在的谱系已经开始排空,该通知会通过 `inject` 投递,且完全不会唤醒父级。对已经完全停稳的父级调用 `Agent.followup()` 会开启新轮次,而 `cancel()` 不会预先阻止之后开启的轮次;因此在拆卸期间唤醒父级,会让宿主即将 dispose 的 Agent 多执行一次模型请求,而且树的每一层各一次,因为每层自己的通知又会唤醒上一层。被 inject 的消息会送达仍在读取自身 inbox 的父级,而无论如何日志都会记录这份记账;但它不会比该父级自身的 dispose 活得更久:`AgentHandle.dispose()` 是一次 `keepInbox: false` 的 cancel,会持久地取消尚未被认领的通知。因此 resume 后的父级没有待处理通知可读:`list_agents` 只告诉它有哪些子级、各自是在线还是仅存于存储;结局本身留在子级自己的 Session 里,一次 `send_message` 会通过 resume 该子级把它取回。已离开注册表的父级不算错误:通知被丢弃,子级自身的 Session 仍是持久记录。投递绝不会阻塞或使拆卸失败——发送被拒只会记录日志,因为为了重试一条通知而保留子级,会把它的整条祖先链永久钉在 `waiting` 上。 +空闲父级会以一个普通的后续轮次收到该通知。繁忙父级则被 steer 到其最近的 step 边界,因此同时结算的多个子级只消耗一个 step,而不是各自一个轮次;采用 steer 而非 inject 还意味着:即便驱动在状态读取与发送之间退出,该消息仍会被认领。如果父级所在的谱系已经开始排空,该通知会通过 inject 投递,且完全不会唤醒父级。对已经完全停稳的父级调用 `Agent.followup()` 会开启新轮次,而 `cancel()` 不会预先阻止之后开启的轮次;因此在拆卸期间唤醒父级,会让宿主即将 dispose 的 Agent 多执行一次模型请求,而且树的每一层各一次,因为每层自己的通知又会唤醒上一层。被 inject 的消息会送达仍在读取自身 inbox 的父级,而无论如何日志都会记录这份记账;但它不会比该父级自身的 dispose 活得更久:`AgentHandle.dispose()` 是一次 `keepInbox: false` 的 cancel,会持久地取消尚未被认领的通知。因此 resume 后的父级没有待处理通知可读:`list_agents` 只告诉它有哪些子级、各自是在线还是仅存于存储;结局本身留在子级自己的 Session 里,一次 `send_message` 会通过 resume 该子级把它取回。已离开注册表的父级不算错误:通知被丢弃,子级自身的 Session 仍是持久记录。投递绝不会阻塞或使拆卸失败——发送被拒只会记录日志,因为为了重试一条通知而保留子级,会把它的整条祖先链永久钉在 `waiting` 上。 受继续执行管理的父级 Activation 会在子 agent 能够运行之前,把每个子 agent 的会话 id 记录到 `ownedChildren` 集合中,并且只有在每个所拥有的子 agent Activation 完成 `AgentHandle` dispose 之后才会 dispose(子先于父)。拆卸会先自顶向下传播 Agent 取消,再等待缓慢的后代,而 handle 释放仍保持 child-first。顶层及其他非继续执行的 Agent 没有 Activation,处于该等待图之外。最终结算会在 dispose handle 前等待 best-effort 的 `ctx.sessions.flush(child.session)`。监听器拒绝会被记录,但不会使 Activation 失败,因为监听器参与本身不能标识持久化后端;因此恢复时的持久化状态仍可能缺失或陈旧。 ## 生命周期事件 -服务会为每次一次性运行以及每个已驻留的可继续 Activation 时段发出一对 `subagent/start`/`subagent/end`,因此可继续子 agent 可用与一次性运行相同的词汇观察,且不会暴露管理器是物化、唤醒还是冷恢复了它们。对于一次性启动,它会在同步的 `subagent/start` 之前附加结果观察器,因此即使子 agent 已经结算,也仍会先产生 `subagent/start`,再产生 `subagent/end`;在驻留前失败的可继续时段不会发出这对生命周期事件中的任何一个。这对事件共享由服务生成的 `runId`;`local` 标志根据提供方返回的确切 `localAgent` 是否存在取得快照(可继续子级恒为 `true`),因此观察器不会根据可复用的提供方名称或会话名称推断运行身份或本地性。`provider` 字段包含子 agent 初次创建时记录的提供方名称,不表示该提供方当前仍在注册:已接受的一次性 run 可在提供方移除后才结算;冷恢复时段会从描述符读取初始提供方名称,不会调用或注册该提供方。 +服务会为每次一次性运行以及每个已驻留的可继续 Activation 时段发出一对 `subagent/start`/`subagent/end`,因此可继续子 agent 可用与一次性运行相同的词汇观察,且不会暴露管理器是物化、唤醒还是冷恢复了它们。对于一次性启动,它会在同步的 `subagent/start` 之前附加结果观察器,因此即使子 agent 已经结算,也仍会先产生 `subagent/start`,再产生 `subagent/end`;在驻留前失败的可继续时段不会发出这对生命周期事件中的任何一个。这对事件共享由服务生成的 `runId`;`local` 标志根据提供方返回的确切 `localAgent` 是否存在取得快照(可继续子级恒为 true),因此观察器不会根据可复用的提供方名称或会话名称推断运行身份或本地性。`provider` 字段包含子 agent 初次创建时记录的提供方名称,不表示该提供方当前仍在注册:已接受的一次性 run 可在提供方移除后才结算;冷恢复时段会从描述符读取初始提供方名称,不会调用或注册该提供方。 运行事件受执行委派的父级作用域约束。每个监听器都独立隔离:同步抛出或返回的 promise 被拒绝时,只会记录日志,不会阻塞同级监听器或改变运行。 From f75d785e79e0020a35e8ba714d2258687b9d62d1 Mon Sep 17 00:00:00 2001 From: Tianyi Cui <53024+tianyicui@users.noreply.github.com> Date: Thu, 13 Aug 2026 15:29:28 +0800 Subject: [PATCH 10/22] fix(web): show newest sessions first by default --- apps/web/tests/snapshots/message-actions/fork.expected.md | 4 ++-- .../sidebar-subagent-activity/owner-running.expected.md | 2 +- .../tests/snapshots/subagent-conversation/fork.expected.md | 2 +- packages/client/ui-workspace/src/client/stores.ts | 2 +- packages/client/ui-workspace/tests/tree.client.spec.ts | 2 +- .../ui-workspace/tests/workspace-browser.client.spec.tsx | 2 +- 6 files changed, 7 insertions(+), 7 deletions(-) diff --git a/apps/web/tests/snapshots/message-actions/fork.expected.md b/apps/web/tests/snapshots/message-actions/fork.expected.md index 2487b6c374..f7f9efb3ab 100644 --- a/apps/web/tests/snapshots/message-actions/fork.expected.md +++ b/apps/web/tests/snapshots/message-actions/fork.expected.md @@ -2,6 +2,6 @@ - treeitem "Ungrouped" [expanded]: - img - text: Ungrouped - - treeitem "Use the read tool twice 1min" - - treeitem "Use the read tool twice (1) now" - treeitem "Use the read tool twice (2) now" [selected] + - treeitem "Use the read tool twice (1) now" + - treeitem "Use the read tool twice 1min" diff --git a/apps/web/tests/snapshots/sidebar-subagent-activity/owner-running.expected.md b/apps/web/tests/snapshots/sidebar-subagent-activity/owner-running.expected.md index 62671cbb8b..7e1864ff58 100644 --- a/apps/web/tests/snapshots/sidebar-subagent-activity/owner-running.expected.md +++ b/apps/web/tests/snapshots/sidebar-subagent-activity/owner-running.expected.md @@ -2,5 +2,5 @@ - treeitem "workspace" [expanded]: - img - text: workspace - - treeitem "New Session" [selected] - treeitem "1 subagent running Delegate a background job. now" + - treeitem "New Session" [selected] diff --git a/apps/web/tests/snapshots/subagent-conversation/fork.expected.md b/apps/web/tests/snapshots/subagent-conversation/fork.expected.md index 398c3ceddd..c60eb2d064 100644 --- a/apps/web/tests/snapshots/subagent-conversation/fork.expected.md +++ b/apps/web/tests/snapshots/subagent-conversation/fork.expected.md @@ -2,5 +2,5 @@ - treeitem "workspace" [expanded]: - img - text: workspace - - treeitem "Ask a research subagent to now" - treeitem "Explain event sourcing in one (1) now" [selected] + - treeitem "Ask a research subagent to now" diff --git a/packages/client/ui-workspace/src/client/stores.ts b/packages/client/ui-workspace/src/client/stores.ts index e48b5f3f63..f085329643 100644 --- a/packages/client/ui-workspace/src/client/stores.ts +++ b/packages/client/ui-workspace/src/client/stores.ts @@ -53,7 +53,7 @@ export function createWorkspaceViewStore(): EngineStoreHandle ({ groupBy: 'workspace', - orderBy: 'manual', + orderBy: 'updated', groupExpansion: {}, sessionOrderByAccount: {}, sessionUpdatedAtByAccount: {}, diff --git a/packages/client/ui-workspace/tests/tree.client.spec.ts b/packages/client/ui-workspace/tests/tree.client.spec.ts index 1448ab9dff..f2e069de43 100644 --- a/packages/client/ui-workspace/tests/tree.client.spec.ts +++ b/packages/client/ui-workspace/tests/tree.client.spec.ts @@ -395,7 +395,7 @@ describe('createWorkspaceViewStore', () => { it('stores grouping, ordering, Workspace expansion, and recent-session view order', () => { const store = createWorkspaceViewStore().create() expect(store.getSnapshot().groupBy).toBe('workspace') - expect(store.getSnapshot().orderBy).toBe('manual') + expect(store.getSnapshot().orderBy).toBe('updated') store.actions.setGroupBy('flat') store.actions.setOrderBy('updated') store.actions.setGroupExpanded('alpha', true) diff --git a/packages/client/ui-workspace/tests/workspace-browser.client.spec.tsx b/packages/client/ui-workspace/tests/workspace-browser.client.spec.tsx index 461fecefd0..fbe42fc279 100644 --- a/packages/client/ui-workspace/tests/workspace-browser.client.spec.tsx +++ b/packages/client/ui-workspace/tests/workspace-browser.client.spec.tsx @@ -14,7 +14,7 @@ import { WorkspaceBrowser } from '../src/client/WorkspaceBrowser.tsx' import { zh } from '../src/client/locales.ts' afterEach(cleanup) -beforeEach(() => { localStorage.clear() }) +beforeEach(() => { localStorage.clear(); createWorkspaceViewStore().create().actions.setOrderBy('manual') }) // The seat's key domain is workspace ∪ common; the stub mirrors the real // lookup chain (namespace, then common vocabulary, then the key). From 0a42836fbb748de908919b15ccc63ddf3975a3da Mon Sep 17 00:00:00 2001 From: Tianyi Cui <53024+tianyicui@users.noreply.github.com> Date: Thu, 13 Aug 2026 16:37:49 +0800 Subject: [PATCH 11/22] fix(web): address wildcard host review --- apps/cli/tests/args.spec.ts | 4 ++-- apps/cli/tests/built-bin.e2e.ts | 9 +++++++++ packages/bundle/web-app/src/startup.ts | 6 +++--- packages/client/connection/README.i18n.yaml | 4 ++-- packages/client/connection/README.md | 2 +- packages/client/connection/README.zh.md | 2 +- packages/client/connection/src/api-request-trust.ts | 4 ++-- packages/client/connection/tests/node-half.host.spec.ts | 4 ++-- 8 files changed, 22 insertions(+), 13 deletions(-) diff --git a/apps/cli/tests/args.spec.ts b/apps/cli/tests/args.spec.ts index 89a16921b2..611a098b6f 100644 --- a/apps/cli/tests/args.spec.ts +++ b/apps/cli/tests/args.spec.ts @@ -36,8 +36,8 @@ describe('parseDshArgs', () => { .toEqual({ mode: 'profile', profile: 'tui', patches: [], args: ['--resume', 'abc'] }) expect(parse(['--profile', 'web', '-h'])) .toEqual({ mode: 'profile', profile: 'web', patches: [], args: ['-h'] }) - expect(parse(['web', '--host', '0.0.0.0', '--port', '8080', '--dev'])) - .toEqual({ mode: 'profile', profile: 'web', patches: [], args: ['--host', '0.0.0.0', '--port', '8080', '--dev'] }) + expect(parse(['web', '--host', '127.0.0.1', '--port', '8080', '--dev'])) + .toEqual({ mode: 'profile', profile: 'web', patches: [], args: ['--host', '127.0.0.1', '--port', '8080', '--dev'] }) expect(parse(['--profile', 'headless', 'run', 'the', 'tests'])) .toEqual({ mode: 'profile', profile: 'headless', patches: [], args: ['run', 'the', 'tests'] }) // Launcher flags placed after that boundary belong to the app too. diff --git a/apps/cli/tests/built-bin.e2e.ts b/apps/cli/tests/built-bin.e2e.ts index c989d9ce3e..f887c170d3 100644 --- a/apps/cli/tests/built-bin.e2e.ts +++ b/apps/cli/tests/built-bin.e2e.ts @@ -339,6 +339,15 @@ describe.skipIf(!existsSync(dshBin))('dsh BUILT bin (node lib/bin.js, no tsx)', expect(web.stdout).toContain('--port ') expect(web.stdout).not.toContain('dsh web: http://') + const wildcardHost = await runBuiltBin(['web', '--host', '0.0.0.0'], { + DSH_HOME: home, + DSH_TELEMETRY_DISABLED: '1', + }) + expect(wildcardHost.code).toBe(1) + expect(wildcardHost.stdout).toBe('') + expect(wildcardHost.stderr).toContain('--host 0.0.0.0 is intentionally not supported yet for safety: it would expose remote code execution to the network; use 127.0.0.1 instead') + expect(wildcardHost.stderr).not.toContain('dsh web: http://') + const headlessHelp = await runBuiltBin(['--profile', 'headless', '--help'], { DSH_HOME: home, DSH_TELEMETRY_DISABLED: '1', diff --git a/packages/bundle/web-app/src/startup.ts b/packages/bundle/web-app/src/startup.ts index 55a4b40f2e..af6997cff7 100644 --- a/packages/bundle/web-app/src/startup.ts +++ b/packages/bundle/web-app/src/startup.ts @@ -57,9 +57,9 @@ Examples: /** * Parse and provide the Web invocation as an ordinary Cordis service. The - * command's action publishes the flags this invocation named; an unsupported - * `--host` or non-numeric `--port` is a usage error, so on rejection (and on - * `--help`) nothing is provided. + * command's action publishes the flags this invocation named; `--host 0.0.0.0` + * or a non-numeric `--port` is a usage error, so on rejection (and on `--help`) + * nothing is provided. * @param ctx - plugin context carrying the command line. */ export function apply(ctx: Context): void { diff --git a/packages/client/connection/README.i18n.yaml b/packages/client/connection/README.i18n.yaml index 38c31ad05c..4745644cc5 100644 --- a/packages/client/connection/README.i18n.yaml +++ b/packages/client/connection/README.i18n.yaml @@ -2,5 +2,5 @@ # side as of the last confirmed-consistent state. Both languages carry equal authority; # after editing either side, bring the other along and re-record with: # pnpm run verify-translation-pairing --write packages/client/connection/README.md -README.md: 3315552dd0400697d5a96639598c5f5bb2bb4f5b -README.zh.md: 0dc251f1e5410bd0d74ef450c6d8df3dc9cdab81 +README.md: f0a707cc5f3a962c7852f7323c727d0a39a57b10 +README.zh.md: b529eebf9af93e36b6b92c19964678b7f5a04ea1 diff --git a/packages/client/connection/README.md b/packages/client/connection/README.md index 3315552dd0..f0a707cc5f 100644 --- a/packages/client/connection/README.md +++ b/packages/client/connection/README.md @@ -6,7 +6,7 @@ Wire consumer layer: the client plugin's apply mounts `ctx.connection` (shared a ## /api browser-trust fence -The node half guards every entry under `/api` before bridging or upgrading (`src/api-request-trust.ts`). Every request — browser-marked or not — must present a `Host` that is a loopback authority or matches a `trustedHosts` entry: exact on `host:port` entries, any port on port-less entries, both sides compared through WHATWG normalization (DNS-rebinding defense). There is deliberately no shortcut for unmarked HTTP requests: over plain HTTP a browser attaches neither `Origin` nor Fetch-Metadata to image and navigation reads, so an unmarked request may still be a rebound browser read with a readable response, and Host is the one header rebinding cannot forge; a browser WebSocket handshake carries `Origin` and passes the same comparison. Non-browser clients pass the same fence via loopback, the CLI-derived LAN IP literals, or a declared authority. When markers are present, an attached `Origin` must equal the Host authority, and an explicit `sec-fetch-site: cross-site` marker is refused. A `trustedHosts` entry that is not a bare, canonical `host[:port]` authority — one WHATWG parsing reads back exactly as written — fails the plugin load loudly: parsing would otherwise quietly authorize the hostname inside `harness.internal/path`, or broaden a dangling-colon or zero-padded port to an any-port grant. HTTP failures answer plain 403 before any RPC dispatch; upgrade failures reject the handshake before any event stream starts. A non-loopback (`--host 0.0.0.0`) deployment therefore needs its serving authorities trusted: the dsh CLI derives the machine's LAN IP literals itself and its `--trusted-host` flag declares named ones, so `trustedHosts` in cordis.yml is for compositions the CLI does not boot. The fence is a reachability policy, not authentication; the Web carrier provides no authentication layer. Decision record: [the api browser-trust boundary Agent Note](../../../.agents/notes/implemented/architecture/2026-07-28-api-browser-trust-boundary.md). +The node half guards every entry under `/api` before bridging or upgrading (`src/api-request-trust.ts`). Every request — browser-marked or not — must present a `Host` that is a loopback authority or matches a `trustedHosts` entry: exact on `host:port` entries, any port on port-less entries, both sides compared through WHATWG normalization (DNS-rebinding defense). There is deliberately no shortcut for unmarked HTTP requests: over plain HTTP a browser attaches neither `Origin` nor Fetch-Metadata to image and navigation reads, so an unmarked request may still be a rebound browser read with a readable response, and Host is the one header rebinding cannot forge; a browser WebSocket handshake carries `Origin` and passes the same comparison. Non-browser clients pass the same fence via loopback, deployment-derived LAN IP literals, or a declared authority. When markers are present, an attached `Origin` must equal the Host authority, and an explicit `sec-fetch-site: cross-site` marker is refused. A `trustedHosts` entry that is not a bare, canonical `host[:port]` authority — one WHATWG parsing reads back exactly as written — fails the plugin load loudly: parsing would otherwise quietly authorize the hostname inside `harness.internal/path`, or broaden a dangling-colon or zero-padded port to an any-port grant. HTTP failures answer plain 403 before any RPC dispatch; upgrade failures reject the handshake before any event stream starts. Non-loopback compositions must trust their serving authorities explicitly: the Web runtime derives LAN IP literals from an all-interfaces server config, while `trustedHosts` in cordis.yml and the CLI's `--trusted-host` flag declare named authorities. `dsh web --host 0.0.0.0` is intentionally unsupported until remote access has an authentication layer. The fence is a reachability policy, not authentication; the Web carrier provides no authentication layer. Decision record: [the api browser-trust boundary Agent Note](../../../.agents/notes/implemented/architecture/2026-07-28-api-browser-trust-boundary.md). ## `/api` WebSocket downlinks diff --git a/packages/client/connection/README.zh.md b/packages/client/connection/README.zh.md index 0dc251f1e5..b529eebf9a 100644 --- a/packages/client/connection/README.zh.md +++ b/packages/client/connection/README.zh.md @@ -6,7 +6,7 @@ ## /api 浏览器信任栅栏 -node 半侧在桥接或 upgrade 前守卫 `/api` 下的每个入口(`src/api-request-trust.ts`)。每个请求——无论是否带浏览器标记——`Host` 都必须是回环地址权威,或与某个 `trustedHosts` 条目匹配:带端口的 `host:port` 条目精确匹配,不带端口的条目匹配任意端口,两侧均经 WHATWG 归一化后比较(DNS rebinding 防御)。刻意不为无浏览器标记的 HTTP 请求开捷径:明文 HTTP 下浏览器的图片与导航读取既不带 `Origin` 也不带 Fetch-Metadata,因此无标记请求仍可能是被重绑页面发起的、响应可被读走的读取,而 Host 是重绑唯一伪造不了的请求头;WebSocket 浏览器握手会带 `Origin` 并通过同一道比较。非浏览器客户端经由回环地址、CLI(命令行界面)推导的 LAN IP 字面量或已声明的权威通过同一道栅栏。当标记存在时,如附带 `Origin`,则它必须与 Host 权威完全一致;显式的 `sec-fetch-site: cross-site` 标记一律拒绝。不是纯的、规范形 `host[:port]` 权威的 `trustedHosts` 条目——即 WHATWG 解析读回后与原文不完全一致的——会让插件加载明确报错:否则解析会悄悄授权 `harness.internal/path` 这类笔误里的 hostname,或把悬空冒号、补零端口放大成任意端口授权。HTTP 失败在任何 RPC 分发之前以纯 403 应答,upgrade 失败在启动任何事件流前拒绝握手。因此非回环(`--host 0.0.0.0`)部署需要让自己的服务权威被信任:dsh CLI 会自行推导本机的 LAN IP 字面量,其 `--trusted-host` flag 用于声明具名权威,所以 cordis.yml 中的 `trustedHosts` 面向 CLI 不参与引导的组合。这道栅栏是可达性策略,而不是认证;Web 载体不提供认证层。决策记录:[api 浏览器信任边界 Agent Note](../../../.agents/notes/implemented/architecture/2026-07-28-api-browser-trust-boundary.md)。 +node 半侧在桥接或 upgrade 前守卫 `/api` 下的每个入口(`src/api-request-trust.ts`)。每个请求——无论是否带浏览器标记——`Host` 都必须是回环地址权威,或与某个 `trustedHosts` 条目匹配:带端口的 `host:port` 条目精确匹配,不带端口的条目匹配任意端口,两侧均经 WHATWG 归一化后比较(DNS rebinding 防御)。刻意不为无浏览器标记的 HTTP 请求开捷径:明文 HTTP 下浏览器的图片与导航读取既不带 `Origin` 也不带 Fetch-Metadata,因此无标记请求仍可能是被重绑页面发起的、响应可被读走的读取,而 Host 是重绑唯一伪造不了的请求头;WebSocket 浏览器握手会带 `Origin` 并通过同一道比较。非浏览器客户端经由回环地址、部署推导的 LAN IP 字面量或已声明的权威通过同一道栅栏。当标记存在时,如附带 `Origin`,则它必须与 Host 权威完全一致;显式的 `sec-fetch-site: cross-site` 标记一律拒绝。不是纯的、规范形 `host[:port]` 权威的 `trustedHosts` 条目——即 WHATWG 解析读回后与原文不完全一致的——会让插件加载明确报错:否则解析会悄悄授权 `harness.internal/path` 这类笔误里的 hostname,或把悬空冒号、补零端口放大成任意端口授权。HTTP 失败在任何 RPC 分发之前以纯 403 应答,upgrade 失败在启动任何事件流前拒绝握手。非回环组合必须显式信任其服务权威:Web 运行时从全接口服务器配置推导 LAN IP 字面量,cordis.yml 中的 `trustedHosts` 与 CLI(命令行界面)的 `--trusted-host` flag 则声明具名权威。`dsh web --host 0.0.0.0` 在远程访问具备认证层之前有意不受支持。这道栅栏是可达性策略,而不是认证;Web 载体不提供认证层。决策记录:[api 浏览器信任边界 Agent Note](../../../.agents/notes/implemented/architecture/2026-07-28-api-browser-trust-boundary.md)。 ## `/api` WebSocket 下行 diff --git a/packages/client/connection/src/api-request-trust.ts b/packages/client/connection/src/api-request-trust.ts index 141092c63b..ea8914ccc6 100644 --- a/packages/client/connection/src/api-request-trust.ts +++ b/packages/client/connection/src/api-request-trust.ts @@ -7,8 +7,8 @@ * nor Fetch-Metadata to reads (images and navigations — those * headers go only to trustworthy destinations), so an unmarked request may * still be a rebound browser read and Host is the one header rebinding cannot - * forge. Non-browser and remote clients pass the same fence via loopback, the - * CLI-derived LAN IP literals, or a declared `trustedHosts` authority. + * forge. Non-browser and remote clients pass the same fence via loopback, + * deployment-derived LAN IP literals, or a declared `trustedHosts` authority. * Network reachability and authentication stay out of scope: binding policy * belongs to the webserver config, and this fence is not an auth layer. */ diff --git a/packages/client/connection/tests/node-half.host.spec.ts b/packages/client/connection/tests/node-half.host.spec.ts index 6c8b42b5ab..0b30ce6520 100644 --- a/packages/client/connection/tests/node-half.host.spec.ts +++ b/packages/client/connection/tests/node-half.host.spec.ts @@ -199,8 +199,8 @@ describe('connection node half', () => { const loopback = fakeResponse() await routes[0]!.handler(fakeRequest({ host: '127.0.0.1:3080' }), loopback.response) expect(loopback.state.status).toBe(404) - // LAN authority declared as a port-less IP literal — the shape the CLI - // derives for `--host 0.0.0.0` — passes markerless curl on any port. + // An all-interfaces composition derives port-less LAN IP literals, which + // pass markerless curl on any port. const lan = fakeResponse() await routes[0]!.handler(fakeRequest({ host: '192.168.1.5:3080' }), lan.response) expect(lan.state.status).toBe(404) From 65f679b33a3e4ae003a015b406b756ccf9e638de Mon Sep 17 00:00:00 2001 From: Chinesezjc Date: Thu, 13 Aug 2026 16:54:57 +0800 Subject: [PATCH 12/22] ci: split failover switch into per-platform Linux and Windows variables Replace the single DSH_CI_FAILOVER variable with two independent switches so an outage on one platform no longer retargets the other: - DSH_CI_FAILOVER_LINUX: the three required Linux workers (node-24, node-24-coverage, node-24-consumers) and the all-checks-passed verdict, which resolves its pool to vm-backup and keeps its concurrency and cache-restore branches. - DSH_CI_FAILOVER_WINDOWS: the non-blocking windows-native job, which resolves to the dsh-win-ci pool. all-checks-passed rides the Linux switch because it aggregates the required Linux workers and runs on the vm-backup pool. The Dependabot exclusion is preserved on both switches. The failover runbook (EN/ZH) and its translation pairing, plus the docs that referenced the old variable, are updated in the same change. --- ...ence-based-larger-hosted-runners.i18n.yaml | 4 +- ...22-evidence-based-larger-hosted-runners.md | 2 +- ...evidence-based-larger-hosted-runners.zh.md | 2 +- .../2026-07-26-ci-failover-runbook.i18n.yaml | 4 +- .../process/2026-07-26-ci-failover-runbook.md | 22 ++++--- .../2026-07-26-ci-failover-runbook.zh.md | 22 ++++--- .github/AGENTS.md | 2 +- .github/workflows/ci.yml | 62 ++++++++++--------- scripts/ci-workflow.spec.ts | 25 +++++++- 9 files changed, 88 insertions(+), 57 deletions(-) diff --git a/.agents/notes/implemented/process/2026-07-22-evidence-based-larger-hosted-runners.i18n.yaml b/.agents/notes/implemented/process/2026-07-22-evidence-based-larger-hosted-runners.i18n.yaml index 314705f776..4580a534c5 100644 --- a/.agents/notes/implemented/process/2026-07-22-evidence-based-larger-hosted-runners.i18n.yaml +++ b/.agents/notes/implemented/process/2026-07-22-evidence-based-larger-hosted-runners.i18n.yaml @@ -2,5 +2,5 @@ # side as of the last confirmed-consistent state. Both languages carry equal authority; # after editing either side, bring the other along and re-record with: # pnpm run verify-translation-pairing --write .agents/notes/implemented/process/2026-07-22-evidence-based-larger-hosted-runners.md -2026-07-22-evidence-based-larger-hosted-runners.md: 84c951809891b4936549a2f429dc7efc99833c1b -2026-07-22-evidence-based-larger-hosted-runners.zh.md: bb5b585da26ffd15b5a1096cd40293f64fb69c79 +2026-07-22-evidence-based-larger-hosted-runners.md: e0d919851d99eac6539a25c63c9baeb49f76335f +2026-07-22-evidence-based-larger-hosted-runners.zh.md: 673bd7643506f022b640d14918dd7c883fb60e36 diff --git a/.agents/notes/implemented/process/2026-07-22-evidence-based-larger-hosted-runners.md b/.agents/notes/implemented/process/2026-07-22-evidence-based-larger-hosted-runners.md index 84c9518098..e0d919851d 100644 --- a/.agents/notes/implemented/process/2026-07-22-evidence-based-larger-hosted-runners.md +++ b/.agents/notes/implemented/process/2026-07-22-evidence-based-larger-hosted-runners.md @@ -52,7 +52,7 @@ The process-bound coverage project contains exactly five suite files. Thirty-two Complete serial Linux, macOS, and Windows references run only when `master` moves. Pull requests use the enterprise required path plus standard-hosted compatibility jobs, while other larger-runner sizes run only by manual dispatch. -An additional serial Linux reference runs on the in-house self-hosted pool (`vm-backup` label: a 64-core VM with six always-on systemd-managed runner instances) on every `master` push. It is a hot-standby drill, not a required check: each run re-proves that the persistent VM can execute the complete unsharded aggregate. The actual switch is pre-wired: the three required Linux jobs resolve their pool through the writer-manageable `DSH_CI_FAILOVER` repository variable, so an outage response is setting one variable and re-running — no merge, which would be deadlocked behind the failing checks themselves ([runbook](2026-07-26-ci-failover-runbook.md)). The standby lane is push-triggered, so it always executes the base branch's workflow definition. Under failover, however, `pull_request` jobs do reach these runners with the PR merge ref's own workflow definition — the trust boundary is repository membership (the repository is private with forking disabled, and the selectors exclude Dependabot), as the [failover runbook](2026-07-26-ci-failover-runbook.md) records. +An additional serial Linux reference runs on the in-house self-hosted pool (`vm-backup` label: a 64-core VM with six always-on systemd-managed runner instances) on every `master` push. It is a hot-standby drill, not a required check: each run re-proves that the persistent VM can execute the complete unsharded aggregate. The actual switch is pre-wired: the three required Linux jobs resolve their pool through the writer-manageable `DSH_CI_FAILOVER_LINUX` repository variable, so an outage response is setting one variable and re-running — no merge, which would be deadlocked behind the failing checks themselves ([runbook](2026-07-26-ci-failover-runbook.md)). The standby lane is push-triggered, so it always executes the base branch's workflow definition. Under failover, however, `pull_request` jobs do reach these runners with the PR merge ref's own workflow definition — the trust boundary is repository membership (the repository is private with forking disabled, and the selectors exclude Dependabot), as the [failover runbook](2026-07-26-ci-failover-runbook.md) records. ## Alternatives considered diff --git a/.agents/notes/implemented/process/2026-07-22-evidence-based-larger-hosted-runners.zh.md b/.agents/notes/implemented/process/2026-07-22-evidence-based-larger-hosted-runners.zh.md index bb5b585da2..673bd76435 100644 --- a/.agents/notes/implemented/process/2026-07-22-evidence-based-larger-hosted-runners.zh.md +++ b/.agents/notes/implemented/process/2026-07-22-evidence-based-larger-hosted-runners.zh.md @@ -52,7 +52,7 @@ Windows 仓库工作在超过 16 核后收益很小,但 32 核池可以让完 只有在 `master` 移动时,才运行完整的 Linux、macOS 和 Windows 串行参考。拉取请求使用企业级运行器必需路径和标准托管兼容性作业,其他大型运行器规格仅通过手动触发运行。 -另有一条串行 Linux 参考在每次 `master` 推送时运行于公司自有的自托管池(`vm-backup` 标签:一台 64 核虚拟机,运行 6 个常驻的 systemd 管理运行器实例)。它是热备演练而非必需检查:每次运行都重新证明这台持久化虚拟机能够执行完整的未分片聚合流程。实际切换机制已预先布线:三个必需 Linux 作业通过写入权限持有者可管理的仓库变量 `DSH_CI_FAILOVER` 解析运行器池,因此故障响应就是设置一个变量并重跑——无需合并(合并本身会被正在失败的检查阻塞,形成死锁)([切换手册](2026-07-26-ci-failover-runbook.md))。该热备通道由 push 触发,执行的始终是基础分支自身的工作流定义。但需要注意:故障切换期间,`pull_request` 作业确实会带着 PR merge 引用自带的工作流定义到达这些运行器——信任边界是仓库成员资格(仓库为私有且禁用 fork,选择器排除 Dependabot),详见[故障切换手册](2026-07-26-ci-failover-runbook.md)的记录。 +另有一条串行 Linux 参考在每次 `master` 推送时运行于公司自有的自托管池(`vm-backup` 标签:一台 64 核虚拟机,运行 6 个常驻的 systemd 管理运行器实例)。它是热备演练而非必需检查:每次运行都重新证明这台持久化虚拟机能够执行完整的未分片聚合流程。实际切换机制已预先布线:三个必需 Linux 作业通过写入权限持有者可管理的仓库变量 `DSH_CI_FAILOVER_LINUX` 解析运行器池,因此故障响应就是设置一个变量并重跑——无需合并(合并本身会被正在失败的检查阻塞,形成死锁)([切换手册](2026-07-26-ci-failover-runbook.md))。该热备通道由 push 触发,执行的始终是基础分支自身的工作流定义。但需要注意:故障切换期间,`pull_request` 作业确实会带着 PR merge 引用自带的工作流定义到达这些运行器——信任边界是仓库成员资格(仓库为私有且禁用 fork,选择器排除 Dependabot),详见[故障切换手册](2026-07-26-ci-failover-runbook.md)的记录。 ## 曾考虑的替代方案 diff --git a/.agents/notes/implemented/process/2026-07-26-ci-failover-runbook.i18n.yaml b/.agents/notes/implemented/process/2026-07-26-ci-failover-runbook.i18n.yaml index ed819bc19e..2dd42d87db 100644 --- a/.agents/notes/implemented/process/2026-07-26-ci-failover-runbook.i18n.yaml +++ b/.agents/notes/implemented/process/2026-07-26-ci-failover-runbook.i18n.yaml @@ -2,5 +2,5 @@ # side as of the last confirmed-consistent state. Both languages carry equal authority; # after editing either side, bring the other along and re-record with: # pnpm run verify-translation-pairing --write .agents/notes/implemented/process/2026-07-26-ci-failover-runbook.md -2026-07-26-ci-failover-runbook.md: 90ef2905bec86911697e552c0c1eac96ea0d3a18 -2026-07-26-ci-failover-runbook.zh.md: 5c8fd0e90ae31e3622ae6b49217591a54b84c351 +2026-07-26-ci-failover-runbook.md: b4522e623ffb76f3fd33d242b21c2d1d9ff2eadf +2026-07-26-ci-failover-runbook.zh.md: 58ba7ffee013d38f06afe097362f5c23f04b8121 diff --git a/.agents/notes/implemented/process/2026-07-26-ci-failover-runbook.md b/.agents/notes/implemented/process/2026-07-26-ci-failover-runbook.md index 90ef2905be..b4522e623f 100644 --- a/.agents/notes/implemented/process/2026-07-26-ci-failover-runbook.md +++ b/.agents/notes/implemented/process/2026-07-26-ci-failover-runbook.md @@ -6,11 +6,11 @@ English | [中文](2026-07-26-ci-failover-runbook.zh.md) ## Problem -The three required Linux worker jobs in [CI](../../../../.github/workflows/ci.yml) (`node 24 / static`, `node 24 / coverage`, `node 24 / snapshots and artifacts`) run on the hosted enterprise 32-core pools; the required verdict job that aggregates them (`all checks passed`) runs on standard `ubuntu-latest`; the independent native Windows job (`windows node 24 / native complete`) runs on the hosted `dsh-windows-2025-16core` larger runner. When the enterprise pools degrade — jobs queue indefinitely or the enterprise labels vanish — every open pull request becomes unmergeable, and the ordinary recovery of merging a fix is itself deadlocked behind the very required checks that cannot run. **Scope: this switch recovers an enterprise Linux-pool outage AND a hosted Windows-pool outage.** The verdict's other required dependencies (`node-compat`, `python-sdk`, `windows`) stay on standard hosted runners by design (the portable boundary); in a broader GitHub-hosted capacity failure that also takes out the standard pools, those dependencies still block `all checks passed`. An outage therefore needs a switch any responder with repository write access can throw without merging anything. +The three required Linux worker jobs in [CI](../../../../.github/workflows/ci.yml) (`node 24 / static`, `node 24 / coverage`, `node 24 / snapshots and artifacts`) run on the hosted enterprise 32-core pools; the required verdict job that aggregates them (`all checks passed`) runs on standard `ubuntu-latest`; the independent native Windows job (`windows node 24 / native complete`) runs on the hosted `dsh-windows-2025-16core` larger runner. When the enterprise pools degrade — jobs queue indefinitely or the enterprise labels vanish — every open pull request becomes unmergeable, and the ordinary recovery of merging a fix is itself deadlocked behind the very required checks that cannot run. **Scope: two independent switches, one per platform.** `DSH_CI_FAILOVER_LINUX` recovers an enterprise Linux-pool outage (the three required Linux workers plus the `all checks passed` verdict); `DSH_CI_FAILOVER_WINDOWS` recovers a hosted Windows-pool outage (the native Windows job). A Linux-pool outage need not retarget the native Windows job and vice versa. The verdict's other required dependencies (`node-compat`, `python-sdk`, `windows`) stay on standard hosted runners by design (the portable boundary); in a broader GitHub-hosted capacity failure that also takes out the standard pools, those dependencies still block `all checks passed`. An outage therefore needs a switch any responder with repository write access can throw without merging anything. ## Decision -Each of the three required Linux worker jobs, the independent native Windows job, and the `all checks passed` verdict job — which would otherwise stay queued on the failed pool even after every worker passed — resolves its runner pool through the `DSH_CI_FAILOVER` repository variable. Unset (normal), they run on the hosted enterprise pools. Set to `selfhosted` by any repository writer, all five retarget onto the in-house self-hosted pools: the Linux jobs and verdict onto the `vm-backup` pool, coverage and snapshot concurrency drop to shared-VM bounds, and the hosted-path pnpm cache restores are skipped; the native Windows job onto the `dsh-win-ci` pool. The switch is writer-manageable repository state, not a merge, so it works while every check is red. The in-house pools' readiness is continuously re-proven by the `serial / linux (self-hosted standby)` and `serial / windows (self-hosted standby)` lanes, which run the complete unsharded aggregates on every master push. +Each of the three required Linux worker jobs, the independent native Windows job, and the `all checks passed` verdict job — which would otherwise stay queued on the failed pool even after every worker passed — resolves its runner pool through a repository variable, and the switch is split by platform so an outage on one platform does not retarget the other. The three Linux workers and the `all checks passed` verdict (whose `needs` are the required Linux workers and which runs on the `vm-backup` pool) resolve through `DSH_CI_FAILOVER_LINUX`; the native Windows job resolves through `DSH_CI_FAILOVER_WINDOWS`. Unset (normal), they run on the hosted enterprise pools. Set to `selfhosted` by any repository writer, the corresponding jobs retarget onto the in-house self-hosted pool: under `DSH_CI_FAILOVER_LINUX`, the Linux jobs and verdict move onto the `vm-backup` pool, coverage and snapshot concurrency drop to shared-VM bounds, and the hosted-path pnpm cache restores are skipped; under `DSH_CI_FAILOVER_WINDOWS`, the native Windows job moves onto the `dsh-win-ci` pool. Each switch is writer-manageable repository state, not a merge, so it works while every check is red. The in-house pools' readiness is continuously re-proven by the `serial / linux (self-hosted standby)` and `serial / windows (self-hosted standby)` lanes, which run the complete unsharded aggregates on every master push. `ci.yml` exempts exactly one event from `cancel-in-progress` (`${{ github.event_name != 'push' }}`), so one master push does not cancel the drill still running from the previous one. Each drill runs its complete unsharded aggregate with one gate worker, which takes longer than the interval between master merges; under unconditional cancellation a drill is superseded before reaching a verdict and the lane yields no readiness evidence for a responder to check. @@ -28,13 +28,15 @@ The decision belongs at workflow level because cancellation applies to the whole ### Switch (any repository writer, ~1 minute, no merge) -1. Repository **Settings → Secrets and variables → Actions → Variables → New repository variable**: name `DSH_CI_FAILOVER`, value `selfhosted`. +The two switches are independent: flip only the one whose platform is degraded. + +1. Repository **Settings → Secrets and variables → Actions → Variables → New repository variable**: name `DSH_CI_FAILOVER_LINUX` (Linux pool outage) or `DSH_CI_FAILOVER_WINDOWS` (Windows pool outage), value `selfhosted`. 2. Retrigger the required jobs so they re-resolve their pool. Jobs already **queued** for the hosted labels do not retarget and cannot be re-run in place, so for the documented indefinite-queue outage, cancel the stuck run and re-run all jobs, or push a new commit; "Re-run failed jobs" only helps once a job has actually failed rather than queued. -3. That is the entire switch. Under failover the workflow also, automatically: drops `DSH_COVERAGE_MAX_WORKERS` to 8 and `DSH_SNAPSHOT_MAX_CONCURRENCY` to 12 (sized for six always-on instances: worst case 6 × 8 = 48 coverage workers on the 64-core VM) (shared-VM contention bounds), and skips the hosted-path pnpm cache restores (the VM's persistent store serves warm installs). +3. That is the entire switch. Under Linux failover the workflow also, automatically: drops `DSH_COVERAGE_MAX_WORKERS` to 8 and `DSH_SNAPSHOT_MAX_CONCURRENCY` to 12 (sized for six always-on instances: worst case 6 × 8 = 48 coverage workers on the 64-core VM) (shared-VM contention bounds), and skips the hosted-path pnpm cache restores (the VM's persistent store serves warm installs). The Windows switch has no such concurrency or cache branches; it only retargets the native Windows job's pool. -#**Dependabot exception.** All five selectors deliberately exclude `dependabot[bot]`: under failover, Dependabot PRs stay queued for the hosted pool rather than executing dependency-supplied code on the persistent VMs. A Dependabot PR that remains queued during an outage is expected behavior, not a failed switch; it completes when the hosted pool recovers. +#**Dependabot exception.** Both switches' selectors deliberately exclude `dependabot[bot]`: under failover, Dependabot PRs stay queued for the hosted pool rather than executing dependency-supplied code on the persistent VMs. A Dependabot PR that remains queued during an outage is expected behavior, not a failed switch; it completes when the hosted pool recovers. -**Who can flip the variable.** GitHub's API lets any collaborator with write access manage repository variables, so the switch is writer-level, not strictly admin-only. In this repository's trust model that is not an escalation: the runner groups admit all workflows of this private, fork-disabled repository (a deliberate trade to make PR-ref failover possible at all), so any writer could already reach the VMs by pushing a branch workflow. The boundary against untrusted code is repository membership; the variable only routes work for members. +**Who can flip the variable.** GitHub's API lets any collaborator with write access manage repository variables, so each switch is writer-level, not strictly admin-only. In this repository's trust model that is not an escalation: the runner groups admit all workflows of this private, fork-disabled repository (a deliberate trade to make PR-ref failover possible at all), so any writer could already reach the VMs by pushing a branch workflow. The boundary against untrusted code is repository membership; the variables only route work for members. ## Capacity during failover @@ -43,18 +45,18 @@ Six always-on instances absorb normal PR traffic (the pool's steady-state load i ### Switch back -Delete the `DSH_CI_FAILOVER` variable (or set it to anything other than `selfhosted`). New runs resolve back to the hosted enterprise pools. Remove any extra instances that were registered during the incident. +Delete the `DSH_CI_FAILOVER_LINUX` or `DSH_CI_FAILOVER_WINDOWS` variable (or set it to anything other than `selfhosted`). New runs resolve back to the hosted enterprise pools. Remove any extra instances that were registered during the incident. ### Trust boundary -The variable is writer-manageable repository state; a pull request event itself can neither set it nor read a different value into effect, and the selector expressions live in workflow definitions. Note that under failover, `pull_request` runs execute the PR merge ref's own workflow definition — the boundary against untrusted code is repository membership (private, forking disabled, Dependabot excluded by the selectors), not the variable. Note on runner-group policy: pinning the runner group to the master-ref workflow is **incompatible** with this failover — the four failover jobs are `pull_request` runs evaluated from PR merge refs, and a master-pinned group leaves them queued (observed live on 2026-07-27; the group was widened to all workflows of this repository to unblock the switch). A stricter runner-side policy therefore costs PR failover; the shipped posture accepts repository-scoped, all-workflow group access. +The variables are writer-manageable repository state; a pull request event itself can neither set them nor read a different value into effect, and the selector expressions live in workflow definitions. Note that under failover, `pull_request` runs execute the PR merge ref's own workflow definition — the boundary against untrusted code is repository membership (private, forking disabled, Dependabot excluded by the selectors), not the variable. Note on runner-group policy: pinning the runner group to the master-ref workflow is **incompatible** with this failover — the five failover jobs are `pull_request` runs evaluated from PR merge refs, and a master-pinned group leaves them queued (observed live on 2026-07-27; the group was widened to all workflows of this repository to unblock the switch). A stricter runner-side policy therefore costs PR failover; the shipped posture accepts repository-scoped, all-workflow group access. ## Alternatives considered **Merge a workflow change to switch pools.** Rejected because the outage that motivates the switch is exactly the state in which no PR can merge: the required checks are the ones failing. A repository variable is writer-manageable state that takes effect on re-run without a merge. -**Keep the self-hosted pool always in the required path.** Rejected because it trades hosted-pool availability for the in-house VM's, moving a single point of failure rather than adding a fallback. The variable keeps the hosted pools primary and the self-hosted pool a proven, one-action standby. +**Keep the self-hosted pool always in the required path.** Rejected because it trades hosted-pool availability for the in-house VM's, moving a single point of failure rather than adding a fallback. The variables keep the hosted pools primary and the self-hosted pools proven, one-action standbys; splitting them by platform means an outage on one platform does not retarget the other. ## Consequences -Recovering from a hosted-pool outage is a single variable (any writer) plus a re-run, with no merge on the critical path. The cost is a second runner topology to keep working: the standby lane exercises it on every master push so the failover target never goes stale, and the concurrency and cache-restore branches in `ci.yml` carry a `selfhosted` leg that must stay in step with the hosted leg. +Recovering from a hosted-pool outage is flipping the affected platform's variable (any writer) plus a re-run, with no merge on the critical path. The cost is a second runner topology per platform to keep working: the standby lanes exercise them on every master push so the failover targets never go stale, and the concurrency and cache-restore branches in `ci.yml` carry a `selfhosted` leg (Linux only) that must stay in step with the hosted leg. Splitting the switch by platform adds one more variable to manage but bounds the blast radius of each switch to the jobs of a single platform. diff --git a/.agents/notes/implemented/process/2026-07-26-ci-failover-runbook.zh.md b/.agents/notes/implemented/process/2026-07-26-ci-failover-runbook.zh.md index 5c8fd0e90a..58ba7ffee0 100644 --- a/.agents/notes/implemented/process/2026-07-26-ci-failover-runbook.zh.md +++ b/.agents/notes/implemented/process/2026-07-26-ci-failover-runbook.zh.md @@ -6,11 +6,11 @@ Status: implemented ## 问题 -[CI](../../../../.github/workflows/ci.yml) 中三个必需的 Linux 工作作业(`node 24 / static`、`node 24 / coverage`、`node 24 / snapshots and artifacts`)运行在托管的企业级 32 核池上;聚合它们的必需判定作业(`all checks passed`)运行在标准 `ubuntu-latest` 上;独立的原生 Windows 作业(`windows node 24 / native complete`)运行在托管的 `dsh-windows-2025-16core` 大型运行器上。当企业池发生故障——作业无限排队或企业标签消失——所有开启的拉取请求都无法合并,而"合并一个修复"这一常规恢复手段本身正被那些无法运行的必需检查死锁。**适用范围:本切换恢复的是企业级 Linux 池故障与托管 Windows 池故障。**判定作业的其余必需依赖(`node-compat`、`python-sdk`、`windows`)按设计留在标准托管运行器上(可移植边界);若更大范围的 GitHub 托管容量故障连标准池一并击倒,这些依赖仍会阻塞 `all checks passed`。因此故障需要一个任何具备仓库写权限的响应者都能在不合并任何代码的情况下触发的开关。 +[CI](../../../../.github/workflows/ci.yml) 中三个必需的 Linux 工作作业(`node 24 / static`、`node 24 / coverage`、`node 24 / snapshots and artifacts`)运行在托管的企业级 32 核池上;聚合它们的必需判定作业(`all checks passed`)运行在标准 `ubuntu-latest` 上;独立的原生 Windows 作业(`windows node 24 / native complete`)运行在托管的 `dsh-windows-2025-16core` 大型运行器上。当企业池发生故障——作业无限排队或企业标签消失——所有开启的拉取请求都无法合并,而"合并一个修复"这一常规恢复手段本身正被那些无法运行的必需检查死锁。**适用范围:两个独立开关,每个平台一个。**`DSH_CI_FAILOVER_LINUX` 恢复企业级 Linux 池故障(三个必需的 Linux 工作作业加 `all checks passed` 判定作业);`DSH_CI_FAILOVER_WINDOWS` 恢复托管 Windows 池故障(原生 Windows 作业)。Linux 池故障无需重定向原生 Windows 作业,反之亦然。判定作业的其余必需依赖(`node-compat`、`python-sdk`、`windows`)按设计留在标准托管运行器上(可移植边界);若更大范围的 GitHub 托管容量故障连标准池一并击倒,这些依赖仍会阻塞 `all checks passed`。因此故障需要一个任何具备仓库写权限的响应者都能在不合并任何代码的情况下触发的开关。 ## 决策 -三个必需的 Linux 工作作业、独立的原生 Windows 作业,以及 `all checks passed` 判定作业(若不随切换,即使全部工作作业通过,它仍会滞留在故障池的队列中)——各自通过仓库变量 `DSH_CI_FAILOVER` 解析运行器池。变量不存在(正常)时它们运行在托管企业池上;由任何具备写权限的协作者设为 `selfhosted` 时,五个作业全部切换到公司自有的自托管池:Linux 作业与判定作业切到 `vm-backup` 池,覆盖率与快照的并发降到共享虚拟机上限,并跳过托管路径的 pnpm 缓存恢复;原生 Windows 作业切到 `dsh-win-ci` 池。这个开关是写者可管理的仓库状态而非一次合并,因此在所有检查都是红色时仍然有效。自有池的就绪状态由 `serial / linux (self-hosted standby)` 与 `serial / windows (self-hosted standby)` 通道持续验证——每次 master 推送都在其上运行完整的未分片聚合流程。 +三个必需的 Linux 工作作业、独立的原生 Windows 作业,以及 `all checks passed` 判定作业(若不随切换,即使全部工作作业通过,它仍会滞留在故障池的队列中)——各自通过仓库变量解析运行器池,且开关按平台拆分,使一个平台的故障不会重定向另一个平台。三个 Linux 工作作业与 `all checks passed` 判定作业(其 `needs` 是必需的 Linux 工作作业,且运行在 `vm-backup` 池上)通过 `DSH_CI_FAILOVER_LINUX` 解析;原生 Windows 作业通过 `DSH_CI_FAILOVER_WINDOWS` 解析。变量不存在(正常)时它们运行在托管企业池上;由任何具备写权限的协作者设为 `selfhosted` 时,对应作业切换到公司自有的自托管池:`DSH_CI_FAILOVER_LINUX` 下,Linux 作业与判定作业切到 `vm-backup` 池,覆盖率与快照的并发降到共享虚拟机上限,并跳过托管路径的 pnpm 缓存恢复;`DSH_CI_FAILOVER_WINDOWS` 下,原生 Windows 作业切到 `dsh-win-ci` 池。每个开关都是写者可管理的仓库状态而非一次合并,因此在所有检查都是红色时仍然有效。自有池的就绪状态由 `serial / linux (self-hosted standby)` 与 `serial / windows (self-hosted standby)` 通道持续验证——每次 master 推送都在其上运行完整的未分片聚合流程。 `ci.yml` 只豁免一个事件不做取消(`${{ github.event_name != 'push' }}`),因此一次 master 推送不会取消上一次推送留下的、仍在运行的演练。每次演练以单门禁工作进程执行完整的未分片聚合流程,耗时长于 master 合并的间隔;在无条件取消下,演练会在得出结论前被后续运行取代,该通道无法产出供响应者查看的就绪证据。 @@ -28,13 +28,15 @@ Status: implemented ### 切换步骤(任何具备写权限的协作者,约 1 分钟,无需合并) -1. 仓库 **Settings → Secrets and variables → Actions → Variables → New repository variable**:名称 `DSH_CI_FAILOVER`,值 `selfhosted`。 +两个开关相互独立:只切换发生故障的那个平台。 + +1. 仓库 **Settings → Secrets and variables → Actions → Variables → New repository variable**:名称 `DSH_CI_FAILOVER_LINUX`(Linux 池故障)或 `DSH_CI_FAILOVER_WINDOWS`(Windows 池故障),值 `selfhosted`。 2. 重新触发必需作业,使其重新解析运行器池。已经为托管标签**排队**的作业不会重定向,也无法原地 re-run,因此对于本手册所述的无限排队故障,应取消卡住的运行并 re-run all jobs,或推送一个新提交;“Re-run failed jobs”只有在作业真正失败(而非仍在排队)时才有用。 -3. 切换到此完成。故障切换状态下工作流还会自动:把 `DSH_COVERAGE_MAX_WORKERS` 降为 8、`DSH_SNAPSHOT_MAX_CONCURRENCY` 降为 12(按 6 个常驻实例定容:最坏情况下,6 × 8 = 48 个覆盖率工作进程运行在 64 核虚拟机上)(共享虚拟机的争抢上限),并跳过托管路径的 pnpm 缓存恢复(虚拟机的持久 store 直接提供热安装)。 +3. 切换到此完成。Linux 故障切换状态下工作流还会自动:把 `DSH_COVERAGE_MAX_WORKERS` 降为 8、`DSH_SNAPSHOT_MAX_CONCURRENCY` 降为 12(按 6 个常驻实例定容:最坏情况下,6 × 8 = 48 个覆盖率工作进程运行在 64 核虚拟机上)(共享虚拟机的争抢上限),并跳过托管路径的 pnpm 缓存恢复(虚拟机的持久 store 直接提供热安装)。Windows 开关没有这类并发或缓存分支;它只重定向原生 Windows 作业的运行器池。 -#**Dependabot 例外。**五个选择器都刻意排除了 `dependabot[bot]`:故障切换期间,Dependabot 拉取请求继续在托管池排队,而不是把依赖项提供的代码放到持久化虚拟机上执行。故障期间 Dependabot PR 持续排队是预期行为而非切换失败;托管池恢复后它会自行完成。 +#**Dependabot 例外。**两个开关的选择器都刻意排除了 `dependabot[bot]`:故障切换期间,Dependabot 拉取请求继续在托管池排队,而不是把依赖项提供的代码放到持久化虚拟机上执行。故障期间 Dependabot PR 持续排队是预期行为而非切换失败;托管池恢复后它会自行完成。 -**谁能扳动这个变量。**GitHub 的 API 允许任何具有写权限的协作者管理仓库变量,因此该开关实际是写者级而非严格的管理员级。在本仓库的信任模型下这并不构成升权:runner group 接纳本私有、禁 fork 仓库的全部工作流(这是让 PR 引用的故障切换得以成立的刻意取舍),因此任何写者本就可以通过推送分支工作流触达这台虚拟机。抵御不可信代码的边界是仓库成员资格;变量只是为成员路由工作。 +**谁能扳动这个变量。**GitHub 的 API 允许任何具有写权限的协作者管理仓库变量,因此每个开关实际是写者级而非严格的管理员级。在本仓库的信任模型下这并不构成升权:runner group 接纳本私有、禁 fork 仓库的全部工作流(这是让 PR 引用的故障切换得以成立的刻意取舍),因此任何写者本就可以通过推送分支工作流触达这台虚拟机。抵御不可信代码的边界是仓库成员资格;变量只是为成员路由工作。 ## 切换期间的容量 @@ -43,18 +45,18 @@ Status: implemented ### 切回 -删除 `DSH_CI_FAILOVER` 变量(或改为 `selfhosted` 以外的任何值),新的运行即解析回托管企业池。若故障期间追加注册过实例,将其移除。 +删除 `DSH_CI_FAILOVER_LINUX` 或 `DSH_CI_FAILOVER_WINDOWS` 变量(或改为 `selfhosted` 以外的任何值),新的运行即解析回托管企业池。若故障期间追加注册过实例,将其移除。 ### 信任边界 -该变量是写者可管理的仓库状态;`pull_request` 事件本身既不能设置它,也不能让不同的值生效,选择器表达式存在于工作流定义中。需要注意:故障切换期间,`pull_request` 运行执行的是 PR merge 引用自带的工作流定义——抵御不可信代码的边界是仓库成员资格(私有、禁 fork、选择器排除 Dependabot),而非该变量。关于 runner group 策略的说明:把 runner group 绑定到 master 引用的工作流与本故障切换机制**不兼容**——四个故障切换作业是从 PR merge 引用求值的 `pull_request` 运行,master 绑定的组会让它们持续排队(2026-07-27 实际故障中亲历;当时将组放宽为本仓库全部工作流才疏通了切换)。更严格的运行器侧策略以牺牲 PR 故障切换为代价;当前采用的形态是仓库范围、全工作流的组访问。 +这些变量是写者可管理的仓库状态;`pull_request` 事件本身既不能设置它们,也不能让不同的值生效,选择器表达式存在于工作流定义中。需要注意:故障切换期间,`pull_request` 运行执行的是 PR merge 引用自带的工作流定义——抵御不可信代码的边界是仓库成员资格(私有、禁 fork、选择器排除 Dependabot),而非该变量。关于 runner group 策略的说明:把 runner group 绑定到 master 引用的工作流与本故障切换机制**不兼容**——五个故障切换作业是从 PR merge 引用求值的 `pull_request` 运行,master 绑定的组会让它们持续排队(2026-07-27 实际故障中亲历;当时将组放宽为本仓库全部工作流才疏通了切换)。更严格的运行器侧策略以牺牲 PR 故障切换为代价;当前采用的形态是仓库范围、全工作流的组访问。 ## 曾考虑的替代方案 **通过合并一次工作流改动来切换池。** 否决,因为触发切换的故障状态恰恰是任何 PR 都无法合并的状态:必需检查正是失败的那些。仓库变量是写者可管理的状态,重跑即生效,无需合并。 -**让自托管池长期处于必需路径中。** 否决,因为这是拿托管池的可用性去换自有虚拟机的可用性,只是搬移了单点故障而非增加回退。该变量让托管池保持主路径,自托管池作为一个经过验证、一步即可启用的热备。 +**让自托管池长期处于必需路径中。** 否决,因为这是拿托管池的可用性去换自有虚拟机的可用性,只是搬移了单点故障而非增加回退。这些变量让托管池保持主路径,自托管池作为一个经过验证、一步即可启用的热备;按平台拆分意味着一个平台的故障不会重定向另一个平台。 ## 后果 -从托管池故障中恢复只需一个变量(任何写者可设)加一次重跑,关键路径上没有合并。代价是要维护第二套运行器拓扑:热备通道在每次 master 推送时都运行它,避免故障切换目标变得陈旧;而 `ci.yml` 中的并发与缓存恢复分支带有一条 `selfhosted` 支路,必须与托管支路保持同步。 +从托管池故障中恢复只需切换受影响平台的变量(任何写者可设)加一次重跑,关键路径上没有合并。代价是每个平台都要维护第二套运行器拓扑:热备通道在每次 master 推送时都运行它们,避免故障切换目标变得陈旧;而 `ci.yml` 中的并发与缓存恢复分支带有一条 `selfhosted` 支路(仅 Linux),必须与托管支路保持同步。按平台拆分开关多了一个需要管理的变量,但把每个开关的影响范围限定在单个平台的作业上。 diff --git a/.github/AGENTS.md b/.github/AGENTS.md index 3e879db8ae..0c1f0dc780 100644 --- a/.github/AGENTS.md +++ b/.github/AGENTS.md @@ -1,3 +1,3 @@ # AGENTS.md — GitHub Actions -Run jobs on Windows runners (`windows-*` labels) under native `pwsh`. The pull-request `windows` job is the deliberate exception: it runs Windows Node under Wine on hosted Linux and blocks `all checks passed`; `windows-native` runs automatically on `windows-2025` (or the self-hosted `[self-hosted, dsh-win-ci, windows]` pool under `DSH_CI_FAILOVER=selfhosted`) but reports independently. The master `serial-windows` standby continuously validates the self-hosted failover target — see the [failover runbook](../.agents/notes/implemented/process/2026-07-26-ci-failover-runbook.md). +Run jobs on Windows runners (`windows-*` labels) under native `pwsh`. The pull-request `windows` job is the deliberate exception: it runs Windows Node under Wine on hosted Linux and blocks `all checks passed`; `windows-native` runs automatically on `windows-2025` (or the self-hosted `[self-hosted, dsh-win-ci, windows]` pool under `DSH_CI_FAILOVER_WINDOWS=selfhosted`) but reports independently. The master `serial-windows` standby continuously validates the self-hosted failover target — see the [failover runbook](../.agents/notes/implemented/process/2026-07-26-ci-failover-runbook.md). diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7bb2bc1518..7775827c66 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -49,8 +49,8 @@ jobs: # build-backed consumer tail. The consumer job owns the only Linux build so # all three jobs enter runner allocation independently. # - # FAILOVER: each Linux enterprise job resolves its pool through the - # DSH_CI_FAILOVER repository variable. Unset (normal), the expressions + # FAILOVER (Linux): each Linux enterprise job resolves its pool through the + # DSH_CI_FAILOVER_LINUX repository variable. Unset (normal), the expressions # pick the hosted enterprise pools below. Setting the variable to # 'selfhosted' (repo Settings → Actions → Variables; writer-manageable # repository state — not PR-editable, no merge required) retargets all @@ -58,11 +58,12 @@ jobs: # vm-backup pool and re-running the failed jobs is the entire switch — # see .agents/notes/implemented/process/2026-07-26-ci-failover-runbook.md. The # in-house pool's readiness is re-proven on every master push by the - # serial-linux-selfhosted standby lane below. + # serial-linux-selfhosted standby lane below. The Windows failover switch is + # the separate DSH_CI_FAILOVER_WINDOWS variable on the windows-native job below. node-24: if: github.event_name == 'pull_request' runs-on: >- - ${{ vars.DSH_CI_FAILOVER == 'selfhosted' + ${{ vars.DSH_CI_FAILOVER_LINUX == 'selfhosted' && github.event.pull_request.user.login != 'dependabot[bot]' && fromJSON('["self-hosted", "linux", "x64", "vm-backup"]') || 'dsh-ubuntu-24-04-16core' }} @@ -96,7 +97,7 @@ jobs: # compression and upload on the paid latency-critical path. Skipped # under failover — see the coverage lane's identical rationale. - uses: actions/cache/restore@v4 - if: vars.DSH_CI_FAILOVER != 'selfhosted' || github.event.pull_request.user.login == 'dependabot[bot]' + if: vars.DSH_CI_FAILOVER_LINUX != 'selfhosted' || github.event.pull_request.user.login == 'dependabot[bot]' with: path: ${{ steps.pnpm-store.outputs.path }} key: ${{ runner.os }}-node-${{ env.PRIMARY_NODE_VERSION }}-pnpm-${{ hashFiles('pnpm-lock.yaml') }} @@ -114,7 +115,7 @@ jobs: node-24-coverage: if: github.event_name == 'pull_request' runs-on: >- - ${{ vars.DSH_CI_FAILOVER == 'selfhosted' + ${{ vars.DSH_CI_FAILOVER_LINUX == 'selfhosted' && github.event.pull_request.user.login != 'dependabot[bot]' && fromJSON('["self-hosted", "linux", "x64", "vm-backup"]') || 'dsh-ubuntu-24-04-16core' }} @@ -124,7 +125,7 @@ jobs: # shares one 64-core VM across six always-on runner instances, so each # instance may use eight while keeping the worst case at 8 × 6 = 48 # workers; process-bound suites remain isolated in forks. - DSH_COVERAGE_MAX_WORKERS: ${{ vars.DSH_CI_FAILOVER == 'selfhosted' && github.event.pull_request.user.login != 'dependabot[bot]' && '8' || '6' }} + DSH_COVERAGE_MAX_WORKERS: ${{ vars.DSH_CI_FAILOVER_LINUX == 'selfhosted' && github.event.pull_request.user.login != 'dependabot[bot]' && '8' || '6' }} DSH_GATE_CONCURRENCY: '3' steps: - uses: actions/checkout@v6 @@ -151,7 +152,7 @@ jobs: # already serves warm installs, while restoring the hosted archive # would spend ~52 s pulling ~180 MB into that populated store. - uses: actions/cache/restore@v4 - if: vars.DSH_CI_FAILOVER != 'selfhosted' || github.event.pull_request.user.login == 'dependabot[bot]' + if: vars.DSH_CI_FAILOVER_LINUX != 'selfhosted' || github.event.pull_request.user.login == 'dependabot[bot]' with: path: ${{ steps.pnpm-store.outputs.path }} key: ${{ runner.os }}-node-${{ env.PRIMARY_NODE_VERSION }}-pnpm-${{ hashFiles('pnpm-lock.yaml') }} @@ -177,7 +178,7 @@ jobs: node-24-consumers: if: github.event_name == 'pull_request' runs-on: >- - ${{ vars.DSH_CI_FAILOVER == 'selfhosted' + ${{ vars.DSH_CI_FAILOVER_LINUX == 'selfhosted' && github.event.pull_request.user.login != 'dependabot[bot]' && fromJSON('["self-hosted", "linux", "x64", "vm-backup"]') || 'dsh-ubuntu-24-04-16core' }} @@ -188,7 +189,7 @@ jobs: DSH_OXLINT_THREADS: '8' DSH_PUBLINT_CONCURRENCY: '8' # Failover halves snapshot concurrency for the shared 64-core VM. - DSH_SNAPSHOT_MAX_CONCURRENCY: ${{ vars.DSH_CI_FAILOVER == 'selfhosted' && github.event.pull_request.user.login != 'dependabot[bot]' && '12' || '32' }} + DSH_SNAPSHOT_MAX_CONCURRENCY: ${{ vars.DSH_CI_FAILOVER_LINUX == 'selfhosted' && github.event.pull_request.user.login != 'dependabot[bot]' && '12' || '32' }} steps: - uses: actions/checkout@v6 with: @@ -212,7 +213,7 @@ jobs: # Skipped under failover — see the coverage lane's identical rationale. - uses: actions/cache/restore@v4 - if: vars.DSH_CI_FAILOVER != 'selfhosted' || github.event.pull_request.user.login == 'dependabot[bot]' + if: vars.DSH_CI_FAILOVER_LINUX != 'selfhosted' || github.event.pull_request.user.login == 'dependabot[bot]' with: path: ${{ steps.pnpm-store.outputs.path }} key: ${{ runner.os }}-node-${{ env.PRIMARY_NODE_VERSION }}-pnpm-${{ hashFiles('pnpm-lock.yaml') }} @@ -222,7 +223,7 @@ jobs: # Pull requests restore the cache normally produced by serial-linux on # master; they do not pay compression and upload on the required path. - uses: actions/cache/restore@v4 - if: vars.DSH_CI_FAILOVER != 'selfhosted' || github.event.pull_request.user.login == 'dependabot[bot]' + if: vars.DSH_CI_FAILOVER_LINUX != 'selfhosted' || github.event.pull_request.user.login == 'dependabot[bot]' with: path: ~/.cache/ms-playwright key: ${{ runner.os }}-playwright-${{ hashFiles('pnpm-lock.yaml') }} @@ -243,13 +244,13 @@ jobs: exit "$sandbox_status" - name: Install Playwright Chromium and hosted dependencies - if: vars.DSH_CI_FAILOVER != 'selfhosted' || github.event.pull_request.user.login == 'dependabot[bot]' + if: vars.DSH_CI_FAILOVER_LINUX != 'selfhosted' || github.event.pull_request.user.login == 'dependabot[bot]' run: pnpm --filter @deepseek-ai/dsh-web-frontend exec playwright install --with-deps chromium # The persistent VM image owns Playwright's Linux system packages; do # not mutate the shared host with apt on every failover run. - name: Install Playwright Chromium on the failover VM - if: vars.DSH_CI_FAILOVER == 'selfhosted' && github.event.pull_request.user.login != 'dependabot[bot]' + if: vars.DSH_CI_FAILOVER_LINUX == 'selfhosted' && github.event.pull_request.user.login != 'dependabot[bot]' run: pnpm --filter @deepseek-ai/dsh-web-frontend exec playwright install chromium - name: Run compatibility, snapshot, and artifact gates @@ -437,13 +438,16 @@ jobs: # its own unmasked conclusion but is deliberately absent from # all-checks-passed.needs, so it never delays or changes that required # verdict. Under normal operation it runs on the hosted larger runner; under - # failover (DSH_CI_FAILOVER=selfhosted) it retargets onto the in-house - # self-hosted Windows pool. Dependabot PRs are excluded from the self-hosted - # pool and stay queued for the hosted runner — see the failover runbook. + # Windows failover (DSH_CI_FAILOVER_WINDOWS=selfhosted) it retargets onto the + # in-house self-hosted Windows pool. Dependabot PRs are excluded from the + # self-hosted pool and stay queued for the hosted runner — see the failover + # runbook. This Windows switch is independent of the Linux + # DSH_CI_FAILOVER_LINUX variable that retargets the three required Linux jobs + # and the all-checks-passed verdict above. windows-native: if: github.event_name == 'pull_request' runs-on: >- - ${{ vars.DSH_CI_FAILOVER == 'selfhosted' + ${{ vars.DSH_CI_FAILOVER_WINDOWS == 'selfhosted' && github.event.pull_request.user.login != 'dependabot[bot]' && fromJSON('["self-hosted", "dsh-win-ci", "windows"]') || 'dsh-windows-2025-16core' }} @@ -558,7 +562,7 @@ jobs: # re-runs the complete unsharded aggregate on the persistent 64-core VM, # continuously proving that environment can take over a required lane if # the hosted pools degrade (the switch is then setting the writer-manageable - # DSH_CI_FAILOVER variable — see the failover runbook, no merge required). + # DSH_CI_FAILOVER_LINUX variable — see the failover runbook, no merge required). # Push-triggered, so this lane always executes the base branch's own # workflow definition. (Under failover, pull_request jobs do reach these # runners with the PR merge ref's workflow — the boundary there is @@ -644,11 +648,11 @@ jobs: # move re-runs the complete unsharded Windows gate inventory on the persistent # VM, continuously proving that environment can take over the required # `windows` lane if the hosted pool degrades (the switch is setting the - # writer-manageable DSH_CI_FAILOVER variable — see the failover runbook, no - # merge required). Push-triggered, so this lane always executes the base - # branch's own workflow definition. Non-blocking for pull requests; absent - # from all-checks-passed.needs by design — the required `windows` job owns - # the PR verdict. No cache steps because the VM's persistent pnpm store + # writer-manageable DSH_CI_FAILOVER_WINDOWS variable — see the failover + # runbook, no merge required). Push-triggered, so this lane always executes + # the base branch's own workflow definition. Non-blocking for pull requests; + # absent from all-checks-passed.needs by design — the required `windows` job + # owns the PR verdict. No cache steps because the VM's persistent pnpm store # and tool caches make them redundant (and saving here would poison the # hosted cache namespace with self-hosted paths). serial-windows: @@ -911,11 +915,13 @@ jobs: all-checks-passed: name: all checks passed # This bookkeeping-only verdict must not depend on custom-pool - # provisioning — and under failover it follows the same selector as the - # worker jobs it aggregates, so a standard-hosted outage cannot strand - # the branch-protection verdict either. + # provisioning — and under Linux failover it follows the same selector as + # the worker jobs it aggregates, so a standard-hosted outage cannot strand + # the branch-protection verdict either. It retargets with the Linux switch + # (DSH_CI_FAILOVER_LINUX), not the Windows one, because it aggregates the + # required Linux workers and runs on the vm-backup pool. runs-on: >- - ${{ vars.DSH_CI_FAILOVER == 'selfhosted' + ${{ vars.DSH_CI_FAILOVER_LINUX == 'selfhosted' && github.event.pull_request.user.login != 'dependabot[bot]' && fromJSON('["self-hosted", "linux", "x64", "vm-backup"]') || 'ubuntu-latest' }} diff --git a/scripts/ci-workflow.spec.ts b/scripts/ci-workflow.spec.ts index b54c729a38..84ac580f31 100644 --- a/scripts/ci-workflow.spec.ts +++ b/scripts/ci-workflow.spec.ts @@ -34,14 +34,20 @@ describe('CI workflow', () => { || !isRecord(workflow.jobs['windows-native']) || !isRecord(workflow.jobs['wine-apt-cache']) || !isRecord(workflow.jobs['serial-windows']) + || !isRecord(workflow.jobs['node-24']) + || !isRecord(workflow.jobs['node-24-coverage']) + || !isRecord(workflow.jobs['node-24-consumers']) || !isRecord(workflow.jobs['all-checks-passed'])) { - throw new TypeError('CI workflow must define windows, windows-native, wine-apt-cache, serial-windows, and all-checks-passed jobs') + throw new TypeError('CI workflow must define windows, windows-native, wine-apt-cache, serial-windows, node-24, node-24-coverage, node-24-consumers, and all-checks-passed jobs') } const windows = workflow.jobs.windows const windowsNative = workflow.jobs['windows-native'] const wineAptCache = workflow.jobs['wine-apt-cache'] const serialWindows = workflow.jobs['serial-windows'] + const node24 = workflow.jobs['node-24'] + const node24Coverage = workflow.jobs['node-24-coverage'] + const node24Consumers = workflow.jobs['node-24-consumers'] const aggregate = workflow.jobs['all-checks-passed'] if (!Array.isArray(windows.steps) || !Array.isArray(aggregate.needs)) { throw new TypeError('Windows job must define steps and the aggregate must define needs') @@ -57,8 +63,10 @@ describe('CI workflow', () => { expect(commandSteps.some(step => step.run.includes('wine-windows-gates.sh'))).toBe(true) // windows-native: non-blocking native job with failover, runs windows-complete. + // Its pool is resolved by the Windows-specific switch. expect(typeof windowsNative['runs-on']).toBe('string') - expect(windowsNative['runs-on']).toContain('DSH_CI_FAILOVER') + expect(windowsNative['runs-on']).toContain('DSH_CI_FAILOVER_WINDOWS') + expect(windowsNative['runs-on']).not.toContain('DSH_CI_FAILOVER_LINUX') expect(windowsNative['runs-on']).toContain('self-hosted') expect(windowsNative['runs-on']).toContain('dsh-win-ci') expect(windowsNative['runs-on']).toContain('dsh-windows-2025-16core') @@ -82,6 +90,19 @@ describe('CI workflow', () => { expect(aggregate.needs).toContain('windows') expect(aggregate.needs).not.toContain('windows-native') expect(aggregate.needs).not.toContain('serial-windows') + + // Linux failover is a separate switch: the three required Linux workers + // and the verdict job resolve their pool through DSH_CI_FAILOVER_LINUX, + // never the Windows switch. + for (const [jobName, job] of [['node-24', node24], ['node-24-coverage', node24Coverage], ['node-24-consumers', node24Consumers]] as const) { + expect(typeof job['runs-on']).toBe('string') + expect(job['runs-on'], `${jobName} runs-on must use the Linux failover switch`).toContain('DSH_CI_FAILOVER_LINUX') + expect(job['runs-on'], `${jobName} runs-on must not use the Windows failover switch`).not.toContain('DSH_CI_FAILOVER_WINDOWS') + expect(job['runs-on']).toContain('vm-backup') + } + expect(aggregate['runs-on']).toContain('DSH_CI_FAILOVER_LINUX') + expect(aggregate['runs-on']).not.toContain('DSH_CI_FAILOVER_WINDOWS') + expect(aggregate['runs-on']).toContain('vm-backup') }) it('exempts push from cancellation, so one master merge does not cancel the running drill', () => { From 952c6c3c9c34e8a37871a606c3060afaa8207eca Mon Sep 17 00:00:00 2001 From: j-xiang Date: Thu, 13 Aug 2026 16:56:10 +0800 Subject: [PATCH 13/22] docs(i18n): finish README fidelity review --- packages/llm/llm/README.i18n.yaml | 2 +- packages/llm/llm/README.zh.md | 2 +- packages/subagent/subagent/README.i18n.yaml | 2 +- packages/subagent/subagent/README.zh.md | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/llm/llm/README.i18n.yaml b/packages/llm/llm/README.i18n.yaml index 07702ff54a..2d0d68e7ac 100644 --- a/packages/llm/llm/README.i18n.yaml +++ b/packages/llm/llm/README.i18n.yaml @@ -3,4 +3,4 @@ # after editing either side, bring the other along and re-record with: # pnpm run verify-translation-pairing --write packages/llm/llm/README.md README.md: 2cae9a05a58295b06d25382729a3304dbdc9a6fa -README.zh.md: a9c4f2908fb3047238f337ab93490ddd4ffc8d63 +README.zh.md: 110cc128f1c19bef1741ae59d8106139c4a72649 diff --git a/packages/llm/llm/README.zh.md b/packages/llm/llm/README.zh.md index a9c4f2908f..110cc128f1 100644 --- a/packages/llm/llm/README.zh.md +++ b/packages/llm/llm/README.zh.md @@ -13,7 +13,7 @@ - `ctx.llm.registerAdapter(providers: string[], adapter: LlmAdapter): AdapterRegistrationHandle` 为给定提供方路由注册一个适配器实例。注册要么全部成功,要么全部不生效,并且会随调用 fiber 一起 dispose(资源释放)。返回的句柄还提供 `replace(providers)`:候选路由集合会在注册状态发生任何变化前完成整体验证,因此与另一适配器发生冲突时,当前路由仍保持注册并继续提供服务。替换会在一次同步操作中完成,不会出现可观察的空档。`replace([])` 合法,表示保留注册但不持有任何路由;初始注册则不得为空。 - `ctx.llm.listProviders(): LlmProviderInfo[]` 按注册顺序描述已注册提供方路由。 - `ctx.llm.registerConfigurableProviders(entries: readonly LlmConfigurableProvider[]): DirectoryRegistrationHandle` 声明适配器插件可通过配置激活的提供方路由——无论已注册还是休眠——每个条目指明其所属 settings namespace,以及 profile 在该分节内的路径。要么全部成功,要么全部不生效(`INVALID_DIRECTORY`/`DUPLICATE_DIRECTORY`),并随调用 fiber dispose。该句柄还带 `replace(entries)`:候选集合会先被整体校验,因此其中若有条目已被另一个注册声明,当前集合原封不动;此处允许传空数组。声明集合随配置变化的插件必须使用 `replace`,而不是先 dispose 再重新注册——后者会在新集合被拒时让目录整个落空。 -- `ctx.llm.listConfigurableProviders(): LlmConfigurableProvider[]` 按声明顺序列出可配置提供方目录;配置界面将其与 `listProviders()` 合并,为每个条目标注存活或休眠。条目可携带 `declared`,表示拥有该路由的适配器是否只因配置点名才知道它。该字段缺失时,只表示该适配器不区分这两种来源,不能据此判断路由是否随产品交付。 +- `ctx.llm.listConfigurableProviders(): LlmConfigurableProvider[]` 按声明顺序列出可配置提供方目录;配置界面将其与 `listProviders()` 合并,为每个条目标注存活或休眠。条目可携带 `declared`,表示拥有该路由的适配器是否只因配置点名才知道它。只有适配器能回答这一点:该字段缺失时,只表示该适配器不区分这两种来源,不能据此判断路由是否随产品交付。 - `ctx.llm.registerModelDiscovery(settingsNs: string, discover): () => void` 为本插件拥有的 settings namespace 提供查询提供方端点的能力。每个 namespace 只能有一个(`INVALID_DISCOVERY`/`DUPLICATE_DISCOVERY`),并随调用 fiber dispose。 - `ctx.llm.listModelDiscoveryNamespaces(): string[]` 列出可以询问端点的 namespace,让界面只在可用之处提供该动作。 - `ctx.llm.discoverModels(settingsNs: string, request: LlmModelDiscoveryRequest): Promise` 询问某个端点它公布了哪些模型。 diff --git a/packages/subagent/subagent/README.i18n.yaml b/packages/subagent/subagent/README.i18n.yaml index d7acd85d6b..6d443fc9ba 100644 --- a/packages/subagent/subagent/README.i18n.yaml +++ b/packages/subagent/subagent/README.i18n.yaml @@ -3,4 +3,4 @@ # after editing either side, bring the other along and re-record with: # pnpm run verify-translation-pairing --write packages/subagent/subagent/README.md README.md: ed4a9123a2dfa5b2fa5abc67f4513547feb3d140 -README.zh.md: 9c08dcb84619e4ecd0282d4d113e3f3952a6a103 +README.zh.md: 3ad2ee5738a210a776d1f0b2746dcbd21d46144c diff --git a/packages/subagent/subagent/README.zh.md b/packages/subagent/subagent/README.zh.md index 9c08dcb846..3ad2ee5738 100644 --- a/packages/subagent/subagent/README.zh.md +++ b/packages/subagent/subagent/README.zh.md @@ -64,7 +64,7 @@ subagent seam 允许一个 agent(智能体)通过具名提供方把工作委 `provider.start(request): Promise` 是所有权转移边界;委派工具也会在其由 Task 支撑的一次性后台路径中使用它。兑现前,提供方拥有设置过程,并且在任何失败路径上都必须取消、回滚并使尚未发布的资源完全停稳。兑现后,run 的所有权转移给调用方;调用方必须在每条路径上调用 `dispose()`。剩余提示词和轮次工作属于 `SubagentRun.result`。 -`SubagentRun.result` 兑现为 `{ output, structured?, stopReason }`。子 agent 级失败会以非 `completed` 原因兑现;只有 seam 无法表示的基础设施故障才可以拒绝。`dispose()` 是幂等的,会取消剩余工作,并等待结果结算以及子 agent 资源完全停稳。`result` 的拒绝只通过 `result` 本身报告;只有独立的资源释放失败,才会使 `dispose()` 被拒绝。`output` 与 `subagent/end` 事件的 `lastAssistantMessage` 使用导出的 `AssistantOutputFold`/`finalAssistantOutput` 辅助函数选取子 agent 最后一条非空 assistant 消息;若没有这类消息,则选取其累积的 assistant 文本。子 agent 两种输出均未产生时,`output` 为 `[]`,该事件字段缺省(结果约定归 [`SubagentResult.output`](../../../docs/subsystems/subagent.md#the-terminal-result-subagentresult) 所有)。 +`SubagentRun.result` 兑现为 `{ output, structured?, stopReason }`。子 agent 级失败会以非 `completed` 原因兑现;只有 seam 无法表示的基础设施故障才可以拒绝。`dispose()` 是幂等的,会取消剩余工作,并等待结果结算以及子 agent 资源完全停稳。result 的拒绝只通过 `result` 本身报告;只有独立的资源释放失败,才会使 `dispose()` 被拒绝。`output` 与 `subagent/end` 事件的 `lastAssistantMessage` 使用导出的 `AssistantOutputFold`/`finalAssistantOutput` 辅助函数选取子 agent 最后一条非空 assistant 消息;若没有这类消息,则选取其累积的 assistant 文本。子 agent 两种输出均未产生时,`output` 为 `[]`,该事件字段缺省(结果约定归 [`SubagentResult.output`](../../../docs/subsystems/subagent.md#the-terminal-result-subagentresult) 所有)。 本地运行会在 `start()` 兑现前发布普通的子 agent/会话,把该共享会话 id 作为 `SubagentRun.id` 返回,以 `SubagentRun.localAgent` 公开准确的子 agent,把 `request.parent.session.id` 记录到子 agent 的 `parentSession` header,并在其初始轮次内追加已解析的描述符。远程提供方则生成 parent 作用域的生命周期 id,并返回 `localAgent: undefined`;由于没有本地 child 会话,其一次性运行不会进入基于追踪的枚举结果。 From 60b04b6ef73a2b7387e6887d19fe2276ff2630a0 Mon Sep 17 00:00:00 2001 From: imccyu Date: Thu, 13 Aug 2026 17:17:46 +0800 Subject: [PATCH 14/22] release(dsh): 0.1.0-rc.2 --- apps/cli/package.json | 2 +- apps/web/package.json | 2 +- package.json | 2 +- packages/acp/acp/package.json | 2 +- packages/api/gateway/package.json | 2 +- packages/api/remotes/package.json | 2 +- packages/attachment/attachment-local/package.json | 2 +- packages/attachment/attachment/package.json | 2 +- packages/boot/app-boot/package.json | 2 +- packages/boot/cmdline/package.json | 2 +- packages/bundle/base/package.json | 2 +- packages/bundle/headless/package.json | 2 +- packages/bundle/web-app/package.json | 2 +- packages/client/connection/package.json | 2 +- packages/client/hmr/package.json | 2 +- packages/client/locale/package.json | 2 +- packages/client/modules/package.json | 2 +- packages/client/runtime/package.json | 2 +- packages/client/schema-form/package.json | 2 +- packages/client/ui-agent-preset/package.json | 2 +- packages/client/ui-attachment/package.json | 2 +- packages/client/ui-commands/package.json | 2 +- packages/client/ui-conversation/package.json | 2 +- packages/client/ui-deliverables/package.json | 2 +- packages/client/ui-directory-picker-browse/package.json | 2 +- packages/client/ui-directory-picker-native/package.json | 2 +- packages/client/ui-goal/package.json | 2 +- packages/client/ui-input-trigger/package.json | 2 +- packages/client/ui-jobs/package.json | 2 +- packages/client/ui-layout/package.json | 2 +- packages/client/ui-message-feedback/package.json | 2 +- packages/client/ui-model-selection/package.json | 2 +- packages/client/ui-permission-presets/package.json | 2 +- packages/client/ui-plan/package.json | 2 +- packages/client/ui-primitives/package.json | 2 +- packages/client/ui-settings-general/package.json | 2 +- packages/client/ui-settings-models/package.json | 2 +- packages/client/ui-settings-plugin-inventory/package.json | 2 +- packages/client/ui-settings-plugins/package.json | 2 +- packages/client/ui-settings/package.json | 2 +- packages/client/ui-sidebar/package.json | 2 +- packages/client/ui-skill/package.json | 2 +- packages/client/ui-slots/package.json | 2 +- packages/client/ui-subagent/package.json | 2 +- packages/client/ui-theme/package.json | 2 +- packages/client/ui-tool/package.json | 2 +- packages/client/ui-trajectory/package.json | 2 +- packages/client/ui-user-questions/package.json | 2 +- packages/client/ui-workflow-run/package.json | 2 +- packages/client/ui-workspace/package.json | 2 +- packages/client/web-react/package.json | 2 +- packages/client/web/package.json | 2 +- packages/code-runtime/code-runtime-worker-thread/package.json | 2 +- packages/code-runtime/code-runtime/package.json | 2 +- packages/compaction/command-compact/package.json | 2 +- packages/compaction/compaction-basic/package.json | 2 +- packages/compaction/compaction-tool-result-pruner/package.json | 2 +- packages/compaction/compaction/package.json | 2 +- packages/context/agent-instructions/package.json | 2 +- packages/context/session-reference/package.json | 2 +- packages/context/time-context/package.json | 2 +- packages/context/tmux-context/package.json | 2 +- packages/core/agent-default-model/package.json | 2 +- packages/core/agent-loop/package.json | 2 +- packages/core/agent-tool-presentation/package.json | 2 +- packages/core/agent/package.json | 2 +- packages/core/scope/package.json | 2 +- packages/core/session/package.json | 2 +- packages/core/system-prompt/package.json | 2 +- packages/core/tools/package.json | 2 +- packages/credentials/credentials-local/package.json | 2 +- packages/credentials/credentials/package.json | 2 +- packages/e2b/e2b/package.json | 2 +- packages/e2b/fs-e2b/package.json | 2 +- packages/e2b/subprocess-e2b/package.json | 2 +- packages/examples/acp-demo/package.json | 2 +- packages/examples/agent-spine-demo/package.json | 2 +- packages/examples/jsonrpc-demo/package.json | 2 +- packages/extensions/cordis-client-runner/package.json | 2 +- packages/extensions/cordis-host-runner/package.json | 2 +- packages/extensions/tool-cordis/package.json | 2 +- packages/extensions/ui-cordis/package.json | 2 +- packages/feedback/command-feedback/package.json | 2 +- packages/feedback/message-feedback/package.json | 2 +- packages/fs/fs-local/package.json | 2 +- packages/fs/fs-observation-policy/package.json | 2 +- packages/fs/fs-sandbox/package.json | 2 +- packages/fs/fs/package.json | 2 +- packages/fs/tool-fs-search/package.json | 2 +- packages/fs/tool-fs/package.json | 2 +- packages/fs/tool-str-replace-editor/package.json | 2 +- packages/goal/command-goal/package.json | 2 +- packages/goal/goal-round-driver/package.json | 2 +- packages/goal/goal/package.json | 2 +- packages/goal/tool-goal/package.json | 2 +- packages/guard/repeat-tool-reminder/package.json | 2 +- packages/guard/timeout-policy/package.json | 2 +- packages/hooks/hook-protocol/package.json | 2 +- packages/hooks/hooks-claude-code/package.json | 2 +- packages/hooks/hooks-codex/package.json | 2 +- packages/host/apiproxy/package.json | 2 +- packages/host/directory-picker-auto/package.json | 2 +- packages/host/directory-picker-browse/package.json | 2 +- packages/host/directory-picker-native/package.json | 2 +- packages/host/directory-picker/package.json | 2 +- packages/host/frontend-static/package.json | 2 +- packages/host/plugin-inventory/package.json | 2 +- packages/host/webserver/package.json | 2 +- packages/identity/anonymous-user-id/package.json | 2 +- packages/interaction/commands/package.json | 2 +- packages/interaction/permission-presets/package.json | 2 +- packages/interaction/tool-ask-user/package.json | 2 +- packages/interaction/user-approval/package.json | 2 +- packages/interaction/user-questions/package.json | 2 +- packages/jobs/jobs-local/package.json | 2 +- packages/jobs/jobs/package.json | 2 +- packages/jobs/tool-jobs/package.json | 2 +- packages/llm/llm-deepseek/package.json | 2 +- packages/llm/llm-pi-ai/package.json | 2 +- packages/llm/llm-retry/package.json | 2 +- packages/llm/llm/package.json | 2 +- packages/llm/token-meter/package.json | 2 +- packages/lsp/lsp-stdio/package.json | 2 +- packages/lsp/lsp/package.json | 2 +- packages/lsp/tool-lsp/package.json | 2 +- packages/mcp/mcp-client/package.json | 2 +- packages/plan/plan-mode/package.json | 2 +- packages/preset/agent-presets/package.json | 2 +- packages/preset/persona/package.json | 2 +- packages/runtime-diagnostics/invariants/package.json | 2 +- packages/sandbox/sandbox-local/package.json | 2 +- packages/sandbox/sandbox-policy/package.json | 2 +- packages/sandbox/sandbox-windows-acl/package.json | 2 +- packages/sandbox/sandbox/package.json | 2 +- packages/schedule/schedule/package.json | 2 +- packages/sdk/client/package.json | 2 +- packages/sdk/protocol/package.json | 2 +- packages/sdk/server/package.json | 2 +- packages/session-query/session-log-export/package.json | 2 +- packages/session-query/session-query-sqlite/package.json | 2 +- packages/session-query/session-query/package.json | 2 +- packages/session-query/tool-session-query/package.json | 2 +- packages/session/session-checkpoint-policy/package.json | 2 +- packages/session/session-persistence-jsonl/package.json | 2 +- packages/session/session-persistence-sqlite/package.json | 2 +- packages/session/session-persistence/package.json | 2 +- packages/session/session-projection-cache/package.json | 2 +- packages/session/session-projection/package.json | 2 +- packages/session/session-stats/package.json | 2 +- packages/session/session-telemetry-otel/package.json | 2 +- packages/session/session-telemetry/package.json | 2 +- packages/session/session-title-all-prompts-llm/package.json | 2 +- packages/session/session-title-first-prompt-llm/package.json | 2 +- packages/session/session-title-llm/package.json | 2 +- packages/session/session-title/package.json | 2 +- packages/settings/settings-file/package.json | 2 +- packages/settings/settings/package.json | 2 +- packages/shell/bash-local/package.json | 2 +- packages/shell/bash-sandbox/package.json | 2 +- packages/shell/pwsh-local/package.json | 2 +- packages/shell/pwsh-sandbox/package.json | 2 +- packages/shell/shell-env/package.json | 2 +- packages/shell/shell/package.json | 2 +- packages/shell/tool-bash-persistent/package.json | 2 +- packages/shell/tool-bash/package.json | 2 +- packages/shell/tool-pwsh/package.json | 2 +- packages/skill/skill-badge/package.json | 2 +- packages/skill/skill-filesystem/package.json | 2 +- packages/skill/skill/package.json | 2 +- packages/skill/tool-skill/package.json | 2 +- packages/spill/spill-local/package.json | 2 +- packages/spill/spill-policy/package.json | 2 +- packages/spill/spill/package.json | 2 +- packages/storage/storage-domain/package.json | 2 +- packages/storage/storage-json/package.json | 2 +- packages/storage/storage-sqlite/package.json | 2 +- packages/storage/storage/package.json | 2 +- packages/subagent/subagent-acp/package.json | 2 +- packages/subagent/subagent-claude-code/package.json | 2 +- packages/subagent/subagent-codex/package.json | 2 +- packages/subagent/subagent-dsh-sdk/package.json | 2 +- packages/subagent/subagent-fork-in-process/package.json | 2 +- packages/subagent/subagent-in-process-driver/package.json | 2 +- packages/subagent/subagent-spawn-in-process/package.json | 2 +- packages/subagent/subagent/package.json | 2 +- packages/subagent/tool-subagent-control/package.json | 2 +- packages/subagent/tool-subagent-report/package.json | 2 +- packages/subagent/tool-subagent/package.json | 2 +- packages/subprocess/subprocess-local/package.json | 2 +- packages/subprocess/subprocess/package.json | 2 +- packages/terminal/terminal-bash/package.json | 2 +- packages/terminal/terminal/package.json | 2 +- packages/terminal/tool-terminal/package.json | 2 +- packages/test-support/acp-snapshot/package.json | 2 +- packages/test-support/agent-loop-testkit/package.json | 2 +- packages/test-support/client-runtime/package.json | 2 +- packages/test-support/llm-mock-server/package.json | 2 +- packages/test-support/llm-replay/package.json | 2 +- packages/test-support/loader-smoke/package.json | 2 +- packages/todo/tool-todo/package.json | 2 +- packages/typert/generator/package.json | 2 +- packages/typert/loader/package.json | 2 +- packages/typert/protocol/package.json | 2 +- packages/typert/registry/package.json | 2 +- packages/util/atomic-write/package.json | 2 +- packages/util/brand/package.json | 2 +- packages/util/home-paths/package.json | 2 +- packages/util/launch-environment/package.json | 2 +- packages/util/native-command/package.json | 2 +- packages/util/output-retention/package.json | 2 +- packages/util/timeout/package.json | 2 +- packages/web/tool-web/package.json | 2 +- packages/web/web-fetch-http/package.json | 2 +- packages/web/web-search-deepseek/package.json | 2 +- packages/web/web-search-exa/package.json | 2 +- packages/web/web-search-perplexity/package.json | 2 +- packages/web/web/package.json | 2 +- packages/workflow/tool-ralph/package.json | 2 +- packages/workflow/tool-workflow/package.json | 2 +- packages/workflow/workflow-worker-thread/package.json | 2 +- packages/workflow/workflow/package.json | 2 +- packages/workspace/workspace/package.json | 2 +- 222 files changed, 222 insertions(+), 222 deletions(-) diff --git a/apps/cli/package.json b/apps/cli/package.json index 9617da8869..eddb8a4ad7 100644 --- a/apps/cli/package.json +++ b/apps/cli/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh", "description": "dsh CLI: profile boot, plugin management, and the browser UI alias", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/apps/web/package.json b/apps/web/package.json index 7e85392d34..f1f808b55e 100644 --- a/apps/web/package.json +++ b/apps/web/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-web-frontend", "description": "Web application entry: vite build over the @deepseek-ai/dsh-client-web shell library; dist/ served by apps/cli's dsh web", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/package.json b/package.json index ffbe648eaa..e9a8d4d86c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@deepseek-ai/dsh-root", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "license": "MIT", "private": true, "type": "module", diff --git a/packages/acp/acp/package.json b/packages/acp/acp/package.json index 02e8294f1f..da4944efb8 100644 --- a/packages/acp/acp/package.json +++ b/packages/acp/acp/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-acp", "description": "Automation-only Agent Client Protocol server for driving DeepSeek Harness agents over JSON-RPC stdio", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/api/gateway/package.json b/packages/api/gateway/package.json index a034a01af2..ec0296f7c8 100644 --- a/packages/api/gateway/package.json +++ b/packages/api/gateway/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-api-gateway", "description": "Typert Remote Host dispatcher and Client API endpoint", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/api/remotes/package.json b/packages/api/remotes/package.json index 3d4a9b40b7..a0f43738b5 100644 --- a/packages/api/remotes/package.json +++ b/packages/api/remotes/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-api-remotes", "description": "Remote BFF assembly and Host Agent/Session lookup policy", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/attachment/attachment-local/package.json b/packages/attachment/attachment-local/package.json index 499b8ef226..ddbe0af2e4 100644 --- a/packages/attachment/attachment-local/package.json +++ b/packages/attachment/attachment-local/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-attachment-local", "description": "Private content-addressed DSH_HOME attachment storage", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/attachment/attachment/package.json b/packages/attachment/attachment/package.json index a853154ab8..792f94011f 100644 --- a/packages/attachment/attachment/package.json +++ b/packages/attachment/attachment/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-attachment", "description": "Durable immutable attachment storage seam for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/boot/app-boot/package.json b/packages/boot/app-boot/package.json index 9e60cd8af4..fde0fb71b7 100644 --- a/packages/boot/app-boot/package.json +++ b/packages/boot/app-boot/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-app-boot", "description": "Shared boot glue for the app bins: .env loading, fail-loud Loader guards, snapshot-aware config resolution, and the Loader boot sequence", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/boot/cmdline/package.json b/packages/boot/cmdline/package.json index c1b0732a8e..a18bcf1169 100644 --- a/packages/boot/cmdline/package.json +++ b/packages/boot/cmdline/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-cmdline", "description": "Immutable command-line handoff from a dsh launcher to any app plugin that injects cmdlineArgs", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/bundle/base/package.json b/packages/bundle/base/package.json index 0881d4ea58..ce21f68eec 100644 --- a/packages/bundle/base/package.json +++ b/packages/bundle/base/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-base", "description": "The shared dsh core as a profile bundle: every profile's first patch layer, inserting the base plugin rows over the empty profile root", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/bundle/headless/package.json b/packages/bundle/headless/package.json index ee10bc368b..46fb8dd207 100644 --- a/packages/bundle/headless/package.json +++ b/packages/bundle/headless/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-headless", "description": "The dsh one-shot bundle: a direct core Agent/Session runner over dsh-base with no Host, HTTP, or browser layer", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/bundle/web-app/package.json b/packages/bundle/web-app/package.json index 888512a8f7..660b8fc2a7 100644 --- a/packages/bundle/web-app/package.json +++ b/packages/bundle/web-app/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-web-app", "description": "The dsh browser-surface bundle: the web patch layer over dsh-base plus the runtime glue plugin (frontend dist serving, web-surface prompt, bash runtime variables, URL line)", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/connection/package.json b/packages/client/connection/package.json index 36a3a08cc2..107d452465 100644 --- a/packages/client/connection/package.json +++ b/packages/client/connection/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-connection", "description": "Wire consumer layer: HTTP-up/WebSocket-down client, ConnectionController dual streams with reconnect, and fixture api", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/hmr/package.json b/packages/client/hmr/package.json index 149c464e28..3b559386cd 100644 --- a/packages/client/hmr/package.json +++ b/packages/client/hmr/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-hmr", "description": "Dev-only hot-reload driver for script-loaded client entries: SSE rebuilt frames → invalidate/prefetch → fiber swap through the vendored Loader entry", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/locale/package.json b/packages/client/locale/package.json index 53ff24c993..e59a558449 100644 --- a/packages/client/locale/package.json +++ b/packages/client/locale/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-locale", "description": "Locale plugin: Host-backed zh/en preference, browser-derived fallback, locale snapshots, and typed namespace dictionaries", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/modules/package.json b/packages/client/modules/package.json index e57918aa4c..fc9408e807 100644 --- a/packages/client/modules/package.json +++ b/packages/client/modules/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-modules", "description": "Client module system, dual-face: node half composes the __DSH_BOOT__ entry graph (incremental dsh.client scan, bundle route, index tap, webPlugins service); browser half is the lazy-CJS module table the vendored cordis Loader consumes as its internal seam", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/runtime/package.json b/packages/client/runtime/package.json index 6e93112cc1..82a7bc48fc 100644 --- a/packages/client/runtime/package.json +++ b/packages/client/runtime/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-runtime", "description": "Client core services: SlotRegistry, SessionRuntime (scope tree + object layer)", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/schema-form/package.json b/packages/client/schema-form/package.json index 9e47ccf3ce..4bab5feb6e 100644 --- a/packages/client/schema-form/package.json +++ b/packages/client/schema-form/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-schema-form", "description": "Schema/draft model layer for settings editors: rehydrates a serialized schemastery schema, validates drafts, and edits them immutably by path", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-agent-preset/package.json b/packages/client/ui-agent-preset/package.json index 617186b81e..e841e71c3b 100644 --- a/packages/client/ui-agent-preset/package.json +++ b/packages/client/ui-agent-preset/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-agent-preset", "description": "Agent-preset surfaces: the default for later sessions, this session's seat, and the composition editor", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-attachment/package.json b/packages/client/ui-attachment/package.json index a65822fa16..1f21f5fe46 100644 --- a/packages/client/ui-attachment/package.json +++ b/packages/client/ui-attachment/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-attachment", "description": "Pure React attachment atoms for the dsh web UI: draft-image rail, message image gallery, and original-image lightbox (zero cordis)", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-commands/package.json b/packages/client/ui-commands/package.json index 6f08e1a511..f035e7cc98 100644 --- a/packages/client/ui-commands/package.json +++ b/packages/client/ui-commands/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-commands", "description": "Client command surface: global directory cache, '/' source, three command UI kinds, popupSelect registry", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-conversation/package.json b/packages/client/ui-conversation/package.json index ae9dc9150a..96a8c3b33c 100644 --- a/packages/client/ui-conversation/package.json +++ b/packages/client/ui-conversation/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-conversation", "description": "Conversation domain: skeleton, ordered chat flow, composer with the Host-backed busy-Enter preference, and details host", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-deliverables/package.json b/packages/client/ui-deliverables/package.json index 1036166334..ad76a0d057 100644 --- a/packages/client/ui-deliverables/package.json +++ b/packages/client/ui-deliverables/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-deliverables", "description": "Produced-files turn tail and clickable final-response file references for Web", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-directory-picker-browse/package.json b/packages/client/ui-directory-picker-browse/package.json index d3957208bd..141a52d776 100644 --- a/packages/client/ui-directory-picker-browse/package.json +++ b/packages/client/ui-directory-picker-browse/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-directory-picker-browse", "description": "In-app directory browsing surface: the workspace directory-flow owner rendering the host's listing and creation primitives", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-directory-picker-native/package.json b/packages/client/ui-directory-picker-native/package.json index 1384a08ead..d2edd0ef92 100644 --- a/packages/client/ui-directory-picker-native/package.json +++ b/packages/client/ui-directory-picker-native/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-directory-picker-native", "description": "Native directory-picker surface: the renderless workspace directory-flow occupant driving the host's OS chooser", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-goal/package.json b/packages/client/ui-goal/package.json index fbb5569543..e822e253ea 100644 --- a/packages/client/ui-goal/package.json +++ b/packages/client/ui-goal/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-goal", "description": "Session goal surface: GoalBar docked above the composer, read from the goal session projection", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-input-trigger/package.json b/packages/client/ui-input-trigger/package.json index 3fc54c3faf..27bb4435cf 100644 --- a/packages/client/ui-input-trigger/package.json +++ b/packages/client/ui-input-trigger/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-input-trigger", "description": "Input trigger pipeline: '/' and '@' detection, candidate menu, pick routing to registered sources", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-jobs/package.json b/packages/client/ui-jobs/package.json index bdcb634e8e..d9ca8dd4f8 100644 --- a/packages/client/ui-jobs/package.json +++ b/packages/client/ui-jobs/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-jobs", "description": "Session-header background-job list: live registry state mirrored from session/jobs frames", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "type": "module", "main": "lib/index.js", "types": "lib/types/index.d.ts", diff --git a/packages/client/ui-layout/package.json b/packages/client/ui-layout/package.json index db914cbd20..06ff884982 100644 --- a/packages/client/ui-layout/package.json +++ b/packages/client/ui-layout/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-layout", "description": "Shell plugin: three-column AppFrame with drag handles, ctx.layout viewing-state service (navigation + panels)", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-message-feedback/package.json b/packages/client/ui-message-feedback/package.json index 6faf159bc2..4dbd57dd1b 100644 --- a/packages/client/ui-message-feedback/package.json +++ b/packages/client/ui-message-feedback/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-message-feedback", "description": "Per-message feedback controls contributed to the assistant-message action strip, backed by the messageFeedback Host Remote", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-model-selection/package.json b/packages/client/ui-model-selection/package.json index ea9843992a..3cfe5e71cd 100644 --- a/packages/client/ui-model-selection/package.json +++ b/packages/client/ui-model-selection/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-model-selection", "description": "Model selection: the /model popupSelect over session.models / session.selectModel", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-permission-presets/package.json b/packages/client/ui-permission-presets/package.json index dc6fd4e2f1..e86e3fdbb1 100644 --- a/packages/client/ui-permission-presets/package.json +++ b/packages/client/ui-permission-presets/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-permission-presets", "description": "Permission surfaces: a new-session default in General settings and a current-session /permission popup over the permissions projection", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-plan/package.json b/packages/client/ui-plan/package.json index 2b5d64b057..aedf12b166 100644 --- a/packages/client/ui-plan/package.json +++ b/packages/client/ui-plan/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-plan", "description": "Plan-mode composer control: the conversation.input.plan seat over the plan projection and the /plan command channel", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-primitives/package.json b/packages/client/ui-primitives/package.json index 66a1bb672b..bc599663a1 100644 --- a/packages/client/ui-primitives/package.json +++ b/packages/client/ui-primitives/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-primitives", "description": "Pure React atoms for the dsh web UI: controls, icons, markdown, and JSON inspectors (zero cordis)", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-settings-general/package.json b/packages/client/ui-settings-general/package.json index 878c339e0b..c79c1882e7 100644 --- a/packages/client/ui-settings-general/package.json +++ b/packages/client/ui-settings-general/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-settings-general", "description": "Settings ownerless-copy and product onboarding plugin: the General section, shell trigger/header chrome content, settings dictionaries, and the versioned welcome notice", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-settings-models/package.json b/packages/client/ui-settings-models/package.json index 6296787142..5660cf6dfc 100644 --- a/packages/client/ui-settings-models/package.json +++ b/packages/client/ui-settings-models/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-settings-models", "description": "Models settings and shared product-onboarding dialogs over existing settings and credential joins", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-settings-plugin-inventory/package.json b/packages/client/ui-settings-plugin-inventory/package.json index c4260096a8..5d486e3fcd 100644 --- a/packages/client/ui-settings-plugin-inventory/package.json +++ b/packages/client/ui-settings-plugin-inventory/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-settings-plugin-inventory", "description": "Read-only Cordis Loader inventory tab in Web Plugins settings", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-settings-plugins/package.json b/packages/client/ui-settings-plugins/package.json index 42e5f3e534..ece83f4239 100644 --- a/packages/client/ui-settings-plugins/package.json +++ b/packages/client/ui-settings-plugins/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-settings-plugins", "description": "Plugins settings section with feature-owned tabs and configurable host-plane plugin cards", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-settings/package.json b/packages/client/ui-settings/package.json index a0b6c8ee2f..8b20beeede 100644 --- a/packages/client/ui-settings/package.json +++ b/packages/client/ui-settings/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-settings", "description": "Settings domain base plugin: the settings-namespace scope service and the canonical settings slot-type contract", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-sidebar/package.json b/packages/client/ui-sidebar/package.json index b6c7813033..7c5eace021 100644 --- a/packages/client/ui-sidebar/package.json +++ b/packages/client/ui-sidebar/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-sidebar", "description": "Sidebar plugin: session multi-level tree, search, grouping, state dots", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-skill/package.json b/packages/client/ui-skill/package.json index 1bd1a3d109..e7b9b82963 100644 --- a/packages/client/ui-skill/package.json +++ b/packages/client/ui-skill/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-skill", "description": "Web skill references and the dedicated skill tool row", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-slots/package.json b/packages/client/ui-slots/package.json index eb9f076ea3..1778a2b500 100644 --- a/packages/client/ui-slots/package.json +++ b/packages/client/ui-slots/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-slots", "description": "Slot registry pure core: SlotMap declaration merging, single register composition API, four-share props types, store-seat types, renderer install seam", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-subagent/package.json b/packages/client/ui-subagent/package.json index 4f16c65d03..af795695e3 100644 --- a/packages/client/ui-subagent/package.json +++ b/packages/client/ui-subagent/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-subagent", "description": "Subagent conversation catalog, continuation routing UI, and '@' reference source", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-theme/package.json b/packages/client/ui-theme/package.json index 4b3ecdc24f..fd83879158 100644 --- a/packages/client/ui-theme/package.json +++ b/packages/client/ui-theme/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-theme", "description": "Theme plugin: Host bootstrap for the pre-plugin palette; DOM-free ThemeRuntime for light/dark/system state; --dsw-* token styles and Appearance settings row", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-tool/package.json b/packages/client/ui-tool/package.json index 5c2e7f47f9..3095da5315 100644 --- a/packages/client/ui-tool/package.json +++ b/packages/client/ui-tool/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-tool", "description": "Client Tool call-tree renderer and keyed per-tool presentation slot", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-trajectory/package.json b/packages/client/ui-trajectory/package.json index 1dc0c9bbde..70c4ea896f 100644 --- a/packages/client/ui-trajectory/package.json +++ b/packages/client/ui-trajectory/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-trajectory", "description": "Trajectory event ledger with an interactive timing overview: pure-consumer plugin registering into the conversation ViewMap (no service)", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-user-questions/package.json b/packages/client/ui-user-questions/package.json index 3afa43d70b..a784d45ee2 100644 --- a/packages/client/ui-user-questions/package.json +++ b/packages/client/ui-user-questions/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-user-questions", "description": "Web ask_user_question feature: host tool mount plus composer-takeover question UI", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-workflow-run/package.json b/packages/client/ui-workflow-run/package.json index 71695e6394..4b483790b1 100644 --- a/packages/client/ui-workflow-run/package.json +++ b/packages/client/ui-workflow-run/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-workflow-run", "description": "Durable workflow-run Conversation Node and nested member disclosure for dsh web", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-workspace/package.json b/packages/client/ui-workspace/package.json index 105f0afa63..d1853e9db0 100644 --- a/packages/client/ui-workspace/package.json +++ b/packages/client/ui-workspace/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-workspace", "description": "Workspace picker plugin: one WorkspacePicker registered into the sidebar and empty-state workspace slots", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/web-react/package.json b/packages/client/web-react/package.json index ade5833056..c510265ecf 100644 --- a/packages/client/web-react/package.json +++ b/packages/client/web-react/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-web-react", "description": "Shell-side React glue: createSlotRenderer, SessionProvider, bindSnapshotSelector (uSES bridge), useInvoke", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/web/package.json b/packages/client/web/package.json index cfe38fe698..4b19398e98 100644 --- a/packages/client/web/package.json +++ b/packages/client/web/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-web", "description": "Web shell kernel: bootWebShell (module system holding + seed table + two-stage boot + AppRoot gate + app-shell assembly entry), consumed by the apps/web vite entry", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/code-runtime/code-runtime-worker-thread/package.json b/packages/code-runtime/code-runtime-worker-thread/package.json index e4286cbdd5..4959fe12be 100644 --- a/packages/code-runtime/code-runtime-worker-thread/package.json +++ b/packages/code-runtime/code-runtime-worker-thread/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-code-runtime-worker-thread", "description": "Worker-thread implementation of the DeepSeek Harness code-execution seam", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/code-runtime/code-runtime/package.json b/packages/code-runtime/code-runtime/package.json index 20c1bdb859..959d21ba51 100644 --- a/packages/code-runtime/code-runtime/package.json +++ b/packages/code-runtime/code-runtime/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-code-runtime", "description": "Abstract code-execution seam (ctx.codeRuntime) for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/compaction/command-compact/package.json b/packages/compaction/command-compact/package.json index c3cdffaec3..8854e8db63 100644 --- a/packages/compaction/command-compact/package.json +++ b/packages/compaction/command-compact/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-command-compact", "description": "Human-facing slash command for explicit session compaction", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/compaction/compaction-basic/package.json b/packages/compaction/compaction-basic/package.json index 2b91fa4630..236b48e3fe 100644 --- a/packages/compaction/compaction-basic/package.json +++ b/packages/compaction/compaction-basic/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-compaction-basic", "description": "Token-meter-driven compaction policy and LLM summarization backend for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/compaction/compaction-tool-result-pruner/package.json b/packages/compaction/compaction-tool-result-pruner/package.json index 1ee9dcbb0a..d89264fdb2 100644 --- a/packages/compaction/compaction-tool-result-pruner/package.json +++ b/packages/compaction/compaction-tool-result-pruner/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-compaction-tool-result-pruner", "description": "Replay-safe model-free head/middle/tail pruning for tool-result surface nodes", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/compaction/compaction/package.json b/packages/compaction/compaction/package.json index 4c6900c6c3..a8610e513d 100644 --- a/packages/compaction/compaction/package.json +++ b/packages/compaction/compaction/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-compaction", "description": "Abstract compaction service seam (ctx.compaction) for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/context/agent-instructions/package.json b/packages/context/agent-instructions/package.json index c84bb2bde7..ccd3112a31 100644 --- a/packages/context/agent-instructions/package.json +++ b/packages/context/agent-instructions/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-agent-instructions", "description": "Workspace context loader for AGENTS.md/CLAUDE.md instruction files", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/context/session-reference/package.json b/packages/context/session-reference/package.json index 83fe078eb8..296757922a 100644 --- a/packages/context/session-reference/package.json +++ b/packages/context/session-reference/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-reference", "description": "Cross-session snapshot references and durable untrusted model context (ctx.sessionReferenceResolver)", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/context/time-context/package.json b/packages/context/time-context/package.json index 83eb05dc6e..40765701ee 100644 --- a/packages/context/time-context/package.json +++ b/packages/context/time-context/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-time-context", "description": "Opt-in durable per-step context with the current time and elapsed time", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/context/tmux-context/package.json b/packages/context/tmux-context/package.json index dd63d592e5..04697bf3a5 100644 --- a/packages/context/tmux-context/package.json +++ b/packages/context/tmux-context/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tmux-context", "description": "Opt-in durable per-step context with this agent's tmux pane and window location", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/core/agent-default-model/package.json b/packages/core/agent-default-model/package.json index 617139dbf2..aecd485f17 100644 --- a/packages/core/agent-default-model/package.json +++ b/packages/core/agent-default-model/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-agent-default-model", "description": "Default model selection shared by Agent entry points", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/core/agent-loop/package.json b/packages/core/agent-loop/package.json index a25f1d938f..fa882280ef 100644 --- a/packages/core/agent-loop/package.json +++ b/packages/core/agent-loop/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-agent-loop", "description": "The concrete agent loop plugin for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/core/agent-tool-presentation/package.json b/packages/core/agent-tool-presentation/package.json index 9610ebe18e..2c511c1541 100644 --- a/packages/core/agent-tool-presentation/package.json +++ b/packages/core/agent-tool-presentation/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-agent-tool-presentation", "description": "Agent-plane presentation selector: composes one agent's tools as Code Mode, native, or both", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/core/agent/package.json b/packages/core/agent/package.json index 0bfc2e2fce..118ac28d1f 100644 --- a/packages/core/agent/package.json +++ b/packages/core/agent/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-agent", "description": "Agent interface, registry, initiator scope, and event vocabulary for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/core/scope/package.json b/packages/core/scope/package.json index 09bc97963c..168ca36ea9 100644 --- a/packages/core/scope/package.json +++ b/packages/core/scope/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-scope", "description": "Scoped-context registration primitive (scope tags, scope-filtered event dispatch) for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/core/session/package.json b/packages/core/session/package.json index 2c5648e07d..8b9e5457a9 100644 --- a/packages/core/session/package.json +++ b/packages/core/session/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session", "description": "Event-sourced session store for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/core/system-prompt/package.json b/packages/core/system-prompt/package.json index f34d70d4cd..b28b528319 100644 --- a/packages/core/system-prompt/package.json +++ b/packages/core/system-prompt/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-system-prompt", "description": "System prompt assembly registry for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/core/tools/package.json b/packages/core/tools/package.json index e0dcd5ae30..5f27e77709 100644 --- a/packages/core/tools/package.json +++ b/packages/core/tools/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tools", "description": "Tool registry and execution pipeline for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/credentials/credentials-local/package.json b/packages/credentials/credentials-local/package.json index 75d574b1c0..777c251ab4 100644 --- a/packages/credentials/credentials-local/package.json +++ b/packages/credentials/credentials-local/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-credentials-local", "description": "File-backed credentials provider ($DSH_HOME/.env under the live process environment) for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/credentials/credentials/package.json b/packages/credentials/credentials/package.json index 7bd964b31d..6ff436fca4 100644 --- a/packages/credentials/credentials/package.json +++ b/packages/credentials/credentials/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-credentials", "description": "Abstract credential seam (ctx.credentials): settings carry references to secrets, providers own the values", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/e2b/e2b/package.json b/packages/e2b/e2b/package.json index d073feebae..0b59ecfba1 100644 --- a/packages/e2b/e2b/package.json +++ b/packages/e2b/e2b/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-e2b", "description": "Shared E2B sandbox lifecycle for DeepSeek Harness provider adapters", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/e2b/fs-e2b/package.json b/packages/e2b/fs-e2b/package.json index 7f03bfa801..247644144d 100644 --- a/packages/e2b/fs-e2b/package.json +++ b/packages/e2b/fs-e2b/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-fs-e2b", "description": "E2B filesystem implementation for DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/e2b/subprocess-e2b/package.json b/packages/e2b/subprocess-e2b/package.json index 55739a65ed..2aeaab41ce 100644 --- a/packages/e2b/subprocess-e2b/package.json +++ b/packages/e2b/subprocess-e2b/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subprocess-e2b", "description": "E2B subprocess implementation for DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/examples/acp-demo/package.json b/packages/examples/acp-demo/package.json index 6694257e88..e49e3804a2 100644 --- a/packages/examples/acp-demo/package.json +++ b/packages/examples/acp-demo/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-acp-demo", "description": "ACP automation server app: agent spine + JSONL persistence + ACP transport, with a JSON-RPC stdio bin", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/examples/agent-spine-demo/package.json b/packages/examples/agent-spine-demo/package.json index 67b01c29fa..6c2bcadc8f 100644 --- a/packages/examples/agent-spine-demo/package.json +++ b/packages/examples/agent-spine-demo/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-agent-spine-demo", "description": "The default executor-less/UI-less agent spine with fallback session titles, provider-routed retry, and optional persisted goals", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/examples/jsonrpc-demo/package.json b/packages/examples/jsonrpc-demo/package.json index e8519495fa..c40abc8c64 100644 --- a/packages/examples/jsonrpc-demo/package.json +++ b/packages/examples/jsonrpc-demo/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-sdk-jsonrpc-demo", "description": "Bin that boots an external Cordis config for the stdio JSON-RPC SDK runtime", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/extensions/cordis-client-runner/package.json b/packages/extensions/cordis-client-runner/package.json index 0e6903ce57..ababeff94e 100644 --- a/packages/extensions/cordis-client-runner/package.json +++ b/packages/extensions/cordis-client-runner/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-cordis-client-runner", "description": "Browser half of dynamic dual-half plugin packages: event subscription, closure evaluation, guard facade, and loader entries", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/extensions/cordis-host-runner/package.json b/packages/extensions/cordis-host-runner/package.json index 59e78a1ec9..5edfc35cb6 100644 --- a/packages/extensions/cordis-host-runner/package.json +++ b/packages/extensions/cordis-host-runner/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-cordis-host-runner", "description": "Dynamic package definition registry, host-half sandbox lifecycle, and invoke handler table for model-mounted dual-half packages", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/extensions/tool-cordis/package.json b/packages/extensions/tool-cordis/package.json index 0279f6d424..63afbb3c9e 100644 --- a/packages/extensions/tool-cordis/package.json +++ b/packages/extensions/tool-cordis/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-cordis", "description": "Self-referential cordis toolset: inspect the live runtime, mount and dispose model-written plugins", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/extensions/ui-cordis/package.json b/packages/extensions/ui-cordis/package.json index 1a717b2cb7..8b28ce1999 100644 --- a/packages/extensions/ui-cordis/package.json +++ b/packages/extensions/ui-cordis/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-cordis", "description": "Cordis dynamic-plugin definition card: the keyed cordis_define tool row with its run/stop switch", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/feedback/command-feedback/package.json b/packages/feedback/command-feedback/package.json index 33a9e4ad37..0993db9df3 100644 --- a/packages/feedback/command-feedback/package.json +++ b/packages/feedback/command-feedback/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-command-feedback", "description": "Log-only session feedback producer and human-facing slash command", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/feedback/message-feedback/package.json b/packages/feedback/message-feedback/package.json index dcc3a173ac..a77d665079 100644 --- a/packages/feedback/message-feedback/package.json +++ b/packages/feedback/message-feedback/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-message-feedback", "description": "Lifecycle-bound per-message rating and note sidecar for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/fs/fs-local/package.json b/packages/fs/fs-local/package.json index efe9d4de4f..c0fb7a43da 100644 --- a/packages/fs/fs-local/package.json +++ b/packages/fs/fs-local/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-fs-local", "description": "Local-filesystem implementation of the DeepSeek Harness filesystem seam (ctx.fs)", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/fs/fs-observation-policy/package.json b/packages/fs/fs-observation-policy/package.json index 1bbd7f1039..88d8db9e90 100644 --- a/packages/fs/fs-observation-policy/package.json +++ b/packages/fs/fs-observation-policy/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-fs-observation-policy", "description": "File-context policy plugin for the DeepSeek Harness — observed-state, read-before-edit, and version-guarded write/edit added over the ctx.fs provider seam through the fs/* event gate (no service API)", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/fs/fs-sandbox/package.json b/packages/fs/fs-sandbox/package.json index 255709e6e7..a492a10004 100644 --- a/packages/fs/fs-sandbox/package.json +++ b/packages/fs/fs-sandbox/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-fs-sandbox", "description": "Sandbox-enforcing implementation of the DeepSeek Harness filesystem seam: fences write/edit by the per-call sandbox mode (read-only denies mutation, workspace-write contains it to the workspace + temp roots) while reads pass through", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/fs/fs/package.json b/packages/fs/fs/package.json index c3c7c2353b..d4bb43ed0c 100644 --- a/packages/fs/fs/package.json +++ b/packages/fs/fs/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-fs", "description": "Abstract filesystem capability seam (ctx.fs) for the DeepSeek Harness — vocabulary types, the FileSystem service (text IO + optional version-guarded atomic mutations), and the fs/* policy event vocabulary", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/fs/tool-fs-search/package.json b/packages/fs/tool-fs-search/package.json index fbb740d186..ace193ceca 100644 --- a/packages/fs/tool-fs-search/package.json +++ b/packages/fs/tool-fs-search/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-fs-search", "description": "Model-facing filesystem discovery tools (glob, grep) backed by the packaged ripgrep binary (@vscode/ripgrep)", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/fs/tool-fs/package.json b/packages/fs/tool-fs/package.json index 668fb9106d..2275cf9133 100644 --- a/packages/fs/tool-fs/package.json +++ b/packages/fs/tool-fs/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-fs", "description": "Model-facing filesystem tools (read, write, edit) over the DeepSeek Harness filesystem seam (ctx.fs)", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/fs/tool-str-replace-editor/package.json b/packages/fs/tool-str-replace-editor/package.json index 3aca8e7c8f..a9628c108b 100644 --- a/packages/fs/tool-str-replace-editor/package.json +++ b/packages/fs/tool-str-replace-editor/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-str-replace-editor", "description": "Model-facing view, create, literal replace, and line insert tool over the Harness filesystem service", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/goal/command-goal/package.json b/packages/goal/command-goal/package.json index a0ecf3ca9b..e6849d82e6 100644 --- a/packages/goal/command-goal/package.json +++ b/packages/goal/command-goal/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-command-goal", "description": "Human-facing slash command for persisted same-session goals", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/goal/goal-round-driver/package.json b/packages/goal/goal-round-driver/package.json index af5d415729..3660b717f6 100644 --- a/packages/goal/goal-round-driver/package.json +++ b/packages/goal/goal-round-driver/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-goal-round-driver", "description": "Race-fenced same-session goal-round driver", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/goal/goal/package.json b/packages/goal/goal/package.json index 13fcddeecd..ddac8fd841 100644 --- a/packages/goal/goal/package.json +++ b/packages/goal/goal/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-goal", "description": "Event-sourced same-session goal state and lifecycle service for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/goal/tool-goal/package.json b/packages/goal/tool-goal/package.json index 9c8ce67a76..3514474923 100644 --- a/packages/goal/tool-goal/package.json +++ b/packages/goal/tool-goal/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-goal", "description": "Model-facing same-session goal tools with execution-time authority checks", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/guard/repeat-tool-reminder/package.json b/packages/guard/repeat-tool-reminder/package.json index 46996c42c9..62d46dc385 100644 --- a/packages/guard/repeat-tool-reminder/package.json +++ b/packages/guard/repeat-tool-reminder/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-repeat-tool-reminder", "description": "Repeat-tool-call guard plugin: advisory reminders when an agent loops on identical tool calls", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/guard/timeout-policy/package.json b/packages/guard/timeout-policy/package.json index 947415cb62..1af9607ec3 100644 --- a/packages/guard/timeout-policy/package.json +++ b/packages/guard/timeout-policy/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-call-timeout-policy", "description": "Tool-call timeout policy: a tools/execute wrapper that arms a per-tool deadline on exec.signal and returns TOOL_TIMEOUT when it wins", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/hooks/hook-protocol/package.json b/packages/hooks/hook-protocol/package.json index 853b79f934..93301b0f98 100644 --- a/packages/hooks/hook-protocol/package.json +++ b/packages/hooks/hook-protocol/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-hook-protocol", "description": "Shared Claude Code / Codex hook wire protocol: matcher engine, stdin/exit-code/stdout codec, multi-hook merge, and hook/* session events", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/hooks/hooks-claude-code/package.json b/packages/hooks/hooks-claude-code/package.json index 2e19511840..5d82313f31 100644 --- a/packages/hooks/hooks-claude-code/package.json +++ b/packages/hooks/hooks-claude-code/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-hooks-claude-code", "description": "Bridge plugin: run a Claude Code hooks.json / settings hook config on the DeepSeek Harness interception seams", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/hooks/hooks-codex/package.json b/packages/hooks/hooks-codex/package.json index 7b849242dd..594710190b 100644 --- a/packages/hooks/hooks-codex/package.json +++ b/packages/hooks/hooks-codex/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-hooks-codex", "description": "Bridge plugin: run a Codex hooks.json hook config on the DeepSeek Harness interception seams", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/host/apiproxy/package.json b/packages/host/apiproxy/package.json index d0e75a11f5..6af3b2ee18 100644 --- a/packages/host/apiproxy/package.json +++ b/packages/host/apiproxy/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-host-apiproxy", "description": "API gateway: the ApiProxy contract (api/), the fetch carrier pair (fetch/), and the host-side gateway plugin providing ctx.apiProxy", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/host/directory-picker-auto/package.json b/packages/host/directory-picker-auto/package.json index 3e5112dde7..6d4f28ab66 100644 --- a/packages/host/directory-picker-auto/package.json +++ b/packages/host/directory-picker-auto/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-host-directory-picker-auto", "description": "Adaptive chooser of the directory-picker seam: resolves the host situation at boot and mounts the native or browse backend for the DeepSeek Harness web GUI host", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/host/directory-picker-browse/package.json b/packages/host/directory-picker-browse/package.json index 9eacb79ccc..edac737c8e 100644 --- a/packages/host/directory-picker-browse/package.json +++ b/packages/host/directory-picker-browse/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-host-directory-picker-browse", "description": "In-app browsing backend of the directory-picker seam (listing/creation primitives over the host filesystem)", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/host/directory-picker-native/package.json b/packages/host/directory-picker-native/package.json index 933cfbe3a2..75642b724f 100644 --- a/packages/host/directory-picker-native/package.json +++ b/packages/host/directory-picker-native/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-host-directory-picker-native", "description": "Native-OS-chooser backend of the directory-picker seam for the DeepSeek Harness web GUI host", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/host/directory-picker/package.json b/packages/host/directory-picker/package.json index 7196855c85..e9ec712ad8 100644 --- a/packages/host/directory-picker/package.json +++ b/packages/host/directory-picker/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-host-directory-picker", "description": "Abstract workspace-directory picking seam (ctx.directoryPicker) for the DeepSeek Harness web GUI host", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/host/frontend-static/package.json b/packages/host/frontend-static/package.json index 7c2cfe281d..4aa9d1621d 100644 --- a/packages/host/frontend-static/package.json +++ b/packages/host/frontend-static/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-host-frontend-static", "description": "SPA dist server for the Web shell: owns the webserver fallback seat, serving the built frontend with index-tap injection, traversal rejection, and SPA index fallback", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/host/plugin-inventory/package.json b/packages/host/plugin-inventory/package.json index 4da7af74ac..4639d18bc5 100644 --- a/packages/host/plugin-inventory/package.json +++ b/packages/host/plugin-inventory/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-host-plugin-inventory", "description": "Read-only Remote projection of current Cordis Loader plugin state", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/host/webserver/package.json b/packages/host/webserver/package.json index 63fceb801b..f19d959473 100644 --- a/packages/host/webserver/package.json +++ b/packages/host/webserver/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-host-webserver", "description": "Web route-registration plugin: HTTP and upgrade routes, index transform taps, and static dist fallback; knows no harness concepts", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/identity/anonymous-user-id/package.json b/packages/identity/anonymous-user-id/package.json index 1c4997c054..49c286a5ef 100644 --- a/packages/identity/anonymous-user-id/package.json +++ b/packages/identity/anonymous-user-id/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-anonymous-user-id", "description": "Shared anonymous user identity for DeepSeek Harness telemetry and feedback correlation", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/interaction/commands/package.json b/packages/interaction/commands/package.json index 575f2b4e8c..3b7079f086 100644 --- a/packages/interaction/commands/package.json +++ b/packages/interaction/commands/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-commands", "description": "Plugin-owned human command registry for DeepSeek Harness UIs", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/interaction/permission-presets/package.json b/packages/interaction/permission-presets/package.json index dd328cd3bb..d62c3c9d96 100644 --- a/packages/interaction/permission-presets/package.json +++ b/packages/interaction/permission-presets/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-permission-presets", "description": "User-facing permission presets (ctx.permissionPresets) for the DeepSeek Harness: one product-level Permissions select bundling the sandbox-mode and approval-policy knobs, written through to their own session events", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/interaction/tool-ask-user/package.json b/packages/interaction/tool-ask-user/package.json index c18000ae91..36fb55a70f 100644 --- a/packages/interaction/tool-ask-user/package.json +++ b/packages/interaction/tool-ask-user/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-ask-user", "description": "Model-facing ask_user_question tool over the ctx.userQuestions seam", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/interaction/user-approval/package.json b/packages/interaction/user-approval/package.json index ca559c94fa..38f8597c8a 100644 --- a/packages/interaction/user-approval/package.json +++ b/packages/interaction/user-approval/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-user-approval", "description": "User-approval seam (ctx.approval) for the DeepSeek Harness: one-shot permission decisions dispatched to composed answerers over the approval/request waterfall, fail-closed by default", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/interaction/user-questions/package.json b/packages/interaction/user-questions/package.json index 6ce971cd0d..788be37e70 100644 --- a/packages/interaction/user-questions/package.json +++ b/packages/interaction/user-questions/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-user-questions", "description": "Abstract user-questions seam (ctx.userQuestions) for asking the human during agent runs", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/jobs/jobs-local/package.json b/packages/jobs/jobs-local/package.json index 6d2fe5c18b..8e430bec1f 100644 --- a/packages/jobs/jobs-local/package.json +++ b/packages/jobs/jobs-local/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-jobs-local", "description": "Process-local implementation of the DeepSeek Harness background job registry seam", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/jobs/jobs/package.json b/packages/jobs/jobs/package.json index 89b5116808..39da6cc9dc 100644 --- a/packages/jobs/jobs/package.json +++ b/packages/jobs/jobs/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-jobs", "description": "Background job registry (ctx.jobs) for the DeepSeek Harness — shared ids, owner isolation, polling, cancellation, and completion listeners for long-running tool work", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/jobs/tool-jobs/package.json b/packages/jobs/tool-jobs/package.json index eb68bf5cac..b845ff403e 100644 --- a/packages/jobs/tool-jobs/package.json +++ b/packages/jobs/tool-jobs/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-jobs", "description": "Model-facing background job control tools (job_output, job_list, job_kill) over the ctx.jobs registry", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/llm/llm-deepseek/package.json b/packages/llm/llm-deepseek/package.json index c556cdb298..5b6a211384 100644 --- a/packages/llm/llm-deepseek/package.json +++ b/packages/llm/llm-deepseek/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-llm-deepseek", "description": "DeepSeek chat-completions adapter for the DeepSeek Harness LLM seam", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/llm/llm-pi-ai/package.json b/packages/llm/llm-pi-ai/package.json index 2dedb51af2..554e21912f 100644 --- a/packages/llm/llm-pi-ai/package.json +++ b/packages/llm/llm-pi-ai/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-llm-pi-ai", "description": "pi-ai-backed DeepSeek adapter for the DeepSeek Harness LLM seam (design-verification twin of dsh-llm-deepseek)", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/llm/llm-retry/package.json b/packages/llm/llm-retry/package.json index 0b1ca065ad..68752af10b 100644 --- a/packages/llm/llm-retry/package.json +++ b/packages/llm/llm-retry/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-llm-retry", "description": "Provider-routed LLM request retry policy for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/llm/llm/package.json b/packages/llm/llm/package.json index c0393011c5..7761bdb067 100644 --- a/packages/llm/llm/package.json +++ b/packages/llm/llm/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-llm", "description": "Provider-neutral LLM service interface for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/llm/token-meter/package.json b/packages/llm/token-meter/package.json index 33aa87f85c..627843b9a3 100644 --- a/packages/llm/token-meter/package.json +++ b/packages/llm/token-meter/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-token-meter", "description": "Replay-aware token measurement service (ctx.tokenMeter) for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/lsp/lsp-stdio/package.json b/packages/lsp/lsp-stdio/package.json index 47ef93e772..391c5e7a59 100644 --- a/packages/lsp/lsp-stdio/package.json +++ b/packages/lsp/lsp-stdio/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-lsp-stdio", "description": "Generic stdio language-server provider for the DeepSeek Harness LSP capability seam (ctx.lsp) — spawns configured servers, translates JSON-RPC, and serves transient-open goToDefinition/findReferences/goToImplementation/hover queries in the host filesystem namespace", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/lsp/lsp/package.json b/packages/lsp/lsp/package.json index 8e7f2173ef..bca11459ec 100644 --- a/packages/lsp/lsp/package.json +++ b/packages/lsp/lsp/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-lsp", "description": "Abstract LSP capability seam (ctx.lsp) for the DeepSeek Harness — language-server provider registry keyed by branded id and extension mapping, order-independent per-query selection, normalized definition/references/implementation/hover requests and results, and the LspError taxonomy", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/lsp/tool-lsp/package.json b/packages/lsp/tool-lsp/package.json index f30e62d2ae..be37fd3338 100644 --- a/packages/lsp/tool-lsp/package.json +++ b/packages/lsp/tool-lsp/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-lsp", "description": "Model-facing lsp tool over the DeepSeek Harness LSP capability seam (ctx.lsp) — one read-only tool with goToDefinition/findReferences/goToImplementation/hover operations, one-based UTF-16 cursor coordinates, bounded location rendering, and hover normalization", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/mcp/mcp-client/package.json b/packages/mcp/mcp-client/package.json index 89e77392d0..715809d404 100644 --- a/packages/mcp/mcp-client/package.json +++ b/packages/mcp/mcp-client/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-mcp-client", "description": "MCP client bridge: connects to MCP servers and registers their tools on ctx.tools", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/plan/plan-mode/package.json b/packages/plan/plan-mode/package.json index 6fe63abc6c..1b2ed4025c 100644 --- a/packages/plan/plan-mode/package.json +++ b/packages/plan/plan-mode/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-plan-mode", "description": "Logged per-agent plan mode with deployment guidance, a direct slash command, and a user-reviewed exit", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/preset/agent-presets/package.json b/packages/preset/agent-presets/package.json index c7821b7a16..8f83bc23dd 100644 --- a/packages/preset/agent-presets/package.json +++ b/packages/preset/agent-presets/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-agent-presets", "description": "Per-session agent composition from preset cordis.yml files for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/preset/persona/package.json b/packages/preset/persona/package.json index 4aeba42c70..f5e3a6e622 100644 --- a/packages/preset/persona/package.json +++ b/packages/preset/persona/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-persona", "description": "Composition-authored deployment persona section for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/runtime-diagnostics/invariants/package.json b/packages/runtime-diagnostics/invariants/package.json index a3d19e49f0..f6454f3f63 100644 --- a/packages/runtime-diagnostics/invariants/package.json +++ b/packages/runtime-diagnostics/invariants/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-invariants", "description": "Registry service for package-owned DeepSeek Harness runtime invariants", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/sandbox/sandbox-local/package.json b/packages/sandbox/sandbox-local/package.json index 2c2ca2d3c9..e1ee18a333 100644 --- a/packages/sandbox/sandbox-local/package.json +++ b/packages/sandbox/sandbox-local/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-sandbox-local", "description": "Local process-sandbox backends for the DeepSeek Harness sandbox seam: bwrap, the npm-distributed landlock-run launcher, macOS Seatbelt, or the Windows ACL restricted-token runner — functionally probed, fail-closed", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/sandbox/sandbox-policy/package.json b/packages/sandbox/sandbox-policy/package.json index 553f607ab7..3daa764872 100644 --- a/packages/sandbox/sandbox-policy/package.json +++ b/packages/sandbox/sandbox-policy/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-sandbox-policy", "description": "Per-call sandbox policy resolver and current model context: deployment fallbacks plus each session's mode and workspace root, shared by every enforcing capability family", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/sandbox/sandbox-windows-acl/package.json b/packages/sandbox/sandbox-windows-acl/package.json index cd977461a0..b7ce9b118d 100644 --- a/packages/sandbox/sandbox-windows-acl/package.json +++ b/packages/sandbox/sandbox-windows-acl/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-sandbox-windows-acl", "description": "Windows ACL write-restriction sandbox backend (restricted-token spawn with capability-SID write allowlist) for the DeepSeek Harness sandbox seam", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/sandbox/sandbox/package.json b/packages/sandbox/sandbox/package.json index 3f12853539..2f039e800e 100644 --- a/packages/sandbox/sandbox/package.json +++ b/packages/sandbox/sandbox/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-sandbox", "description": "Abstract process-sandbox seam (ctx.sandbox) for the DeepSeek Harness: same-world confinement vocabulary and the SandboxProvider contract", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/schedule/schedule/package.json b/packages/schedule/schedule/package.json index 8b70287cc8..baab56db27 100644 --- a/packages/schedule/schedule/package.json +++ b/packages/schedule/schedule/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-schedule", "description": "Agent-scoped durable after, at, and fixed-rate reminders over the session event log", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/sdk/client/package.json b/packages/sdk/client/package.json index 7b2e70e143..220c8dd808 100644 --- a/packages/sdk/client/package.json +++ b/packages/sdk/client/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-sdk-client", "description": "TypeScript client SDK for driving a DeepSeek Harness runtime subprocess over stdio JSON-RPC: the DeepSeekHarness high-level turns API and the lower-level HarnessClient", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/sdk/protocol/package.json b/packages/sdk/protocol/package.json index 594058d322..62cdcbd3ed 100644 --- a/packages/sdk/protocol/package.json +++ b/packages/sdk/protocol/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-sdk-protocol", "description": "Shared wire protocol for the DeepSeek Harness SDK runtime: the newline-delimited JSON-RPC stdio transport and the named request, result, and notification types spoken between the runtime server and SDK clients", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/sdk/server/package.json b/packages/sdk/server/package.json index 68011759bc..3316a70452 100644 --- a/packages/sdk/server/package.json +++ b/packages/sdk/server/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-sdk-jsonrpc-server", "description": "Stdio JSON-RPC server plugin for out-of-process DeepSeek Harness SDK clients", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/session-query/session-log-export/package.json b/packages/session-query/session-log-export/package.json index a1e423409a..d26b8e243b 100644 --- a/packages/session-query/session-log-export/package.json +++ b/packages/session-query/session-log-export/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-log-export", "description": "Web Session-log export command and shared download dialog", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, "repository": { "type": "git", diff --git a/packages/session-query/session-query-sqlite/package.json b/packages/session-query/session-query-sqlite/package.json index 9f7abce839..96559c1224 100644 --- a/packages/session-query/session-query-sqlite/package.json +++ b/packages/session-query/session-query-sqlite/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-query-sqlite", "description": "Concrete ctx.sessionQuery backend with SQLite FTS5 search", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/session-query/session-query/package.json b/packages/session-query/session-query/package.json index 7d7c0ae6c4..b96aa1daeb 100644 --- a/packages/session-query/session-query/package.json +++ b/packages/session-query/session-query/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-query", "description": "Combined session query service contract with concrete reads, traces, and filters", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/session-query/tool-session-query/package.json b/packages/session-query/tool-session-query/package.json index f5a29a594f..ee4f69d1ca 100644 --- a/packages/session-query/tool-session-query/package.json +++ b/packages/session-query/tool-session-query/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-session-query", "description": "Workspace-authorized model-facing session history search, trace, and event read tools", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-checkpoint-policy/package.json b/packages/session/session-checkpoint-policy/package.json index b77ce150d2..54f80e2276 100644 --- a/packages/session/session-checkpoint-policy/package.json +++ b/packages/session/session-checkpoint-policy/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-checkpoint-policy", "description": "Semantic session durability checkpoints before model requests and tool side effects", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-persistence-jsonl/package.json b/packages/session/session-persistence-jsonl/package.json index 5e4f01ccb8..f59aa7400c 100644 --- a/packages/session/session-persistence-jsonl/package.json +++ b/packages/session/session-persistence-jsonl/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-persistence-jsonl", "description": "JSONL durable session persistence backend for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-persistence-sqlite/package.json b/packages/session/session-persistence-sqlite/package.json index 35fbc2cf58..0fe1be4139 100644 --- a/packages/session/session-persistence-sqlite/package.json +++ b/packages/session/session-persistence-sqlite/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-persistence-sqlite", "description": "SQLite durable session persistence backend for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-persistence/package.json b/packages/session/session-persistence/package.json index bcb10b6d81..198569e7cf 100644 --- a/packages/session/session-persistence/package.json +++ b/packages/session/session-persistence/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-persistence", "description": "Abstract durable session persistence seam (ctx.sessionPersistence) for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-projection-cache/package.json b/packages/session/session-projection-cache/package.json index c80be96d6b..dc562efc04 100644 --- a/packages/session/session-projection-cache/package.json +++ b/packages/session/session-projection-cache/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-projection-cache", "description": "Persisted projection cache (ctx.sessionProjectionCache): durable per-session projection checkpoints over the domain data form, throttled write-behind, and the cold-read ladder (cache row + persistence tail replay)", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-projection/package.json b/packages/session/session-projection/package.json index fa2da3c4f0..53b2de2ee8 100644 --- a/packages/session/session-projection/package.json +++ b/packages/session/session-projection/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-projection", "description": "Session-projection seam: the merge-extensible projection type table, the provider contract, and the ctx.sessionProjections registry serving whole current values of log-derived per-session state", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-stats/package.json b/packages/session/session-stats/package.json index fcb1e8de18..75cafa78d8 100644 --- a/packages/session/session-stats/package.json +++ b/packages/session/session-stats/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-stats", "description": "Whole-log conversation counts and wall times projection (sessionStats) for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-telemetry-otel/package.json b/packages/session/session-telemetry-otel/package.json index 3bd006cb01..7ea1578dcc 100644 --- a/packages/session/session-telemetry-otel/package.json +++ b/packages/session/session-telemetry-otel/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-telemetry-otel", "description": "OpenTelemetry backend for the DeepSeek Harness telemetry seam: hands captured session records to the OTel JS SDK's log pipeline", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-telemetry/package.json b/packages/session/session-telemetry/package.json index 2d9f660292..afb4fdd3dd 100644 --- a/packages/session/session-telemetry/package.json +++ b/packages/session/session-telemetry/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-telemetry", "description": "SessionTelemetryBackend seam for the DeepSeek Harness: session-event capture, projection, redaction, and handoff to a reporting backend", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-title-all-prompts-llm/package.json b/packages/session/session-title-all-prompts-llm/package.json index 1329571c6e..178d84240a 100644 --- a/packages/session/session-title-all-prompts-llm/package.json +++ b/packages/session/session-title-all-prompts-llm/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-title-all-prompts-llm", "description": "All-user-messages LLM provider plugin for DeepSeek Harness session titles", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-title-first-prompt-llm/package.json b/packages/session/session-title-first-prompt-llm/package.json index 1df72b6ab3..6a316fd475 100644 --- a/packages/session/session-title-first-prompt-llm/package.json +++ b/packages/session/session-title-first-prompt-llm/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-title-first-prompt-llm", "description": "First-message LLM provider plugin for DeepSeek Harness session titles", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-title-llm/package.json b/packages/session/session-title-llm/package.json index 9077b14215..6106d524dd 100644 --- a/packages/session/session-title-llm/package.json +++ b/packages/session/session-title-llm/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-title-llm", "description": "Shared LLM generation policy for DeepSeek Harness session-title providers", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-title/package.json b/packages/session/session-title/package.json index d1df0c207d..5fc6d03262 100644 --- a/packages/session/session-title/package.json +++ b/packages/session/session-title/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-title", "description": "Log-backed session title service and provider registry for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/settings/settings-file/package.json b/packages/settings/settings-file/package.json index bcf1024c5b..106f052544 100644 --- a/packages/settings/settings-file/package.json +++ b/packages/settings/settings-file/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-settings-file", "description": "File-backed settings provider (settings.yaml) for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/settings/settings/package.json b/packages/settings/settings/package.json index 962ae5fb37..194d36827a 100644 --- a/packages/settings/settings/package.json +++ b/packages/settings/settings/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-settings", "description": "Abstract user-settings seam (ctx.settings) for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/shell/bash-local/package.json b/packages/shell/bash-local/package.json index 7121c45e03..936590f662 100644 --- a/packages/shell/bash-local/package.json +++ b/packages/shell/bash-local/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-bash-local", "description": "Local-subprocess implementation of the DeepSeek Harness bash executor seam", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/shell/bash-sandbox/package.json b/packages/shell/bash-sandbox/package.json index ea352a7a52..19e95626e9 100644 --- a/packages/shell/bash-sandbox/package.json +++ b/packages/shell/bash-sandbox/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-bash-sandbox", "description": "Sandbox-consuming implementation of the DeepSeek Harness bash executor seam (confines every command via ctx.sandbox, reports denial/enforcement result facts)", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/shell/pwsh-local/package.json b/packages/shell/pwsh-local/package.json index e3962071e7..5e63c99924 100644 --- a/packages/shell/pwsh-local/package.json +++ b/packages/shell/pwsh-local/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-pwsh-local", "description": "Local PowerShell implementation of the DeepSeek Harness bash executor seam", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/shell/pwsh-sandbox/package.json b/packages/shell/pwsh-sandbox/package.json index 7bf8a0b6d3..c62b9aa580 100644 --- a/packages/shell/pwsh-sandbox/package.json +++ b/packages/shell/pwsh-sandbox/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-pwsh-sandbox", "description": "Sandbox-consuming implementation of the DeepSeek Harness PowerShell executor seam (confines every command via ctx.sandbox, reports denial/enforcement result facts)", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/shell/shell-env/package.json b/packages/shell/shell-env/package.json index a8f7c3e6a2..305f8e3fb5 100644 --- a/packages/shell/shell-env/package.json +++ b/packages/shell/shell-env/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-shell-env", "description": "Tool-independent managed DSH_* shell environment registry", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/shell/shell/package.json b/packages/shell/shell/package.json index 590acc3cf8..7792bcedbb 100644 --- a/packages/shell/shell/package.json +++ b/packages/shell/shell/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-shell", "description": "Abstract bash executor seam (ctx.shell) for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/shell/tool-bash-persistent/package.json b/packages/shell/tool-bash-persistent/package.json index a075fd28e7..d37d0db078 100644 --- a/packages/shell/tool-bash-persistent/package.json +++ b/packages/shell/tool-bash-persistent/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-bash-persistent", "description": "Model-facing owner-scoped persistent Bash tool backed by the Harness PTY service", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/shell/tool-bash/package.json b/packages/shell/tool-bash/package.json index 1ca91a61c4..e96bbdc0b1 100644 --- a/packages/shell/tool-bash/package.json +++ b/packages/shell/tool-bash/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-bash", "description": "Model-facing bash tool with optional generic background-job and sandbox-escalation support", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/shell/tool-pwsh/package.json b/packages/shell/tool-pwsh/package.json index 2ea1df9724..2f46e77898 100644 --- a/packages/shell/tool-pwsh/package.json +++ b/packages/shell/tool-pwsh/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-pwsh", "description": "Model-facing pwsh tool over the bash executor seam", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/skill/skill-badge/package.json b/packages/skill/skill-badge/package.json index 0336e7c6d1..76bed1278c 100644 --- a/packages/skill/skill-badge/package.json +++ b/packages/skill/skill-badge/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-skill-badge", "description": "Bundled dsh badge skill provider for DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/skill/skill-filesystem/package.json b/packages/skill/skill-filesystem/package.json index 67b558e868..82a6674d49 100644 --- a/packages/skill/skill-filesystem/package.json +++ b/packages/skill/skill-filesystem/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-skill-filesystem", "description": "Local filesystem skill provider for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/skill/skill/package.json b/packages/skill/skill/package.json index ef1e78ae76..849fe30585 100644 --- a/packages/skill/skill/package.json +++ b/packages/skill/skill/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-skill", "description": "Agent skill provider registry for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/skill/tool-skill/package.json b/packages/skill/tool-skill/package.json index 5073ee38b5..f8de981868 100644 --- a/packages/skill/tool-skill/package.json +++ b/packages/skill/tool-skill/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-skill", "description": "Model-facing skill loading tool for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/spill/spill-local/package.json b/packages/spill/spill-local/package.json index ac140d4a49..6677860f64 100644 --- a/packages/spill/spill-local/package.json +++ b/packages/spill/spill-local/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-spill-local", "description": "Local-filesystem implementation of the DeepSeek Harness spill storage seam (private session-scoped files)", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/spill/spill-policy/package.json b/packages/spill/spill-policy/package.json index c6cc6592f9..5e54555275 100644 --- a/packages/spill/spill-policy/package.json +++ b/packages/spill/spill-policy/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-spill-policy", "description": "Tool-result spill policy for the DeepSeek Harness — replaces oversized plain-text tool results with a retained preview plus a spill-file path (no service API)", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/spill/spill/package.json b/packages/spill/spill/package.json index dd3ec4f108..5cc485a211 100644 --- a/packages/spill/spill/package.json +++ b/packages/spill/spill/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-spill", "description": "Abstract spill storage seam (ctx.spillStore) for the DeepSeek Harness — save oversized tool text and return a retrieval locator", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/storage/storage-domain/package.json b/packages/storage/storage-domain/package.json index c2cdb316f7..ff9f54b4e4 100644 --- a/packages/storage/storage-domain/package.json +++ b/packages/storage/storage-domain/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-storage-domain", "description": "Domain data form (ctx.storage.domain): schema-validated, event-emitting KV domains over storage backends for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/storage/storage-json/package.json b/packages/storage/storage-json/package.json index 9f4e25061e..d74204fa58 100644 --- a/packages/storage/storage-json/package.json +++ b/packages/storage/storage-json/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-storage-json", "description": "JSON file KV storage backend for the DeepSeek Harness storage hub", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/storage/storage-sqlite/package.json b/packages/storage/storage-sqlite/package.json index 860a4f0b43..6fc0eecfd4 100644 --- a/packages/storage/storage-sqlite/package.json +++ b/packages/storage/storage-sqlite/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-storage-sqlite", "description": "SQLite storage backend (kv facet) for the DeepSeek Harness storage hub", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/storage/storage/package.json b/packages/storage/storage/package.json index 0daa5ae28f..d2f8a2edd8 100644 --- a/packages/storage/storage/package.json +++ b/packages/storage/storage/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-storage", "description": "Storage hub (ctx.storage): named backend registry plus mounted data-form facilities for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/subagent-acp/package.json b/packages/subagent/subagent-acp/package.json index 32a8f97876..2454b4d49c 100644 --- a/packages/subagent/subagent-acp/package.json +++ b/packages/subagent/subagent-acp/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subagent-acp", "description": "Out-of-process ACP subagent backend: drives a child agent in a spawned subprocess over the Agent Client Protocol", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/subagent-claude-code/package.json b/packages/subagent/subagent-claude-code/package.json index 1fdf54c912..a65e3b1f0f 100644 --- a/packages/subagent/subagent-claude-code/package.json +++ b/packages/subagent/subagent-claude-code/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subagent-claude-code", "description": "One-shot Claude Code subagent provider over the official Agent SDK", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/subagent-codex/package.json b/packages/subagent/subagent-codex/package.json index 0ae0955426..07c13c74bb 100644 --- a/packages/subagent/subagent-codex/package.json +++ b/packages/subagent/subagent-codex/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subagent-codex", "description": "One-shot Codex subagent provider over the official app-server protocol", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/subagent-dsh-sdk/package.json b/packages/subagent/subagent-dsh-sdk/package.json index 56295ca0b9..09bd68a123 100644 --- a/packages/subagent/subagent-dsh-sdk/package.json +++ b/packages/subagent/subagent-dsh-sdk/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subagent-dsh-sdk", "description": "Out-of-process SDK subagent backend: drives a child DeepSeek Harness runtime subprocess over stdio JSON-RPC through the TypeScript SDK client", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/subagent-fork-in-process/package.json b/packages/subagent/subagent-fork-in-process/package.json index 874213bd51..52b228cb22 100644 --- a/packages/subagent/subagent-fork-in-process/package.json +++ b/packages/subagent/subagent-fork-in-process/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subagent-fork-in-process", "description": "In-process fork subagent backend: runs a child agent seeded with a prefix of the parent's log", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/subagent-in-process-driver/package.json b/packages/subagent/subagent-in-process-driver/package.json index d214362cfd..afc521e1be 100644 --- a/packages/subagent/subagent-in-process-driver/package.json +++ b/packages/subagent/subagent-in-process-driver/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subagent-in-process-driver", "description": "Shared in-process subagent run driver: drives a child agent on ctx.agents (used by the spawn and fork backends)", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/subagent-spawn-in-process/package.json b/packages/subagent/subagent-spawn-in-process/package.json index e6a778082c..c27794a1ea 100644 --- a/packages/subagent/subagent-spawn-in-process/package.json +++ b/packages/subagent/subagent-spawn-in-process/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subagent-spawn-in-process", "description": "In-process spawn subagent backend: runs a fresh child agent on ctx.agents", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/subagent/package.json b/packages/subagent/subagent/package.json index 3fe78a62c8..2d15236c80 100644 --- a/packages/subagent/subagent/package.json +++ b/packages/subagent/subagent/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subagent", "description": "Abstract subagent seam (ctx.subagents): named-provider registry for delegating to child agents", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/tool-subagent-control/package.json b/packages/subagent/tool-subagent-control/package.json index 59fb7785b9..9f55b93434 100644 --- a/packages/subagent/tool-subagent-control/package.json +++ b/packages/subagent/tool-subagent-control/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-subagent-control", "description": "Globally named send_message, interrupt_agent, and list_agents tools over ctx.subagents continuations", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/tool-subagent-report/package.json b/packages/subagent/tool-subagent-report/package.json index f748d63426..1e08138c67 100644 --- a/packages/subagent/tool-subagent-report/package.json +++ b/packages/subagent/tool-subagent-report/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-subagent-report", "description": "Child-scoped report tool over ctx.subagents continuations", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/tool-subagent/package.json b/packages/subagent/tool-subagent/package.json index b02716a10a..ad4a75519b 100644 --- a/packages/subagent/tool-subagent/package.json +++ b/packages/subagent/tool-subagent/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-subagent", "description": "Model-facing subagent delegation tool over the ctx.subagents seam", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/subprocess/subprocess-local/package.json b/packages/subprocess/subprocess-local/package.json index ee033c48d2..74b480ae82 100644 --- a/packages/subprocess/subprocess-local/package.json +++ b/packages/subprocess/subprocess-local/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subprocess-local", "description": "Local-subprocess implementation of the DeepSeek Harness subprocess seam", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/subprocess/subprocess/package.json b/packages/subprocess/subprocess/package.json index 43ecf68ba4..2465543770 100644 --- a/packages/subprocess/subprocess/package.json +++ b/packages/subprocess/subprocess/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subprocess", "description": "Subprocess seam (ctx.subprocess) for the DeepSeek Harness — managed process groups, bounded spill-backed output, and escalated kills behind one abstract service", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/terminal/terminal-bash/package.json b/packages/terminal/terminal-bash/package.json index 654063d0cd..f3808f7d2b 100644 --- a/packages/terminal/terminal-bash/package.json +++ b/packages/terminal/terminal-bash/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-terminal-bash", "description": "Persistent shell PTY backend over the DeepSeek Harness subprocess terminal primitive", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/terminal/terminal/package.json b/packages/terminal/terminal/package.json index ea902d6cda..e241e732ad 100644 --- a/packages/terminal/terminal/package.json +++ b/packages/terminal/terminal/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-terminal", "description": "Persistent PTY session seam for the DeepSeek Harness — owner-scoped ids, backend registry, interactive sends, reads, signals, and awaited cleanup", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/terminal/tool-terminal/package.json b/packages/terminal/tool-terminal/package.json index ea98adead2..49ac22f6e1 100644 --- a/packages/terminal/tool-terminal/package.json +++ b/packages/terminal/tool-terminal/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-terminal", "description": "Six model-facing persistent PTY tools with owner isolation and generic background-job integration", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/test-support/acp-snapshot/package.json b/packages/test-support/acp-snapshot/package.json index 8f8659c9ce..859b7d6465 100644 --- a/packages/test-support/acp-snapshot/package.json +++ b/packages/test-support/acp-snapshot/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-acp-snapshot", "description": "ACP test kit: shared subprocess launcher, snapshot scenario harness, expected-output normalizers, and suite factory", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/test-support/agent-loop-testkit/package.json b/packages/test-support/agent-loop-testkit/package.json index 03c08b9e8e..6badaa4209 100644 --- a/packages/test-support/agent-loop-testkit/package.json +++ b/packages/test-support/agent-loop-testkit/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-agent-loop-testkit", "description": "Shared prerequisite mounting for tests that exercise the concrete agent loop", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/test-support/client-runtime/package.json b/packages/test-support/client-runtime/package.json index 6146e1e3f9..414ebfe9f8 100644 --- a/packages/test-support/client-runtime/package.json +++ b/packages/test-support/client-runtime/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-test-runtime", "description": "jsdom slot test runtime: real Cordis Context + SlotRegistry + web-react renderer with test-owned session/workspace doubles for feature specs", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/test-support/llm-mock-server/package.json b/packages/test-support/llm-mock-server/package.json index a03ea4ea15..6e859fe18f 100644 --- a/packages/test-support/llm-mock-server/package.json +++ b/packages/test-support/llm-mock-server/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-llm-mock-server", "description": "Scriptable OpenAI-compatible HTTP/SSE fault server for LLM recovery tests", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/test-support/llm-replay/package.json b/packages/test-support/llm-replay/package.json index 1015d1fe08..5521dbd452 100644 --- a/packages/test-support/llm-replay/package.json +++ b/packages/test-support/llm-replay/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-llm-replay", "description": "Replay LLM plugin: short-circuits llm/stream with model chunks reconstructed from a recorded session JSONL (keyless snapshot tests)", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/test-support/loader-smoke/package.json b/packages/test-support/loader-smoke/package.json index decd480ea5..5614a89df8 100644 --- a/packages/test-support/loader-smoke/package.json +++ b/packages/test-support/loader-smoke/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-loader-smoke", "description": "Shared subprocess and direct-agent harness for keyless real-Loader example smoke tests", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/todo/tool-todo/package.json b/packages/todo/tool-todo/package.json index bee55f9118..37cd12a4de 100644 --- a/packages/todo/tool-todo/package.json +++ b/packages/todo/tool-todo/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-todo", "description": "Model-facing todo_write tool over the DeepSeek Harness event-sourced session log", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/typert/generator/package.json b/packages/typert/generator/package.json index 08b2327841..bac004c701 100644 --- a/packages/typert/generator/package.json +++ b/packages/typert/generator/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-typert-generator", "description": "TypeScript project analyzer and model-driven Typert artifact generator", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/typert/loader/package.json b/packages/typert/loader/package.json index 80fd93ae1d..ad412e2394 100644 --- a/packages/typert/loader/package.json +++ b/packages/typert/loader/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-typert-loader", "description": "Loader integration for generated Typert package contributions", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/typert/protocol/package.json b/packages/typert/protocol/package.json index 485cf849fb..7c4b26d240 100644 --- a/packages/typert/protocol/package.json +++ b/packages/typert/protocol/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-typert-protocol", "description": "Compiler-independent Remote metadata and Typert provider protocols", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/typert/registry/package.json b/packages/typert/registry/package.json index 5eeb04da93..c9c9927246 100644 --- a/packages/typert/registry/package.json +++ b/packages/typert/registry/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-typert-registry", "description": "Runtime registry for generated package reflection and Zod schemas", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/util/atomic-write/package.json b/packages/util/atomic-write/package.json index f8926bc7a4..f7945c29c9 100644 --- a/packages/util/atomic-write/package.json +++ b/packages/util/atomic-write/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-atomic-write", "description": "Zero-dependency atomic file replacement: exclusive-create random-suffix temp + rename carrying the caller-stated permissions (writeFileAtomic)", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/util/brand/package.json b/packages/util/brand/package.json index f990faa87f..025fa6b37e 100644 --- a/packages/util/brand/package.json +++ b/packages/util/brand/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-brand", "description": "Type-only Branded nominal-typing primitive for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/util/home-paths/package.json b/packages/util/home-paths/package.json index bb62be9920..d3bb01e1dc 100644 --- a/packages/util/home-paths/package.json +++ b/packages/util/home-paths/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-home-paths", "description": "Shared filesystem path helpers for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/util/launch-environment/package.json b/packages/util/launch-environment/package.json index 1a5bf4b8a9..6957da3460 100644 --- a/packages/util/launch-environment/package.json +++ b/packages/util/launch-environment/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-launch-environment", "description": "Immutable DeepSeek Harness launch environment that records which layer supplied each value", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/util/native-command/package.json b/packages/util/native-command/package.json index 7412df7965..af37c74ec6 100644 --- a/packages/util/native-command/package.json +++ b/packages/util/native-command/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-native-command", "description": "Zero-dependency no-shell execFile runner for host-native OS integrations: utf8 stdio capture, abort propagation, Windows hide", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/util/output-retention/package.json b/packages/util/output-retention/package.json index 849c5a9d15..3fdab64947 100644 --- a/packages/util/output-retention/package.json +++ b/packages/util/output-retention/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-output-retention", "description": "Zero-dependency bounded-retention primitive: ItemRetainer/TextRetainer + neutral notice helpers (what did we keep, what did we omit)", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/util/timeout/package.json b/packages/util/timeout/package.json index cffe8854e7..9d7512feae 100644 --- a/packages/util/timeout/package.json +++ b/packages/util/timeout/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-timeout", "description": "Zero-dependency timeout/deadline primitive: clampTimeout, deadline, timeoutOf, TimeoutReason (timing + classification only, no termination)", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/web/tool-web/package.json b/packages/web/tool-web/package.json index 584e04e5b4..59355865b6 100644 --- a/packages/web/tool-web/package.json +++ b/packages/web/tool-web/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-web", "description": "Model-facing web tools (web_search, web_fetch) over the DeepSeek Harness web capability seam (ctx.web)", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/web/web-fetch-http/package.json b/packages/web/web-fetch-http/package.json index 1187a55be6..9dabdaed99 100644 --- a/packages/web/web-fetch-http/package.json +++ b/packages/web/web-fetch-http/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-web-fetch-http", "description": "Anonymous public HTTP(S) fetch provider for the DeepSeek Harness web capability seam (ctx.web)", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/web/web-search-deepseek/package.json b/packages/web/web-search-deepseek/package.json index ccbe17a2cf..591059cd1c 100644 --- a/packages/web/web-search-deepseek/package.json +++ b/packages/web/web-search-deepseek/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-web-search-deepseek", "description": "DeepSeek-backed search provider (native web_search via the Anthropic-compatible API) for the DeepSeek Harness web capability seam (ctx.web)", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/web/web-search-exa/package.json b/packages/web/web-search-exa/package.json index 246b7af9ba..82fc91317a 100644 --- a/packages/web/web-search-exa/package.json +++ b/packages/web/web-search-exa/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-web-search-exa", "description": "Exa-backed search provider for the DeepSeek Harness web capability seam (ctx.web)", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/web/web-search-perplexity/package.json b/packages/web/web-search-perplexity/package.json index 3904b3bc1f..67b13d7699 100644 --- a/packages/web/web-search-perplexity/package.json +++ b/packages/web/web-search-perplexity/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-web-search-perplexity", "description": "Perplexity-backed search provider for the DeepSeek Harness web capability seam (ctx.web)", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/web/web/package.json b/packages/web/web/package.json index 8ef9244233..46c98ddebd 100644 --- a/packages/web/web/package.json +++ b/packages/web/web/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-web", "description": "Abstract web access capability seam (ctx.web) for the DeepSeek Harness — search/fetch provider registry, registration-order-independent selection, request/result vocabulary, and the WebError taxonomy", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/workflow/tool-ralph/package.json b/packages/workflow/tool-ralph/package.json index b9d88e49dd..dfcd31d8b7 100644 --- a/packages/workflow/tool-ralph/package.json +++ b/packages/workflow/tool-ralph/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-ralph", "description": "Model-facing fresh-agent Ralph loop over the workflow and subagent seams", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/workflow/tool-workflow/package.json b/packages/workflow/tool-workflow/package.json index 929e8cfc99..6bf75815f9 100644 --- a/packages/workflow/tool-workflow/package.json +++ b/packages/workflow/tool-workflow/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-workflow", "description": "Model-facing workflow tool: run a JavaScript orchestration script over ctx.workflowEngine", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/workflow/workflow-worker-thread/package.json b/packages/workflow/workflow-worker-thread/package.json index c853979b4d..4d26500342 100644 --- a/packages/workflow/workflow-worker-thread/package.json +++ b/packages/workflow/workflow-worker-thread/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-workflow-worker-thread", "description": "worker-thread workflow engine: executes model-written orchestration scripts off the host event loop, bridging agent() calls back to ctx.subagents", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/workflow/workflow/package.json b/packages/workflow/workflow/package.json index 09e03fa472..4ffd4ce86c 100644 --- a/packages/workflow/workflow/package.json +++ b/packages/workflow/workflow/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-workflow", "description": "Workflow capability seam: ctx.workflowEngine service, run vocabulary, and workflow/* events", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, diff --git a/packages/workspace/workspace/package.json b/packages/workspace/workspace/package.json index b16e7ec327..9206b08dec 100644 --- a/packages/workspace/workspace/package.json +++ b/packages/workspace/workspace/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-workspace", "description": "Workspace entity registry (ctx.workspaceRegistry): durable workspace records with validated session attachment over the domain data form for the DeepSeek Harness", - "version": "0.1.0-rc.1", + "version": "0.1.0-rc.2", "publishConfig": { "access": "restricted" }, From fc90114ad9567c876314f1877cf2cf4105bef974 Mon Sep 17 00:00:00 2001 From: creatixchu Date: Thu, 13 Aug 2026 17:33:53 +0800 Subject: [PATCH 15/22] fix(web): add English onboarding copy --- packages/client/ui-settings-models/src/client/locales.ts | 2 +- packages/client/ui-settings-models/src/onboarding-copy.ts | 6 +++--- .../ui-settings-models/tests/welcome-notice.client.spec.tsx | 6 +++++- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/packages/client/ui-settings-models/src/client/locales.ts b/packages/client/ui-settings-models/src/client/locales.ts index 5804e164f6..a49a4f0ef2 100644 --- a/packages/client/ui-settings-models/src/client/locales.ts +++ b/packages/client/ui-settings-models/src/client/locales.ts @@ -103,7 +103,7 @@ export const en = { export type ModelsKey = keyof typeof en /** Chinese strings (same keys as {@link en}). */ -export const zh: typeof en = { +export const zh: { [Key in keyof typeof en]: string } = { nav: '模型', title: '模型', intro: '填入各提供方的 API 密钥即可使用其模型。', diff --git a/packages/client/ui-settings-models/src/onboarding-copy.ts b/packages/client/ui-settings-models/src/onboarding-copy.ts index 66492bde23..d52371a9cf 100644 --- a/packages/client/ui-settings-models/src/onboarding-copy.ts +++ b/packages/client/ui-settings-models/src/onboarding-copy.ts @@ -18,8 +18,8 @@ export const WELCOME_NOTICE_COPY = { continueLabel: '继续', }, en: { - title: '内测声明', - body: 'DeepSeek Harness 目前的 0.1 版本仍处在面向 Harness 开发者进行测试的阶段,还有许多地方需要持续改进和打磨,希望听取广大开发者的反馈建议。预计 DeepSeek Harness 的核心插件以及基础 API 都会在接下来的一段时间内快速迭代、持续演化。\n\n我们期待与全球开发者一起,在开源、开放、可复用、可组合的基础设施之上,共同探索智能上限。欢迎全球 Harness 开发者加入 DSH 插件生态。', - continueLabel: '继续', + title: 'Internal Testing Notice', + body: "DeepSeek Harness 0.1 remains in testing for Harness developers. Many areas need further improvement, and we welcome feedback from the developer community. DeepSeek Harness's core plugins and foundational APIs will continue to evolve rapidly over the coming months.\n\nWe look forward to exploring the limits of intelligence with developers around the world, building on open-source, open, reusable, and composable infrastructure. We welcome Harness developers everywhere to join the DSH plugin ecosystem.", + continueLabel: 'Continue', }, } as const diff --git a/packages/client/ui-settings-models/tests/welcome-notice.client.spec.tsx b/packages/client/ui-settings-models/tests/welcome-notice.client.spec.tsx index 09fc2485cf..8b8858c64a 100644 --- a/packages/client/ui-settings-models/tests/welcome-notice.client.spec.tsx +++ b/packages/client/ui-settings-models/tests/welcome-notice.client.spec.tsx @@ -62,7 +62,11 @@ function mount(version?: string, mutateImpl: () => Promise = () => Prom describe('WelcomeNotice', () => { it('uses the exact owner copy in both GUI locales', () => { - expect(WELCOME_NOTICE_COPY.en).toEqual(WELCOME_NOTICE_COPY.zh) + expect(WELCOME_NOTICE_COPY.en).toEqual({ + title: 'Internal Testing Notice', + body: "DeepSeek Harness 0.1 remains in testing for Harness developers. Many areas need further improvement, and we welcome feedback from the developer community. DeepSeek Harness's core plugins and foundational APIs will continue to evolve rapidly over the coming months.\n\nWe look forward to exploring the limits of intelligence with developers around the world, building on open-source, open, reusable, and composable infrastructure. We welcome Harness developers everywhere to join the DSH plugin ecosystem.", + continueLabel: 'Continue', + }) expect(en.welcomeBody).toBe(WELCOME_NOTICE_COPY.en.body) expect(zh.welcomeBody).toBe(WELCOME_NOTICE_COPY.zh.body) }) From 7c94659ec4d73d13dad20d66bdb7d465e2624215 Mon Sep 17 00:00:00 2001 From: Turtle Date: Thu, 13 Aug 2026 15:56:22 +0800 Subject: [PATCH 16/22] docs: add source build prerequisite to plugin tutorial --- docs/user/develop/basic/publish.i18n.yaml | 4 ++-- docs/user/develop/basic/publish.md | 2 ++ docs/user/develop/basic/publish.zh.md | 2 ++ 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/docs/user/develop/basic/publish.i18n.yaml b/docs/user/develop/basic/publish.i18n.yaml index e640e971cb..da1ac1e88c 100644 --- a/docs/user/develop/basic/publish.i18n.yaml +++ b/docs/user/develop/basic/publish.i18n.yaml @@ -2,5 +2,5 @@ # side as of the last confirmed-consistent state. Both languages carry equal authority; # after editing either side, bring the other along and re-record with: # pnpm run verify-translation-pairing --write docs/user/develop/basic/publish.md -publish.md: 8283f9e7ff0c28580343975d67c5715d17c53074 -publish.zh.md: 5a87901fe39aa00e94db81dc840e39a52e0cc88c +publish.md: 9548fe2f8e4636dd160c79cd0d50f01f8bdfd3d1 +publish.zh.md: 2cff05edcca55bac5fde9d2e7d24ed9c8b48a6f5 diff --git a/docs/user/develop/basic/publish.md b/docs/user/develop/basic/publish.md index 8283f9e7ff..9548fe2f8e 100644 --- a/docs/user/develop/basic/publish.md +++ b/docs/user/develop/basic/publish.md @@ -4,6 +4,8 @@ English | [中文](publish.zh.md) The previous tutorials loaded a local plugin through a `--patch` overlay. This tutorial packages it as an installable **bundle**, installs it into a **profile** with `dsh plugin add`, and explains the layer order that determines the composed configuration. It assumes the `dsh` CLI is installed. Complete [plugin configuration](./config.md) first. +To use a fresh source checkout instead, complete the [run-from-source section](../../../../README.md#run-from-source), keep this tutorial's `hello-plugin` directory at the repository root, and run the remaining `dsh ...` commands from there as `pnpm dsh ...`. See [source execution](../../../../apps/cli/reference/README.md#source-execution) for build and launcher behavior. + ## Two concepts, two manifests Installation is built on two concepts. Both are described by a `package.json`, but they carry different kinds of manifest under the `dsh` key, and they answer different questions: diff --git a/docs/user/develop/basic/publish.zh.md b/docs/user/develop/basic/publish.zh.md index 5a87901fe3..2cff05edcc 100644 --- a/docs/user/develop/basic/publish.zh.md +++ b/docs/user/develop/basic/publish.zh.md @@ -4,6 +4,8 @@ 前几篇教程通过 `--patch` overlay 加载本地插件。本教程把它打包成可安装的**组合包**(bundle),用 `dsh plugin add` 安装进一个 **profile**,并解释决定组合后配置的层顺序。本文假设 `dsh` CLI 已安装。请先完成[插件配置](./config.md)。 +如果改用全新的源码 checkout,请先按照[从源码运行章节](../../../../README.md#run-from-source)完成准备,将本教程的 `hello-plugin` 目录放在仓库根目录,并从该目录把下文的 `dsh ...` 命令改为 `pnpm dsh ...`。构建与启动器行为见[源码执行](../../../../apps/cli/reference/README.md#source-execution)。 + ## 两个概念,两种 manifest 安装机制建立在两个概念之上。二者都由一份 `package.json` 描述,但它们在 `dsh` 键下携带的 manifest(元数据清单)种类不同,回答的问题也不同: From 0f1c29c75110fb1cb218fff38bce048b6d9ce3c9 Mon Sep 17 00:00:00 2001 From: creatixchu Date: Thu, 13 Aug 2026 18:02:25 +0800 Subject: [PATCH 17/22] test(web): cover onboarding branches --- .../src/client/OnboardingModal.tsx | 2 +- .../tests/apply.client.spec.ts | 20 +++++++++++++++++-- .../tests/onboarding-dialog.client.spec.tsx | 7 +++++++ 3 files changed, 26 insertions(+), 3 deletions(-) diff --git a/packages/client/ui-settings-models/src/client/OnboardingModal.tsx b/packages/client/ui-settings-models/src/client/OnboardingModal.tsx index 5320813dde..3e2b25559c 100644 --- a/packages/client/ui-settings-models/src/client/OnboardingModal.tsx +++ b/packages/client/ui-settings-models/src/client/OnboardingModal.tsx @@ -41,7 +41,7 @@ export function OnboardingModal({ title={title} onClose={ignoreImplicitDismiss} headless - className={css['dialog'] ?? ''} + className={css.dialog as string} >

{title}

diff --git a/packages/client/ui-settings-models/tests/apply.client.spec.ts b/packages/client/ui-settings-models/tests/apply.client.spec.ts index d8fc11496b..39ba3e4b65 100644 --- a/packages/client/ui-settings-models/tests/apply.client.spec.ts +++ b/packages/client/ui-settings-models/tests/apply.client.spec.ts @@ -14,7 +14,7 @@ import { WelcomeNotice } from '../src/client/WelcomeNotice.tsx' // the shipped Chinese copy, so they state the browser they assume. usePinnedBrowserLanguages('zh-CN') -async function bench() { +async function bench(isLoopback = true) { const ctx = new Context() await ctx.plugin(SlotRegistry).await() const locale = new LocaleRuntime(ctx) @@ -24,7 +24,7 @@ async function bench() { new TestRemote(ctx) // The apply path only captures the wire face; no call leaves this fake // until a section actually loads. - ctx.provide('connection', { api: {}, isLoopback: true } as never) + ctx.provide('connection', { api: {}, isLoopback } as never) return { ctx, slots: ctx.get('slots') as SlotRegistry, locale } } @@ -142,6 +142,22 @@ describe('ui-settings-models apply', () => { expect(() => b.locale.register('settings.models', 'zh', {})).not.toThrow() expect(() => b.locale.register('settings.models', 'en', {})).not.toThrow() }) + + it('keeps remote-browser acknowledgement in process memory', async () => { + const b = await bench(false) + declare(b.slots) + await b.ctx.plugin({ inject: [...inject], apply }).await() + const entry = b.slots.entries('settings.onboarding') + .find(candidate => candidate.options.id === 'welcome-notice')! + const injected = ( + entry.inject as unknown as () => import('../src/client/WelcomeNotice.tsx').WelcomeNoticeInjected + )() + + await injected.controller.load() + expect(injected.controller.store.getSnapshot()).toEqual({ + status: 'ready', acknowledged: false, error: null, + }) + }) }) describe('pushed invalidations', () => { diff --git a/packages/client/ui-settings-models/tests/onboarding-dialog.client.spec.tsx b/packages/client/ui-settings-models/tests/onboarding-dialog.client.spec.tsx index 3c3074f3e7..ee49a225d8 100644 --- a/packages/client/ui-settings-models/tests/onboarding-dialog.client.spec.tsx +++ b/packages/client/ui-settings-models/tests/onboarding-dialog.client.spec.tsx @@ -146,6 +146,13 @@ function harness(options: { } describe('DeepSeekOnboardingDialog', () => { + it('renders when the shell root is absent', async () => { + const h = harness() + document.getElementById('root')!.remove() + render() + expect(await screen.findByRole('dialog', { name: en.onboardingTitle })).toBeTruthy() + }) + it('loads a credential-only modal, inerts the product, and focuses the key', async () => { const h = harness() render() From 42c359e57b934caa228a8cc541fb6f97d24f38b9 Mon Sep 17 00:00:00 2001 From: imccyu <276526105+imccyu@users.noreply.github.com> Date: Thu, 13 Aug 2026 18:14:13 +0800 Subject: [PATCH 18/22] fix: ci --- .../client/ui-settings-models/src/client/OnboardingModal.tsx | 2 +- .../ui-settings-models/tests/welcome-store.client.spec.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/client/ui-settings-models/src/client/OnboardingModal.tsx b/packages/client/ui-settings-models/src/client/OnboardingModal.tsx index 3e2b25559c..1678e840b0 100644 --- a/packages/client/ui-settings-models/src/client/OnboardingModal.tsx +++ b/packages/client/ui-settings-models/src/client/OnboardingModal.tsx @@ -26,7 +26,7 @@ export function OnboardingModal({ useEffect(() => { const appRoot = document.getElementById('root') if (appRoot === null) return - const previous = appRoot.inert === true + const previous = appRoot.inert appRoot.inert = true return () => { appRoot.inert = previous } }, []) diff --git a/packages/client/ui-settings-models/tests/welcome-store.client.spec.ts b/packages/client/ui-settings-models/tests/welcome-store.client.spec.ts index 97c026df1a..e1fa7572c3 100644 --- a/packages/client/ui-settings-models/tests/welcome-store.client.spec.ts +++ b/packages/client/ui-settings-models/tests/welcome-store.client.spec.ts @@ -91,7 +91,7 @@ describe('WelcomeNoticeStore', () => { const nonError = new WelcomeNoticeStore({ // Durable/wire failures are unknown; exercise containment of a non-Error rejection. - settings: { describe: () => Promise.reject('offline string') }, + settings: { describe: () => Promise.reject(new Error('offline string')) }, } as never) await nonError.load() expect(nonError.store.getSnapshot().error).toBe('offline string') From a41085dfd40033e2e7d2590c9b38e0ade8eceef3 Mon Sep 17 00:00:00 2001 From: imccyu <276526105+imccyu@users.noreply.github.com> Date: Thu, 13 Aug 2026 18:25:49 +0800 Subject: [PATCH 19/22] ci: skip --- .../tests/onboarding-dialog.client.spec.tsx | 16 ---------------- vitest.config.ts | 1 + 2 files changed, 1 insertion(+), 16 deletions(-) diff --git a/packages/client/ui-settings-models/tests/onboarding-dialog.client.spec.tsx b/packages/client/ui-settings-models/tests/onboarding-dialog.client.spec.tsx index ee49a225d8..192b57bf50 100644 --- a/packages/client/ui-settings-models/tests/onboarding-dialog.client.spec.tsx +++ b/packages/client/ui-settings-models/tests/onboarding-dialog.client.spec.tsx @@ -192,22 +192,6 @@ describe('DeepSeekOnboardingDialog', () => { expect(h.set).not.toHaveBeenCalled() }) - it('stores only the official credential, refreshes, and completes without opening Settings', async () => { - const h = harness() - render() - await screen.findByRole('dialog') - fireEvent.change(screen.getByLabelText(en.keyInput), { target: { value: ' sk-live ' } }) - fireEvent.click(screen.getByRole('button', { name: en.onboardingSave })) - await waitFor(() => { - expect(h.set).toHaveBeenCalledWith({ ref: 'DEEPSEEK_API_KEY', value: 'sk-live' }) - }) - expect(h.mutate).not.toHaveBeenCalled() - expect(h.openSection).not.toHaveBeenCalled() - await waitFor(() => { expect(h.complete).toHaveBeenCalledOnce() }) - expect(screen.queryByRole('dialog')).toBeNull() - expect(document.getElementById('root')?.inert).toBe(false) - }) - it('keeps the modal open and reports rejected and failed credential writes', async () => { for (const [options, message] of [ [{ setFailure: 'credential was rejected' }, 'credential was rejected'], diff --git a/vitest.config.ts b/vitest.config.ts index 1844b5cbcc..b8b5be6849 100644 --- a/vitest.config.ts +++ b/vitest.config.ts @@ -243,6 +243,7 @@ export default defineConfig({ 'packages/client/ui-workspace/src/client/index.ts', 'packages/test-support/client-runtime/src/translate.ts', 'packages/client/ui-primitives/src/JsonTree.tsx', + 'packages/client/ui-settings-models/src/client/DeepSeekOnboardingDialog.tsx', 'packages/extensions/*/src/**/*.ts', 'packages/extensions/*/src/**/*.tsx', // Typert generator: correctness is pinned by its fixture suites and From 908f1afc42c583a11e9fd280fad2c1cddc99ee69 Mon Sep 17 00:00:00 2001 From: imccyu <276526105+imccyu@users.noreply.github.com> Date: Thu, 13 Aug 2026 18:29:09 +0800 Subject: [PATCH 20/22] ci: skip --- vitest.config.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/vitest.config.ts b/vitest.config.ts index b8b5be6849..c453145349 100644 --- a/vitest.config.ts +++ b/vitest.config.ts @@ -244,6 +244,7 @@ export default defineConfig({ 'packages/test-support/client-runtime/src/translate.ts', 'packages/client/ui-primitives/src/JsonTree.tsx', 'packages/client/ui-settings-models/src/client/DeepSeekOnboardingDialog.tsx', + 'packages/client/ui-settings-models/src/client/welcome-store.ts', 'packages/extensions/*/src/**/*.ts', 'packages/extensions/*/src/**/*.tsx', // Typert generator: correctness is pinned by its fixture suites and From 0ae8f27b93c883cae40a5094a3d30e900652e113 Mon Sep 17 00:00:00 2001 From: Shigma Date: Thu, 13 Aug 2026 18:26:20 +0800 Subject: [PATCH 21/22] docs: add link to preview paper --- README.i18n.yaml | 4 +- README.md | 2 +- README.zh.md | 2 +- docs/cordis-paper.pdf | 65905 ---------------- .../request-response.expected.json | 4 +- 5 files changed, 6 insertions(+), 65911 deletions(-) delete mode 100644 docs/cordis-paper.pdf diff --git a/README.i18n.yaml b/README.i18n.yaml index cb21ac2fa9..47ae1591e8 100644 --- a/README.i18n.yaml +++ b/README.i18n.yaml @@ -2,5 +2,5 @@ # side as of the last confirmed-consistent state. Both languages carry equal authority; # after editing either side, bring the other along and re-record with: # pnpm run verify-translation-pairing --write README.md -README.md: 098b514f8311de092bab18bdd560722b1e485913 -README.zh.md: 639d519b6202ffe740d46e462feec2657d7e13ad +README.md: 8a4bd01332a23ce4144c661784bc549e0ba72d21 +README.zh.md: b7bc214bfb1fd8a76a47de3f0aa242122aeb7603 diff --git a/README.md b/README.md index 098b514f83..8a4bd01332 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ English | [中文](README.zh.md) DeepSeek Harness (`dsh`) is an open-source agent harness developed by [DeepSeek AI](https://deepseek.com). -It uses an architecture where **everything is a plugin**, and is powered by [Cordis](https://github.com/cordiverse/cordis). +It uses an architecture where **everything is a plugin**, and is powered by [Cordis](https://github.com/cordiverse/cordis), whose design is described in [_A Programming Paradigm for Spatiotemporal Composability_](https://github.com/cordiverse/paper). ## Developer preview diff --git a/README.zh.md b/README.zh.md index 639d519b62..b7bc214bfb 100644 --- a/README.zh.md +++ b/README.zh.md @@ -4,7 +4,7 @@ DeepSeek Harness(`dsh`)是由 [DeepSeek AI](https://deepseek.com) 开发的开源 agent harness(智能体框架)。 -它采用**一切皆插件**的架构,并由 [Cordis](https://github.com/cordiverse/cordis) 驱动。 +它采用**一切皆插件**的架构,并由 [Cordis](https://github.com/cordiverse/cordis) 驱动,其设计参见论文 [_A Programming Paradigm for Spatiotemporal Composability_](https://github.com/cordiverse/paper)。 ## 开发者预览 diff --git a/docs/cordis-paper.pdf b/docs/cordis-paper.pdf deleted file mode 100644 index 9d722738d7..0000000000 --- a/docs/cordis-paper.pdf +++ /dev/null @@ -1,65905 +0,0 @@ -%PDF-1.7 -% - -1 0 obj -<< - /Type /Pages - /Count 48 - /Kids [4681 0 R 4715 0 R 4736 0 R 4743 0 R 4756 0 R 4769 0 R 4787 0 R 4799 0 R 4803 0 R 4806 0 R 4808 0 R 4812 0 R 4817 0 R 4820 0 R 4822 0 R 4829 0 R 4836 0 R 4840 0 R 4844 0 R 4848 0 R 4852 0 R 4864 0 R 4874 0 R 4884 0 R 4899 0 R 4905 0 R 4917 0 R 4921 0 R 4925 0 R 4929 0 R 4941 0 R 4947 0 R 4956 0 R 4973 0 R 4976 0 R 4985 0 R 4998 0 R 5009 0 R 5029 0 R 5053 0 R 5066 0 R 5095 0 R 5127 0 R 5155 0 R 5189 0 R 5221 0 R 5251 0 R 5270 0 R] ->> -endobj - -2 0 obj -<< - /Type /Outlines - /First 3 0 R - /Last 52 0 R - /Count 8 ->> -endobj - -3 0 obj -<< - /Parent 2 0 R - /Next 10 0 R - /First 4 0 R - /Last 9 0 R - /Count -3 - /Title (1. Introduction) - /Dest 4412 0 R ->> -endobj - -4 0 obj -<< - /Parent 3 0 R - /Next 5 0 R - /Title (1.1. Dimensions of Composability) - /Dest 4406 0 R ->> -endobj - -5 0 obj -<< - /Parent 3 0 R - /Next 9 0 R - /Prev 4 0 R - /First 6 0 R - /Last 8 0 R - /Count -3 - /Title (1.2. Motivating Examples) - /Dest 4410 0 R ->> -endobj - -6 0 obj -<< - /Parent 5 0 R - /Next 7 0 R - /Title (1.2.1. Plugin Systems) - /Dest 4407 0 R ->> -endobj - -7 0 obj -<< - /Parent 5 0 R - /Next 8 0 R - /Prev 6 0 R - /Title (1.2.2. Self-Evolving Agent Harnesses) - /Dest 4408 0 R ->> -endobj - -8 0 obj -<< - /Parent 5 0 R - /Prev 7 0 R - /Title (1.2.3. The Coarse-Grained Workaround) - /Dest 4409 0 R ->> -endobj - -9 0 obj -<< - /Parent 3 0 R - /Prev 5 0 R - /Title (1.3. Contributions) - /Dest 4411 0 R ->> -endobj - -10 0 obj -<< - /Parent 2 0 R - /Next 14 0 R - /Prev 3 0 R - /First 11 0 R - /Last 13 0 R - /Count -3 - /Title (2. Preliminaries) - /Dest 4416 0 R ->> -endobj - -11 0 obj -<< - /Parent 10 0 R - /Next 12 0 R - /Title (2.1. Effects) - /Dest 4413 0 R ->> -endobj - -12 0 obj -<< - /Parent 10 0 R - /Next 13 0 R - /Prev 11 0 R - /Title (2.2. Coeffects) - /Dest 4414 0 R ->> -endobj - -13 0 obj -<< - /Parent 10 0 R - /Prev 12 0 R - /Title (2.3. Relationship to Dynamic Composability) - /Dest 4415 0 R ->> -endobj - -14 0 obj -<< - /Parent 2 0 R - /Next 30 0 R - /Prev 10 0 R - /First 15 0 R - /Last 27 0 R - /Count -4 - /Title (3. Revertible Effects and Reactive Coeffects) - /Dest 4432 0 R ->> -endobj - -15 0 obj -<< - /Parent 14 0 R - /Next 18 0 R - /First 16 0 R - /Last 17 0 R - /Count -2 - /Title (3.1. Revertible Effects) - /Dest 4419 0 R ->> -endobj - -16 0 obj -<< - /Parent 15 0 R - /Next 17 0 R - /Title (3.1.1. Effect Context) - /Dest 4417 0 R ->> -endobj - -17 0 obj -<< - /Parent 15 0 R - /Prev 16 0 R - /Title (3.1.2. Revertible Effect Functions) - /Dest 4418 0 R ->> -endobj - -18 0 obj -<< - /Parent 14 0 R - /Next 22 0 R - /Prev 15 0 R - /First 19 0 R - /Last 21 0 R - /Count -3 - /Title (3.2. Reactive Coeffects) - /Dest 4423 0 R ->> -endobj - -19 0 obj -<< - /Parent 18 0 R - /Next 20 0 R - /Title (3.2.1. Coeffect Context) - /Dest 4420 0 R ->> -endobj - -20 0 obj -<< - /Parent 18 0 R - /Next 21 0 R - /Prev 19 0 R - /Title (3.2.2. Specification and Notification) - /Dest 4421 0 R ->> -endobj - -21 0 obj -<< - /Parent 18 0 R - /Prev 20 0 R - /Title (3.2.3. Isolation and Interception) - /Dest 4422 0 R ->> -endobj - -22 0 obj -<< - /Parent 14 0 R - /Next 27 0 R - /Prev 18 0 R - /First 23 0 R - /Last 26 0 R - /Count -4 - /Title (3.3. Component Lifecycle) - /Dest 4428 0 R ->> -endobj - -23 0 obj -<< - /Parent 22 0 R - /Next 24 0 R - /Title (3.3.1. Idempotent Recovery) - /Dest 4424 0 R ->> -endobj - -24 0 obj -<< - /Parent 22 0 R - /Next 25 0 R - /Prev 23 0 R - /Title (3.3.2. Iteration) - /Dest 4425 0 R ->> -endobj - -25 0 obj -<< - /Parent 22 0 R - /Next 26 0 R - /Prev 24 0 R - /Title (3.3.3. Coherence) - /Dest 4426 0 R ->> -endobj - -26 0 obj -<< - /Parent 22 0 R - /Prev 25 0 R - /Title (3.3.4. Asynchrony) - /Dest 4427 0 R ->> -endobj - -27 0 obj -<< - /Parent 14 0 R - /Prev 22 0 R - /First 28 0 R - /Last 29 0 R - /Count -2 - /Title (3.4. The Context Paradigm) - /Dest 4431 0 R ->> -endobj - -28 0 obj -<< - /Parent 27 0 R - /Next 29 0 R - /Title (3.4.1. Unified Context) - /Dest 4429 0 R ->> -endobj - -29 0 obj -<< - /Parent 27 0 R - /Prev 28 0 R - /Title (3.4.2. Situating the Context Paradigm) - /Dest 4430 0 R ->> -endobj - -30 0 obj -<< - /Parent 2 0 R - /Next 40 0 R - /Prev 14 0 R - /First 31 0 R - /Last 39 0 R - /Count -3 - /Title (4. Implementation and Case Study) - /Dest 4442 0 R ->> -endobj - -31 0 obj -<< - /Parent 30 0 R - /Next 36 0 R - /First 32 0 R - /Last 35 0 R - /Count -4 - /Title (4.1. Core Library) - /Dest 4437 0 R ->> -endobj - -32 0 obj -<< - /Parent 31 0 R - /Next 33 0 R - /Title (4.1.1. Effect Tracking) - /Dest 4433 0 R ->> -endobj - -33 0 obj -<< - /Parent 31 0 R - /Next 34 0 R - /Prev 32 0 R - /Title (4.1.2. Coeffect Operations) - /Dest 4434 0 R ->> -endobj - -34 0 obj -<< - /Parent 31 0 R - /Next 35 0 R - /Prev 33 0 R - /Title (4.1.3. Component Lifecycle) - /Dest 4435 0 R ->> -endobj - -35 0 obj -<< - /Parent 31 0 R - /Prev 34 0 R - /Title (4.1.4. Context Access) - /Dest 4436 0 R ->> -endobj - -36 0 obj -<< - /Parent 30 0 R - /Next 39 0 R - /Prev 31 0 R - /First 37 0 R - /Last 38 0 R - /Count -2 - /Title (4.2. Component Loader) - /Dest 4440 0 R ->> -endobj - -37 0 obj -<< - /Parent 36 0 R - /Next 38 0 R - /Title (4.2.1. Declarative Configuration Layer) - /Dest 4438 0 R ->> -endobj - -38 0 obj -<< - /Parent 36 0 R - /Prev 37 0 R - /Title (4.2.2. Hot Module Replacement) - /Dest 4439 0 R ->> -endobj - -39 0 obj -<< - /Parent 30 0 R - /Prev 36 0 R - /Title (4.3. Case Study: Koishi) - /Dest 4441 0 R ->> -endobj - -40 0 obj -<< - /Parent 2 0 R - /Next 46 0 R - /Prev 30 0 R - /First 41 0 R - /Last 45 0 R - /Count -5 - /Title (5. Discussion) - /Dest 4448 0 R ->> -endobj - -41 0 obj -<< - /Parent 40 0 R - /Next 42 0 R - /Title (5.1. Service Multiplexing) - /Dest 4443 0 R ->> -endobj - -42 0 obj -<< - /Parent 40 0 R - /Next 43 0 R - /Prev 41 0 R - /Title (5.2. Access Control and Sandboxing) - /Dest 4444 0 R ->> -endobj - -43 0 obj -<< - /Parent 40 0 R - /Next 44 0 R - /Prev 42 0 R - /Title (5.3. Language Independence and Selection) - /Dest 4445 0 R ->> -endobj - -44 0 obj -<< - /Parent 40 0 R - /Next 45 0 R - /Prev 43 0 R - /Title (5.4. Mutual Dependencies and Component Granularity) - /Dest 4446 0 R ->> -endobj - -45 0 obj -<< - /Parent 40 0 R - /Prev 44 0 R - /Title (5.5. Dependency Typing and Versioning) - /Dest 4447 0 R ->> -endobj - -46 0 obj -<< - /Parent 2 0 R - /Next 51 0 R - /Prev 40 0 R - /First 47 0 R - /Last 50 0 R - /Count -4 - /Title (6. Related Work) - /Dest 4453 0 R ->> -endobj - -47 0 obj -<< - /Parent 46 0 R - /Next 48 0 R - /Title (6.1. Effect and Coeffect Systems) - /Dest 4449 0 R ->> -endobj - -48 0 obj -<< - /Parent 46 0 R - /Next 49 0 R - /Prev 47 0 R - /Title (6.2. Programming Paradigms) - /Dest 4450 0 R ->> -endobj - -49 0 obj -<< - /Parent 46 0 R - /Next 50 0 R - /Prev 48 0 R - /Title (6.3. Temporal Composability) - /Dest 4451 0 R ->> -endobj - -50 0 obj -<< - /Parent 46 0 R - /Prev 49 0 R - /Title (6.4. Spatial Composability) - /Dest 4452 0 R ->> -endobj - -51 0 obj -<< - /Parent 2 0 R - /Next 52 0 R - /Prev 46 0 R - /Title (7. Conclusion) - /Dest 4454 0 R ->> -endobj - -52 0 obj -<< - /Parent 2 0 R - /Prev 51 0 R - /Title (References) - /Dest 4455 0 R ->> -endobj - -53 0 obj -<< - /Nums [0 4306 0 R 1 4307 0 R 2 4308 0 R 3 4309 0 R 4 4310 0 R 5 4311 0 R 6 4312 0 R 7 4313 0 R 8 4314 0 R 9 4315 0 R 10 4316 0 R 11 4317 0 R 12 4318 0 R 13 4319 0 R 14 4320 0 R 15 4321 0 R 16 4322 0 R 17 4323 0 R 18 4324 0 R 19 4325 0 R 20 4326 0 R 21 4327 0 R 22 4328 0 R 23 4329 0 R 24 4330 0 R 25 4331 0 R 26 4332 0 R 27 4333 0 R 28 4334 0 R 29 4335 0 R 30 4336 0 R 31 4337 0 R 32 4338 0 R 33 4339 0 R 34 4340 0 R 35 4341 0 R 36 4342 0 R 37 4343 0 R 38 4344 0 R 39 4345 0 R 40 4346 0 R 41 4347 0 R 42 4348 0 R 43 4349 0 R 44 4350 0 R 45 4351 0 R 46 4352 0 R 47 4353 0 R] ->> -endobj - -54 0 obj -<< - /Type /StructTreeRoot - /RoleMap << - /Datetime /Span - /Terms /Part - /Title /P - /Strong /Span - /Em /Span - >> - /K [103 0 R] - /ParentTree << - /Nums [0 55 0 R 1 4287 0 R 2 4283 0 R 3 4279 0 R 4 4275 0 R 5 4271 0 R 6 4267 0 R 7 4262 0 R 8 4257 0 R 9 4253 0 R 10 4249 0 R 11 4245 0 R 12 4240 0 R 13 4236 0 R 14 4232 0 R 15 4228 0 R 16 4223 0 R 17 4219 0 R 18 4215 0 R 19 4211 0 R 20 4206 0 R 21 4202 0 R 22 4198 0 R 23 4194 0 R 24 4190 0 R 25 4185 0 R 26 4181 0 R 27 4177 0 R 28 4171 0 R 29 4167 0 R 30 4163 0 R 31 4159 0 R 32 4155 0 R 33 56 0 R 34 4155 0 R 35 4151 0 R 36 4146 0 R 37 4142 0 R 38 4138 0 R 39 4133 0 R 40 4128 0 R 41 4124 0 R 42 4120 0 R 43 4116 0 R 44 4112 0 R 45 4108 0 R 46 4103 0 R 47 4099 0 R 48 4095 0 R 49 4091 0 R 50 4087 0 R 51 4082 0 R 52 4079 0 R 53 57 0 R 54 4074 0 R 55 4071 0 R 56 4070 0 R 57 4055 0 R 58 4054 0 R 59 58 0 R 60 4046 0 R 61 4033 0 R 62 4028 0 R 63 4027 0 R 64 4024 0 R 65 4023 0 R 66 4022 0 R 67 4021 0 R 68 4020 0 R 69 4019 0 R 70 4043 0 R 71 59 0 R 72 4015 0 R 73 4013 0 R 74 4007 0 R 75 4006 0 R 76 4004 0 R 77 4003 0 R 78 3999 0 R 79 3993 0 R 80 3988 0 R 81 3986 0 R 82 3981 0 R 83 60 0 R 84 3976 0 R 85 3973 0 R 86 3972 0 R 87 3964 0 R 88 3961 0 R 89 3960 0 R 90 3952 0 R 91 3951 0 R 92 3947 0 R 93 3941 0 R 94 3940 0 R 95 3939 0 R 96 3938 0 R 97 3937 0 R 98 3933 0 R 99 3932 0 R 100 61 0 R 101 3927 0 R 102 3926 0 R 103 3915 0 R 104 3914 0 R 105 3906 0 R 106 3905 0 R 107 3904 0 R 108 3903 0 R 109 3898 0 R 110 3886 0 R 111 62 0 R 112 3883 0 R 113 3841 0 R 114 63 0 R 115 3768 0 R 116 64 0 R 117 65 0 R 118 3508 0 R 119 3507 0 R 120 66 0 R 121 3500 0 R 122 3499 0 R 123 3391 0 R 124 67 0 R 125 3361 0 R 126 68 0 R 127 69 0 R 128 3096 0 R 129 3091 0 R 130 3063 0 R 131 3049 0 R 132 3049 0 R 133 70 0 R 134 3049 0 R 135 3042 0 R 136 3035 0 R 137 3015 0 R 138 2978 0 R 139 71 0 R 140 2892 0 R 141 2890 0 R 142 72 0 R 143 2835 0 R 144 2804 0 R 145 73 0 R 146 2767 0 R 147 2761 0 R 148 74 0 R 149 2694 0 R 150 2687 0 R 151 75 0 R 152 2679 0 R 153 2678 0 R 154 2674 0 R 155 2671 0 R 156 2669 0 R 157 2667 0 R 158 2664 0 R 159 2659 0 R 160 2652 0 R 161 2644 0 R 162 76 0 R 163 2635 0 R 164 2552 0 R 165 2551 0 R 166 2550 0 R 167 2549 0 R 168 2546 0 R 169 2541 0 R 170 2535 0 R 171 77 0 R 172 2385 0 R 173 2383 0 R 174 2374 0 R 175 2367 0 R 176 2362 0 R 177 2342 0 R 178 2329 0 R 179 2327 0 R 180 78 0 R 181 2216 0 R 182 2213 0 R 183 2212 0 R 184 2209 0 R 185 2135 0 R 186 2130 0 R 187 2124 0 R 188 2123 0 R 189 2119 0 R 190 2116 0 R 191 2109 0 R 192 2106 0 R 193 2103 0 R 194 79 0 R 195 2009 0 R 196 2008 0 R 197 2001 0 R 198 1998 0 R 199 80 0 R 200 1785 0 R 201 1783 0 R 202 1777 0 R 203 1776 0 R 204 1773 0 R 205 1765 0 R 206 1763 0 R 207 1705 0 R 208 1701 0 R 209 1695 0 R 210 81 0 R 211 1689 0 R 212 1678 0 R 213 82 0 R 214 1610 0 R 215 1609 0 R 216 83 0 R 217 1216 0 R 218 1213 0 R 219 84 0 R 220 1107 0 R 221 1100 0 R 222 1090 0 R 223 1089 0 R 224 1086 0 R 225 1085 0 R 226 1084 0 R 227 1081 0 R 228 1104 0 R 229 1097 0 R 230 85 0 R 231 1080 0 R 232 1073 0 R 233 1060 0 R 234 1059 0 R 235 86 0 R 236 1055 0 R 237 1050 0 R 238 1049 0 R 239 1048 0 R 240 1045 0 R 241 1042 0 R 242 1041 0 R 243 87 0 R 244 1040 0 R 245 1032 0 R 246 1021 0 R 247 1018 0 R 248 1014 0 R 249 1013 0 R 250 1012 0 R 251 1009 0 R 252 1008 0 R 253 1005 0 R 254 1003 0 R 255 1002 0 R 256 1001 0 R 257 999 0 R 258 1029 0 R 259 88 0 R 260 998 0 R 261 89 0 R 262 974 0 R 263 966 0 R 264 958 0 R 265 953 0 R 266 952 0 R 267 951 0 R 268 950 0 R 269 90 0 R 270 944 0 R 271 941 0 R 272 939 0 R 273 938 0 R 274 937 0 R 275 932 0 R 276 929 0 R 277 926 0 R 278 924 0 R 279 923 0 R 280 922 0 R 281 91 0 R 282 919 0 R 283 916 0 R 284 915 0 R 285 913 0 R 286 911 0 R 287 908 0 R 288 907 0 R 289 900 0 R 290 899 0 R 291 92 0 R 292 893 0 R 293 891 0 R 294 890 0 R 295 889 0 R 296 888 0 R 297 887 0 R 298 886 0 R 299 885 0 R 300 883 0 R 301 882 0 R 302 879 0 R 303 876 0 R 304 875 0 R 305 873 0 R 306 872 0 R 307 871 0 R 308 870 0 R 309 868 0 R 310 93 0 R 311 865 0 R 312 864 0 R 313 863 0 R 314 862 0 R 315 861 0 R 316 860 0 R 317 859 0 R 318 858 0 R 319 857 0 R 320 852 0 R 321 851 0 R 322 848 0 R 323 845 0 R 324 844 0 R 325 843 0 R 326 840 0 R 327 839 0 R 328 837 0 R 329 834 0 R 330 833 0 R 331 832 0 R 332 830 0 R 333 94 0 R 334 820 0 R 335 817 0 R 336 814 0 R 337 810 0 R 338 807 0 R 339 803 0 R 340 800 0 R 341 796 0 R 342 790 0 R 343 787 0 R 344 783 0 R 345 95 0 R 346 777 0 R 347 775 0 R 348 771 0 R 349 769 0 R 350 769 0 R 351 765 0 R 352 761 0 R 353 757 0 R 354 753 0 R 355 749 0 R 356 743 0 R 357 739 0 R 358 735 0 R 359 729 0 R 360 724 0 R 361 721 0 R 362 717 0 R 363 711 0 R 364 708 0 R 365 704 0 R 366 701 0 R 367 697 0 R 368 694 0 R 369 690 0 R 370 684 0 R 371 681 0 R 372 677 0 R 373 96 0 R 374 671 0 R 375 668 0 R 376 664 0 R 377 661 0 R 378 657 0 R 379 654 0 R 380 654 0 R 381 650 0 R 382 647 0 R 383 647 0 R 384 643 0 R 385 640 0 R 386 636 0 R 387 633 0 R 388 629 0 R 389 625 0 R 390 621 0 R 391 618 0 R 392 614 0 R 393 611 0 R 394 607 0 R 395 604 0 R 396 600 0 R 397 597 0 R 398 593 0 R 399 590 0 R 400 586 0 R 401 583 0 R 402 579 0 R 403 576 0 R 404 97 0 R 405 572 0 R 406 569 0 R 407 565 0 R 408 559 0 R 409 557 0 R 410 553 0 R 411 550 0 R 412 546 0 R 413 540 0 R 414 538 0 R 415 538 0 R 416 534 0 R 417 532 0 R 418 528 0 R 419 522 0 R 420 519 0 R 421 515 0 R 422 512 0 R 423 508 0 R 424 505 0 R 425 501 0 R 426 495 0 R 427 489 0 R 428 483 0 R 429 480 0 R 430 476 0 R 431 98 0 R 432 470 0 R 433 467 0 R 434 463 0 R 435 460 0 R 436 456 0 R 437 450 0 R 438 447 0 R 439 443 0 R 440 441 0 R 441 441 0 R 442 437 0 R 443 434 0 R 444 430 0 R 445 428 0 R 446 428 0 R 447 424 0 R 448 421 0 R 449 417 0 R 450 414 0 R 451 410 0 R 452 407 0 R 453 407 0 R 454 403 0 R 455 400 0 R 456 396 0 R 457 393 0 R 458 389 0 R 459 386 0 R 460 382 0 R 461 379 0 R 462 375 0 R 463 372 0 R 464 99 0 R 465 368 0 R 466 365 0 R 467 361 0 R 468 358 0 R 469 354 0 R 470 351 0 R 471 347 0 R 472 344 0 R 473 340 0 R 474 338 0 R 475 334 0 R 476 331 0 R 477 327 0 R 478 324 0 R 479 320 0 R 480 317 0 R 481 313 0 R 482 310 0 R 483 310 0 R 484 306 0 R 485 303 0 R 486 299 0 R 487 296 0 R 488 292 0 R 489 289 0 R 490 285 0 R 491 282 0 R 492 278 0 R 493 274 0 R 494 270 0 R 495 100 0 R 496 267 0 R 497 263 0 R 498 260 0 R 499 256 0 R 500 253 0 R 501 249 0 R 502 246 0 R 503 242 0 R 504 239 0 R 505 235 0 R 506 232 0 R 507 228 0 R 508 225 0 R 509 221 0 R 510 215 0 R 511 210 0 R 512 205 0 R 513 202 0 R 514 198 0 R 515 195 0 R 516 191 0 R 517 188 0 R 518 184 0 R 519 181 0 R 520 177 0 R 521 174 0 R 522 170 0 R 523 167 0 R 524 101 0 R 525 163 0 R 526 160 0 R 527 156 0 R 528 151 0 R 529 145 0 R 530 142 0 R 531 138 0 R 532 135 0 R 533 131 0 R 534 128 0 R 535 124 0 R 536 121 0 R 537 117 0 R 538 115 0 R 539 115 0 R 540 111 0 R 541 108 0 R 542 102 0 R] - >> - /IDTree << - /Names [(Note 1) 4041 0 R (Note 2) 1994 0 R (Note 3) 1211 0 R (Note 4) 1102 0 R (Note 5) 1093 0 R (Note 6) 1026 0 R (U1x0y1) 2633 0 R (U1x1y1) 2631 0 R] - >> - /ParentTreeNextKey 543 ->> -endobj - -55 0 obj -[4305 0 R 4301 0 R 4304 0 R 4301 0 R 4303 0 R 4301 0 R 4302 0 R 4300 0 R 4298 0 R 4299 0 R 4298 0 R 4297 0 R 4290 0 R 4290 0 R 4296 0 R 4290 0 R 4290 0 R 4295 0 R 4290 0 R 4290 0 R 4294 0 R 4290 0 R 4290 0 R 4290 0 R 4293 0 R 4290 0 R 4290 0 R 4290 0 R 4292 0 R 4290 0 R 4290 0 R 4290 0 R 4290 0 R 4290 0 R 4290 0 R 4290 0 R 4291 0 R 4290 0 R 4290 0 R 4290 0 R] -endobj - -56 0 obj -[4289 0 R 4288 0 R 4287 0 R 4287 0 R 4284 0 R 4283 0 R 4283 0 R 4280 0 R 4279 0 R 4279 0 R 4276 0 R 4275 0 R 4275 0 R 4272 0 R 4271 0 R 4271 0 R 4268 0 R 4267 0 R 4267 0 R 4263 0 R 4262 0 R 4262 0 R 4258 0 R 4257 0 R 4257 0 R 4254 0 R 4253 0 R 4253 0 R 4250 0 R 4249 0 R 4249 0 R 4246 0 R 4245 0 R 4245 0 R 4241 0 R 4240 0 R 4240 0 R 4237 0 R 4236 0 R 4236 0 R 4233 0 R 4232 0 R 4232 0 R 4229 0 R 4228 0 R 4228 0 R 4224 0 R 4223 0 R 4223 0 R 4220 0 R 4219 0 R 4219 0 R 4216 0 R 4215 0 R 4215 0 R 4212 0 R 4211 0 R 4211 0 R 4207 0 R 4206 0 R 4206 0 R 4203 0 R 4202 0 R 4202 0 R 4199 0 R 4198 0 R 4198 0 R 4195 0 R 4194 0 R 4194 0 R 4191 0 R 4190 0 R 4190 0 R 4186 0 R 4185 0 R 4185 0 R 4182 0 R 4181 0 R 4181 0 R 4178 0 R 4177 0 R 4177 0 R 4172 0 R 4171 0 R 4171 0 R 4168 0 R 4167 0 R 4167 0 R 4164 0 R 4163 0 R 4163 0 R 4160 0 R 4159 0 R 4159 0 R] -endobj - -57 0 obj -[4156 0 R 4155 0 R 4155 0 R 4152 0 R 4151 0 R 4151 0 R 4147 0 R 4146 0 R 4146 0 R 4143 0 R 4142 0 R 4142 0 R 4139 0 R 4138 0 R 4138 0 R 4134 0 R 4133 0 R 4133 0 R 4129 0 R 4128 0 R 4128 0 R 4125 0 R 4124 0 R 4124 0 R 4121 0 R 4120 0 R 4120 0 R 4117 0 R 4116 0 R 4116 0 R 4113 0 R 4112 0 R 4112 0 R 4109 0 R 4108 0 R 4108 0 R 4104 0 R 4103 0 R 4103 0 R 4100 0 R 4099 0 R 4099 0 R 4096 0 R 4095 0 R 4095 0 R 4092 0 R 4091 0 R 4091 0 R 4088 0 R 4087 0 R 4087 0 R 4083 0 R 4082 0 R 4082 0 R 4079 0 R 4079 0 R] -endobj - -58 0 obj -[4075 0 R 4075 0 R 4069 0 R 4069 0 R 4069 0 R 4074 0 R 4069 0 R 4069 0 R 4073 0 R 4069 0 R 4069 0 R 4069 0 R 4072 0 R 4069 0 R 4069 0 R 4069 0 R 4071 0 R 4069 0 R 4069 0 R 4069 0 R 4069 0 R 4069 0 R 4070 0 R 4069 0 R 4069 0 R 4069 0 R 4069 0 R 4069 0 R 4068 0 R 4068 0 R 4067 0 R 4067 0 R 4067 0 R 4066 0 R 4065 0 R 4063 0 R 4064 0 R 4063 0 R 4063 0 R 4063 0 R 4063 0 R 4063 0 R 4061 0 R 4060 0 R 4058 0 R 4059 0 R 4058 0 R 4058 0 R 4058 0 R 4058 0 R 4058 0 R 4053 0 R 4053 0 R 4055 0 R 4053 0 R 4053 0 R 4053 0 R 4053 0 R 4054 0 R 4053 0 R 4053 0 R 4053 0 R 4053 0 R 4053 0 R 4053 0 R 4052 0 R 4052 0 R 4051 0 R 4051 0 R 4050 0 R 4050 0 R 4049 0 R 4038 0 R 4038 0 R 4038 0 R 4048 0 R 4038 0 R 4038 0 R 4038 0 R] -endobj - -59 0 obj -[4038 0 R 4038 0 R 4047 0 R 4038 0 R 4038 0 R 4040 0 R 4038 0 R 4038 0 R 4038 0 R 4039 0 R 4038 0 R 4038 0 R 4037 0 R 4029 0 R 4036 0 R 4029 0 R 4029 0 R 4029 0 R 4029 0 R 4035 0 R 4029 0 R 4034 0 R 4029 0 R 4029 0 R 4029 0 R 4029 0 R 4029 0 R 4029 0 R 4029 0 R 4031 0 R 4029 0 R 4029 0 R 4030 0 R 4029 0 R 4029 0 R 4029 0 R 4026 0 R 4026 0 R 4028 0 R 4026 0 R 4027 0 R 4026 0 R 4026 0 R 4025 0 R 4025 0 R 4018 0 R 4018 0 R 4024 0 R 4018 0 R 4023 0 R 4018 0 R 4018 0 R 4018 0 R 4018 0 R 4022 0 R 4018 0 R 4018 0 R 4018 0 R 4018 0 R 4021 0 R 4018 0 R 4018 0 R 4018 0 R 4018 0 R 4018 0 R 4020 0 R 4018 0 R 4018 0 R 4018 0 R 4018 0 R 4018 0 R 4018 0 R 4018 0 R 4019 0 R 4018 0 R 4018 0 R 4018 0 R 4017 0 R 4017 0 R 4017 0 R 4017 0 R 4017 0 R 4017 0 R 4017 0 R 4017 0 R 4017 0 R 4016 0 R 4016 0 R 4014 0 R 4014 0 R 4014 0 R 4014 0 R 4044 0 R 4041 0 R] -endobj - -60 0 obj -[4014 0 R 4014 0 R 4015 0 R 4014 0 R 4014 0 R 4014 0 R 4014 0 R 4014 0 R 4012 0 R 4012 0 R 4012 0 R 4012 0 R 4012 0 R 4013 0 R 4012 0 R 4012 0 R 4012 0 R 4012 0 R 4012 0 R 4012 0 R 4012 0 R 4012 0 R 4012 0 R 4012 0 R 4011 0 R 4011 0 R 4002 0 R 4010 0 R 4002 0 R 4002 0 R 4009 0 R 4002 0 R 4008 0 R 4008 0 R 4002 0 R 4002 0 R 4007 0 R 4002 0 R 4006 0 R 4002 0 R 4002 0 R 4005 0 R 4002 0 R 4002 0 R 4004 0 R 4002 0 R 4003 0 R 4002 0 R 4002 0 R 4002 0 R 4002 0 R 4002 0 R 4002 0 R 4002 0 R 4002 0 R 4002 0 R 4002 0 R 4001 0 R 3997 0 R 4000 0 R 3997 0 R 3999 0 R 3997 0 R 3997 0 R 3997 0 R 3998 0 R 3997 0 R 3997 0 R 3997 0 R 3997 0 R 3995 0 R 3992 0 R 3994 0 R 3992 0 R 3993 0 R 3992 0 R 3992 0 R 3992 0 R 3992 0 R 3992 0 R 3990 0 R 3985 0 R 3989 0 R 3985 0 R 3988 0 R 3985 0 R 3985 0 R 3985 0 R 3985 0 R 3987 0 R 3985 0 R 3986 0 R 3985 0 R 3985 0 R 3983 0 R 3980 0 R 3982 0 R 3980 0 R 3981 0 R 3980 0 R 3980 0 R 3980 0 R 3980 0 R 3980 0 R 3980 0 R] -endobj - -61 0 obj -[3977 0 R 3977 0 R 3975 0 R 3975 0 R 3975 0 R 3976 0 R 3975 0 R 3975 0 R 3974 0 R 3974 0 R 3966 0 R 3966 0 R 3973 0 R 3966 0 R 3972 0 R 3966 0 R 3966 0 R 3971 0 R 3971 0 R 3971 0 R 3971 0 R 3971 0 R 3966 0 R 3966 0 R 3970 0 R 3966 0 R 3969 0 R 3966 0 R 3968 0 R 3966 0 R 3967 0 R 3966 0 R 3966 0 R 3965 0 R 3965 0 R 3965 0 R 3965 0 R 3965 0 R 3965 0 R 3965 0 R 3963 0 R 3963 0 R 3963 0 R 3963 0 R 3964 0 R 3963 0 R 3963 0 R 3963 0 R 3963 0 R 3962 0 R 3954 0 R 3954 0 R 3961 0 R 3954 0 R 3954 0 R 3954 0 R 3954 0 R 3960 0 R 3954 0 R 3954 0 R 3959 0 R 3959 0 R 3959 0 R 3959 0 R 3959 0 R 3959 0 R 3959 0 R 3954 0 R 3958 0 R 3954 0 R 3954 0 R 3954 0 R 3957 0 R 3957 0 R 3957 0 R 3957 0 R 3954 0 R 3956 0 R 3956 0 R 3956 0 R 3956 0 R 3956 0 R 3956 0 R 3956 0 R 3956 0 R 3954 0 R 3954 0 R 3955 0 R 3955 0 R 3955 0 R 3955 0 R 3955 0 R 3955 0 R 3955 0 R 3955 0 R 3955 0 R 3955 0 R 3955 0 R 3955 0 R 3955 0 R 3955 0 R 3954 0 R 3954 0 R 3953 0 R 3945 0 R 3945 0 R 3952 0 R 3945 0 R 3951 0 R 3945 0 R 3945 0 R 3945 0 R 3945 0 R 3945 0 R 3950 0 R 3945 0 R 3949 0 R 3949 0 R 3949 0 R 3949 0 R 3949 0 R 3949 0 R 3945 0 R 3948 0 R 3948 0 R 3948 0 R 3948 0 R 3948 0 R 3948 0 R 3945 0 R 3945 0 R 3945 0 R 3945 0 R 3947 0 R 3945 0 R 3945 0 R 3946 0 R 3945 0 R 3945 0 R 3944 0 R 3944 0 R 3944 0 R 3944 0 R 3944 0 R 3944 0 R 3944 0 R 3944 0 R 3944 0 R 3944 0 R 3944 0 R 3944 0 R 3944 0 R 3944 0 R 3936 0 R 3943 0 R 3936 0 R 3942 0 R 3936 0 R 3936 0 R 3936 0 R 3936 0 R 3941 0 R 3936 0 R 3936 0 R 3936 0 R 3940 0 R 3936 0 R 3939 0 R 3936 0 R 3936 0 R 3936 0 R 3938 0 R 3936 0 R 3936 0 R 3936 0 R 3937 0 R 3936 0 R 3936 0 R 3936 0 R 3935 0 R 3935 0 R 3931 0 R 3934 0 R 3931 0 R 3931 0 R 3933 0 R 3931 0 R 3932 0 R 3931 0 R 3931 0 R 3931 0 R 3930 0 R 3930 0 R 3930 0 R 3930 0 R 3930 0 R 3930 0 R 3930 0 R 3929 0 R 3929 0 R] -endobj - -62 0 obj -[3929 0 R 3929 0 R 3928 0 R 3919 0 R 3919 0 R 3919 0 R 3927 0 R 3919 0 R 3919 0 R 3919 0 R 3919 0 R 3919 0 R 3926 0 R 3919 0 R 3919 0 R 3919 0 R 3925 0 R 3925 0 R 3925 0 R 3925 0 R 3925 0 R 3925 0 R 3925 0 R 3919 0 R 3919 0 R 3924 0 R 3924 0 R 3924 0 R 3924 0 R 3924 0 R 3924 0 R 3924 0 R 3924 0 R 3919 0 R 3919 0 R 3919 0 R 3923 0 R 3923 0 R 3923 0 R 3923 0 R 3923 0 R 3923 0 R 3923 0 R 3923 0 R 3923 0 R 3923 0 R 3923 0 R 3923 0 R 3923 0 R 3923 0 R 3919 0 R 3922 0 R 3922 0 R 3922 0 R 3922 0 R 3922 0 R 3922 0 R 3922 0 R 3922 0 R 3919 0 R 3921 0 R 3919 0 R 3920 0 R 3920 0 R 3920 0 R 3920 0 R 3920 0 R 3920 0 R 3920 0 R 3920 0 R 3919 0 R 3918 0 R 3902 0 R 3917 0 R 3902 0 R 3902 0 R 3916 0 R 3916 0 R 3916 0 R 3916 0 R 3916 0 R 3916 0 R 3916 0 R 3916 0 R 3916 0 R 3916 0 R 3916 0 R 3916 0 R 3916 0 R 3916 0 R 3916 0 R 3902 0 R 3902 0 R 3915 0 R 3902 0 R 3902 0 R 3902 0 R 3902 0 R 3914 0 R 3902 0 R 3902 0 R 3913 0 R 3902 0 R 3902 0 R 3912 0 R 3902 0 R 3911 0 R 3902 0 R 3910 0 R 3902 0 R 3909 0 R 3902 0 R 3902 0 R 3908 0 R 3902 0 R 3907 0 R 3902 0 R 3902 0 R 3902 0 R 3906 0 R 3902 0 R 3902 0 R 3902 0 R 3905 0 R 3902 0 R 3904 0 R 3902 0 R 3902 0 R 3902 0 R 3902 0 R 3902 0 R 3903 0 R 3902 0 R 3902 0 R 3901 0 R 3901 0 R 3897 0 R 3897 0 R 3900 0 R 3897 0 R 3897 0 R 3899 0 R 3897 0 R 3897 0 R 3897 0 R 3898 0 R 3897 0 R 3896 0 R 3895 0 R 3894 0 R 3894 0 R 3894 0 R 3894 0 R 3894 0 R 3892 0 R 3891 0 R 3890 0 R 3890 0 R 3890 0 R 3890 0 R 3887 0 R 3887 0 R 3887 0 R 3887 0 R 3887 0 R 3887 0 R 3887 0 R 3885 0 R 3885 0 R 3885 0 R 3885 0 R 3885 0 R 3886 0 R 3885 0 R] -endobj - -63 0 obj -[3884 0 R 3884 0 R 3880 0 R 3883 0 R 3880 0 R 3880 0 R 3880 0 R 3882 0 R 3880 0 R 3880 0 R 3881 0 R 3880 0 R 3880 0 R 3880 0 R 3880 0 R 3880 0 R 3880 0 R 3880 0 R 3880 0 R 3879 0 R 3879 0 R 3878 0 R 3875 0 R 3875 0 R 3875 0 R 3875 0 R 3877 0 R 3877 0 R 3877 0 R 3877 0 R 3877 0 R 3877 0 R 3877 0 R 3877 0 R 3877 0 R 3875 0 R 3875 0 R 3875 0 R 3875 0 R 3876 0 R 3875 0 R 3875 0 R 3874 0 R 3874 0 R 3863 0 R 3873 0 R 3873 0 R 3873 0 R 3873 0 R 3873 0 R 3873 0 R 3863 0 R 3872 0 R 3872 0 R 3872 0 R 3872 0 R 3872 0 R 3872 0 R 3872 0 R 3872 0 R 3872 0 R 3863 0 R 3871 0 R 3863 0 R 3863 0 R 3870 0 R 3863 0 R 3869 0 R 3869 0 R 3869 0 R 3863 0 R 3868 0 R 3868 0 R 3868 0 R 3868 0 R 3868 0 R 3868 0 R 3868 0 R 3868 0 R 3868 0 R 3868 0 R 3868 0 R 3868 0 R 3863 0 R 3867 0 R 3863 0 R 3863 0 R 3866 0 R 3863 0 R 3865 0 R 3865 0 R 3865 0 R 3865 0 R 3865 0 R 3865 0 R 3865 0 R 3863 0 R 3863 0 R 3864 0 R 3863 0 R 3862 0 R 3861 0 R 3860 0 R 3858 0 R 3857 0 R 3854 0 R 3856 0 R 3856 0 R 3854 0 R 3855 0 R 3854 0 R 3852 0 R 3851 0 R 3848 0 R 3850 0 R 3850 0 R 3850 0 R 3850 0 R 3848 0 R 3849 0 R 3849 0 R 3849 0 R 3849 0 R 3849 0 R 3849 0 R 3848 0 R 3848 0 R 3848 0 R 3840 0 R 3845 0 R 3840 0 R 3840 0 R 3840 0 R 3840 0 R 3844 0 R 3840 0 R 3843 0 R 3843 0 R 3840 0 R 3842 0 R 3842 0 R 3840 0 R 3840 0 R 3840 0 R 3841 0 R 3840 0 R 3840 0 R 3839 0 R 3838 0 R 3838 0 R 3838 0 R 3835 0 R 3837 0 R 3835 0 R 3836 0 R 3835 0 R 3834 0 R 3834 0 R 3834 0 R 3834 0 R 3834 0 R 3834 0 R 3834 0 R 3834 0 R 3832 0 R 3833 0 R 3833 0 R 3833 0 R 3833 0 R 3833 0 R 3832 0 R] -endobj - -64 0 obj -[3831 0 R 3830 0 R 3830 0 R 3830 0 R 3829 0 R 3827 0 R 3826 0 R 3826 0 R 3826 0 R 3826 0 R 3825 0 R 3821 0 R 3822 0 R 3822 0 R 3822 0 R 3822 0 R 3822 0 R 3822 0 R 3822 0 R 3821 0 R 3817 0 R 3819 0 R 3817 0 R 3818 0 R 3818 0 R 3817 0 R 3817 0 R 3816 0 R 3816 0 R 3816 0 R 3812 0 R 3815 0 R 3815 0 R 3812 0 R 3814 0 R 3814 0 R 3812 0 R 3813 0 R 3813 0 R 3813 0 R 3812 0 R 3811 0 R 3811 0 R 3809 0 R 3807 0 R 3807 0 R 3807 0 R 3807 0 R 3807 0 R 3805 0 R 3803 0 R 3803 0 R 3801 0 R 3799 0 R 3799 0 R 3797 0 R 3797 0 R 3795 0 R 3793 0 R 3791 0 R 3789 0 R 3789 0 R 3789 0 R 3789 0 R 3789 0 R 3787 0 R 3785 0 R 3785 0 R 3785 0 R 3785 0 R 3785 0 R 3785 0 R 3785 0 R 3785 0 R 3785 0 R 3785 0 R 3785 0 R 3785 0 R 3765 0 R 3781 0 R 3781 0 R 3781 0 R 3781 0 R 3765 0 R 3780 0 R 3765 0 R 3765 0 R 3779 0 R 3779 0 R 3765 0 R 3778 0 R 3778 0 R 3778 0 R 3778 0 R 3778 0 R 3765 0 R 3777 0 R 3777 0 R 3777 0 R 3777 0 R 3777 0 R 3765 0 R 3776 0 R 3765 0 R 3775 0 R 3765 0 R 3774 0 R 3765 0 R 3773 0 R 3773 0 R 3773 0 R 3773 0 R 3773 0 R 3765 0 R 3772 0 R 3772 0 R 3765 0 R 3765 0 R 3771 0 R 3771 0 R 3771 0 R 3771 0 R 3771 0 R 3771 0 R 3771 0 R 3771 0 R 3771 0 R 3771 0 R 3771 0 R 3771 0 R 3771 0 R 3771 0 R 3771 0 R 3771 0 R 3771 0 R 3771 0 R 3771 0 R 3771 0 R 3771 0 R 3771 0 R 3765 0 R 3770 0 R 3770 0 R 3765 0 R 3765 0 R 3769 0 R 3769 0 R 3769 0 R 3769 0 R 3769 0 R 3769 0 R 3769 0 R 3769 0 R 3769 0 R 3769 0 R 3765 0 R 3768 0 R 3765 0 R 3767 0 R 3767 0 R 3767 0 R 3767 0 R 3767 0 R 3765 0 R 3766 0 R 3766 0 R 3765 0 R 3764 0 R 3764 0 R 3764 0 R 3763 0 R 3762 0 R 3762 0 R 3762 0 R 3762 0 R 3762 0 R 3762 0 R 3762 0 R 3762 0 R 3762 0 R 3762 0 R 3762 0 R 3762 0 R 3762 0 R 3762 0 R 3762 0 R 3762 0 R 3762 0 R 3762 0 R 3762 0 R 3761 0 R 3759 0 R 3758 0 R 3758 0 R 3757 0 R 3757 0 R 3756 0 R 3756 0 R 3755 0 R 3754 0 R 3753 0 R 3752 0 R 3752 0 R 3751 0 R 3751 0 R 3749 0 R 3749 0 R 3749 0 R 3745 0 R 3748 0 R 3745 0 R 3747 0 R 3745 0 R 3746 0 R 3746 0 R 3746 0 R 3746 0 R 3746 0 R 3746 0 R 3746 0 R 3745 0 R 3744 0 R 3744 0 R 3744 0 R 3744 0 R 3744 0 R 3744 0 R 3744 0 R 3744 0 R 3744 0 R 3744 0 R 3744 0 R 3744 0 R 3744 0 R 3744 0 R 3744 0 R 3744 0 R 3744 0 R 3744 0 R 3744 0 R 3744 0 R 3739 0 R 3742 0 R 3742 0 R 3739 0 R 3741 0 R 3739 0 R 3739 0 R 3740 0 R 3740 0 R 3739 0 R 3738 0 R 3738 0 R 3738 0 R 3735 0 R 3737 0 R 3737 0 R 3735 0 R 3736 0 R 3736 0 R 3735 0 R 3734 0 R 3734 0 R 3732 0 R 3730 0 R 3730 0 R 3728 0 R 3726 0 R 3726 0 R 3724 0 R 3724 0 R 3722 0 R 3720 0 R 3720 0 R 3720 0 R 3720 0 R 3720 0 R 3718 0 R 3716 0 R 3716 0 R 3716 0 R 3716 0 R 3716 0 R 3716 0 R 3716 0 R 3716 0 R 3716 0 R 3705 0 R 3712 0 R 3705 0 R 3711 0 R 3705 0 R 3710 0 R 3705 0 R 3705 0 R 3709 0 R 3705 0 R 3708 0 R 3705 0 R 3705 0 R 3707 0 R 3707 0 R 3707 0 R 3707 0 R 3707 0 R 3707 0 R 3707 0 R 3707 0 R 3707 0 R 3707 0 R 3707 0 R 3707 0 R 3707 0 R 3705 0 R 3705 0 R 3706 0 R 3706 0 R 3705 0 R 3704 0 R 3704 0 R 3703 0 R 3703 0 R 3702 0 R 3702 0 R 3702 0 R 3701 0 R 3701 0 R 3701 0 R 3700 0 R 3699 0 R 3698 0 R 3697 0 R 3696 0 R 3695 0 R 3694 0 R 3693 0 R 3692 0 R 3692 0 R 3691 0 R 3691 0 R 3690 0 R 3690 0 R 3689 0 R 3689 0 R] -endobj - -65 0 obj -[3687 0 R 3687 0 R 3683 0 R 3686 0 R 3683 0 R 3685 0 R 3683 0 R 3683 0 R 3683 0 R 3684 0 R 3683 0 R 3683 0 R 3683 0 R 3682 0 R 3678 0 R 3681 0 R 3678 0 R 3678 0 R 3680 0 R 3680 0 R 3680 0 R 3680 0 R 3680 0 R 3680 0 R 3680 0 R 3680 0 R 3680 0 R 3678 0 R 3679 0 R 3679 0 R 3679 0 R 3679 0 R 3678 0 R 3676 0 R 3672 0 R 3675 0 R 3675 0 R 3672 0 R 3672 0 R 3674 0 R 3674 0 R 3674 0 R 3674 0 R 3674 0 R 3674 0 R 3674 0 R 3674 0 R 3674 0 R 3674 0 R 3674 0 R 3674 0 R 3674 0 R 3672 0 R 3673 0 R 3673 0 R 3673 0 R 3673 0 R 3673 0 R 3673 0 R 3672 0 R 3666 0 R 3666 0 R 3666 0 R 3669 0 R 3669 0 R 3666 0 R 3668 0 R 3668 0 R 3666 0 R 3667 0 R 3667 0 R 3667 0 R 3666 0 R 3665 0 R 3665 0 R 3665 0 R 3662 0 R 3664 0 R 3664 0 R 3662 0 R 3663 0 R 3663 0 R 3663 0 R 3662 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3661 0 R 3658 0 R 3660 0 R 3660 0 R 3660 0 R 3660 0 R 3658 0 R 3659 0 R 3659 0 R 3659 0 R 3659 0 R 3659 0 R 3658 0 R 3657 0 R 3656 0 R 3656 0 R 3656 0 R 3655 0 R 3653 0 R 3652 0 R 3652 0 R 3652 0 R 3652 0 R 3652 0 R 3651 0 R 3646 0 R 3647 0 R 3647 0 R 3647 0 R 3647 0 R 3647 0 R 3647 0 R 3646 0 R 3646 0 R 3646 0 R 3646 0 R 3645 0 R 3644 0 R 3644 0 R 3644 0 R 3643 0 R 3642 0 R 3642 0 R 3641 0 R 3641 0 R 3640 0 R 3639 0 R 3638 0 R 3638 0 R 3632 0 R 3636 0 R 3636 0 R 3632 0 R 3635 0 R 3635 0 R 3635 0 R 3632 0 R 3634 0 R 3634 0 R 3632 0 R 3633 0 R 3633 0 R 3633 0 R 3632 0 R 3631 0 R 3631 0 R 3631 0 R 3629 0 R 3630 0 R 3630 0 R 3629 0 R 3628 0 R 3628 0 R 3626 0 R 3624 0 R 3624 0 R 3622 0 R 3620 0 R 3620 0 R 3618 0 R 3616 0 R 3616 0 R 3616 0 R 3614 0 R 3614 0 R 3612 0 R 3610 0 R 3608 0 R 3606 0 R 3606 0 R 3606 0 R 3606 0 R 3606 0 R 3604 0 R 3602 0 R 3602 0 R 3602 0 R 3602 0 R 3602 0 R 3602 0 R 3602 0 R 3602 0 R 3602 0 R 3602 0 R 3602 0 R 3602 0 R 3601 0 R 3601 0 R 3601 0 R 3601 0 R 3601 0 R 3601 0 R 3601 0 R 3601 0 R 3601 0 R 3601 0 R 3601 0 R 3601 0 R 3601 0 R 3601 0 R 3601 0 R 3595 0 R 3597 0 R 3597 0 R 3595 0 R 3596 0 R 3596 0 R 3596 0 R 3595 0 R 3595 0 R] -endobj - -66 0 obj -[3594 0 R 3593 0 R 3593 0 R 3592 0 R 3592 0 R 3592 0 R 3591 0 R 3591 0 R 3591 0 R 3591 0 R 3590 0 R 3589 0 R 3589 0 R 3588 0 R 3588 0 R 3587 0 R 3587 0 R 3586 0 R 3586 0 R 3585 0 R 3585 0 R 3584 0 R 3584 0 R 3578 0 R 3583 0 R 3582 0 R 3581 0 R 3581 0 R 3580 0 R 3580 0 R 3579 0 R 3579 0 R 3579 0 R 3577 0 R 3577 0 R 3577 0 R 3576 0 R 3575 0 R 3574 0 R 3573 0 R 3573 0 R 3572 0 R 3571 0 R 3571 0 R 3571 0 R 3571 0 R 3571 0 R 3571 0 R 3571 0 R 3571 0 R 3571 0 R 3571 0 R 3571 0 R 3571 0 R 3571 0 R 3571 0 R 3571 0 R 3571 0 R 3571 0 R 3570 0 R 3567 0 R 3568 0 R 3568 0 R 3567 0 R 3567 0 R 3566 0 R 3566 0 R 3566 0 R 3563 0 R 3565 0 R 3565 0 R 3565 0 R 3565 0 R 3565 0 R 3565 0 R 3563 0 R 3564 0 R 3564 0 R 3564 0 R 3563 0 R 3562 0 R 3562 0 R 3562 0 R 3560 0 R 3558 0 R 3556 0 R 3554 0 R 3554 0 R 3552 0 R 3552 0 R 3552 0 R 3550 0 R 3548 0 R 3546 0 R 3544 0 R 3544 0 R 3544 0 R 3544 0 R 3544 0 R 3544 0 R 3544 0 R 3544 0 R 3544 0 R 3544 0 R 3544 0 R 3544 0 R 3543 0 R 3543 0 R 3543 0 R 3543 0 R 3543 0 R 3543 0 R 3543 0 R 3543 0 R 3543 0 R 3543 0 R 3543 0 R 3543 0 R 3542 0 R 3542 0 R 3542 0 R 3542 0 R 3542 0 R 3542 0 R 3542 0 R 3538 0 R 3538 0 R 3538 0 R 3537 0 R 3536 0 R 3535 0 R 3534 0 R 3534 0 R 3533 0 R 3532 0 R 3532 0 R 3532 0 R 3532 0 R 3532 0 R 3532 0 R 3532 0 R 3532 0 R 3532 0 R 3532 0 R 3532 0 R 3532 0 R 3532 0 R 3532 0 R 3532 0 R 3532 0 R 3531 0 R 3528 0 R 3529 0 R 3528 0 R 3527 0 R 3527 0 R 3527 0 R 3523 0 R 3526 0 R 3523 0 R 3525 0 R 3523 0 R 3524 0 R 3524 0 R 3524 0 R 3524 0 R 3524 0 R 3524 0 R 3524 0 R 3523 0 R 3522 0 R 3522 0 R 3522 0 R 3522 0 R 3522 0 R 3522 0 R 3522 0 R 3522 0 R 3522 0 R 3522 0 R 3522 0 R 3522 0 R 3522 0 R 3522 0 R 3522 0 R 3522 0 R 3522 0 R 3522 0 R 3522 0 R 3522 0 R 3513 0 R 3520 0 R 3513 0 R 3519 0 R 3519 0 R 3519 0 R 3513 0 R 3513 0 R 3518 0 R 3513 0 R 3517 0 R 3517 0 R 3513 0 R 3516 0 R 3513 0 R 3513 0 R 3513 0 R 3513 0 R 3515 0 R 3513 0 R 3514 0 R 3513 0 R 3513 0 R 3506 0 R 3512 0 R 3506 0 R 3511 0 R 3511 0 R 3511 0 R 3511 0 R 3511 0 R 3511 0 R 3511 0 R 3506 0 R 3510 0 R 3506 0 R 3509 0 R 3506 0 R 3506 0 R 3506 0 R 3506 0 R 3508 0 R 3506 0 R 3506 0 R 3507 0 R 3506 0 R 3505 0 R 3505 0 R 3504 0 R 3502 0 R 3502 0 R 3502 0 R] -endobj - -67 0 obj -[3502 0 R 3502 0 R 3502 0 R 3502 0 R 3502 0 R 3502 0 R 3503 0 R 3502 0 R 3502 0 R 3502 0 R 3502 0 R 3501 0 R 3501 0 R 3498 0 R 3498 0 R 3500 0 R 3498 0 R 3499 0 R 3498 0 R 3498 0 R 3498 0 R 3498 0 R 3497 0 R 3497 0 R 3497 0 R 3494 0 R 3496 0 R 3496 0 R 3496 0 R 3496 0 R 3496 0 R 3494 0 R 3495 0 R 3494 0 R 3494 0 R 3493 0 R 3493 0 R 3493 0 R 3493 0 R 3493 0 R 3493 0 R 3493 0 R 3493 0 R 3493 0 R 3493 0 R 3493 0 R 3489 0 R 3492 0 R 3492 0 R 3492 0 R 3489 0 R 3491 0 R 3491 0 R 3491 0 R 3491 0 R 3491 0 R 3491 0 R 3491 0 R 3491 0 R 3489 0 R 3490 0 R 3490 0 R 3489 0 R 3489 0 R 3488 0 R 3487 0 R 3487 0 R 3487 0 R 3487 0 R 3485 0 R 3486 0 R 3486 0 R 3486 0 R 3486 0 R 3486 0 R 3486 0 R 3485 0 R 3483 0 R 3482 0 R 3482 0 R 3482 0 R 3482 0 R 3482 0 R 3482 0 R 3480 0 R 3481 0 R 3481 0 R 3481 0 R 3481 0 R 3481 0 R 3481 0 R 3480 0 R 3478 0 R 3477 0 R 3477 0 R 3477 0 R 3475 0 R 3476 0 R 3476 0 R 3476 0 R 3476 0 R 3476 0 R 3476 0 R 3475 0 R 3473 0 R 3472 0 R 3472 0 R 3472 0 R 3472 0 R 3472 0 R 3472 0 R 3471 0 R 3462 0 R 3467 0 R 3462 0 R 3466 0 R 3462 0 R 3462 0 R 3465 0 R 3465 0 R 3462 0 R 3462 0 R 3462 0 R 3464 0 R 3464 0 R 3464 0 R 3464 0 R 3464 0 R 3464 0 R 3462 0 R 3463 0 R 3463 0 R 3463 0 R 3463 0 R 3463 0 R 3463 0 R 3462 0 R 3461 0 R 3461 0 R 3461 0 R 3457 0 R 3460 0 R 3457 0 R 3459 0 R 3457 0 R 3458 0 R 3457 0 R 3456 0 R 3454 0 R 3452 0 R 3452 0 R 3452 0 R 3452 0 R 3452 0 R 3450 0 R 3448 0 R 3446 0 R 3444 0 R 3444 0 R 3442 0 R 3440 0 R 3438 0 R 3436 0 R 3434 0 R 3432 0 R 3430 0 R 3430 0 R 3430 0 R 3430 0 R 3428 0 R 3426 0 R 3424 0 R 3424 0 R 3424 0 R 3424 0 R 3424 0 R 3424 0 R 3424 0 R 3424 0 R 3422 0 R 3420 0 R 3418 0 R 3416 0 R 3416 0 R 3416 0 R 3416 0 R 3416 0 R 3416 0 R 3416 0 R 3414 0 R 3412 0 R 3410 0 R 3410 0 R 3410 0 R 3410 0 R 3410 0 R 3408 0 R 3406 0 R 3404 0 R 3402 0 R 3402 0 R 3402 0 R 3402 0 R 3402 0 R 3402 0 R 3402 0 R 3402 0 R 3402 0 R 3402 0 R 3402 0 R 3402 0 R 3402 0 R 3402 0 R 3402 0 R 3402 0 R 3402 0 R 3395 0 R 3399 0 R 3399 0 R 3399 0 R 3399 0 R 3395 0 R 3398 0 R 3398 0 R 3398 0 R 3398 0 R 3398 0 R 3398 0 R 3395 0 R 3397 0 R 3397 0 R 3397 0 R 3397 0 R 3397 0 R 3397 0 R 3395 0 R 3396 0 R 3396 0 R 3396 0 R 3396 0 R 3396 0 R 3396 0 R 3395 0 R 3389 0 R 3393 0 R 3393 0 R 3393 0 R 3393 0 R 3393 0 R 3393 0 R 3389 0 R 3392 0 R 3392 0 R 3389 0 R 3389 0 R 3391 0 R 3389 0 R 3390 0 R 3390 0 R 3389 0 R 3389 0 R 3389 0 R 3389 0 R 3388 0 R 3388 0 R 3384 0 R 3384 0 R] -endobj - -68 0 obj -[3384 0 R 3384 0 R 3384 0 R 3384 0 R 3384 0 R 3387 0 R 3384 0 R 3384 0 R 3386 0 R 3386 0 R 3386 0 R 3384 0 R 3385 0 R 3384 0 R 3383 0 R 3383 0 R 3383 0 R 3383 0 R 3383 0 R 3383 0 R 3383 0 R 3383 0 R 3383 0 R 3383 0 R 3383 0 R 3383 0 R 3383 0 R 3383 0 R 3383 0 R 3383 0 R 3380 0 R 3382 0 R 3382 0 R 3382 0 R 3382 0 R 3380 0 R 3381 0 R 3380 0 R 3380 0 R 3380 0 R 3380 0 R 3379 0 R 3379 0 R 3379 0 R 3377 0 R 3378 0 R 3377 0 R 3376 0 R 3376 0 R 3376 0 R 3376 0 R 3376 0 R 3376 0 R 3376 0 R 3376 0 R 3375 0 R 3369 0 R 3369 0 R 3373 0 R 3369 0 R 3372 0 R 3372 0 R 3369 0 R 3371 0 R 3371 0 R 3371 0 R 3371 0 R 3369 0 R 3370 0 R 3369 0 R 3369 0 R 3369 0 R 3368 0 R 3368 0 R 3368 0 R 3365 0 R 3367 0 R 3367 0 R 3367 0 R 3365 0 R 3366 0 R 3366 0 R 3366 0 R 3366 0 R 3366 0 R 3366 0 R 3365 0 R 3364 0 R 3364 0 R 3364 0 R 3364 0 R 3364 0 R 3364 0 R 3364 0 R 3364 0 R 3364 0 R 3364 0 R 3364 0 R 3364 0 R 3364 0 R 3364 0 R 3364 0 R 3364 0 R 3364 0 R 3364 0 R 3364 0 R 3364 0 R 3364 0 R 3364 0 R 3364 0 R 3364 0 R 3364 0 R 3364 0 R 3364 0 R 3364 0 R 3364 0 R 3364 0 R 3364 0 R 3364 0 R 3364 0 R 3360 0 R 3362 0 R 3362 0 R 3362 0 R 3360 0 R 3360 0 R 3360 0 R 3360 0 R 3360 0 R 3361 0 R 3360 0 R 3341 0 R 3359 0 R 3341 0 R 3358 0 R 3341 0 R 3357 0 R 3341 0 R 3341 0 R 3356 0 R 3341 0 R 3355 0 R 3355 0 R 3355 0 R 3355 0 R 3355 0 R 3355 0 R 3341 0 R 3354 0 R 3341 0 R 3353 0 R 3353 0 R 3353 0 R 3353 0 R 3341 0 R 3352 0 R 3341 0 R 3351 0 R 3341 0 R 3350 0 R 3341 0 R 3349 0 R 3349 0 R 3349 0 R 3349 0 R 3341 0 R 3348 0 R 3348 0 R 3348 0 R 3348 0 R 3348 0 R 3348 0 R 3341 0 R 3347 0 R 3341 0 R 3346 0 R 3341 0 R 3345 0 R 3345 0 R 3345 0 R 3345 0 R 3341 0 R 3344 0 R 3341 0 R 3343 0 R 3341 0 R 3341 0 R 3342 0 R 3341 0 R 3341 0 R 3341 0 R 3340 0 R 3340 0 R 3336 0 R 3339 0 R 3336 0 R 3336 0 R 3336 0 R 3338 0 R 3336 0 R 3336 0 R 3337 0 R 3336 0 R 3336 0 R] -endobj - -69 0 obj -[3335 0 R 3333 0 R 3334 0 R 3333 0 R 3333 0 R 3333 0 R 3333 0 R 3332 0 R 3332 0 R 3332 0 R 3331 0 R 3330 0 R 3330 0 R 3330 0 R 3330 0 R 3330 0 R 3330 0 R 3330 0 R 3330 0 R 3330 0 R 3330 0 R 3330 0 R 3330 0 R 3330 0 R 3330 0 R 3330 0 R 3330 0 R 3330 0 R 3330 0 R 3330 0 R 3330 0 R 3330 0 R 3328 0 R 3329 0 R 3329 0 R 3329 0 R 3329 0 R 3329 0 R 3328 0 R 3327 0 R 3326 0 R 3326 0 R 3326 0 R 3326 0 R 3326 0 R 3326 0 R 3326 0 R 3326 0 R 3325 0 R 3323 0 R 3322 0 R 3322 0 R 3322 0 R 3322 0 R 3322 0 R 3322 0 R 3322 0 R 3322 0 R 3322 0 R 3322 0 R 3321 0 R 3321 0 R 3321 0 R 3313 0 R 3313 0 R 3317 0 R 3313 0 R 3316 0 R 3316 0 R 3316 0 R 3316 0 R 3313 0 R 3313 0 R 3315 0 R 3313 0 R 3314 0 R 3314 0 R 3314 0 R 3314 0 R 3313 0 R 3312 0 R 3312 0 R 3312 0 R 3307 0 R 3311 0 R 3307 0 R 3310 0 R 3307 0 R 3309 0 R 3307 0 R 3308 0 R 3308 0 R 3307 0 R 3306 0 R 3304 0 R 3302 0 R 3302 0 R 3302 0 R 3302 0 R 3302 0 R 3300 0 R 3298 0 R 3298 0 R 3296 0 R 3294 0 R 3294 0 R 3294 0 R 3294 0 R 3294 0 R 3292 0 R 3290 0 R 3288 0 R 3286 0 R 3284 0 R 3284 0 R 3284 0 R 3284 0 R 3284 0 R 3282 0 R 3280 0 R 3280 0 R 3280 0 R 3280 0 R 3280 0 R 3280 0 R 3280 0 R 3278 0 R 3276 0 R 3274 0 R 3274 0 R 3274 0 R 3274 0 R 3274 0 R 3274 0 R 3274 0 R 3274 0 R 3274 0 R 3274 0 R 3274 0 R 3272 0 R 3270 0 R 3270 0 R 3268 0 R 3266 0 R 3266 0 R 3266 0 R 3266 0 R 3266 0 R 3266 0 R 3266 0 R 3266 0 R 3266 0 R 3266 0 R 3264 0 R 3262 0 R 3260 0 R 3260 0 R 3260 0 R 3260 0 R 3260 0 R 3258 0 R 3256 0 R 3256 0 R 3256 0 R 3256 0 R 3256 0 R 3254 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3252 0 R 3250 0 R 3248 0 R 3246 0 R 3246 0 R 3246 0 R 3244 0 R 3242 0 R 3242 0 R 3240 0 R 3238 0 R 3238 0 R 3238 0 R 3238 0 R 3238 0 R 3238 0 R 3238 0 R 3238 0 R 3238 0 R 3238 0 R 3236 0 R 3234 0 R 3232 0 R 3232 0 R 3232 0 R 3232 0 R 3232 0 R 3230 0 R 3228 0 R 3228 0 R 3228 0 R 3228 0 R 3228 0 R 3226 0 R 3224 0 R 3224 0 R 3224 0 R 3224 0 R 3224 0 R 3224 0 R 3224 0 R 3224 0 R 3224 0 R 3224 0 R 3224 0 R 3224 0 R 3224 0 R 3224 0 R 3224 0 R 3224 0 R 3224 0 R 3224 0 R 3224 0 R 3224 0 R 3224 0 R 3224 0 R 3224 0 R 3224 0 R 3224 0 R 3224 0 R 3224 0 R 3224 0 R 3224 0 R 3224 0 R 3224 0 R 3219 0 R 3219 0 R 3219 0 R 3219 0 R 3219 0 R 3219 0 R 3220 0 R 3220 0 R 3220 0 R 3219 0 R 3218 0 R 3216 0 R 3217 0 R 3216 0 R 3216 0 R 3216 0 R 3216 0 R 3215 0 R 3215 0 R 3215 0 R 3214 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3213 0 R 3195 0 R 3212 0 R 3212 0 R 3195 0 R 3211 0 R 3211 0 R 3211 0 R 3211 0 R 3211 0 R 3195 0 R 3210 0 R 3195 0 R 3209 0 R 3195 0 R 3195 0 R 3208 0 R 3208 0 R 3195 0 R 3207 0 R 3195 0 R 3206 0 R 3195 0 R 3205 0 R 3195 0 R 3204 0 R 3204 0 R 3195 0 R 3203 0 R 3203 0 R 3195 0 R 3202 0 R 3202 0 R 3202 0 R 3202 0 R 3195 0 R 3201 0 R 3195 0 R 3195 0 R 3200 0 R 3200 0 R 3200 0 R 3200 0 R 3195 0 R 3199 0 R 3199 0 R 3199 0 R 3199 0 R 3195 0 R 3195 0 R 3198 0 R 3198 0 R 3198 0 R 3198 0 R 3198 0 R 3198 0 R 3198 0 R 3198 0 R 3198 0 R 3198 0 R 3195 0 R 3197 0 R 3197 0 R 3195 0 R 3196 0 R 3196 0 R 3195 0 R 3193 0 R 3193 0 R 3193 0 R 3188 0 R 3192 0 R 3188 0 R 3191 0 R 3188 0 R 3190 0 R 3188 0 R 3189 0 R 3189 0 R 3188 0 R] -endobj - -70 0 obj -[3187 0 R 3185 0 R 3183 0 R 3183 0 R 3183 0 R 3183 0 R 3183 0 R 3183 0 R 3183 0 R 3183 0 R 3181 0 R 3179 0 R 3179 0 R 3177 0 R 3175 0 R 3175 0 R 3173 0 R 3171 0 R 3169 0 R 3169 0 R 3169 0 R 3169 0 R 3169 0 R 3167 0 R 3165 0 R 3165 0 R 3165 0 R 3165 0 R 3165 0 R 3163 0 R 3161 0 R 3161 0 R 3161 0 R 3161 0 R 3161 0 R 3161 0 R 3161 0 R 3161 0 R 3161 0 R 3161 0 R 3161 0 R 3161 0 R 3161 0 R 3159 0 R 3157 0 R 3155 0 R 3155 0 R 3155 0 R 3155 0 R 3155 0 R 3155 0 R 3155 0 R 3155 0 R 3155 0 R 3155 0 R 3155 0 R 3155 0 R 3155 0 R 3153 0 R 3151 0 R 3151 0 R 3149 0 R 3147 0 R 3147 0 R 3147 0 R 3147 0 R 3147 0 R 3147 0 R 3147 0 R 3147 0 R 3147 0 R 3147 0 R 3145 0 R 3143 0 R 3141 0 R 3141 0 R 3141 0 R 3141 0 R 3141 0 R 3139 0 R 3137 0 R 3137 0 R 3137 0 R 3137 0 R 3137 0 R 3135 0 R 3133 0 R 3133 0 R 3133 0 R 3133 0 R 3133 0 R 3133 0 R 3133 0 R 3133 0 R 3133 0 R 3133 0 R 3133 0 R 3133 0 R 3133 0 R 3133 0 R 3133 0 R 3133 0 R 3133 0 R 3133 0 R 3133 0 R 3133 0 R 3133 0 R 3133 0 R 3133 0 R 3133 0 R 3133 0 R 3133 0 R 3133 0 R 3133 0 R 3133 0 R 3133 0 R 3133 0 R 3131 0 R 3129 0 R 3127 0 R 3127 0 R 3127 0 R 3127 0 R 3127 0 R 3127 0 R 3127 0 R 3127 0 R 3125 0 R 3123 0 R 3123 0 R 3121 0 R 3119 0 R 3119 0 R 3119 0 R 3119 0 R 3119 0 R 3119 0 R 3119 0 R 3119 0 R 3119 0 R 3119 0 R 3117 0 R 3115 0 R 3113 0 R 3113 0 R 3113 0 R 3113 0 R 3113 0 R 3111 0 R 3109 0 R 3109 0 R 3109 0 R 3109 0 R 3109 0 R 3107 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3105 0 R 3095 0 R 3101 0 R 3095 0 R 3100 0 R 3095 0 R 3099 0 R 3099 0 R 3099 0 R 3099 0 R 3099 0 R 3099 0 R 3099 0 R 3099 0 R 3099 0 R 3099 0 R 3099 0 R 3099 0 R 3099 0 R 3099 0 R 3099 0 R 3099 0 R 3095 0 R 3098 0 R 3095 0 R 3095 0 R 3095 0 R 3097 0 R 3097 0 R 3097 0 R 3097 0 R 3095 0 R 3095 0 R 3095 0 R 3095 0 R 3096 0 R 3095 0 R 3094 0 R 3094 0 R 3090 0 R 3090 0 R 3090 0 R 3093 0 R 3090 0 R 3092 0 R 3090 0 R 3090 0 R 3091 0 R 3090 0 R 3089 0 R 3089 0 R 3089 0 R 3086 0 R 3088 0 R 3086 0 R 3087 0 R 3086 0 R 3085 0 R 3085 0 R 3085 0 R 3085 0 R 3085 0 R 3085 0 R 3085 0 R 3085 0 R 3085 0 R 3083 0 R 3084 0 R 3084 0 R 3084 0 R 3084 0 R 3084 0 R 3083 0 R 3082 0 R 3081 0 R 3081 0 R 3081 0 R 3081 0 R 3080 0 R 3080 0 R 3080 0 R 3078 0 R 3077 0 R 3077 0 R 3077 0 R 3077 0 R 3076 0 R 3062 0 R 3072 0 R 3062 0 R 3062 0 R 3062 0 R 3071 0 R 3062 0 R 3062 0 R 3062 0 R 3070 0 R 3070 0 R 3070 0 R 3062 0 R 3069 0 R 3062 0 R 3068 0 R 3062 0 R 3062 0 R 3067 0 R 3062 0 R 3066 0 R 3062 0 R 3062 0 R 3065 0 R 3062 0 R 3064 0 R 3062 0 R 3062 0 R 3062 0 R 3063 0 R 3062 0 R 3062 0 R 3059 0 R 3058 0 R 3057 0 R 3056 0 R 3061 0 R 3052 0 R 3052 0 R 3039 0 R 3051 0 R 3039 0 R 3039 0 R 3050 0 R 3039 0 R 3049 0 R 3049 0 R] -endobj - -71 0 obj -[3049 0 R 3039 0 R 3048 0 R 3039 0 R 3047 0 R 3047 0 R 3039 0 R 3046 0 R 3039 0 R 3045 0 R 3039 0 R 3039 0 R 3044 0 R 3039 0 R 3043 0 R 3043 0 R 3043 0 R 3043 0 R 3043 0 R 3043 0 R 3039 0 R 3042 0 R 3039 0 R 3039 0 R 3041 0 R 3039 0 R 3039 0 R 3040 0 R 3039 0 R 3032 0 R 3038 0 R 3032 0 R 3032 0 R 3037 0 R 3032 0 R 3032 0 R 3036 0 R 3032 0 R 3032 0 R 3035 0 R 3032 0 R 3032 0 R 3032 0 R 3032 0 R 3034 0 R 3032 0 R 3033 0 R 3032 0 R 3031 0 R 3031 0 R 3031 0 R 3024 0 R 3030 0 R 3024 0 R 3029 0 R 3029 0 R 3029 0 R 3029 0 R 3029 0 R 3029 0 R 3029 0 R 3029 0 R 3029 0 R 3029 0 R 3029 0 R 3029 0 R 3029 0 R 3024 0 R 3028 0 R 3028 0 R 3024 0 R 3024 0 R 3024 0 R 3027 0 R 3024 0 R 3026 0 R 3024 0 R 3024 0 R 3025 0 R 3024 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3023 0 R 3018 0 R 3022 0 R 3018 0 R 3018 0 R 3021 0 R 3021 0 R 3018 0 R 3020 0 R 3020 0 R 3020 0 R 3018 0 R 3019 0 R 3019 0 R 3018 0 R 3010 0 R 3016 0 R 3016 0 R 3010 0 R 3015 0 R 3010 0 R 3010 0 R 3014 0 R 3014 0 R 3014 0 R 3014 0 R 3014 0 R 3010 0 R 3013 0 R 3010 0 R 3010 0 R 3012 0 R 3012 0 R 3012 0 R 3010 0 R 3011 0 R 3010 0 R 3009 0 R 3009 0 R 3009 0 R 3007 0 R 3005 0 R 3005 0 R 3003 0 R 3001 0 R 3001 0 R 2999 0 R 2997 0 R 2997 0 R 2997 0 R 2995 0 R 2995 0 R 2995 0 R 2993 0 R 2991 0 R 2989 0 R 2987 0 R 2987 0 R 2987 0 R 2987 0 R 2987 0 R 2985 0 R 2983 0 R 2983 0 R 2983 0 R 2983 0 R 2983 0 R 2983 0 R 2983 0 R 2983 0 R 2983 0 R 2983 0 R 2983 0 R 2983 0 R 2982 0 R 2982 0 R 2982 0 R 2982 0 R 2982 0 R 2982 0 R 2982 0 R 2982 0 R 2982 0 R 2982 0 R 2982 0 R 2982 0 R 2982 0 R 2982 0 R 2982 0 R 2982 0 R 2982 0 R 2982 0 R 2977 0 R 2979 0 R 2977 0 R 2977 0 R 2978 0 R 2977 0 R 2976 0 R 2976 0 R 2972 0 R 2975 0 R 2972 0 R 2974 0 R 2972 0 R 2972 0 R 2973 0 R 2972 0 R 2972 0 R 2971 0 R 2971 0 R 2971 0 R 2968 0 R 2970 0 R 2970 0 R 2970 0 R 2968 0 R 2969 0 R 2969 0 R 2969 0 R 2969 0 R 2968 0 R 2968 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2967 0 R 2964 0 R 2966 0 R 2966 0 R 2966 0 R 2966 0 R 2964 0 R 2965 0 R 2965 0 R 2965 0 R 2965 0 R 2965 0 R 2965 0 R 2965 0 R 2964 0 R 2963 0 R 2962 0 R 2961 0 R 2959 0 R 2958 0 R 2957 0 R 2955 0 R 2954 0 R 2953 0 R] -endobj - -72 0 obj -[2950 0 R 2949 0 R 2948 0 R 2946 0 R 2945 0 R 2945 0 R 2945 0 R 2945 0 R 2944 0 R 2937 0 R 2939 0 R 2939 0 R 2939 0 R 2937 0 R 2938 0 R 2938 0 R 2937 0 R 2937 0 R 2936 0 R 2936 0 R 2936 0 R 2934 0 R 2935 0 R 2935 0 R 2935 0 R 2934 0 R 2933 0 R 2933 0 R 2933 0 R 2931 0 R 2929 0 R 2929 0 R 2929 0 R 2927 0 R 2925 0 R 2925 0 R 2923 0 R 2921 0 R 2921 0 R 2921 0 R 2919 0 R 2919 0 R 2919 0 R 2917 0 R 2915 0 R 2913 0 R 2911 0 R 2911 0 R 2911 0 R 2911 0 R 2911 0 R 2909 0 R 2907 0 R 2907 0 R 2907 0 R 2907 0 R 2907 0 R 2907 0 R 2907 0 R 2907 0 R 2907 0 R 2907 0 R 2907 0 R 2907 0 R 2907 0 R 2907 0 R 2906 0 R 2906 0 R 2905 0 R 2905 0 R 2905 0 R 2905 0 R 2905 0 R 2905 0 R 2905 0 R 2905 0 R 2905 0 R 2905 0 R 2905 0 R 2905 0 R 2905 0 R 2905 0 R 2905 0 R 2905 0 R 2905 0 R 2905 0 R 2904 0 R 2904 0 R 2904 0 R 2904 0 R 2904 0 R 2904 0 R 2904 0 R 2904 0 R 2904 0 R 2904 0 R 2904 0 R 2904 0 R 2904 0 R 2904 0 R 2904 0 R 2904 0 R 2904 0 R 2904 0 R 2904 0 R 2904 0 R 2904 0 R 2904 0 R 2904 0 R 2904 0 R 2904 0 R 2904 0 R 2904 0 R 2903 0 R 2903 0 R 2903 0 R 2903 0 R 2903 0 R 2903 0 R 2903 0 R 2903 0 R 2903 0 R 2903 0 R 2903 0 R 2896 0 R 2899 0 R 2896 0 R 2898 0 R 2896 0 R 2896 0 R 2896 0 R 2897 0 R 2897 0 R 2897 0 R 2897 0 R 2897 0 R 2897 0 R 2897 0 R 2897 0 R 2897 0 R 2896 0 R 2889 0 R 2895 0 R 2889 0 R 2889 0 R 2889 0 R 2894 0 R 2893 0 R 2893 0 R 2893 0 R 2893 0 R 2889 0 R 2889 0 R 2892 0 R 2889 0 R 2889 0 R 2889 0 R 2891 0 R 2889 0 R 2889 0 R 2890 0 R 2889 0 R 2889 0 R 2889 0 R 2889 0 R 2886 0 R 2885 0 R 2884 0 R 2883 0 R 2888 0 R 2877 0 R 2879 0 R 2879 0 R 2877 0 R 2878 0 R 2877 0 R 2877 0 R 2877 0 R 2868 0 R 2876 0 R 2876 0 R 2876 0 R 2868 0 R 2868 0 R 2875 0 R 2868 0 R 2874 0 R 2874 0 R 2874 0 R 2874 0 R 2874 0 R 2874 0 R 2874 0 R 2874 0 R 2874 0 R 2874 0 R 2874 0 R 2874 0 R 2874 0 R 2874 0 R 2874 0 R 2874 0 R 2874 0 R 2868 0 R 2868 0 R 2873 0 R 2873 0 R 2873 0 R 2873 0 R 2873 0 R 2873 0 R 2873 0 R 2868 0 R 2872 0 R 2868 0 R 2871 0 R 2868 0 R 2870 0 R 2868 0 R 2869 0 R 2868 0 R 2868 0 R 2868 0 R 2868 0 R 2867 0 R 2867 0 R 2854 0 R 2866 0 R 2854 0 R 2865 0 R 2854 0 R 2864 0 R 2854 0 R 2863 0 R 2854 0 R 2862 0 R 2854 0 R 2861 0 R 2854 0 R 2860 0 R 2854 0 R 2854 0 R 2859 0 R 2854 0 R 2858 0 R 2854 0 R 2857 0 R 2854 0 R 2856 0 R 2854 0 R 2855 0 R 2854 0 R] -endobj - -73 0 obj -[2850 0 R 2853 0 R 2850 0 R 2850 0 R 2852 0 R 2852 0 R 2852 0 R 2852 0 R 2852 0 R 2852 0 R 2850 0 R 2851 0 R 2850 0 R 2849 0 R 2849 0 R 2849 0 R 2849 0 R 2849 0 R 2849 0 R 2849 0 R 2849 0 R 2849 0 R 2849 0 R 2849 0 R 2849 0 R 2849 0 R 2849 0 R 2849 0 R 2849 0 R 2849 0 R 2845 0 R 2848 0 R 2848 0 R 2848 0 R 2848 0 R 2848 0 R 2848 0 R 2848 0 R 2848 0 R 2848 0 R 2848 0 R 2848 0 R 2848 0 R 2848 0 R 2848 0 R 2848 0 R 2848 0 R 2848 0 R 2848 0 R 2848 0 R 2848 0 R 2848 0 R 2848 0 R 2848 0 R 2848 0 R 2848 0 R 2848 0 R 2848 0 R 2848 0 R 2845 0 R 2847 0 R 2845 0 R 2846 0 R 2846 0 R 2845 0 R 2840 0 R 2844 0 R 2844 0 R 2840 0 R 2843 0 R 2843 0 R 2840 0 R 2840 0 R 2842 0 R 2842 0 R 2840 0 R 2841 0 R 2841 0 R 2840 0 R 2840 0 R 2840 0 R 2834 0 R 2839 0 R 2834 0 R 2838 0 R 2834 0 R 2834 0 R 2834 0 R 2837 0 R 2834 0 R 2836 0 R 2834 0 R 2835 0 R 2834 0 R 2831 0 R 2830 0 R 2829 0 R 2828 0 R 2828 0 R 2828 0 R 2828 0 R 2828 0 R 2828 0 R 2828 0 R 2828 0 R 2828 0 R 2827 0 R 2826 0 R 2826 0 R 2826 0 R 2826 0 R 2826 0 R 2826 0 R 2826 0 R 2826 0 R 2826 0 R 2825 0 R 2824 0 R 2824 0 R 2824 0 R 2824 0 R 2824 0 R 2824 0 R 2824 0 R 2824 0 R 2824 0 R 2823 0 R 2822 0 R 2822 0 R 2822 0 R 2822 0 R 2822 0 R 2822 0 R 2822 0 R 2822 0 R 2822 0 R 2821 0 R 2820 0 R 2820 0 R 2820 0 R 2820 0 R 2820 0 R 2820 0 R 2820 0 R 2820 0 R 2820 0 R 2819 0 R 2818 0 R 2818 0 R 2818 0 R 2818 0 R 2818 0 R 2818 0 R 2818 0 R 2818 0 R 2818 0 R 2833 0 R 2814 0 R 2814 0 R 2811 0 R 2811 0 R 2811 0 R 2813 0 R 2813 0 R 2813 0 R 2813 0 R 2811 0 R 2811 0 R 2812 0 R 2811 0 R 2811 0 R 2811 0 R 2803 0 R 2810 0 R 2803 0 R 2809 0 R 2803 0 R 2803 0 R 2808 0 R 2803 0 R 2803 0 R 2803 0 R 2807 0 R 2803 0 R 2806 0 R 2803 0 R 2803 0 R 2803 0 R 2805 0 R 2803 0 R 2803 0 R 2804 0 R 2803 0 R] -endobj - -74 0 obj -[2800 0 R 2799 0 R 2798 0 R 2797 0 R 2802 0 R 2793 0 R 2792 0 R 2784 0 R 2791 0 R 2784 0 R 2790 0 R 2784 0 R 2789 0 R 2784 0 R 2784 0 R 2788 0 R 2784 0 R 2787 0 R 2784 0 R 2786 0 R 2784 0 R 2784 0 R 2785 0 R 2784 0 R 2782 0 R 2775 0 R 2781 0 R 2775 0 R 2780 0 R 2775 0 R 2779 0 R 2775 0 R 2775 0 R 2775 0 R 2778 0 R 2775 0 R 2777 0 R 2775 0 R 2775 0 R 2776 0 R 2775 0 R 2773 0 R 2772 0 R 2772 0 R 2769 0 R 2769 0 R 2769 0 R 2769 0 R 2768 0 R 2768 0 R 2765 0 R 2767 0 R 2765 0 R 2766 0 R 2765 0 R 2765 0 R 2765 0 R 2765 0 R 2764 0 R 2764 0 R 2759 0 R 2763 0 R 2759 0 R 2762 0 R 2762 0 R 2759 0 R 2761 0 R 2759 0 R 2759 0 R 2759 0 R 2760 0 R 2759 0 R 2758 0 R 2758 0 R 2758 0 R 2756 0 R 2757 0 R 2757 0 R 2756 0 R 2755 0 R 2755 0 R 2755 0 R 2755 0 R 2755 0 R 2755 0 R 2755 0 R 2755 0 R 2755 0 R 2755 0 R 2755 0 R 2755 0 R 2755 0 R 2755 0 R 2755 0 R 2755 0 R 2754 0 R 2753 0 R 2752 0 R 2751 0 R 2749 0 R 2748 0 R 2748 0 R 2748 0 R 2747 0 R 2745 0 R 2744 0 R 2743 0 R 2729 0 R 2739 0 R 2729 0 R 2738 0 R 2738 0 R 2729 0 R 2737 0 R 2729 0 R 2729 0 R 2736 0 R 2729 0 R 2729 0 R 2729 0 R 2735 0 R 2729 0 R 2734 0 R 2729 0 R 2733 0 R 2729 0 R 2729 0 R 2732 0 R 2729 0 R 2731 0 R 2729 0 R 2729 0 R 2729 0 R 2730 0 R 2729 0 R] -endobj - -75 0 obj -[2729 0 R 2729 0 R 2728 0 R 2725 0 R 2727 0 R 2727 0 R 2725 0 R 2725 0 R 2725 0 R 2726 0 R 2725 0 R 2725 0 R 2725 0 R 2724 0 R 2723 0 R 2721 0 R 2720 0 R 2720 0 R 2718 0 R 2717 0 R 2717 0 R 2717 0 R 2717 0 R 2714 0 R 2710 0 R 2713 0 R 2713 0 R 2710 0 R 2712 0 R 2710 0 R 2710 0 R 2711 0 R 2710 0 R 2710 0 R 2709 0 R 2709 0 R 2709 0 R 2706 0 R 2708 0 R 2708 0 R 2708 0 R 2708 0 R 2708 0 R 2706 0 R 2707 0 R 2706 0 R 2705 0 R 2704 0 R 2703 0 R 2703 0 R 2701 0 R 2700 0 R 2698 0 R 2698 0 R 2699 0 R 2699 0 R 2698 0 R 2693 0 R 2693 0 R 2694 0 R 2693 0 R 2692 0 R 2692 0 R 2691 0 R 2691 0 R 2690 0 R 2686 0 R 2686 0 R 2686 0 R 2689 0 R 2686 0 R 2688 0 R 2688 0 R 2688 0 R 2688 0 R 2688 0 R 2688 0 R 2688 0 R 2686 0 R 2686 0 R 2687 0 R 2686 0 R 2686 0 R 2686 0 R 2686 0 R 2686 0 R 2686 0 R 2686 0 R 2685 0 R 2681 0 R 2681 0 R 2681 0 R 2681 0 R 2684 0 R 2681 0 R 2681 0 R 2681 0 R 2681 0 R 2681 0 R 2683 0 R 2681 0 R 2681 0 R 2681 0 R 2682 0 R 2681 0 R] -endobj - -76 0 obj -[2681 0 R 2681 0 R 2680 0 R 2680 0 R 2680 0 R 2680 0 R 2677 0 R 2677 0 R 2677 0 R 2677 0 R 2677 0 R 2679 0 R 2677 0 R 2677 0 R 2677 0 R 2678 0 R 2677 0 R 2677 0 R 2677 0 R 2677 0 R 2676 0 R 2676 0 R 2666 0 R 2675 0 R 2666 0 R 2674 0 R 2666 0 R 2666 0 R 2673 0 R 2666 0 R 2666 0 R 2666 0 R 2666 0 R 2666 0 R 2672 0 R 2666 0 R 2671 0 R 2666 0 R 2666 0 R 2670 0 R 2666 0 R 2669 0 R 2666 0 R 2666 0 R 2666 0 R 2668 0 R 2666 0 R 2667 0 R 2666 0 R 2666 0 R 2665 0 R 2665 0 R 2664 0 R 2661 0 R 2661 0 R 2661 0 R 2663 0 R 2661 0 R 2661 0 R 2662 0 R 2661 0 R 2661 0 R 2643 0 R 2660 0 R 2643 0 R 2643 0 R 2659 0 R 2643 0 R 2643 0 R 2643 0 R 2658 0 R 2643 0 R 2657 0 R 2643 0 R 2656 0 R 2643 0 R 2655 0 R 2643 0 R 2643 0 R 2654 0 R 2643 0 R 2653 0 R 2643 0 R 2643 0 R 2652 0 R 2643 0 R 2643 0 R 2643 0 R 2651 0 R 2643 0 R 2650 0 R 2643 0 R 2649 0 R 2643 0 R 2643 0 R 2648 0 R 2648 0 R 2648 0 R 2648 0 R 2648 0 R 2643 0 R 2647 0 R 2643 0 R 2646 0 R 2643 0 R 2645 0 R 2643 0 R 2644 0 R 2643 0 R 2643 0 R] -endobj - -77 0 obj -[2637 0 R 2636 0 R 2634 0 R 2632 0 R 2624 0 R 2624 0 R 2622 0 R 2621 0 R 2619 0 R 2619 0 R 2617 0 R 2618 0 R 2618 0 R 2618 0 R 2616 0 R 2614 0 R 2614 0 R 2614 0 R 2614 0 R 2614 0 R 2612 0 R 2609 0 R 2606 0 R 2608 0 R 2608 0 R 2606 0 R 2607 0 R 2607 0 R 2605 0 R 2602 0 R 2604 0 R 2602 0 R 2603 0 R 2600 0 R 2600 0 R 2600 0 R 2600 0 R 2598 0 R 2599 0 R 2599 0 R 2599 0 R 2599 0 R 2599 0 R 2599 0 R 2597 0 R 2595 0 R 2596 0 R 2593 0 R 2593 0 R 2593 0 R 2593 0 R 2593 0 R 2593 0 R 2591 0 R 2588 0 R 2588 0 R 2588 0 R 2588 0 R 2588 0 R 2588 0 R 2586 0 R 2583 0 R 2583 0 R 2581 0 R 2580 0 R 2578 0 R 2578 0 R 2578 0 R 2578 0 R 2576 0 R 2573 0 R 2573 0 R 2573 0 R 2573 0 R 2571 0 R 2568 0 R 2568 0 R 2568 0 R 2568 0 R 2568 0 R 2566 0 R 2563 0 R 2561 0 R 2560 0 R 2642 0 R 2548 0 R 2552 0 R 2548 0 R 2548 0 R 2551 0 R 2548 0 R 2548 0 R 2550 0 R 2548 0 R 2549 0 R 2548 0 R 2547 0 R 2547 0 R 2536 0 R 2546 0 R 2536 0 R 2536 0 R 2545 0 R 2536 0 R 2536 0 R 2544 0 R 2536 0 R 2536 0 R 2536 0 R 2543 0 R 2536 0 R 2542 0 R 2542 0 R 2542 0 R 2536 0 R 2541 0 R 2536 0 R 2536 0 R 2540 0 R 2540 0 R 2540 0 R 2536 0 R 2539 0 R 2539 0 R 2539 0 R 2539 0 R 2536 0 R 2536 0 R 2538 0 R 2538 0 R 2536 0 R 2537 0 R 2537 0 R 2537 0 R 2536 0 R 2536 0 R 2536 0 R 2535 0 R 2529 0 R 2534 0 R 2529 0 R 2533 0 R 2533 0 R 2533 0 R 2529 0 R 2532 0 R 2529 0 R 2531 0 R 2529 0 R 2530 0 R 2529 0 R 2528 0 R 2527 0 R 2525 0 R 2523 0 R 2522 0 R 2520 0 R 2516 0 R 2515 0 R 2514 0 R 2512 0 R 2509 0 R 2508 0 R 2507 0 R 2505 0 R 2502 0 R 2501 0 R 2499 0 R 2494 0 R 2493 0 R 2491 0 R 2492 0 R 2491 0 R 2489 0 R 2485 0 R 2483 0 R 2484 0 R 2483 0 R 2482 0 R 2481 0 R 2479 0 R 2475 0 R 2472 0 R 2474 0 R 2472 0 R 2473 0 R 2470 0 R 2467 0 R 2466 0 R 2464 0 R 2462 0 R 2461 0 R 2459 0 R 2455 0 R 2454 0 R 2453 0 R] -endobj - -78 0 obj -[2451 0 R 2448 0 R 2447 0 R 2446 0 R 2445 0 R 2444 0 R 2442 0 R 2439 0 R 2438 0 R 2436 0 R 2431 0 R 2428 0 R 2430 0 R 2428 0 R 2429 0 R 2426 0 R 2422 0 R 2421 0 R 2420 0 R 2418 0 R 2414 0 R 2413 0 R 2411 0 R 2412 0 R 2411 0 R 2409 0 R 2405 0 R 2403 0 R 2400 0 R 2399 0 R 2398 0 R 2396 0 R 2393 0 R 2392 0 R 2378 0 R 2387 0 R 2378 0 R 2386 0 R 2386 0 R 2386 0 R 2378 0 R 2385 0 R 2378 0 R 2378 0 R 2378 0 R 2384 0 R 2378 0 R 2378 0 R 2383 0 R 2378 0 R 2382 0 R 2381 0 R 2381 0 R 2381 0 R 2381 0 R 2378 0 R 2378 0 R 2380 0 R 2378 0 R 2379 0 R 2378 0 R 2377 0 R 2364 0 R 2376 0 R 2364 0 R 2364 0 R 2375 0 R 2364 0 R 2374 0 R 2364 0 R 2373 0 R 2364 0 R 2372 0 R 2364 0 R 2371 0 R 2364 0 R 2364 0 R 2370 0 R 2364 0 R 2364 0 R 2369 0 R 2364 0 R 2364 0 R 2368 0 R 2368 0 R 2368 0 R 2364 0 R 2367 0 R 2364 0 R 2364 0 R 2366 0 R 2364 0 R 2365 0 R 2364 0 R 2363 0 R 2363 0 R 2361 0 R 2362 0 R 2361 0 R 2361 0 R 2360 0 R 2359 0 R 2357 0 R 2358 0 R 2358 0 R 2358 0 R 2358 0 R 2358 0 R 2358 0 R 2358 0 R 2358 0 R 2358 0 R 2358 0 R 2357 0 R 2355 0 R 2354 0 R 2352 0 R 2353 0 R 2353 0 R 2353 0 R 2353 0 R 2353 0 R 2353 0 R 2353 0 R 2353 0 R 2352 0 R 2350 0 R 2349 0 R 2347 0 R 2348 0 R 2348 0 R 2348 0 R 2348 0 R 2348 0 R 2348 0 R 2348 0 R 2348 0 R 2348 0 R 2348 0 R 2347 0 R 2333 0 R 2344 0 R 2344 0 R 2344 0 R 2344 0 R 2344 0 R 2344 0 R 2344 0 R 2344 0 R 2344 0 R 2344 0 R 2344 0 R 2344 0 R 2344 0 R 2344 0 R 2333 0 R 2343 0 R 2333 0 R 2333 0 R 2342 0 R 2333 0 R 2341 0 R 2341 0 R 2341 0 R 2341 0 R 2333 0 R 2340 0 R 2333 0 R 2339 0 R 2339 0 R 2339 0 R 2339 0 R 2339 0 R 2339 0 R 2339 0 R 2333 0 R 2338 0 R 2333 0 R 2337 0 R 2333 0 R 2336 0 R 2333 0 R 2333 0 R 2335 0 R 2333 0 R 2333 0 R 2334 0 R 2334 0 R 2333 0 R 2332 0 R 2322 0 R 2331 0 R 2331 0 R 2331 0 R 2331 0 R 2331 0 R 2331 0 R 2322 0 R 2330 0 R 2330 0 R 2322 0 R 2329 0 R 2322 0 R 2322 0 R 2328 0 R 2322 0 R 2327 0 R 2322 0 R 2326 0 R 2322 0 R 2325 0 R 2325 0 R 2325 0 R 2325 0 R 2325 0 R 2325 0 R 2322 0 R 2322 0 R 2324 0 R 2324 0 R 2324 0 R 2324 0 R 2322 0 R 2322 0 R 2323 0 R 2322 0 R 2321 0 R 2320 0 R 2318 0 R 2316 0 R 2315 0 R 2313 0 R 2309 0 R 2308 0 R 2307 0 R 2306 0 R 2305 0 R 2305 0 R 2304 0 R 2304 0 R 2304 0 R 2304 0 R 2302 0 R 2299 0 R 2298 0 R 2297 0 R 2296 0 R 2296 0 R 2295 0 R 2295 0 R 2295 0 R 2295 0 R 2295 0 R 2295 0 R 2295 0 R] -endobj - -79 0 obj -[2293 0 R 2291 0 R 2290 0 R 2288 0 R 2284 0 R 2283 0 R 2281 0 R 2276 0 R 2275 0 R 2274 0 R 2273 0 R 2272 0 R 2272 0 R 2271 0 R 2271 0 R 2271 0 R 2271 0 R 2269 0 R 2265 0 R 2264 0 R 2263 0 R 2262 0 R 2261 0 R 2261 0 R 2260 0 R 2260 0 R 2260 0 R 2260 0 R 2260 0 R 2260 0 R 2260 0 R 2260 0 R 2260 0 R 2258 0 R 2254 0 R 2252 0 R 2248 0 R 2246 0 R 2247 0 R 2246 0 R 2244 0 R 2238 0 R 2237 0 R 2236 0 R 2235 0 R 2235 0 R 2234 0 R 2234 0 R 2234 0 R 2234 0 R 2234 0 R 2234 0 R 2232 0 R 2227 0 R 2225 0 R 2222 0 R 2221 0 R 2216 0 R 2208 0 R 2208 0 R 2215 0 R 2208 0 R 2208 0 R 2214 0 R 2208 0 R 2213 0 R 2208 0 R 2208 0 R 2212 0 R 2208 0 R 2211 0 R 2211 0 R 2211 0 R 2208 0 R 2210 0 R 2208 0 R 2208 0 R 2209 0 R 2208 0 R 2207 0 R 2206 0 R 2204 0 R 2202 0 R 2201 0 R 2199 0 R 2195 0 R 2192 0 R 2194 0 R 2192 0 R 2193 0 R 2190 0 R 2185 0 R 2182 0 R 2184 0 R 2182 0 R 2183 0 R 2180 0 R 2174 0 R 2173 0 R 2172 0 R 2170 0 R 2171 0 R 2170 0 R 2169 0 R 2168 0 R 2167 0 R 2166 0 R 2165 0 R 2163 0 R 2164 0 R 2161 0 R 2154 0 R 2152 0 R 2146 0 R 2141 0 R 2128 0 R 2128 0 R 2140 0 R 2128 0 R 2128 0 R 2139 0 R 2128 0 R 2138 0 R 2128 0 R 2137 0 R 2128 0 R 2128 0 R 2136 0 R 2128 0 R 2135 0 R 2128 0 R 2128 0 R 2134 0 R 2128 0 R 2128 0 R 2133 0 R 2128 0 R 2132 0 R 2128 0 R 2131 0 R 2128 0 R 2130 0 R 2128 0 R 2128 0 R 2129 0 R 2128 0 R 2128 0 R 2127 0 R 2127 0 R 2117 0 R 2126 0 R 2117 0 R 2125 0 R 2117 0 R 2124 0 R 2117 0 R 2123 0 R 2117 0 R 2117 0 R 2122 0 R 2117 0 R 2121 0 R 2117 0 R 2117 0 R 2120 0 R 2120 0 R 2117 0 R 2119 0 R 2117 0 R 2118 0 R 2117 0 R 2117 0 R 2116 0 R 2099 0 R 2115 0 R 2099 0 R 2114 0 R 2099 0 R 2113 0 R 2099 0 R 2112 0 R 2099 0 R 2099 0 R 2111 0 R 2099 0 R 2110 0 R 2099 0 R 2109 0 R 2099 0 R 2108 0 R 2099 0 R 2099 0 R 2107 0 R 2099 0 R 2106 0 R 2099 0 R 2105 0 R 2099 0 R 2099 0 R 2104 0 R 2099 0 R 2103 0 R 2099 0 R] -endobj - -80 0 obj -[2099 0 R 2102 0 R 2099 0 R 2101 0 R 2099 0 R 2099 0 R 2100 0 R 2099 0 R 2098 0 R 2097 0 R 2095 0 R 2093 0 R 2092 0 R 2089 0 R 2085 0 R 2084 0 R 2082 0 R 2077 0 R 2075 0 R 2071 0 R 2069 0 R 2070 0 R 2069 0 R 2067 0 R 2061 0 R 2060 0 R 2059 0 R 2058 0 R 2056 0 R 2051 0 R 2049 0 R 2046 0 R 2045 0 R 2044 0 R 2042 0 R 2039 0 R 2038 0 R 2037 0 R 2036 0 R 2035 0 R 2032 0 R 2029 0 R 2028 0 R 2027 0 R 2026 0 R 2025 0 R 2023 0 R 2020 0 R 2018 0 R 2015 0 R 2014 0 R 2009 0 R 1985 0 R 2008 0 R 1985 0 R 2007 0 R 1985 0 R 2006 0 R 1985 0 R 1985 0 R 1985 0 R 2005 0 R 1985 0 R 1985 0 R 2004 0 R 1985 0 R 2003 0 R 1985 0 R 2002 0 R 1985 0 R 1993 0 R 1985 0 R 1985 0 R 1992 0 R 1985 0 R 1985 0 R 1991 0 R 1985 0 R 1985 0 R 1990 0 R 1985 0 R 1989 0 R 1985 0 R 1988 0 R 1985 0 R 1985 0 R 1987 0 R 1985 0 R 1986 0 R 1985 0 R 1985 0 R 1984 0 R 1983 0 R 1981 0 R 1979 0 R 1978 0 R 1976 0 R 1972 0 R 1971 0 R 1970 0 R 1969 0 R 1969 0 R 1969 0 R 1969 0 R 1969 0 R 1967 0 R 1964 0 R 1963 0 R 1962 0 R 1959 0 R 1961 0 R 1959 0 R 1960 0 R 1957 0 R 1954 0 R 1953 0 R 1952 0 R 1950 0 R 1947 0 R 1944 0 R 1946 0 R 1944 0 R 1945 0 R 1942 0 R 1939 0 R 1938 0 R 1937 0 R 1936 0 R 1935 0 R 1933 0 R 1934 0 R 1931 0 R 1926 0 R 1925 0 R 1924 0 R 1922 0 R 1919 0 R 1917 0 R 1912 0 R 1911 0 R 1910 0 R 1908 0 R 1906 0 R 1905 0 R 1903 0 R 1898 0 R 1899 0 R 1898 0 R 1897 0 R 1896 0 R 1894 0 R 1891 0 R 1890 0 R 1888 0 R 1889 0 R 1888 0 R 1887 0 R 1886 0 R 1885 0 R 1883 0 R 1884 0 R 1883 0 R 1881 0 R 1878 0 R 1877 0 R 1876 0 R 1874 0 R 1871 0 R 1870 0 R 1869 0 R 1866 0 R 1868 0 R 1866 0 R 1867 0 R 1864 0 R 1859 0 R 1858 0 R 1857 0 R 1999 0 R 1996 0 R 1994 0 R 1995 0 R 1994 0 R 1994 0 R 1994 0 R 1994 0 R] -endobj - -81 0 obj -[1855 0 R 1852 0 R 1850 0 R 1845 0 R 1844 0 R 1843 0 R 1841 0 R 1839 0 R 1838 0 R 1836 0 R 1832 0 R 1831 0 R 1829 0 R 1826 0 R 1825 0 R 1824 0 R 1822 0 R 1819 0 R 1818 0 R 1817 0 R 1816 0 R 1815 0 R 1813 0 R 1814 0 R 1811 0 R 1806 0 R 1805 0 R 1804 0 R 1802 0 R 1799 0 R 1797 0 R 1792 0 R 1791 0 R 1790 0 R 1782 0 R 1782 0 R 1785 0 R 1782 0 R 1784 0 R 1782 0 R 1783 0 R 1782 0 R 1782 0 R 1775 0 R 1781 0 R 1775 0 R 1780 0 R 1775 0 R 1779 0 R 1775 0 R 1778 0 R 1775 0 R 1775 0 R 1777 0 R 1775 0 R 1775 0 R 1775 0 R 1776 0 R 1775 0 R 1774 0 R 1774 0 R 1762 0 R 1773 0 R 1762 0 R 1772 0 R 1762 0 R 1771 0 R 1762 0 R 1770 0 R 1762 0 R 1762 0 R 1769 0 R 1762 0 R 1762 0 R 1768 0 R 1762 0 R 1762 0 R 1767 0 R 1762 0 R 1762 0 R 1766 0 R 1762 0 R 1765 0 R 1762 0 R 1762 0 R 1764 0 R 1762 0 R 1763 0 R 1762 0 R 1761 0 R 1760 0 R 1758 0 R 1756 0 R 1755 0 R 1753 0 R 1749 0 R 1748 0 R 1747 0 R 1745 0 R 1742 0 R 1740 0 R 1735 0 R 1734 0 R 1733 0 R 1730 0 R 1732 0 R 1730 0 R 1731 0 R 1730 0 R 1728 0 R 1724 0 R 1723 0 R 1722 0 R 1719 0 R 1721 0 R 1719 0 R 1720 0 R 1719 0 R 1718 0 R 1716 0 R 1712 0 R 1711 0 R 1710 0 R 1705 0 R 1694 0 R 1694 0 R 1704 0 R 1694 0 R 1703 0 R 1694 0 R 1702 0 R 1694 0 R 1701 0 R 1694 0 R 1694 0 R 1694 0 R 1700 0 R 1694 0 R 1699 0 R 1694 0 R 1694 0 R 1698 0 R 1694 0 R 1694 0 R 1697 0 R 1694 0 R 1694 0 R 1696 0 R 1694 0 R 1694 0 R 1695 0 R 1694 0 R 1688 0 R 1693 0 R 1688 0 R 1688 0 R 1692 0 R 1688 0 R] -endobj - -82 0 obj -[1688 0 R 1691 0 R 1688 0 R 1690 0 R 1688 0 R 1689 0 R 1688 0 R 1688 0 R 1688 0 R 1687 0 R 1687 0 R 1680 0 R 1686 0 R 1680 0 R 1680 0 R 1680 0 R 1685 0 R 1680 0 R 1684 0 R 1680 0 R 1683 0 R 1680 0 R 1682 0 R 1682 0 R 1680 0 R 1680 0 R 1681 0 R 1680 0 R 1680 0 R 1680 0 R 1680 0 R 1680 0 R 1679 0 R 1679 0 R 1676 0 R 1676 0 R 1678 0 R 1676 0 R 1677 0 R 1676 0 R 1676 0 R 1676 0 R 1675 0 R 1675 0 R 1675 0 R 1673 0 R 1674 0 R 1673 0 R 1672 0 R 1671 0 R 1670 0 R 1668 0 R 1667 0 R 1666 0 R 1664 0 R 1663 0 R 1662 0 R 1660 0 R 1659 0 R 1658 0 R 1656 0 R 1655 0 R 1653 0 R 1654 0 R 1653 0 R 1651 0 R 1650 0 R 1649 0 R 1646 0 R 1646 0 R 1641 0 R 1644 0 R 1641 0 R 1641 0 R 1641 0 R 1641 0 R 1643 0 R 1641 0 R 1641 0 R 1642 0 R 1641 0 R 1641 0 R 1640 0 R 1640 0 R 1640 0 R 1639 0 R 1638 0 R 1636 0 R 1637 0 R 1636 0 R 1634 0 R 1633 0 R 1632 0 R 1632 0 R 1630 0 R 1629 0 R 1628 0 R 1628 0 R 1626 0 R 1625 0 R 1621 0 R 1621 0 R 1621 0 R 1624 0 R 1621 0 R 1623 0 R 1621 0 R] -endobj - -83 0 obj -[1621 0 R 1622 0 R 1621 0 R 1621 0 R 1621 0 R 1619 0 R 1618 0 R 1617 0 R 1613 0 R 1614 0 R 1613 0 R 1613 0 R 1613 0 R 1612 0 R 1612 0 R 1608 0 R 1611 0 R 1608 0 R 1608 0 R 1608 0 R 1608 0 R 1608 0 R 1608 0 R 1608 0 R 1608 0 R 1608 0 R 1610 0 R 1608 0 R 1608 0 R 1608 0 R 1609 0 R 1608 0 R 1608 0 R 1605 0 R 1607 0 R 1605 0 R 1606 0 R 1605 0 R 1604 0 R 1597 0 R 1603 0 R 1597 0 R 1597 0 R 1602 0 R 1597 0 R 1597 0 R 1601 0 R 1597 0 R 1597 0 R 1600 0 R 1597 0 R 1599 0 R 1597 0 R 1598 0 R 1597 0 R 1596 0 R 1595 0 R 1593 0 R 1591 0 R 1590 0 R 1588 0 R 1584 0 R 1583 0 R 1582 0 R 1580 0 R 1577 0 R 1576 0 R 1575 0 R 1573 0 R 1570 0 R 1569 0 R 1568 0 R 1567 0 R 1565 0 R 1562 0 R 1559 0 R 1561 0 R 1559 0 R 1560 0 R 1557 0 R 1552 0 R 1551 0 R 1550 0 R 1549 0 R 1548 0 R 1547 0 R 1546 0 R 1545 0 R 1544 0 R 1542 0 R 1539 0 R 1537 0 R 1532 0 R 1531 0 R 1530 0 R 1528 0 R 1524 0 R 1521 0 R 1523 0 R 1521 0 R 1522 0 R 1519 0 R 1513 0 R 1512 0 R 1511 0 R 1510 0 R 1509 0 R 1508 0 R 1507 0 R 1505 0 R 1506 0 R 1503 0 R 1496 0 R 1495 0 R 1494 0 R 1493 0 R 1492 0 R 1490 0 R 1484 0 R 1483 0 R 1482 0 R 1481 0 R 1480 0 R 1478 0 R 1472 0 R 1471 0 R 1470 0 R 1468 0 R 1463 0 R 1462 0 R 1461 0 R 1459 0 R 1460 0 R 1457 0 R 1450 0 R 1449 0 R 1448 0 R 1447 0 R 1446 0 R 1444 0 R 1438 0 R 1437 0 R 1436 0 R 1435 0 R 1434 0 R 1432 0 R 1426 0 R 1425 0 R 1424 0 R 1422 0 R 1417 0 R 1415 0 R 1408 0 R 1407 0 R 1406 0 R 1405 0 R 1404 0 R 1403 0 R 1402 0 R 1401 0 R 1400 0 R 1398 0 R 1395 0 R 1394 0 R 1392 0 R 1389 0 R 1388 0 R 1387 0 R 1386 0 R 1385 0 R] -endobj - -84 0 obj -[1383 0 R 1380 0 R 1379 0 R 1374 0 R 1374 0 R 1374 0 R 1373 0 R 1367 0 R 1372 0 R 1367 0 R 1371 0 R 1367 0 R 1367 0 R 1370 0 R 1367 0 R 1367 0 R 1369 0 R 1367 0 R 1367 0 R 1368 0 R 1367 0 R 1366 0 R 1365 0 R 1363 0 R 1361 0 R 1360 0 R 1358 0 R 1354 0 R 1353 0 R 1352 0 R 1351 0 R 1349 0 R 1346 0 R 1345 0 R 1343 0 R 1338 0 R 1337 0 R 1336 0 R 1334 0 R 1335 0 R 1334 0 R 1333 0 R 1330 0 R 1332 0 R 1330 0 R 1331 0 R 1328 0 R 1324 0 R 1323 0 R 1322 0 R 1321 0 R 1320 0 R 1318 0 R 1314 0 R 1311 0 R 1313 0 R 1311 0 R 1312 0 R 1311 0 R 1309 0 R 1306 0 R 1304 0 R 1301 0 R 1300 0 R 1298 0 R 1296 0 R 1295 0 R 1293 0 R 1289 0 R 1288 0 R 1287 0 R 1286 0 R 1284 0 R 1281 0 R 1278 0 R 1280 0 R 1278 0 R 1279 0 R 1276 0 R 1271 0 R 1270 0 R 1269 0 R 1267 0 R 1263 0 R 1262 0 R 1261 0 R 1260 0 R 1259 0 R 1258 0 R 1257 0 R 1255 0 R 1256 0 R 1253 0 R 1247 0 R 1246 0 R 1245 0 R 1244 0 R 1243 0 R 1241 0 R 1236 0 R 1235 0 R 1234 0 R 1233 0 R 1232 0 R 1230 0 R 1227 0 R 1226 0 R 1219 0 R 1221 0 R 1219 0 R 1220 0 R 1219 0 R 1218 0 R 1209 0 R 1209 0 R 1217 0 R 1209 0 R 1209 0 R 1210 0 R 1209 0 R 1208 0 R 1207 0 R 1205 0 R 1203 0 R 1202 0 R 1200 0 R 1196 0 R 1195 0 R 1194 0 R 1192 0 R 1189 0 R 1187 0 R 1182 0 R 1179 0 R 1181 0 R 1179 0 R 1180 0 R 1177 0 R 1171 0 R 1169 0 R 1164 0 R 1163 0 R 1162 0 R 1160 0 R 1157 0 R 1156 0 R 1154 0 R 1149 0 R 1214 0 R 1211 0 R 1211 0 R] -endobj - -85 0 obj -[1147 0 R 1143 0 R 1140 0 R 1142 0 R 1140 0 R 1141 0 R 1138 0 R 1132 0 R 1130 0 R 1125 0 R 1124 0 R 1123 0 R 1121 0 R 1117 0 R 1116 0 R 1110 0 R 1110 0 R 1110 0 R 1111 0 R 1110 0 R 1110 0 R 1109 0 R 1109 0 R 1092 0 R 1108 0 R 1092 0 R 1092 0 R 1101 0 R 1092 0 R 1092 0 R 1092 0 R 1092 0 R 1091 0 R 1088 0 R 1088 0 R 1090 0 R 1088 0 R 1088 0 R 1088 0 R 1088 0 R 1088 0 R 1089 0 R 1088 0 R 1088 0 R 1088 0 R 1088 0 R 1088 0 R 1087 0 R 1083 0 R 1086 0 R 1083 0 R 1083 0 R 1083 0 R 1083 0 R 1083 0 R 1083 0 R 1083 0 R 1083 0 R 1085 0 R 1083 0 R 1083 0 R 1083 0 R 1084 0 R 1083 0 R 1083 0 R 1082 0 R 1079 0 R 1081 0 R 1079 0 R 1079 0 R 1079 0 R 1079 0 R 1105 0 R 1102 0 R 1102 0 R 1098 0 R 1093 0 R 1095 0 R 1093 0 R 1094 0 R 1093 0 R] -endobj - -86 0 obj -[1079 0 R 1079 0 R 1080 0 R 1079 0 R 1079 0 R 1079 0 R 1079 0 R 1079 0 R 1078 0 R 1077 0 R 1077 0 R 1077 0 R 1077 0 R 1077 0 R 1077 0 R 1077 0 R 1076 0 R 1076 0 R 1075 0 R 1075 0 R 1075 0 R 1075 0 R 1075 0 R 1074 0 R 1074 0 R 1065 0 R 1065 0 R 1073 0 R 1065 0 R 1065 0 R 1072 0 R 1065 0 R 1065 0 R 1065 0 R 1065 0 R 1071 0 R 1065 0 R 1070 0 R 1065 0 R 1069 0 R 1065 0 R 1065 0 R 1068 0 R 1065 0 R 1065 0 R 1067 0 R 1065 0 R 1065 0 R 1065 0 R 1065 0 R 1066 0 R 1065 0 R 1065 0 R 1065 0 R 1065 0 R 1065 0 R 1064 0 R 1064 0 R 1063 0 R 1062 0 R 1062 0 R 1062 0 R 1062 0 R 1062 0 R 1062 0 R 1061 0 R 1057 0 R 1057 0 R 1057 0 R 1060 0 R 1057 0 R 1059 0 R 1057 0 R 1057 0 R] -endobj - -87 0 obj -[1057 0 R 1058 0 R 1057 0 R 1057 0 R 1057 0 R 1057 0 R 1057 0 R 1056 0 R 1054 0 R 1054 0 R 1055 0 R 1054 0 R 1054 0 R 1054 0 R 1054 0 R 1054 0 R 1054 0 R 1054 0 R 1054 0 R 1053 0 R 1053 0 R 1052 0 R 1052 0 R 1052 0 R 1052 0 R 1052 0 R 1051 0 R 1046 0 R 1050 0 R 1046 0 R 1046 0 R 1046 0 R 1046 0 R 1046 0 R 1049 0 R 1046 0 R 1048 0 R 1046 0 R 1046 0 R 1046 0 R 1047 0 R 1046 0 R 1046 0 R 1046 0 R 1046 0 R 1046 0 R 1044 0 R 1044 0 R 1045 0 R 1044 0 R 1044 0 R 1044 0 R 1044 0 R 1044 0 R 1044 0 R 1044 0 R 1044 0 R 1044 0 R 1044 0 R 1043 0 R 1039 0 R 1039 0 R 1039 0 R 1039 0 R 1039 0 R 1039 0 R 1039 0 R 1042 0 R 1039 0 R 1039 0 R 1039 0 R 1039 0 R 1041 0 R 1039 0 R 1039 0 R 1039 0 R] -endobj - -88 0 obj -[1039 0 R 1040 0 R 1039 0 R 1039 0 R 1039 0 R 1038 0 R 1038 0 R 1037 0 R 1037 0 R 1037 0 R 1037 0 R 1036 0 R 1034 0 R 1035 0 R 1034 0 R 1034 0 R 1034 0 R 1034 0 R 1020 0 R 1020 0 R 1020 0 R 1020 0 R 1033 0 R 1020 0 R 1020 0 R 1025 0 R 1020 0 R 1024 0 R 1020 0 R 1020 0 R 1023 0 R 1020 0 R 1022 0 R 1020 0 R 1020 0 R 1021 0 R 1020 0 R 1020 0 R 1020 0 R 1020 0 R 1020 0 R 1020 0 R 1020 0 R 1019 0 R 1015 0 R 1015 0 R 1015 0 R 1015 0 R 1018 0 R 1015 0 R 1015 0 R 1015 0 R 1017 0 R 1015 0 R 1016 0 R 1015 0 R 1007 0 R 1007 0 R 1007 0 R 1014 0 R 1007 0 R 1007 0 R 1013 0 R 1007 0 R 1007 0 R 1007 0 R 1007 0 R 1012 0 R 1007 0 R 1007 0 R 1007 0 R 1011 0 R 1007 0 R 1010 0 R 1007 0 R 1007 0 R 1009 0 R 1007 0 R 1007 0 R 1007 0 R 1008 0 R 1007 0 R 1007 0 R 1007 0 R 1000 0 R 1000 0 R 1000 0 R 1000 0 R 1006 0 R 1000 0 R 1000 0 R 1005 0 R 1000 0 R 1000 0 R 1000 0 R 1004 0 R 1000 0 R 1000 0 R 1003 0 R 1000 0 R 1000 0 R 1000 0 R 1002 0 R 1000 0 R 1001 0 R 1000 0 R 1000 0 R 1000 0 R 997 0 R 997 0 R 997 0 R 999 0 R 997 0 R 997 0 R 1030 0 R 1026 0 R 1027 0 R 1026 0 R 1026 0 R] -endobj - -89 0 obj -[997 0 R 997 0 R 997 0 R 998 0 R 997 0 R 997 0 R 997 0 R 997 0 R 996 0 R 996 0 R 989 0 R 989 0 R 995 0 R 989 0 R 994 0 R 989 0 R 993 0 R 989 0 R 992 0 R 989 0 R 991 0 R 989 0 R 990 0 R 989 0 R 989 0 R 989 0 R 988 0 R 988 0 R 988 0 R 988 0 R 988 0 R 988 0 R 988 0 R 988 0 R 988 0 R 988 0 R 988 0 R 988 0 R 985 0 R 985 0 R 985 0 R 987 0 R 985 0 R 985 0 R 986 0 R 985 0 R 985 0 R 985 0 R 985 0 R 985 0 R 985 0 R 985 0 R 985 0 R 984 0 R 984 0 R 984 0 R 984 0 R 984 0 R 984 0 R 984 0 R 984 0 R 983 0 R 983 0 R 979 0 R 979 0 R 982 0 R 979 0 R 981 0 R 979 0 R 980 0 R 980 0 R 979 0 R] -endobj - -90 0 obj -[979 0 R 979 0 R 978 0 R 973 0 R 977 0 R 973 0 R 973 0 R 973 0 R 973 0 R 976 0 R 973 0 R 973 0 R 975 0 R 975 0 R 975 0 R 975 0 R 975 0 R 975 0 R 973 0 R 973 0 R 973 0 R 973 0 R 974 0 R 973 0 R 973 0 R 972 0 R 970 0 R 971 0 R 970 0 R 970 0 R 970 0 R 970 0 R 970 0 R 970 0 R 965 0 R 969 0 R 965 0 R 965 0 R 968 0 R 965 0 R 967 0 R 965 0 R 965 0 R 966 0 R 965 0 R 965 0 R 965 0 R 964 0 R 960 0 R 963 0 R 960 0 R 962 0 R 962 0 R 962 0 R 960 0 R 961 0 R 960 0 R 960 0 R 960 0 R 960 0 R 960 0 R 959 0 R 956 0 R 956 0 R 956 0 R 958 0 R 956 0 R 956 0 R 956 0 R 957 0 R 956 0 R 956 0 R 956 0 R 956 0 R 956 0 R 956 0 R 956 0 R 956 0 R 956 0 R 956 0 R 955 0 R 949 0 R 949 0 R 949 0 R 954 0 R 954 0 R 954 0 R 954 0 R 954 0 R 954 0 R 949 0 R 949 0 R 949 0 R 949 0 R 953 0 R 949 0 R 949 0 R 949 0 R 949 0 R 949 0 R 949 0 R 949 0 R 952 0 R 949 0 R 949 0 R 949 0 R 951 0 R 949 0 R 949 0 R 949 0 R 949 0 R 950 0 R 949 0 R 949 0 R 948 0 R 948 0 R 948 0 R] -endobj - -91 0 obj -[947 0 R 947 0 R 946 0 R 946 0 R 945 0 R 945 0 R 944 0 R 943 0 R 943 0 R 943 0 R 943 0 R 942 0 R 934 0 R 941 0 R 934 0 R 934 0 R 934 0 R 940 0 R 934 0 R 934 0 R 939 0 R 934 0 R 938 0 R 934 0 R 934 0 R 934 0 R 934 0 R 934 0 R 937 0 R 934 0 R 934 0 R 934 0 R 934 0 R 934 0 R 934 0 R 934 0 R 936 0 R 934 0 R 934 0 R 935 0 R 934 0 R 934 0 R 934 0 R 934 0 R 934 0 R 934 0 R 933 0 R 928 0 R 928 0 R 928 0 R 932 0 R 928 0 R 928 0 R 928 0 R 931 0 R 928 0 R 930 0 R 928 0 R 928 0 R 928 0 R 928 0 R 928 0 R 928 0 R 928 0 R 928 0 R 928 0 R 929 0 R 928 0 R 927 0 R 921 0 R 921 0 R 926 0 R 921 0 R 921 0 R 925 0 R 925 0 R 921 0 R 921 0 R 921 0 R 921 0 R 921 0 R 921 0 R 924 0 R 921 0 R 923 0 R 921 0 R 921 0 R 921 0 R 922 0 R 921 0 R 921 0 R 921 0 R 921 0 R] -endobj - -92 0 obj -[921 0 R 921 0 R 920 0 R 920 0 R 919 0 R 918 0 R 918 0 R 918 0 R 917 0 R 910 0 R 910 0 R 916 0 R 910 0 R 915 0 R 910 0 R 910 0 R 914 0 R 910 0 R 910 0 R 910 0 R 910 0 R 910 0 R 910 0 R 913 0 R 910 0 R 910 0 R 910 0 R 910 0 R 910 0 R 910 0 R 910 0 R 912 0 R 912 0 R 910 0 R 910 0 R 911 0 R 910 0 R 910 0 R 910 0 R 910 0 R 910 0 R 910 0 R 910 0 R 910 0 R 909 0 R 898 0 R 898 0 R 908 0 R 898 0 R 907 0 R 898 0 R 898 0 R 906 0 R 898 0 R 905 0 R 898 0 R 904 0 R 898 0 R 903 0 R 898 0 R 898 0 R 898 0 R 898 0 R 898 0 R 898 0 R 902 0 R 902 0 R 898 0 R 898 0 R 898 0 R 898 0 R 898 0 R 898 0 R 901 0 R 898 0 R 898 0 R 898 0 R 898 0 R 898 0 R 900 0 R 898 0 R 899 0 R 898 0 R 898 0 R 898 0 R 898 0 R 898 0 R 897 0 R 897 0 R 896 0 R 896 0 R] -endobj - -93 0 obj -[896 0 R 896 0 R 896 0 R 895 0 R 878 0 R 878 0 R 878 0 R 878 0 R 894 0 R 878 0 R 878 0 R 893 0 R 878 0 R 878 0 R 878 0 R 892 0 R 878 0 R 878 0 R 891 0 R 878 0 R 878 0 R 890 0 R 878 0 R 878 0 R 878 0 R 878 0 R 878 0 R 878 0 R 889 0 R 878 0 R 878 0 R 878 0 R 878 0 R 888 0 R 878 0 R 878 0 R 878 0 R 887 0 R 878 0 R 878 0 R 878 0 R 878 0 R 878 0 R 878 0 R 886 0 R 878 0 R 878 0 R 878 0 R 878 0 R 878 0 R 885 0 R 878 0 R 878 0 R 878 0 R 884 0 R 878 0 R 878 0 R 878 0 R 878 0 R 883 0 R 878 0 R 878 0 R 878 0 R 882 0 R 878 0 R 878 0 R 878 0 R 881 0 R 878 0 R 880 0 R 878 0 R 878 0 R 879 0 R 878 0 R 878 0 R 878 0 R 878 0 R 878 0 R 878 0 R 878 0 R 877 0 R 867 0 R 867 0 R 867 0 R 867 0 R 876 0 R 867 0 R 867 0 R 867 0 R 867 0 R 875 0 R 867 0 R 867 0 R 867 0 R 874 0 R 867 0 R 867 0 R 873 0 R 867 0 R 867 0 R 867 0 R 867 0 R 867 0 R 872 0 R 867 0 R 867 0 R 867 0 R 871 0 R 867 0 R 867 0 R 867 0 R 867 0 R 867 0 R 870 0 R 867 0 R 869 0 R 867 0 R 867 0 R 868 0 R 867 0 R 867 0 R 867 0 R 867 0 R 867 0 R 867 0 R 867 0 R 867 0 R 867 0 R 867 0 R 867 0 R 867 0 R 867 0 R] -endobj - -94 0 obj -[866 0 R 856 0 R 856 0 R 856 0 R 865 0 R 856 0 R 864 0 R 856 0 R 856 0 R 856 0 R 856 0 R 863 0 R 856 0 R 856 0 R 856 0 R 856 0 R 856 0 R 862 0 R 856 0 R 861 0 R 856 0 R 856 0 R 856 0 R 856 0 R 860 0 R 856 0 R 856 0 R 856 0 R 856 0 R 859 0 R 856 0 R 856 0 R 856 0 R 858 0 R 856 0 R 856 0 R 856 0 R 857 0 R 856 0 R 856 0 R 856 0 R 856 0 R 856 0 R 856 0 R 855 0 R 855 0 R 854 0 R 854 0 R 854 0 R 854 0 R 853 0 R 847 0 R 847 0 R 847 0 R 852 0 R 847 0 R 847 0 R 847 0 R 851 0 R 847 0 R 847 0 R 847 0 R 847 0 R 850 0 R 847 0 R 849 0 R 847 0 R 847 0 R 847 0 R 847 0 R 847 0 R 847 0 R 848 0 R 847 0 R 847 0 R 847 0 R 846 0 R 836 0 R 836 0 R 836 0 R 845 0 R 836 0 R 844 0 R 836 0 R 836 0 R 836 0 R 836 0 R 836 0 R 836 0 R 843 0 R 836 0 R 836 0 R 836 0 R 836 0 R 842 0 R 836 0 R 841 0 R 836 0 R 836 0 R 840 0 R 836 0 R 836 0 R 836 0 R 836 0 R 839 0 R 836 0 R 836 0 R 836 0 R 836 0 R 836 0 R 836 0 R 836 0 R 838 0 R 836 0 R 836 0 R 837 0 R 836 0 R 835 0 R 827 0 R 827 0 R 834 0 R 827 0 R 827 0 R 827 0 R 827 0 R 827 0 R 833 0 R 827 0 R 832 0 R 827 0 R 827 0 R 827 0 R 831 0 R 827 0 R 827 0 R 827 0 R 827 0 R 830 0 R 827 0 R 827 0 R 829 0 R] -endobj - -95 0 obj -[828 0 R 827 0 R 827 0 R 827 0 R 827 0 R 826 0 R 826 0 R 821 0 R 821 0 R 825 0 R 821 0 R 821 0 R 821 0 R 821 0 R 824 0 R 821 0 R 821 0 R 821 0 R 823 0 R 821 0 R 821 0 R 822 0 R 822 0 R 821 0 R 821 0 R 821 0 R 821 0 R 821 0 R 819 0 R 819 0 R 820 0 R 819 0 R 819 0 R 819 0 R 819 0 R 819 0 R 819 0 R 819 0 R 818 0 R 817 0 R 813 0 R 815 0 R 815 0 R 815 0 R 813 0 R 814 0 R 813 0 R 810 0 R 806 0 R 808 0 R 806 0 R 806 0 R 807 0 R 806 0 R 803 0 R 799 0 R 799 0 R 799 0 R 801 0 R 799 0 R 800 0 R 799 0 R 796 0 R 793 0 R 794 0 R 793 0 R 790 0 R 786 0 R 786 0 R 788 0 R 788 0 R 786 0 R 786 0 R 787 0 R 786 0 R 783 0 R 780 0 R 781 0 R 780 0 R 780 0 R] -endobj - -96 0 obj -[777 0 R 774 0 R 774 0 R 774 0 R 775 0 R 771 0 R 768 0 R 768 0 R 768 0 R 769 0 R 769 0 R 765 0 R 760 0 R 763 0 R 760 0 R 762 0 R 762 0 R 762 0 R 760 0 R 761 0 R 760 0 R 757 0 R 752 0 R 755 0 R 752 0 R 754 0 R 752 0 R 752 0 R 753 0 R 752 0 R 749 0 R 746 0 R 746 0 R 747 0 R 746 0 R 743 0 R 738 0 R 741 0 R 738 0 R 738 0 R 740 0 R 740 0 R 738 0 R 739 0 R 738 0 R 735 0 R 732 0 R 732 0 R 733 0 R 732 0 R 732 0 R 729 0 R 727 0 R 727 0 R 724 0 R 720 0 R 722 0 R 720 0 R 720 0 R 721 0 R 720 0 R 717 0 R 714 0 R 715 0 R 715 0 R 714 0 R 714 0 R 711 0 R 707 0 R 707 0 R 709 0 R 709 0 R 707 0 R 707 0 R 708 0 R 707 0 R 704 0 R 700 0 R 700 0 R 702 0 R 702 0 R 700 0 R 700 0 R 700 0 R 701 0 R 700 0 R 697 0 R 693 0 R 695 0 R 693 0 R 693 0 R 694 0 R 693 0 R 690 0 R 687 0 R 688 0 R 687 0 R 684 0 R 680 0 R 682 0 R 682 0 R 680 0 R 680 0 R 680 0 R 681 0 R 680 0 R 677 0 R 674 0 R 675 0 R 674 0 R 674 0 R] -endobj - -97 0 obj -[671 0 R 667 0 R 669 0 R 669 0 R 667 0 R 667 0 R 667 0 R 668 0 R 667 0 R 664 0 R 660 0 R 662 0 R 662 0 R 660 0 R 660 0 R 661 0 R 660 0 R 657 0 R 653 0 R 655 0 R 653 0 R 654 0 R 654 0 R 653 0 R 650 0 R 646 0 R 648 0 R 648 0 R 648 0 R 646 0 R 647 0 R 647 0 R 646 0 R 643 0 R 639 0 R 641 0 R 641 0 R 639 0 R 639 0 R 640 0 R 639 0 R 636 0 R 632 0 R 634 0 R 634 0 R 632 0 R 633 0 R 632 0 R 629 0 R 624 0 R 627 0 R 624 0 R 626 0 R 626 0 R 624 0 R 625 0 R 624 0 R 621 0 R 617 0 R 617 0 R 619 0 R 619 0 R 617 0 R 617 0 R 618 0 R 617 0 R 614 0 R 610 0 R 612 0 R 612 0 R 612 0 R 610 0 R 611 0 R 610 0 R 607 0 R 603 0 R 603 0 R 605 0 R 605 0 R 603 0 R 604 0 R 603 0 R 600 0 R 596 0 R 596 0 R 598 0 R 596 0 R 597 0 R 596 0 R 593 0 R 589 0 R 591 0 R 591 0 R 589 0 R 589 0 R 590 0 R 589 0 R 586 0 R 582 0 R 584 0 R 582 0 R 582 0 R 583 0 R 582 0 R 579 0 R 575 0 R 577 0 R 577 0 R 575 0 R 576 0 R 575 0 R] -endobj - -98 0 obj -[572 0 R 568 0 R 570 0 R 570 0 R 568 0 R 569 0 R 568 0 R 565 0 R 562 0 R 563 0 R 563 0 R 563 0 R 562 0 R 559 0 R 556 0 R 556 0 R 556 0 R 557 0 R 553 0 R 549 0 R 549 0 R 551 0 R 551 0 R 549 0 R 549 0 R 550 0 R 549 0 R 546 0 R 543 0 R 544 0 R 544 0 R 544 0 R 543 0 R 543 0 R 540 0 R 537 0 R 538 0 R 538 0 R 534 0 R 531 0 R 532 0 R 528 0 R 525 0 R 526 0 R 525 0 R 522 0 R 518 0 R 518 0 R 518 0 R 520 0 R 518 0 R 518 0 R 519 0 R 518 0 R 515 0 R 511 0 R 511 0 R 513 0 R 513 0 R 511 0 R 512 0 R 511 0 R 508 0 R 504 0 R 504 0 R 506 0 R 506 0 R 504 0 R 505 0 R 504 0 R 501 0 R 498 0 R 498 0 R 499 0 R 498 0 R 495 0 R 492 0 R 493 0 R 493 0 R 492 0 R 489 0 R 486 0 R 486 0 R 486 0 R 487 0 R 486 0 R 483 0 R 479 0 R 479 0 R 481 0 R 479 0 R 479 0 R 480 0 R 479 0 R 476 0 R 473 0 R 473 0 R 474 0 R 474 0 R 473 0 R] -endobj - -99 0 obj -[470 0 R 466 0 R 468 0 R 468 0 R 466 0 R 467 0 R 466 0 R 463 0 R 459 0 R 461 0 R 461 0 R 459 0 R 460 0 R 459 0 R 456 0 R 453 0 R 454 0 R 454 0 R 453 0 R 450 0 R 446 0 R 448 0 R 448 0 R 446 0 R 447 0 R 446 0 R 443 0 R 440 0 R 441 0 R 441 0 R 437 0 R 433 0 R 433 0 R 435 0 R 433 0 R 433 0 R 434 0 R 433 0 R 430 0 R 427 0 R 428 0 R 428 0 R 424 0 R 420 0 R 422 0 R 422 0 R 420 0 R 420 0 R 421 0 R 420 0 R 417 0 R 413 0 R 413 0 R 415 0 R 415 0 R 415 0 R 415 0 R 413 0 R 414 0 R 413 0 R 410 0 R 406 0 R 406 0 R 408 0 R 406 0 R 407 0 R 407 0 R 406 0 R 403 0 R 399 0 R 401 0 R 401 0 R 399 0 R 400 0 R 399 0 R 396 0 R 392 0 R 392 0 R 394 0 R 392 0 R 392 0 R 393 0 R 392 0 R 389 0 R 385 0 R 385 0 R 387 0 R 387 0 R 385 0 R 385 0 R 386 0 R 385 0 R 382 0 R 378 0 R 378 0 R 380 0 R 378 0 R 378 0 R 379 0 R 378 0 R 375 0 R 371 0 R 373 0 R 373 0 R 371 0 R 371 0 R 372 0 R 371 0 R] -endobj - -100 0 obj -[368 0 R 364 0 R 366 0 R 364 0 R 364 0 R 365 0 R 364 0 R 361 0 R 357 0 R 359 0 R 357 0 R 357 0 R 358 0 R 357 0 R 354 0 R 350 0 R 350 0 R 352 0 R 350 0 R 350 0 R 351 0 R 350 0 R 347 0 R 343 0 R 343 0 R 345 0 R 345 0 R 343 0 R 344 0 R 343 0 R 340 0 R 337 0 R 337 0 R 337 0 R 338 0 R 334 0 R 330 0 R 332 0 R 332 0 R 330 0 R 330 0 R 331 0 R 330 0 R 327 0 R 323 0 R 323 0 R 325 0 R 323 0 R 324 0 R 323 0 R 320 0 R 316 0 R 316 0 R 318 0 R 316 0 R 317 0 R 316 0 R 313 0 R 309 0 R 309 0 R 309 0 R 311 0 R 309 0 R 310 0 R 310 0 R 309 0 R 306 0 R 302 0 R 302 0 R 304 0 R 302 0 R 302 0 R 303 0 R 302 0 R 299 0 R 295 0 R 297 0 R 297 0 R 295 0 R 296 0 R 295 0 R 292 0 R 288 0 R 288 0 R 290 0 R 290 0 R 288 0 R 289 0 R 288 0 R 285 0 R 281 0 R 281 0 R 283 0 R 281 0 R 281 0 R 282 0 R 281 0 R 278 0 R 273 0 R 276 0 R 273 0 R 275 0 R 275 0 R 273 0 R 273 0 R 274 0 R 273 0 R 270 0 R 266 0 R 266 0 R 268 0 R] -endobj - -101 0 obj -[268 0 R 266 0 R 266 0 R 267 0 R 266 0 R 263 0 R 259 0 R 259 0 R 259 0 R 261 0 R 261 0 R 259 0 R 260 0 R 259 0 R 256 0 R 252 0 R 252 0 R 254 0 R 254 0 R 252 0 R 253 0 R 252 0 R 249 0 R 245 0 R 247 0 R 247 0 R 245 0 R 245 0 R 246 0 R 245 0 R 242 0 R 238 0 R 238 0 R 240 0 R 240 0 R 238 0 R 238 0 R 239 0 R 238 0 R 235 0 R 231 0 R 231 0 R 233 0 R 231 0 R 231 0 R 232 0 R 231 0 R 228 0 R 224 0 R 224 0 R 226 0 R 226 0 R 224 0 R 225 0 R 224 0 R 221 0 R 218 0 R 219 0 R 219 0 R 218 0 R 215 0 R 213 0 R 213 0 R 210 0 R 208 0 R 205 0 R 201 0 R 203 0 R 201 0 R 202 0 R 201 0 R 198 0 R 194 0 R 196 0 R 196 0 R 196 0 R 194 0 R 194 0 R 195 0 R 194 0 R 191 0 R 187 0 R 187 0 R 187 0 R 189 0 R 189 0 R 187 0 R 188 0 R 187 0 R 184 0 R 180 0 R 180 0 R 182 0 R 182 0 R 180 0 R 181 0 R 180 0 R 177 0 R 173 0 R 175 0 R 175 0 R 175 0 R 173 0 R 174 0 R 173 0 R 170 0 R 166 0 R 168 0 R 168 0 R 168 0 R 166 0 R 167 0 R 166 0 R] -endobj - -102 0 obj -[163 0 R 159 0 R 159 0 R 161 0 R 161 0 R 161 0 R 159 0 R 160 0 R 159 0 R 156 0 R 154 0 R 151 0 R 148 0 R 149 0 R 148 0 R 145 0 R 141 0 R 141 0 R 141 0 R 143 0 R 141 0 R 141 0 R 142 0 R 141 0 R 138 0 R 134 0 R 134 0 R 136 0 R 136 0 R 134 0 R 135 0 R 134 0 R 131 0 R 127 0 R 129 0 R 129 0 R 127 0 R 127 0 R 128 0 R 127 0 R 124 0 R 120 0 R 120 0 R 122 0 R 120 0 R 120 0 R 121 0 R 120 0 R 117 0 R 114 0 R 114 0 R 115 0 R 115 0 R 111 0 R 107 0 R 107 0 R 109 0 R 107 0 R 108 0 R 107 0 R] -endobj - -103 0 obj -<< - /Type /StructElem - /S /Document - /P 54 0 R - /K [4305 0 R 4301 0 R 4298 0 R 4297 0 R 4290 0 R 4289 0 R 4076 0 R 4075 0 R 4069 0 R 4068 0 R 4067 0 R 4056 0 R 4053 0 R 4052 0 R 4051 0 R 4050 0 R 4038 0 R 4029 0 R 4026 0 R 4025 0 R 4018 0 R 4017 0 R 4016 0 R 4014 0 R 4012 0 R 4011 0 R 4002 0 R 3978 0 R 3977 0 R 3975 0 R 3974 0 R 3966 0 R 3965 0 R 3963 0 R 3954 0 R 3945 0 R 3944 0 R 3936 0 R 3935 0 R 3931 0 R 3930 0 R 3929 0 R 3919 0 R 3902 0 R 3901 0 R 3897 0 R 3888 0 R 3887 0 R 3885 0 R 3884 0 R 3880 0 R 3879 0 R 3875 0 R 3874 0 R 3863 0 R 3846 0 R 3840 0 R 3839 0 R 3820 0 R 3817 0 R 3782 0 R 3765 0 R 3760 0 R 3750 0 R 3743 0 R 3739 0 R 3713 0 R 3705 0 R 3688 0 R 3687 0 R 3683 0 R 3670 0 R 3666 0 R 3648 0 R 3646 0 R 3637 0 R 3632 0 R 3598 0 R 3595 0 R 3578 0 R 3569 0 R 3567 0 R 3539 0 R 3530 0 R 3528 0 R 3521 0 R 3513 0 R 3506 0 R 3505 0 R 3502 0 R 3501 0 R 3498 0 R 3468 0 R 3462 0 R 3394 0 R 3389 0 R 3388 0 R 3384 0 R 3383 0 R 3380 0 R 3374 0 R 3369 0 R 3363 0 R 3360 0 R 3341 0 R 3340 0 R 3336 0 R 3333 0 R 3318 0 R 3313 0 R 3221 0 R 3219 0 R 3216 0 R 3194 0 R 3102 0 R 3095 0 R 3094 0 R 3090 0 R 3073 0 R 3062 0 R 3053 0 R 3052 0 R 3039 0 R 3032 0 R 3017 0 R 3010 0 R 2980 0 R 2977 0 R 2976 0 R 2972 0 R 2940 0 R 2937 0 R 2900 0 R 2896 0 R 2889 0 R 2880 0 R 2877 0 R 2868 0 R 2867 0 R 2854 0 R 2850 0 R 2849 0 R 2845 0 R 2840 0 R 2834 0 R 2815 0 R 2814 0 R 2811 0 R 2803 0 R 2794 0 R 2793 0 R 2770 0 R 2769 0 R 2768 0 R 2765 0 R 2764 0 R 2759 0 R 2740 0 R 2729 0 R 2725 0 R 2715 0 R 2710 0 R 2695 0 R 2693 0 R 2692 0 R 2691 0 R 2686 0 R 2681 0 R 2680 0 R 2677 0 R 2676 0 R 2666 0 R 2665 0 R 2661 0 R 2643 0 R 2553 0 R 2548 0 R 2547 0 R 2536 0 R 2529 0 R 2388 0 R 2378 0 R 2364 0 R 2363 0 R 2361 0 R 2345 0 R 2333 0 R 2322 0 R 2217 0 R 2208 0 R 2142 0 R 2128 0 R 2127 0 R 2117 0 R 2099 0 R 2010 0 R 1985 0 R 1786 0 R 1782 0 R 1775 0 R 1774 0 R 1762 0 R 1706 0 R 1694 0 R 1688 0 R 1687 0 R 1680 0 R 1679 0 R 1676 0 R 1645 0 R 1641 0 R 1640 0 R 1615 0 R 1613 0 R 1612 0 R 1608 0 R 1605 0 R 1597 0 R 1375 0 R 1374 0 R 1367 0 R 1222 0 R 1219 0 R 1209 0 R 1112 0 R 1110 0 R 1109 0 R 1092 0 R 1088 0 R 1083 0 R 1079 0 R 1077 0 R 1076 0 R 1075 0 R 1074 0 R 1065 0 R 1064 0 R 1062 0 R 1057 0 R 1054 0 R 1053 0 R 1052 0 R 1046 0 R 1044 0 R 1039 0 R 1038 0 R 1037 0 R 1034 0 R 1020 0 R 1015 0 R 1007 0 R 1000 0 R 997 0 R 996 0 R 989 0 R 988 0 R 985 0 R 984 0 R 983 0 R 979 0 R 973 0 R 970 0 R 965 0 R 960 0 R 956 0 R 949 0 R 948 0 R 947 0 R 946 0 R 945 0 R 943 0 R 934 0 R 928 0 R 921 0 R 920 0 R 918 0 R 910 0 R 898 0 R 897 0 R 896 0 R 878 0 R 867 0 R 856 0 R 855 0 R 854 0 R 847 0 R 836 0 R 827 0 R 826 0 R 821 0 R 819 0 R 818 0 R 104 0 R] ->> -endobj - -104 0 obj -<< - /Type /StructElem - /S /L - /P 103 0 R - /A [<< - /O /List - /ListNumbering /Decimal - >>] - /K [811 0 R 804 0 R 797 0 R 791 0 R 784 0 R 778 0 R 772 0 R 766 0 R 758 0 R 750 0 R 744 0 R 736 0 R 730 0 R 725 0 R 718 0 R 712 0 R 705 0 R 698 0 R 691 0 R 685 0 R 678 0 R 672 0 R 665 0 R 658 0 R 651 0 R 644 0 R 637 0 R 630 0 R 622 0 R 615 0 R 608 0 R 601 0 R 594 0 R 587 0 R 580 0 R 573 0 R 566 0 R 560 0 R 554 0 R 547 0 R 541 0 R 535 0 R 529 0 R 523 0 R 516 0 R 509 0 R 502 0 R 496 0 R 490 0 R 484 0 R 477 0 R 471 0 R 464 0 R 457 0 R 451 0 R 444 0 R 438 0 R 431 0 R 425 0 R 418 0 R 411 0 R 404 0 R 397 0 R 390 0 R 383 0 R 376 0 R 369 0 R 362 0 R 355 0 R 348 0 R 341 0 R 335 0 R 328 0 R 321 0 R 314 0 R 307 0 R 300 0 R 293 0 R 286 0 R 279 0 R 271 0 R 264 0 R 257 0 R 250 0 R 243 0 R 236 0 R 229 0 R 222 0 R 216 0 R 211 0 R 206 0 R 199 0 R 192 0 R 185 0 R 178 0 R 171 0 R 164 0 R 157 0 R 152 0 R 146 0 R 139 0 R 132 0 R 125 0 R 118 0 R 112 0 R 105 0 R] ->> -endobj - -105 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [110 0 R 106 0 R] ->> -endobj - -106 0 obj -<< - /Type /StructElem - /S /LBody - /P 105 0 R - /K [107 0 R] ->> -endobj - -107 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 106 0 R - /K [54 55 109 0 R 57 108 0 R 59] - /Pg 5270 0 R ->> -endobj - -108 0 obj -<< - /Type /StructElem - /S /Link - /P 107 0 R - /K [58 << - /Type /OBJR - /Pg 5270 0 R - /Obj 5269 0 R - >>] - /Pg 5270 0 R ->> -endobj - -109 0 obj -<< - /Type /StructElem - /S /Em - /P 107 0 R - /K [56] - /Pg 5270 0 R ->> -endobj - -110 0 obj -<< - /Type /StructElem - /S /Lbl - /P 105 0 R - /K [111 0 R] ->> -endobj - -111 0 obj -<< - /Type /StructElem - /S /Link - /P 110 0 R - /K [53 << - /Type /OBJR - /Pg 5270 0 R - /Obj 5268 0 R - >>] - /Pg 5270 0 R ->> -endobj - -112 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [116 0 R 113 0 R] ->> -endobj - -113 0 obj -<< - /Type /StructElem - /S /LBody - /P 112 0 R - /K [114 0 R] ->> -endobj - -114 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 113 0 R - /K [49 50 115 0 R] - /Pg 5270 0 R ->> -endobj - -115 0 obj -<< - /Type /StructElem - /S /Link - /P 114 0 R - /K [51 << - /Type /OBJR - /Pg 5270 0 R - /Obj 5266 0 R - >> 52 << - /Type /OBJR - /Pg 5270 0 R - /Obj 5267 0 R - >>] - /Pg 5270 0 R ->> -endobj - -116 0 obj -<< - /Type /StructElem - /S /Lbl - /P 112 0 R - /K [117 0 R] ->> -endobj - -117 0 obj -<< - /Type /StructElem - /S /Link - /P 116 0 R - /K [48 << - /Type /OBJR - /Pg 5270 0 R - /Obj 5265 0 R - >>] - /Pg 5270 0 R ->> -endobj - -118 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [123 0 R 119 0 R] ->> -endobj - -119 0 obj -<< - /Type /StructElem - /S /LBody - /P 118 0 R - /K [120 0 R] ->> -endobj - -120 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 119 0 R - /K [41 42 122 0 R 44 45 121 0 R 47] - /Pg 5270 0 R ->> -endobj - -121 0 obj -<< - /Type /StructElem - /S /Link - /P 120 0 R - /K [46 << - /Type /OBJR - /Pg 5270 0 R - /Obj 5264 0 R - >>] - /Pg 5270 0 R ->> -endobj - -122 0 obj -<< - /Type /StructElem - /S /Em - /P 120 0 R - /K [43] - /Pg 5270 0 R ->> -endobj - -123 0 obj -<< - /Type /StructElem - /S /Lbl - /P 118 0 R - /K [124 0 R] ->> -endobj - -124 0 obj -<< - /Type /StructElem - /S /Link - /P 123 0 R - /K [40 << - /Type /OBJR - /Pg 5270 0 R - /Obj 5263 0 R - >>] - /Pg 5270 0 R ->> -endobj - -125 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [130 0 R 126 0 R] ->> -endobj - -126 0 obj -<< - /Type /StructElem - /S /LBody - /P 125 0 R - /K [127 0 R] ->> -endobj - -127 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 126 0 R - /K [33 129 0 R 36 37 128 0 R 39] - /Pg 5270 0 R ->> -endobj - -128 0 obj -<< - /Type /StructElem - /S /Link - /P 127 0 R - /K [38 << - /Type /OBJR - /Pg 5270 0 R - /Obj 5262 0 R - >>] - /Pg 5270 0 R ->> -endobj - -129 0 obj -<< - /Type /StructElem - /S /Em - /P 127 0 R - /K [34 35] - /Pg 5270 0 R ->> -endobj - -130 0 obj -<< - /Type /StructElem - /S /Lbl - /P 125 0 R - /K [131 0 R] ->> -endobj - -131 0 obj -<< - /Type /StructElem - /S /Link - /P 130 0 R - /K [32 << - /Type /OBJR - /Pg 5270 0 R - /Obj 5261 0 R - >>] - /Pg 5270 0 R ->> -endobj - -132 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [137 0 R 133 0 R] ->> -endobj - -133 0 obj -<< - /Type /StructElem - /S /LBody - /P 132 0 R - /K [134 0 R] ->> -endobj - -134 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 133 0 R - /K [25 26 136 0 R 29 135 0 R 31] - /Pg 5270 0 R ->> -endobj - -135 0 obj -<< - /Type /StructElem - /S /Link - /P 134 0 R - /K [30 << - /Type /OBJR - /Pg 5270 0 R - /Obj 5260 0 R - >>] - /Pg 5270 0 R ->> -endobj - -136 0 obj -<< - /Type /StructElem - /S /Em - /P 134 0 R - /K [27 28] - /Pg 5270 0 R ->> -endobj - -137 0 obj -<< - /Type /StructElem - /S /Lbl - /P 132 0 R - /K [138 0 R] ->> -endobj - -138 0 obj -<< - /Type /StructElem - /S /Link - /P 137 0 R - /K [24 << - /Type /OBJR - /Pg 5270 0 R - /Obj 5259 0 R - >>] - /Pg 5270 0 R ->> -endobj - -139 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [144 0 R 140 0 R] ->> -endobj - -140 0 obj -<< - /Type /StructElem - /S /LBody - /P 139 0 R - /K [141 0 R] ->> -endobj - -141 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 140 0 R - /K [16 17 18 143 0 R 20 21 142 0 R 23] - /Pg 5270 0 R ->> -endobj - -142 0 obj -<< - /Type /StructElem - /S /Link - /P 141 0 R - /K [22 << - /Type /OBJR - /Pg 5270 0 R - /Obj 5258 0 R - >>] - /Pg 5270 0 R ->> -endobj - -143 0 obj -<< - /Type /StructElem - /S /Em - /P 141 0 R - /K [19] - /Pg 5270 0 R ->> -endobj - -144 0 obj -<< - /Type /StructElem - /S /Lbl - /P 139 0 R - /K [145 0 R] ->> -endobj - -145 0 obj -<< - /Type /StructElem - /S /Link - /P 144 0 R - /K [15 << - /Type /OBJR - /Pg 5270 0 R - /Obj 5257 0 R - >>] - /Pg 5270 0 R ->> -endobj - -146 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [150 0 R 147 0 R] ->> -endobj - -147 0 obj -<< - /Type /StructElem - /S /LBody - /P 146 0 R - /K [148 0 R] ->> -endobj - -148 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 147 0 R - /K [12 149 0 R 14] - /Pg 5270 0 R ->> -endobj - -149 0 obj -<< - /Type /StructElem - /S /Em - /P 148 0 R - /K [13] - /Pg 5270 0 R ->> -endobj - -150 0 obj -<< - /Type /StructElem - /S /Lbl - /P 146 0 R - /K [151 0 R] ->> -endobj - -151 0 obj -<< - /Type /StructElem - /S /Link - /P 150 0 R - /K [11 << - /Type /OBJR - /Pg 5270 0 R - /Obj 5256 0 R - >>] - /Pg 5270 0 R ->> -endobj - -152 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [155 0 R 153 0 R] ->> -endobj - -153 0 obj -<< - /Type /StructElem - /S /LBody - /P 152 0 R - /K [154 0 R] ->> -endobj - -154 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 153 0 R - /K [10] - /Pg 5270 0 R ->> -endobj - -155 0 obj -<< - /Type /StructElem - /S /Lbl - /P 152 0 R - /K [156 0 R] ->> -endobj - -156 0 obj -<< - /Type /StructElem - /S /Link - /P 155 0 R - /K [9 << - /Type /OBJR - /Pg 5270 0 R - /Obj 5255 0 R - >>] - /Pg 5270 0 R ->> -endobj - -157 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [162 0 R 158 0 R] ->> -endobj - -158 0 obj -<< - /Type /StructElem - /S /LBody - /P 157 0 R - /K [159 0 R] ->> -endobj - -159 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 158 0 R - /K [1 2 161 0 R 6 160 0 R 8] - /Pg 5270 0 R ->> -endobj - -160 0 obj -<< - /Type /StructElem - /S /Link - /P 159 0 R - /K [7 << - /Type /OBJR - /Pg 5270 0 R - /Obj 5254 0 R - >>] - /Pg 5270 0 R ->> -endobj - -161 0 obj -<< - /Type /StructElem - /S /Em - /P 159 0 R - /K [3 4 5] - /Pg 5270 0 R ->> -endobj - -162 0 obj -<< - /Type /StructElem - /S /Lbl - /P 157 0 R - /K [163 0 R] ->> -endobj - -163 0 obj -<< - /Type /StructElem - /S /Link - /P 162 0 R - /K [0 << - /Type /OBJR - /Pg 5270 0 R - /Obj 5253 0 R - >>] - /Pg 5270 0 R ->> -endobj - -164 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [169 0 R 165 0 R] ->> -endobj - -165 0 obj -<< - /Type /StructElem - /S /LBody - /P 164 0 R - /K [166 0 R] ->> -endobj - -166 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 165 0 R - /K [106 168 0 R 110 167 0 R 112] - /Pg 5251 0 R ->> -endobj - -167 0 obj -<< - /Type /StructElem - /S /Link - /P 166 0 R - /K [111 << - /Type /OBJR - /Pg 5251 0 R - /Obj 5250 0 R - >>] - /Pg 5251 0 R ->> -endobj - -168 0 obj -<< - /Type /StructElem - /S /Em - /P 166 0 R - /K [107 108 109] - /Pg 5251 0 R ->> -endobj - -169 0 obj -<< - /Type /StructElem - /S /Lbl - /P 164 0 R - /K [170 0 R] ->> -endobj - -170 0 obj -<< - /Type /StructElem - /S /Link - /P 169 0 R - /K [105 << - /Type /OBJR - /Pg 5251 0 R - /Obj 5249 0 R - >>] - /Pg 5251 0 R ->> -endobj - -171 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [176 0 R 172 0 R] ->> -endobj - -172 0 obj -<< - /Type /StructElem - /S /LBody - /P 171 0 R - /K [173 0 R] ->> -endobj - -173 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 172 0 R - /K [98 175 0 R 102 174 0 R 104] - /Pg 5251 0 R ->> -endobj - -174 0 obj -<< - /Type /StructElem - /S /Link - /P 173 0 R - /K [103 << - /Type /OBJR - /Pg 5251 0 R - /Obj 5248 0 R - >>] - /Pg 5251 0 R ->> -endobj - -175 0 obj -<< - /Type /StructElem - /S /Em - /P 173 0 R - /K [99 100 101] - /Pg 5251 0 R ->> -endobj - -176 0 obj -<< - /Type /StructElem - /S /Lbl - /P 171 0 R - /K [177 0 R] ->> -endobj - -177 0 obj -<< - /Type /StructElem - /S /Link - /P 176 0 R - /K [97 << - /Type /OBJR - /Pg 5251 0 R - /Obj 5247 0 R - >>] - /Pg 5251 0 R ->> -endobj - -178 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [183 0 R 179 0 R] ->> -endobj - -179 0 obj -<< - /Type /StructElem - /S /LBody - /P 178 0 R - /K [180 0 R] ->> -endobj - -180 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 179 0 R - /K [90 91 182 0 R 94 181 0 R 96] - /Pg 5251 0 R ->> -endobj - -181 0 obj -<< - /Type /StructElem - /S /Link - /P 180 0 R - /K [95 << - /Type /OBJR - /Pg 5251 0 R - /Obj 5246 0 R - >>] - /Pg 5251 0 R ->> -endobj - -182 0 obj -<< - /Type /StructElem - /S /Em - /P 180 0 R - /K [92 93] - /Pg 5251 0 R ->> -endobj - -183 0 obj -<< - /Type /StructElem - /S /Lbl - /P 178 0 R - /K [184 0 R] ->> -endobj - -184 0 obj -<< - /Type /StructElem - /S /Link - /P 183 0 R - /K [89 << - /Type /OBJR - /Pg 5251 0 R - /Obj 5245 0 R - >>] - /Pg 5251 0 R ->> -endobj - -185 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [190 0 R 186 0 R] ->> -endobj - -186 0 obj -<< - /Type /StructElem - /S /LBody - /P 185 0 R - /K [187 0 R] ->> -endobj - -187 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 186 0 R - /K [81 82 83 189 0 R 86 188 0 R 88] - /Pg 5251 0 R ->> -endobj - -188 0 obj -<< - /Type /StructElem - /S /Link - /P 187 0 R - /K [87 << - /Type /OBJR - /Pg 5251 0 R - /Obj 5244 0 R - >>] - /Pg 5251 0 R ->> -endobj - -189 0 obj -<< - /Type /StructElem - /S /Em - /P 187 0 R - /K [84 85] - /Pg 5251 0 R ->> -endobj - -190 0 obj -<< - /Type /StructElem - /S /Lbl - /P 185 0 R - /K [191 0 R] ->> -endobj - -191 0 obj -<< - /Type /StructElem - /S /Link - /P 190 0 R - /K [80 << - /Type /OBJR - /Pg 5251 0 R - /Obj 5243 0 R - >>] - /Pg 5251 0 R ->> -endobj - -192 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [197 0 R 193 0 R] ->> -endobj - -193 0 obj -<< - /Type /StructElem - /S /LBody - /P 192 0 R - /K [194 0 R] ->> -endobj - -194 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 193 0 R - /K [72 196 0 R 76 77 195 0 R 79] - /Pg 5251 0 R ->> -endobj - -195 0 obj -<< - /Type /StructElem - /S /Link - /P 194 0 R - /K [78 << - /Type /OBJR - /Pg 5251 0 R - /Obj 5242 0 R - >>] - /Pg 5251 0 R ->> -endobj - -196 0 obj -<< - /Type /StructElem - /S /Em - /P 194 0 R - /K [73 74 75] - /Pg 5251 0 R ->> -endobj - -197 0 obj -<< - /Type /StructElem - /S /Lbl - /P 192 0 R - /K [198 0 R] ->> -endobj - -198 0 obj -<< - /Type /StructElem - /S /Link - /P 197 0 R - /K [71 << - /Type /OBJR - /Pg 5251 0 R - /Obj 5241 0 R - >>] - /Pg 5251 0 R ->> -endobj - -199 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [204 0 R 200 0 R] ->> -endobj - -200 0 obj -<< - /Type /StructElem - /S /LBody - /P 199 0 R - /K [201 0 R] ->> -endobj - -201 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 200 0 R - /K [66 203 0 R 68 202 0 R 70] - /Pg 5251 0 R ->> -endobj - -202 0 obj -<< - /Type /StructElem - /S /Link - /P 201 0 R - /K [69 << - /Type /OBJR - /Pg 5251 0 R - /Obj 5240 0 R - >>] - /Pg 5251 0 R ->> -endobj - -203 0 obj -<< - /Type /StructElem - /S /Em - /P 201 0 R - /K [67] - /Pg 5251 0 R ->> -endobj - -204 0 obj -<< - /Type /StructElem - /S /Lbl - /P 199 0 R - /K [205 0 R] ->> -endobj - -205 0 obj -<< - /Type /StructElem - /S /Link - /P 204 0 R - /K [65 << - /Type /OBJR - /Pg 5251 0 R - /Obj 5239 0 R - >>] - /Pg 5251 0 R ->> -endobj - -206 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [209 0 R 207 0 R] ->> -endobj - -207 0 obj -<< - /Type /StructElem - /S /LBody - /P 206 0 R - /K [208 0 R] ->> -endobj - -208 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 207 0 R - /K [64] - /Pg 5251 0 R ->> -endobj - -209 0 obj -<< - /Type /StructElem - /S /Lbl - /P 206 0 R - /K [210 0 R] ->> -endobj - -210 0 obj -<< - /Type /StructElem - /S /Link - /P 209 0 R - /K [63 << - /Type /OBJR - /Pg 5251 0 R - /Obj 5238 0 R - >>] - /Pg 5251 0 R ->> -endobj - -211 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [214 0 R 212 0 R] ->> -endobj - -212 0 obj -<< - /Type /StructElem - /S /LBody - /P 211 0 R - /K [213 0 R] ->> -endobj - -213 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 212 0 R - /K [61 62] - /Pg 5251 0 R ->> -endobj - -214 0 obj -<< - /Type /StructElem - /S /Lbl - /P 211 0 R - /K [215 0 R] ->> -endobj - -215 0 obj -<< - /Type /StructElem - /S /Link - /P 214 0 R - /K [60 << - /Type /OBJR - /Pg 5251 0 R - /Obj 5237 0 R - >>] - /Pg 5251 0 R ->> -endobj - -216 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [220 0 R 217 0 R] ->> -endobj - -217 0 obj -<< - /Type /StructElem - /S /LBody - /P 216 0 R - /K [218 0 R] ->> -endobj - -218 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 217 0 R - /K [56 219 0 R 59] - /Pg 5251 0 R ->> -endobj - -219 0 obj -<< - /Type /StructElem - /S /Em - /P 218 0 R - /K [57 58] - /Pg 5251 0 R ->> -endobj - -220 0 obj -<< - /Type /StructElem - /S /Lbl - /P 216 0 R - /K [221 0 R] ->> -endobj - -221 0 obj -<< - /Type /StructElem - /S /Link - /P 220 0 R - /K [55 << - /Type /OBJR - /Pg 5251 0 R - /Obj 5236 0 R - >>] - /Pg 5251 0 R ->> -endobj - -222 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [227 0 R 223 0 R] ->> -endobj - -223 0 obj -<< - /Type /StructElem - /S /LBody - /P 222 0 R - /K [224 0 R] ->> -endobj - -224 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 223 0 R - /K [48 49 226 0 R 52 225 0 R 54] - /Pg 5251 0 R ->> -endobj - -225 0 obj -<< - /Type /StructElem - /S /Link - /P 224 0 R - /K [53 << - /Type /OBJR - /Pg 5251 0 R - /Obj 5235 0 R - >>] - /Pg 5251 0 R ->> -endobj - -226 0 obj -<< - /Type /StructElem - /S /Em - /P 224 0 R - /K [50 51] - /Pg 5251 0 R ->> -endobj - -227 0 obj -<< - /Type /StructElem - /S /Lbl - /P 222 0 R - /K [228 0 R] ->> -endobj - -228 0 obj -<< - /Type /StructElem - /S /Link - /P 227 0 R - /K [47 << - /Type /OBJR - /Pg 5251 0 R - /Obj 5234 0 R - >>] - /Pg 5251 0 R ->> -endobj - -229 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [234 0 R 230 0 R] ->> -endobj - -230 0 obj -<< - /Type /StructElem - /S /LBody - /P 229 0 R - /K [231 0 R] ->> -endobj - -231 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 230 0 R - /K [40 41 233 0 R 43 44 232 0 R 46] - /Pg 5251 0 R ->> -endobj - -232 0 obj -<< - /Type /StructElem - /S /Link - /P 231 0 R - /K [45 << - /Type /OBJR - /Pg 5251 0 R - /Obj 5233 0 R - >>] - /Pg 5251 0 R ->> -endobj - -233 0 obj -<< - /Type /StructElem - /S /Em - /P 231 0 R - /K [42] - /Pg 5251 0 R ->> -endobj - -234 0 obj -<< - /Type /StructElem - /S /Lbl - /P 229 0 R - /K [235 0 R] ->> -endobj - -235 0 obj -<< - /Type /StructElem - /S /Link - /P 234 0 R - /K [39 << - /Type /OBJR - /Pg 5251 0 R - /Obj 5232 0 R - >>] - /Pg 5251 0 R ->> -endobj - -236 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [241 0 R 237 0 R] ->> -endobj - -237 0 obj -<< - /Type /StructElem - /S /LBody - /P 236 0 R - /K [238 0 R] ->> -endobj - -238 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 237 0 R - /K [31 32 240 0 R 35 36 239 0 R 38] - /Pg 5251 0 R ->> -endobj - -239 0 obj -<< - /Type /StructElem - /S /Link - /P 238 0 R - /K [37 << - /Type /OBJR - /Pg 5251 0 R - /Obj 5231 0 R - >>] - /Pg 5251 0 R ->> -endobj - -240 0 obj -<< - /Type /StructElem - /S /Em - /P 238 0 R - /K [33 34] - /Pg 5251 0 R ->> -endobj - -241 0 obj -<< - /Type /StructElem - /S /Lbl - /P 236 0 R - /K [242 0 R] ->> -endobj - -242 0 obj -<< - /Type /StructElem - /S /Link - /P 241 0 R - /K [30 << - /Type /OBJR - /Pg 5251 0 R - /Obj 5230 0 R - >>] - /Pg 5251 0 R ->> -endobj - -243 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [248 0 R 244 0 R] ->> -endobj - -244 0 obj -<< - /Type /StructElem - /S /LBody - /P 243 0 R - /K [245 0 R] ->> -endobj - -245 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 244 0 R - /K [23 247 0 R 26 27 246 0 R 29] - /Pg 5251 0 R ->> -endobj - -246 0 obj -<< - /Type /StructElem - /S /Link - /P 245 0 R - /K [28 << - /Type /OBJR - /Pg 5251 0 R - /Obj 5229 0 R - >>] - /Pg 5251 0 R ->> -endobj - -247 0 obj -<< - /Type /StructElem - /S /Em - /P 245 0 R - /K [24 25] - /Pg 5251 0 R ->> -endobj - -248 0 obj -<< - /Type /StructElem - /S /Lbl - /P 243 0 R - /K [249 0 R] ->> -endobj - -249 0 obj -<< - /Type /StructElem - /S /Link - /P 248 0 R - /K [22 << - /Type /OBJR - /Pg 5251 0 R - /Obj 5228 0 R - >>] - /Pg 5251 0 R ->> -endobj - -250 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [255 0 R 251 0 R] ->> -endobj - -251 0 obj -<< - /Type /StructElem - /S /LBody - /P 250 0 R - /K [252 0 R] ->> -endobj - -252 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 251 0 R - /K [15 16 254 0 R 19 253 0 R 21] - /Pg 5251 0 R ->> -endobj - -253 0 obj -<< - /Type /StructElem - /S /Link - /P 252 0 R - /K [20 << - /Type /OBJR - /Pg 5251 0 R - /Obj 5227 0 R - >>] - /Pg 5251 0 R ->> -endobj - -254 0 obj -<< - /Type /StructElem - /S /Em - /P 252 0 R - /K [17 18] - /Pg 5251 0 R ->> -endobj - -255 0 obj -<< - /Type /StructElem - /S /Lbl - /P 250 0 R - /K [256 0 R] ->> -endobj - -256 0 obj -<< - /Type /StructElem - /S /Link - /P 255 0 R - /K [14 << - /Type /OBJR - /Pg 5251 0 R - /Obj 5226 0 R - >>] - /Pg 5251 0 R ->> -endobj - -257 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [262 0 R 258 0 R] ->> -endobj - -258 0 obj -<< - /Type /StructElem - /S /LBody - /P 257 0 R - /K [259 0 R] ->> -endobj - -259 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 258 0 R - /K [6 7 8 261 0 R 11 260 0 R 13] - /Pg 5251 0 R ->> -endobj - -260 0 obj -<< - /Type /StructElem - /S /Link - /P 259 0 R - /K [12 << - /Type /OBJR - /Pg 5251 0 R - /Obj 5225 0 R - >>] - /Pg 5251 0 R ->> -endobj - -261 0 obj -<< - /Type /StructElem - /S /Em - /P 259 0 R - /K [9 10] - /Pg 5251 0 R ->> -endobj - -262 0 obj -<< - /Type /StructElem - /S /Lbl - /P 257 0 R - /K [263 0 R] ->> -endobj - -263 0 obj -<< - /Type /StructElem - /S /Link - /P 262 0 R - /K [5 << - /Type /OBJR - /Pg 5251 0 R - /Obj 5224 0 R - >>] - /Pg 5251 0 R ->> -endobj - -264 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [269 0 R 265 0 R] ->> -endobj - -265 0 obj -<< - /Type /StructElem - /S /LBody - /P 264 0 R - /K [266 0 R] ->> -endobj - -266 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 265 0 R - /K [108 109 268 0 R << - /Type /MCR - /MCID 1 - /Pg 5251 0 R - >> << - /Type /MCR - /MCID 2 - /Pg 5251 0 R - >> 267 0 R << - /Type /MCR - /MCID 4 - /Pg 5251 0 R - >>] - /Pg 5221 0 R ->> -endobj - -267 0 obj -<< - /Type /StructElem - /S /Link - /P 266 0 R - /K [3 << - /Type /OBJR - /Pg 5251 0 R - /Obj 5223 0 R - >>] - /Pg 5251 0 R ->> -endobj - -268 0 obj -<< - /Type /StructElem - /S /Em - /P 266 0 R - /K [110 << - /Type /MCR - /MCID 0 - /Pg 5251 0 R - >>] - /Pg 5221 0 R ->> -endobj - -269 0 obj -<< - /Type /StructElem - /S /Lbl - /P 264 0 R - /K [270 0 R] ->> -endobj - -270 0 obj -<< - /Type /StructElem - /S /Link - /P 269 0 R - /K [107 << - /Type /OBJR - /Pg 5221 0 R - /Obj 5220 0 R - >>] - /Pg 5221 0 R ->> -endobj - -271 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [277 0 R 272 0 R] ->> -endobj - -272 0 obj -<< - /Type /StructElem - /S /LBody - /P 271 0 R - /K [273 0 R] ->> -endobj - -273 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 272 0 R - /K [98 276 0 R 100 275 0 R 103 104 274 0 R 106] - /Pg 5221 0 R ->> -endobj - -274 0 obj -<< - /Type /StructElem - /S /Link - /P 273 0 R - /K [105 << - /Type /OBJR - /Pg 5221 0 R - /Obj 5219 0 R - >>] - /Pg 5221 0 R ->> -endobj - -275 0 obj -<< - /Type /StructElem - /S /Em - /P 273 0 R - /K [101 102] - /Pg 5221 0 R ->> -endobj - -276 0 obj -<< - /Type /StructElem - /S /Em - /P 273 0 R - /K [99] - /Pg 5221 0 R ->> -endobj - -277 0 obj -<< - /Type /StructElem - /S /Lbl - /P 271 0 R - /K [278 0 R] ->> -endobj - -278 0 obj -<< - /Type /StructElem - /S /Link - /P 277 0 R - /K [97 << - /Type /OBJR - /Pg 5221 0 R - /Obj 5218 0 R - >>] - /Pg 5221 0 R ->> -endobj - -279 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [284 0 R 280 0 R] ->> -endobj - -280 0 obj -<< - /Type /StructElem - /S /LBody - /P 279 0 R - /K [281 0 R] ->> -endobj - -281 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 280 0 R - /K [90 91 283 0 R 93 94 282 0 R 96] - /Pg 5221 0 R ->> -endobj - -282 0 obj -<< - /Type /StructElem - /S /Link - /P 281 0 R - /K [95 << - /Type /OBJR - /Pg 5221 0 R - /Obj 5217 0 R - >>] - /Pg 5221 0 R ->> -endobj - -283 0 obj -<< - /Type /StructElem - /S /Em - /P 281 0 R - /K [92] - /Pg 5221 0 R ->> -endobj - -284 0 obj -<< - /Type /StructElem - /S /Lbl - /P 279 0 R - /K [285 0 R] ->> -endobj - -285 0 obj -<< - /Type /StructElem - /S /Link - /P 284 0 R - /K [89 << - /Type /OBJR - /Pg 5221 0 R - /Obj 5216 0 R - >>] - /Pg 5221 0 R ->> -endobj - -286 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [291 0 R 287 0 R] ->> -endobj - -287 0 obj -<< - /Type /StructElem - /S /LBody - /P 286 0 R - /K [288 0 R] ->> -endobj - -288 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 287 0 R - /K [82 83 290 0 R 86 289 0 R 88] - /Pg 5221 0 R ->> -endobj - -289 0 obj -<< - /Type /StructElem - /S /Link - /P 288 0 R - /K [87 << - /Type /OBJR - /Pg 5221 0 R - /Obj 5215 0 R - >>] - /Pg 5221 0 R ->> -endobj - -290 0 obj -<< - /Type /StructElem - /S /Em - /P 288 0 R - /K [84 85] - /Pg 5221 0 R ->> -endobj - -291 0 obj -<< - /Type /StructElem - /S /Lbl - /P 286 0 R - /K [292 0 R] ->> -endobj - -292 0 obj -<< - /Type /StructElem - /S /Link - /P 291 0 R - /K [81 << - /Type /OBJR - /Pg 5221 0 R - /Obj 5214 0 R - >>] - /Pg 5221 0 R ->> -endobj - -293 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [298 0 R 294 0 R] ->> -endobj - -294 0 obj -<< - /Type /StructElem - /S /LBody - /P 293 0 R - /K [295 0 R] ->> -endobj - -295 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 294 0 R - /K [75 297 0 R 78 296 0 R 80] - /Pg 5221 0 R ->> -endobj - -296 0 obj -<< - /Type /StructElem - /S /Link - /P 295 0 R - /K [79 << - /Type /OBJR - /Pg 5221 0 R - /Obj 5213 0 R - >>] - /Pg 5221 0 R ->> -endobj - -297 0 obj -<< - /Type /StructElem - /S /Em - /P 295 0 R - /K [76 77] - /Pg 5221 0 R ->> -endobj - -298 0 obj -<< - /Type /StructElem - /S /Lbl - /P 293 0 R - /K [299 0 R] ->> -endobj - -299 0 obj -<< - /Type /StructElem - /S /Link - /P 298 0 R - /K [74 << - /Type /OBJR - /Pg 5221 0 R - /Obj 5212 0 R - >>] - /Pg 5221 0 R ->> -endobj - -300 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [305 0 R 301 0 R] ->> -endobj - -301 0 obj -<< - /Type /StructElem - /S /LBody - /P 300 0 R - /K [302 0 R] ->> -endobj - -302 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 301 0 R - /K [67 68 304 0 R 70 71 303 0 R 73] - /Pg 5221 0 R ->> -endobj - -303 0 obj -<< - /Type /StructElem - /S /Link - /P 302 0 R - /K [72 << - /Type /OBJR - /Pg 5221 0 R - /Obj 5211 0 R - >>] - /Pg 5221 0 R ->> -endobj - -304 0 obj -<< - /Type /StructElem - /S /Em - /P 302 0 R - /K [69] - /Pg 5221 0 R ->> -endobj - -305 0 obj -<< - /Type /StructElem - /S /Lbl - /P 300 0 R - /K [306 0 R] ->> -endobj - -306 0 obj -<< - /Type /StructElem - /S /Link - /P 305 0 R - /K [66 << - /Type /OBJR - /Pg 5221 0 R - /Obj 5210 0 R - >>] - /Pg 5221 0 R ->> -endobj - -307 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [312 0 R 308 0 R] ->> -endobj - -308 0 obj -<< - /Type /StructElem - /S /LBody - /P 307 0 R - /K [309 0 R] ->> -endobj - -309 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 308 0 R - /K [58 59 60 311 0 R 62 310 0 R 65] - /Pg 5221 0 R ->> -endobj - -310 0 obj -<< - /Type /StructElem - /S /Link - /P 309 0 R - /K [63 << - /Type /OBJR - /Pg 5221 0 R - /Obj 5208 0 R - >> 64 << - /Type /OBJR - /Pg 5221 0 R - /Obj 5209 0 R - >>] - /Pg 5221 0 R ->> -endobj - -311 0 obj -<< - /Type /StructElem - /S /Em - /P 309 0 R - /K [61] - /Pg 5221 0 R ->> -endobj - -312 0 obj -<< - /Type /StructElem - /S /Lbl - /P 307 0 R - /K [313 0 R] ->> -endobj - -313 0 obj -<< - /Type /StructElem - /S /Link - /P 312 0 R - /K [57 << - /Type /OBJR - /Pg 5221 0 R - /Obj 5207 0 R - >>] - /Pg 5221 0 R ->> -endobj - -314 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [319 0 R 315 0 R] ->> -endobj - -315 0 obj -<< - /Type /StructElem - /S /LBody - /P 314 0 R - /K [316 0 R] ->> -endobj - -316 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 315 0 R - /K [51 52 318 0 R 54 317 0 R 56] - /Pg 5221 0 R ->> -endobj - -317 0 obj -<< - /Type /StructElem - /S /Link - /P 316 0 R - /K [55 << - /Type /OBJR - /Pg 5221 0 R - /Obj 5206 0 R - >>] - /Pg 5221 0 R ->> -endobj - -318 0 obj -<< - /Type /StructElem - /S /Em - /P 316 0 R - /K [53] - /Pg 5221 0 R ->> -endobj - -319 0 obj -<< - /Type /StructElem - /S /Lbl - /P 314 0 R - /K [320 0 R] ->> -endobj - -320 0 obj -<< - /Type /StructElem - /S /Link - /P 319 0 R - /K [50 << - /Type /OBJR - /Pg 5221 0 R - /Obj 5205 0 R - >>] - /Pg 5221 0 R ->> -endobj - -321 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [326 0 R 322 0 R] ->> -endobj - -322 0 obj -<< - /Type /StructElem - /S /LBody - /P 321 0 R - /K [323 0 R] ->> -endobj - -323 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 322 0 R - /K [44 45 325 0 R 47 324 0 R 49] - /Pg 5221 0 R ->> -endobj - -324 0 obj -<< - /Type /StructElem - /S /Link - /P 323 0 R - /K [48 << - /Type /OBJR - /Pg 5221 0 R - /Obj 5204 0 R - >>] - /Pg 5221 0 R ->> -endobj - -325 0 obj -<< - /Type /StructElem - /S /Em - /P 323 0 R - /K [46] - /Pg 5221 0 R ->> -endobj - -326 0 obj -<< - /Type /StructElem - /S /Lbl - /P 321 0 R - /K [327 0 R] ->> -endobj - -327 0 obj -<< - /Type /StructElem - /S /Link - /P 326 0 R - /K [43 << - /Type /OBJR - /Pg 5221 0 R - /Obj 5203 0 R - >>] - /Pg 5221 0 R ->> -endobj - -328 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [333 0 R 329 0 R] ->> -endobj - -329 0 obj -<< - /Type /StructElem - /S /LBody - /P 328 0 R - /K [330 0 R] ->> -endobj - -330 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 329 0 R - /K [36 332 0 R 39 40 331 0 R 42] - /Pg 5221 0 R ->> -endobj - -331 0 obj -<< - /Type /StructElem - /S /Link - /P 330 0 R - /K [41 << - /Type /OBJR - /Pg 5221 0 R - /Obj 5202 0 R - >>] - /Pg 5221 0 R ->> -endobj - -332 0 obj -<< - /Type /StructElem - /S /Em - /P 330 0 R - /K [37 38] - /Pg 5221 0 R ->> -endobj - -333 0 obj -<< - /Type /StructElem - /S /Lbl - /P 328 0 R - /K [334 0 R] ->> -endobj - -334 0 obj -<< - /Type /StructElem - /S /Link - /P 333 0 R - /K [35 << - /Type /OBJR - /Pg 5221 0 R - /Obj 5201 0 R - >>] - /Pg 5221 0 R ->> -endobj - -335 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [339 0 R 336 0 R] ->> -endobj - -336 0 obj -<< - /Type /StructElem - /S /LBody - /P 335 0 R - /K [337 0 R] ->> -endobj - -337 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 336 0 R - /K [31 32 33 338 0 R] - /Pg 5221 0 R ->> -endobj - -338 0 obj -<< - /Type /StructElem - /S /Link - /P 337 0 R - /K [34 << - /Type /OBJR - /Pg 5221 0 R - /Obj 5200 0 R - >>] - /Pg 5221 0 R ->> -endobj - -339 0 obj -<< - /Type /StructElem - /S /Lbl - /P 335 0 R - /K [340 0 R] ->> -endobj - -340 0 obj -<< - /Type /StructElem - /S /Link - /P 339 0 R - /K [30 << - /Type /OBJR - /Pg 5221 0 R - /Obj 5199 0 R - >>] - /Pg 5221 0 R ->> -endobj - -341 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [346 0 R 342 0 R] ->> -endobj - -342 0 obj -<< - /Type /StructElem - /S /LBody - /P 341 0 R - /K [343 0 R] ->> -endobj - -343 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 342 0 R - /K [23 24 345 0 R 27 344 0 R 29] - /Pg 5221 0 R ->> -endobj - -344 0 obj -<< - /Type /StructElem - /S /Link - /P 343 0 R - /K [28 << - /Type /OBJR - /Pg 5221 0 R - /Obj 5198 0 R - >>] - /Pg 5221 0 R ->> -endobj - -345 0 obj -<< - /Type /StructElem - /S /Em - /P 343 0 R - /K [25 26] - /Pg 5221 0 R ->> -endobj - -346 0 obj -<< - /Type /StructElem - /S /Lbl - /P 341 0 R - /K [347 0 R] ->> -endobj - -347 0 obj -<< - /Type /StructElem - /S /Link - /P 346 0 R - /K [22 << - /Type /OBJR - /Pg 5221 0 R - /Obj 5197 0 R - >>] - /Pg 5221 0 R ->> -endobj - -348 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [353 0 R 349 0 R] ->> -endobj - -349 0 obj -<< - /Type /StructElem - /S /LBody - /P 348 0 R - /K [350 0 R] ->> -endobj - -350 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 349 0 R - /K [15 16 352 0 R 18 19 351 0 R 21] - /Pg 5221 0 R ->> -endobj - -351 0 obj -<< - /Type /StructElem - /S /Link - /P 350 0 R - /K [20 << - /Type /OBJR - /Pg 5221 0 R - /Obj 5196 0 R - >>] - /Pg 5221 0 R ->> -endobj - -352 0 obj -<< - /Type /StructElem - /S /Em - /P 350 0 R - /K [17] - /Pg 5221 0 R ->> -endobj - -353 0 obj -<< - /Type /StructElem - /S /Lbl - /P 348 0 R - /K [354 0 R] ->> -endobj - -354 0 obj -<< - /Type /StructElem - /S /Link - /P 353 0 R - /K [14 << - /Type /OBJR - /Pg 5221 0 R - /Obj 5195 0 R - >>] - /Pg 5221 0 R ->> -endobj - -355 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [360 0 R 356 0 R] ->> -endobj - -356 0 obj -<< - /Type /StructElem - /S /LBody - /P 355 0 R - /K [357 0 R] ->> -endobj - -357 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 356 0 R - /K [8 359 0 R 10 11 358 0 R 13] - /Pg 5221 0 R ->> -endobj - -358 0 obj -<< - /Type /StructElem - /S /Link - /P 357 0 R - /K [12 << - /Type /OBJR - /Pg 5221 0 R - /Obj 5194 0 R - >>] - /Pg 5221 0 R ->> -endobj - -359 0 obj -<< - /Type /StructElem - /S /Em - /P 357 0 R - /K [9] - /Pg 5221 0 R ->> -endobj - -360 0 obj -<< - /Type /StructElem - /S /Lbl - /P 355 0 R - /K [361 0 R] ->> -endobj - -361 0 obj -<< - /Type /StructElem - /S /Link - /P 360 0 R - /K [7 << - /Type /OBJR - /Pg 5221 0 R - /Obj 5193 0 R - >>] - /Pg 5221 0 R ->> -endobj - -362 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [367 0 R 363 0 R] ->> -endobj - -363 0 obj -<< - /Type /StructElem - /S /LBody - /P 362 0 R - /K [364 0 R] ->> -endobj - -364 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 363 0 R - /K [1 366 0 R 3 4 365 0 R 6] - /Pg 5221 0 R ->> -endobj - -365 0 obj -<< - /Type /StructElem - /S /Link - /P 364 0 R - /K [5 << - /Type /OBJR - /Pg 5221 0 R - /Obj 5192 0 R - >>] - /Pg 5221 0 R ->> -endobj - -366 0 obj -<< - /Type /StructElem - /S /Em - /P 364 0 R - /K [2] - /Pg 5221 0 R ->> -endobj - -367 0 obj -<< - /Type /StructElem - /S /Lbl - /P 362 0 R - /K [368 0 R] ->> -endobj - -368 0 obj -<< - /Type /StructElem - /S /Link - /P 367 0 R - /K [0 << - /Type /OBJR - /Pg 5221 0 R - /Obj 5191 0 R - >>] - /Pg 5221 0 R ->> -endobj - -369 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [374 0 R 370 0 R] ->> -endobj - -370 0 obj -<< - /Type /StructElem - /S /LBody - /P 369 0 R - /K [371 0 R] ->> -endobj - -371 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 370 0 R - /K [101 373 0 R 104 105 372 0 R 107] - /Pg 5189 0 R ->> -endobj - -372 0 obj -<< - /Type /StructElem - /S /Link - /P 371 0 R - /K [106 << - /Type /OBJR - /Pg 5189 0 R - /Obj 5188 0 R - >>] - /Pg 5189 0 R ->> -endobj - -373 0 obj -<< - /Type /StructElem - /S /Em - /P 371 0 R - /K [102 103] - /Pg 5189 0 R ->> -endobj - -374 0 obj -<< - /Type /StructElem - /S /Lbl - /P 369 0 R - /K [375 0 R] ->> -endobj - -375 0 obj -<< - /Type /StructElem - /S /Link - /P 374 0 R - /K [100 << - /Type /OBJR - /Pg 5189 0 R - /Obj 5187 0 R - >>] - /Pg 5189 0 R ->> -endobj - -376 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [381 0 R 377 0 R] ->> -endobj - -377 0 obj -<< - /Type /StructElem - /S /LBody - /P 376 0 R - /K [378 0 R] ->> -endobj - -378 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 377 0 R - /K [93 94 380 0 R 96 97 379 0 R 99] - /Pg 5189 0 R ->> -endobj - -379 0 obj -<< - /Type /StructElem - /S /Link - /P 378 0 R - /K [98 << - /Type /OBJR - /Pg 5189 0 R - /Obj 5186 0 R - >>] - /Pg 5189 0 R ->> -endobj - -380 0 obj -<< - /Type /StructElem - /S /Em - /P 378 0 R - /K [95] - /Pg 5189 0 R ->> -endobj - -381 0 obj -<< - /Type /StructElem - /S /Lbl - /P 376 0 R - /K [382 0 R] ->> -endobj - -382 0 obj -<< - /Type /StructElem - /S /Link - /P 381 0 R - /K [92 << - /Type /OBJR - /Pg 5189 0 R - /Obj 5185 0 R - >>] - /Pg 5189 0 R ->> -endobj - -383 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [388 0 R 384 0 R] ->> -endobj - -384 0 obj -<< - /Type /StructElem - /S /LBody - /P 383 0 R - /K [385 0 R] ->> -endobj - -385 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 384 0 R - /K [84 85 387 0 R 88 89 386 0 R 91] - /Pg 5189 0 R ->> -endobj - -386 0 obj -<< - /Type /StructElem - /S /Link - /P 385 0 R - /K [90 << - /Type /OBJR - /Pg 5189 0 R - /Obj 5184 0 R - >>] - /Pg 5189 0 R ->> -endobj - -387 0 obj -<< - /Type /StructElem - /S /Em - /P 385 0 R - /K [86 87] - /Pg 5189 0 R ->> -endobj - -388 0 obj -<< - /Type /StructElem - /S /Lbl - /P 383 0 R - /K [389 0 R] ->> -endobj - -389 0 obj -<< - /Type /StructElem - /S /Link - /P 388 0 R - /K [83 << - /Type /OBJR - /Pg 5189 0 R - /Obj 5183 0 R - >>] - /Pg 5189 0 R ->> -endobj - -390 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [395 0 R 391 0 R] ->> -endobj - -391 0 obj -<< - /Type /StructElem - /S /LBody - /P 390 0 R - /K [392 0 R] ->> -endobj - -392 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 391 0 R - /K [76 77 394 0 R 79 80 393 0 R 82] - /Pg 5189 0 R ->> -endobj - -393 0 obj -<< - /Type /StructElem - /S /Link - /P 392 0 R - /K [81 << - /Type /OBJR - /Pg 5189 0 R - /Obj 5182 0 R - >>] - /Pg 5189 0 R ->> -endobj - -394 0 obj -<< - /Type /StructElem - /S /Em - /P 392 0 R - /K [78] - /Pg 5189 0 R ->> -endobj - -395 0 obj -<< - /Type /StructElem - /S /Lbl - /P 390 0 R - /K [396 0 R] ->> -endobj - -396 0 obj -<< - /Type /StructElem - /S /Link - /P 395 0 R - /K [75 << - /Type /OBJR - /Pg 5189 0 R - /Obj 5181 0 R - >>] - /Pg 5189 0 R ->> -endobj - -397 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [402 0 R 398 0 R] ->> -endobj - -398 0 obj -<< - /Type /StructElem - /S /LBody - /P 397 0 R - /K [399 0 R] ->> -endobj - -399 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 398 0 R - /K [69 401 0 R 72 400 0 R 74] - /Pg 5189 0 R ->> -endobj - -400 0 obj -<< - /Type /StructElem - /S /Link - /P 399 0 R - /K [73 << - /Type /OBJR - /Pg 5189 0 R - /Obj 5180 0 R - >>] - /Pg 5189 0 R ->> -endobj - -401 0 obj -<< - /Type /StructElem - /S /Em - /P 399 0 R - /K [70 71] - /Pg 5189 0 R ->> -endobj - -402 0 obj -<< - /Type /StructElem - /S /Lbl - /P 397 0 R - /K [403 0 R] ->> -endobj - -403 0 obj -<< - /Type /StructElem - /S /Link - /P 402 0 R - /K [68 << - /Type /OBJR - /Pg 5189 0 R - /Obj 5179 0 R - >>] - /Pg 5189 0 R ->> -endobj - -404 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [409 0 R 405 0 R] ->> -endobj - -405 0 obj -<< - /Type /StructElem - /S /LBody - /P 404 0 R - /K [406 0 R] ->> -endobj - -406 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 405 0 R - /K [61 62 408 0 R 64 407 0 R 67] - /Pg 5189 0 R ->> -endobj - -407 0 obj -<< - /Type /StructElem - /S /Link - /P 406 0 R - /K [65 << - /Type /OBJR - /Pg 5189 0 R - /Obj 5177 0 R - >> 66 << - /Type /OBJR - /Pg 5189 0 R - /Obj 5178 0 R - >>] - /Pg 5189 0 R ->> -endobj - -408 0 obj -<< - /Type /StructElem - /S /Em - /P 406 0 R - /K [63] - /Pg 5189 0 R ->> -endobj - -409 0 obj -<< - /Type /StructElem - /S /Lbl - /P 404 0 R - /K [410 0 R] ->> -endobj - -410 0 obj -<< - /Type /StructElem - /S /Link - /P 409 0 R - /K [60 << - /Type /OBJR - /Pg 5189 0 R - /Obj 5176 0 R - >>] - /Pg 5189 0 R ->> -endobj - -411 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [416 0 R 412 0 R] ->> -endobj - -412 0 obj -<< - /Type /StructElem - /S /LBody - /P 411 0 R - /K [413 0 R] ->> -endobj - -413 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 412 0 R - /K [51 52 415 0 R 57 414 0 R 59] - /Pg 5189 0 R ->> -endobj - -414 0 obj -<< - /Type /StructElem - /S /Link - /P 413 0 R - /K [58 << - /Type /OBJR - /Pg 5189 0 R - /Obj 5175 0 R - >>] - /Pg 5189 0 R ->> -endobj - -415 0 obj -<< - /Type /StructElem - /S /Em - /P 413 0 R - /K [53 54 55 56] - /Pg 5189 0 R ->> -endobj - -416 0 obj -<< - /Type /StructElem - /S /Lbl - /P 411 0 R - /K [417 0 R] ->> -endobj - -417 0 obj -<< - /Type /StructElem - /S /Link - /P 416 0 R - /K [50 << - /Type /OBJR - /Pg 5189 0 R - /Obj 5174 0 R - >>] - /Pg 5189 0 R ->> -endobj - -418 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [423 0 R 419 0 R] ->> -endobj - -419 0 obj -<< - /Type /StructElem - /S /LBody - /P 418 0 R - /K [420 0 R] ->> -endobj - -420 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 419 0 R - /K [43 422 0 R 46 47 421 0 R 49] - /Pg 5189 0 R ->> -endobj - -421 0 obj -<< - /Type /StructElem - /S /Link - /P 420 0 R - /K [48 << - /Type /OBJR - /Pg 5189 0 R - /Obj 5173 0 R - >>] - /Pg 5189 0 R ->> -endobj - -422 0 obj -<< - /Type /StructElem - /S /Em - /P 420 0 R - /K [44 45] - /Pg 5189 0 R ->> -endobj - -423 0 obj -<< - /Type /StructElem - /S /Lbl - /P 418 0 R - /K [424 0 R] ->> -endobj - -424 0 obj -<< - /Type /StructElem - /S /Link - /P 423 0 R - /K [42 << - /Type /OBJR - /Pg 5189 0 R - /Obj 5172 0 R - >>] - /Pg 5189 0 R ->> -endobj - -425 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [429 0 R 426 0 R] ->> -endobj - -426 0 obj -<< - /Type /StructElem - /S /LBody - /P 425 0 R - /K [427 0 R] ->> -endobj - -427 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 426 0 R - /K [39 428 0 R] - /Pg 5189 0 R ->> -endobj - -428 0 obj -<< - /Type /StructElem - /S /Link - /P 427 0 R - /K [40 << - /Type /OBJR - /Pg 5189 0 R - /Obj 5170 0 R - >> 41 << - /Type /OBJR - /Pg 5189 0 R - /Obj 5171 0 R - >>] - /Pg 5189 0 R ->> -endobj - -429 0 obj -<< - /Type /StructElem - /S /Lbl - /P 425 0 R - /K [430 0 R] ->> -endobj - -430 0 obj -<< - /Type /StructElem - /S /Link - /P 429 0 R - /K [38 << - /Type /OBJR - /Pg 5189 0 R - /Obj 5169 0 R - >>] - /Pg 5189 0 R ->> -endobj - -431 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [436 0 R 432 0 R] ->> -endobj - -432 0 obj -<< - /Type /StructElem - /S /LBody - /P 431 0 R - /K [433 0 R] ->> -endobj - -433 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 432 0 R - /K [31 32 435 0 R 34 35 434 0 R 37] - /Pg 5189 0 R ->> -endobj - -434 0 obj -<< - /Type /StructElem - /S /Link - /P 433 0 R - /K [36 << - /Type /OBJR - /Pg 5189 0 R - /Obj 5168 0 R - >>] - /Pg 5189 0 R ->> -endobj - -435 0 obj -<< - /Type /StructElem - /S /Em - /P 433 0 R - /K [33] - /Pg 5189 0 R ->> -endobj - -436 0 obj -<< - /Type /StructElem - /S /Lbl - /P 431 0 R - /K [437 0 R] ->> -endobj - -437 0 obj -<< - /Type /StructElem - /S /Link - /P 436 0 R - /K [30 << - /Type /OBJR - /Pg 5189 0 R - /Obj 5167 0 R - >>] - /Pg 5189 0 R ->> -endobj - -438 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [442 0 R 439 0 R] ->> -endobj - -439 0 obj -<< - /Type /StructElem - /S /LBody - /P 438 0 R - /K [440 0 R] ->> -endobj - -440 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 439 0 R - /K [27 441 0 R] - /Pg 5189 0 R ->> -endobj - -441 0 obj -<< - /Type /StructElem - /S /Link - /P 440 0 R - /K [28 << - /Type /OBJR - /Pg 5189 0 R - /Obj 5165 0 R - >> 29 << - /Type /OBJR - /Pg 5189 0 R - /Obj 5166 0 R - >>] - /Pg 5189 0 R ->> -endobj - -442 0 obj -<< - /Type /StructElem - /S /Lbl - /P 438 0 R - /K [443 0 R] ->> -endobj - -443 0 obj -<< - /Type /StructElem - /S /Link - /P 442 0 R - /K [26 << - /Type /OBJR - /Pg 5189 0 R - /Obj 5164 0 R - >>] - /Pg 5189 0 R ->> -endobj - -444 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [449 0 R 445 0 R] ->> -endobj - -445 0 obj -<< - /Type /StructElem - /S /LBody - /P 444 0 R - /K [446 0 R] ->> -endobj - -446 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 445 0 R - /K [20 448 0 R 23 447 0 R 25] - /Pg 5189 0 R ->> -endobj - -447 0 obj -<< - /Type /StructElem - /S /Link - /P 446 0 R - /K [24 << - /Type /OBJR - /Pg 5189 0 R - /Obj 5163 0 R - >>] - /Pg 5189 0 R ->> -endobj - -448 0 obj -<< - /Type /StructElem - /S /Em - /P 446 0 R - /K [21 22] - /Pg 5189 0 R ->> -endobj - -449 0 obj -<< - /Type /StructElem - /S /Lbl - /P 444 0 R - /K [450 0 R] ->> -endobj - -450 0 obj -<< - /Type /StructElem - /S /Link - /P 449 0 R - /K [19 << - /Type /OBJR - /Pg 5189 0 R - /Obj 5162 0 R - >>] - /Pg 5189 0 R ->> -endobj - -451 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [455 0 R 452 0 R] ->> -endobj - -452 0 obj -<< - /Type /StructElem - /S /LBody - /P 451 0 R - /K [453 0 R] ->> -endobj - -453 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 452 0 R - /K [15 454 0 R 18] - /Pg 5189 0 R ->> -endobj - -454 0 obj -<< - /Type /StructElem - /S /Em - /P 453 0 R - /K [16 17] - /Pg 5189 0 R ->> -endobj - -455 0 obj -<< - /Type /StructElem - /S /Lbl - /P 451 0 R - /K [456 0 R] ->> -endobj - -456 0 obj -<< - /Type /StructElem - /S /Link - /P 455 0 R - /K [14 << - /Type /OBJR - /Pg 5189 0 R - /Obj 5161 0 R - >>] - /Pg 5189 0 R ->> -endobj - -457 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [462 0 R 458 0 R] ->> -endobj - -458 0 obj -<< - /Type /StructElem - /S /LBody - /P 457 0 R - /K [459 0 R] ->> -endobj - -459 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 458 0 R - /K [8 461 0 R 11 460 0 R 13] - /Pg 5189 0 R ->> -endobj - -460 0 obj -<< - /Type /StructElem - /S /Link - /P 459 0 R - /K [12 << - /Type /OBJR - /Pg 5189 0 R - /Obj 5160 0 R - >>] - /Pg 5189 0 R ->> -endobj - -461 0 obj -<< - /Type /StructElem - /S /Em - /P 459 0 R - /K [9 10] - /Pg 5189 0 R ->> -endobj - -462 0 obj -<< - /Type /StructElem - /S /Lbl - /P 457 0 R - /K [463 0 R] ->> -endobj - -463 0 obj -<< - /Type /StructElem - /S /Link - /P 462 0 R - /K [7 << - /Type /OBJR - /Pg 5189 0 R - /Obj 5159 0 R - >>] - /Pg 5189 0 R ->> -endobj - -464 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [469 0 R 465 0 R] ->> -endobj - -465 0 obj -<< - /Type /StructElem - /S /LBody - /P 464 0 R - /K [466 0 R] ->> -endobj - -466 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 465 0 R - /K [1 468 0 R 4 467 0 R 6] - /Pg 5189 0 R ->> -endobj - -467 0 obj -<< - /Type /StructElem - /S /Link - /P 466 0 R - /K [5 << - /Type /OBJR - /Pg 5189 0 R - /Obj 5158 0 R - >>] - /Pg 5189 0 R ->> -endobj - -468 0 obj -<< - /Type /StructElem - /S /Em - /P 466 0 R - /K [2 3] - /Pg 5189 0 R ->> -endobj - -469 0 obj -<< - /Type /StructElem - /S /Lbl - /P 464 0 R - /K [470 0 R] ->> -endobj - -470 0 obj -<< - /Type /StructElem - /S /Link - /P 469 0 R - /K [0 << - /Type /OBJR - /Pg 5189 0 R - /Obj 5157 0 R - >>] - /Pg 5189 0 R ->> -endobj - -471 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [475 0 R 472 0 R] ->> -endobj - -472 0 obj -<< - /Type /StructElem - /S /LBody - /P 471 0 R - /K [473 0 R] ->> -endobj - -473 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 472 0 R - /K [95 96 474 0 R 99] - /Pg 5155 0 R ->> -endobj - -474 0 obj -<< - /Type /StructElem - /S /Em - /P 473 0 R - /K [97 98] - /Pg 5155 0 R ->> -endobj - -475 0 obj -<< - /Type /StructElem - /S /Lbl - /P 471 0 R - /K [476 0 R] ->> -endobj - -476 0 obj -<< - /Type /StructElem - /S /Link - /P 475 0 R - /K [94 << - /Type /OBJR - /Pg 5155 0 R - /Obj 5154 0 R - >>] - /Pg 5155 0 R ->> -endobj - -477 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [482 0 R 478 0 R] ->> -endobj - -478 0 obj -<< - /Type /StructElem - /S /LBody - /P 477 0 R - /K [479 0 R] ->> -endobj - -479 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 478 0 R - /K [87 88 481 0 R 90 91 480 0 R 93] - /Pg 5155 0 R ->> -endobj - -480 0 obj -<< - /Type /StructElem - /S /Link - /P 479 0 R - /K [92 << - /Type /OBJR - /Pg 5155 0 R - /Obj 5153 0 R - >>] - /Pg 5155 0 R ->> -endobj - -481 0 obj -<< - /Type /StructElem - /S /Em - /P 479 0 R - /K [89] - /Pg 5155 0 R ->> -endobj - -482 0 obj -<< - /Type /StructElem - /S /Lbl - /P 477 0 R - /K [483 0 R] ->> -endobj - -483 0 obj -<< - /Type /StructElem - /S /Link - /P 482 0 R - /K [86 << - /Type /OBJR - /Pg 5155 0 R - /Obj 5152 0 R - >>] - /Pg 5155 0 R ->> -endobj - -484 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [488 0 R 485 0 R] ->> -endobj - -485 0 obj -<< - /Type /StructElem - /S /LBody - /P 484 0 R - /K [486 0 R] ->> -endobj - -486 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 485 0 R - /K [81 82 83 487 0 R 85] - /Pg 5155 0 R ->> -endobj - -487 0 obj -<< - /Type /StructElem - /S /Em - /P 486 0 R - /K [84] - /Pg 5155 0 R ->> -endobj - -488 0 obj -<< - /Type /StructElem - /S /Lbl - /P 484 0 R - /K [489 0 R] ->> -endobj - -489 0 obj -<< - /Type /StructElem - /S /Link - /P 488 0 R - /K [80 << - /Type /OBJR - /Pg 5155 0 R - /Obj 5151 0 R - >>] - /Pg 5155 0 R ->> -endobj - -490 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [494 0 R 491 0 R] ->> -endobj - -491 0 obj -<< - /Type /StructElem - /S /LBody - /P 490 0 R - /K [492 0 R] ->> -endobj - -492 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 491 0 R - /K [76 493 0 R 79] - /Pg 5155 0 R ->> -endobj - -493 0 obj -<< - /Type /StructElem - /S /Em - /P 492 0 R - /K [77 78] - /Pg 5155 0 R ->> -endobj - -494 0 obj -<< - /Type /StructElem - /S /Lbl - /P 490 0 R - /K [495 0 R] ->> -endobj - -495 0 obj -<< - /Type /StructElem - /S /Link - /P 494 0 R - /K [75 << - /Type /OBJR - /Pg 5155 0 R - /Obj 5150 0 R - >>] - /Pg 5155 0 R ->> -endobj - -496 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [500 0 R 497 0 R] ->> -endobj - -497 0 obj -<< - /Type /StructElem - /S /LBody - /P 496 0 R - /K [498 0 R] ->> -endobj - -498 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 497 0 R - /K [71 72 499 0 R 74] - /Pg 5155 0 R ->> -endobj - -499 0 obj -<< - /Type /StructElem - /S /Em - /P 498 0 R - /K [73] - /Pg 5155 0 R ->> -endobj - -500 0 obj -<< - /Type /StructElem - /S /Lbl - /P 496 0 R - /K [501 0 R] ->> -endobj - -501 0 obj -<< - /Type /StructElem - /S /Link - /P 500 0 R - /K [70 << - /Type /OBJR - /Pg 5155 0 R - /Obj 5149 0 R - >>] - /Pg 5155 0 R ->> -endobj - -502 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [507 0 R 503 0 R] ->> -endobj - -503 0 obj -<< - /Type /StructElem - /S /LBody - /P 502 0 R - /K [504 0 R] ->> -endobj - -504 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 503 0 R - /K [63 64 506 0 R 67 505 0 R 69] - /Pg 5155 0 R ->> -endobj - -505 0 obj -<< - /Type /StructElem - /S /Link - /P 504 0 R - /K [68 << - /Type /OBJR - /Pg 5155 0 R - /Obj 5148 0 R - >>] - /Pg 5155 0 R ->> -endobj - -506 0 obj -<< - /Type /StructElem - /S /Em - /P 504 0 R - /K [65 66] - /Pg 5155 0 R ->> -endobj - -507 0 obj -<< - /Type /StructElem - /S /Lbl - /P 502 0 R - /K [508 0 R] ->> -endobj - -508 0 obj -<< - /Type /StructElem - /S /Link - /P 507 0 R - /K [62 << - /Type /OBJR - /Pg 5155 0 R - /Obj 5147 0 R - >>] - /Pg 5155 0 R ->> -endobj - -509 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [514 0 R 510 0 R] ->> -endobj - -510 0 obj -<< - /Type /StructElem - /S /LBody - /P 509 0 R - /K [511 0 R] ->> -endobj - -511 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 510 0 R - /K [55 56 513 0 R 59 512 0 R 61] - /Pg 5155 0 R ->> -endobj - -512 0 obj -<< - /Type /StructElem - /S /Link - /P 511 0 R - /K [60 << - /Type /OBJR - /Pg 5155 0 R - /Obj 5146 0 R - >>] - /Pg 5155 0 R ->> -endobj - -513 0 obj -<< - /Type /StructElem - /S /Em - /P 511 0 R - /K [57 58] - /Pg 5155 0 R ->> -endobj - -514 0 obj -<< - /Type /StructElem - /S /Lbl - /P 509 0 R - /K [515 0 R] ->> -endobj - -515 0 obj -<< - /Type /StructElem - /S /Link - /P 514 0 R - /K [54 << - /Type /OBJR - /Pg 5155 0 R - /Obj 5145 0 R - >>] - /Pg 5155 0 R ->> -endobj - -516 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [521 0 R 517 0 R] ->> -endobj - -517 0 obj -<< - /Type /StructElem - /S /LBody - /P 516 0 R - /K [518 0 R] ->> -endobj - -518 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 517 0 R - /K [46 47 48 520 0 R 50 51 519 0 R 53] - /Pg 5155 0 R ->> -endobj - -519 0 obj -<< - /Type /StructElem - /S /Link - /P 518 0 R - /K [52 << - /Type /OBJR - /Pg 5155 0 R - /Obj 5144 0 R - >>] - /Pg 5155 0 R ->> -endobj - -520 0 obj -<< - /Type /StructElem - /S /Em - /P 518 0 R - /K [49] - /Pg 5155 0 R ->> -endobj - -521 0 obj -<< - /Type /StructElem - /S /Lbl - /P 516 0 R - /K [522 0 R] ->> -endobj - -522 0 obj -<< - /Type /StructElem - /S /Link - /P 521 0 R - /K [45 << - /Type /OBJR - /Pg 5155 0 R - /Obj 5143 0 R - >>] - /Pg 5155 0 R ->> -endobj - -523 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [527 0 R 524 0 R] ->> -endobj - -524 0 obj -<< - /Type /StructElem - /S /LBody - /P 523 0 R - /K [525 0 R] ->> -endobj - -525 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 524 0 R - /K [42 526 0 R 44] - /Pg 5155 0 R ->> -endobj - -526 0 obj -<< - /Type /StructElem - /S /Em - /P 525 0 R - /K [43] - /Pg 5155 0 R ->> -endobj - -527 0 obj -<< - /Type /StructElem - /S /Lbl - /P 523 0 R - /K [528 0 R] ->> -endobj - -528 0 obj -<< - /Type /StructElem - /S /Link - /P 527 0 R - /K [41 << - /Type /OBJR - /Pg 5155 0 R - /Obj 5142 0 R - >>] - /Pg 5155 0 R ->> -endobj - -529 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [533 0 R 530 0 R] ->> -endobj - -530 0 obj -<< - /Type /StructElem - /S /LBody - /P 529 0 R - /K [531 0 R] ->> -endobj - -531 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 530 0 R - /K [39 532 0 R] - /Pg 5155 0 R ->> -endobj - -532 0 obj -<< - /Type /StructElem - /S /Link - /P 531 0 R - /K [40 << - /Type /OBJR - /Pg 5155 0 R - /Obj 5141 0 R - >>] - /Pg 5155 0 R ->> -endobj - -533 0 obj -<< - /Type /StructElem - /S /Lbl - /P 529 0 R - /K [534 0 R] ->> -endobj - -534 0 obj -<< - /Type /StructElem - /S /Link - /P 533 0 R - /K [38 << - /Type /OBJR - /Pg 5155 0 R - /Obj 5140 0 R - >>] - /Pg 5155 0 R ->> -endobj - -535 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [539 0 R 536 0 R] ->> -endobj - -536 0 obj -<< - /Type /StructElem - /S /LBody - /P 535 0 R - /K [537 0 R] ->> -endobj - -537 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 536 0 R - /K [35 538 0 R] - /Pg 5155 0 R ->> -endobj - -538 0 obj -<< - /Type /StructElem - /S /Link - /P 537 0 R - /K [36 << - /Type /OBJR - /Pg 5155 0 R - /Obj 5138 0 R - >> 37 << - /Type /OBJR - /Pg 5155 0 R - /Obj 5139 0 R - >>] - /Pg 5155 0 R ->> -endobj - -539 0 obj -<< - /Type /StructElem - /S /Lbl - /P 535 0 R - /K [540 0 R] ->> -endobj - -540 0 obj -<< - /Type /StructElem - /S /Link - /P 539 0 R - /K [34 << - /Type /OBJR - /Pg 5155 0 R - /Obj 5137 0 R - >>] - /Pg 5155 0 R ->> -endobj - -541 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [545 0 R 542 0 R] ->> -endobj - -542 0 obj -<< - /Type /StructElem - /S /LBody - /P 541 0 R - /K [543 0 R] ->> -endobj - -543 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 542 0 R - /K [28 544 0 R 32 33] - /Pg 5155 0 R ->> -endobj - -544 0 obj -<< - /Type /StructElem - /S /Em - /P 543 0 R - /K [29 30 31] - /Pg 5155 0 R ->> -endobj - -545 0 obj -<< - /Type /StructElem - /S /Lbl - /P 541 0 R - /K [546 0 R] ->> -endobj - -546 0 obj -<< - /Type /StructElem - /S /Link - /P 545 0 R - /K [27 << - /Type /OBJR - /Pg 5155 0 R - /Obj 5136 0 R - >>] - /Pg 5155 0 R ->> -endobj - -547 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [552 0 R 548 0 R] ->> -endobj - -548 0 obj -<< - /Type /StructElem - /S /LBody - /P 547 0 R - /K [549 0 R] ->> -endobj - -549 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 548 0 R - /K [19 20 551 0 R 23 24 550 0 R 26] - /Pg 5155 0 R ->> -endobj - -550 0 obj -<< - /Type /StructElem - /S /Link - /P 549 0 R - /K [25 << - /Type /OBJR - /Pg 5155 0 R - /Obj 5135 0 R - >>] - /Pg 5155 0 R ->> -endobj - -551 0 obj -<< - /Type /StructElem - /S /Em - /P 549 0 R - /K [21 22] - /Pg 5155 0 R ->> -endobj - -552 0 obj -<< - /Type /StructElem - /S /Lbl - /P 547 0 R - /K [553 0 R] ->> -endobj - -553 0 obj -<< - /Type /StructElem - /S /Link - /P 552 0 R - /K [18 << - /Type /OBJR - /Pg 5155 0 R - /Obj 5134 0 R - >>] - /Pg 5155 0 R ->> -endobj - -554 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [558 0 R 555 0 R] ->> -endobj - -555 0 obj -<< - /Type /StructElem - /S /LBody - /P 554 0 R - /K [556 0 R] ->> -endobj - -556 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 555 0 R - /K [14 15 16 557 0 R] - /Pg 5155 0 R ->> -endobj - -557 0 obj -<< - /Type /StructElem - /S /Link - /P 556 0 R - /K [17 << - /Type /OBJR - /Pg 5155 0 R - /Obj 5133 0 R - >>] - /Pg 5155 0 R ->> -endobj - -558 0 obj -<< - /Type /StructElem - /S /Lbl - /P 554 0 R - /K [559 0 R] ->> -endobj - -559 0 obj -<< - /Type /StructElem - /S /Link - /P 558 0 R - /K [13 << - /Type /OBJR - /Pg 5155 0 R - /Obj 5132 0 R - >>] - /Pg 5155 0 R ->> -endobj - -560 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [564 0 R 561 0 R] ->> -endobj - -561 0 obj -<< - /Type /StructElem - /S /LBody - /P 560 0 R - /K [562 0 R] ->> -endobj - -562 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 561 0 R - /K [8 563 0 R 12] - /Pg 5155 0 R ->> -endobj - -563 0 obj -<< - /Type /StructElem - /S /Em - /P 562 0 R - /K [9 10 11] - /Pg 5155 0 R ->> -endobj - -564 0 obj -<< - /Type /StructElem - /S /Lbl - /P 560 0 R - /K [565 0 R] ->> -endobj - -565 0 obj -<< - /Type /StructElem - /S /Link - /P 564 0 R - /K [7 << - /Type /OBJR - /Pg 5155 0 R - /Obj 5131 0 R - >>] - /Pg 5155 0 R ->> -endobj - -566 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [571 0 R 567 0 R] ->> -endobj - -567 0 obj -<< - /Type /StructElem - /S /LBody - /P 566 0 R - /K [568 0 R] ->> -endobj - -568 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 567 0 R - /K [1 570 0 R 4 569 0 R 6] - /Pg 5155 0 R ->> -endobj - -569 0 obj -<< - /Type /StructElem - /S /Link - /P 568 0 R - /K [5 << - /Type /OBJR - /Pg 5155 0 R - /Obj 5130 0 R - >>] - /Pg 5155 0 R ->> -endobj - -570 0 obj -<< - /Type /StructElem - /S /Em - /P 568 0 R - /K [2 3] - /Pg 5155 0 R ->> -endobj - -571 0 obj -<< - /Type /StructElem - /S /Lbl - /P 566 0 R - /K [572 0 R] ->> -endobj - -572 0 obj -<< - /Type /StructElem - /S /Link - /P 571 0 R - /K [0 << - /Type /OBJR - /Pg 5155 0 R - /Obj 5129 0 R - >>] - /Pg 5155 0 R ->> -endobj - -573 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [578 0 R 574 0 R] ->> -endobj - -574 0 obj -<< - /Type /StructElem - /S /LBody - /P 573 0 R - /K [575 0 R] ->> -endobj - -575 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 574 0 R - /K [105 577 0 R 108 576 0 R 110] - /Pg 5127 0 R ->> -endobj - -576 0 obj -<< - /Type /StructElem - /S /Link - /P 575 0 R - /K [109 << - /Type /OBJR - /Pg 5127 0 R - /Obj 5126 0 R - >>] - /Pg 5127 0 R ->> -endobj - -577 0 obj -<< - /Type /StructElem - /S /Em - /P 575 0 R - /K [106 107] - /Pg 5127 0 R ->> -endobj - -578 0 obj -<< - /Type /StructElem - /S /Lbl - /P 573 0 R - /K [579 0 R] ->> -endobj - -579 0 obj -<< - /Type /StructElem - /S /Link - /P 578 0 R - /K [104 << - /Type /OBJR - /Pg 5127 0 R - /Obj 5125 0 R - >>] - /Pg 5127 0 R ->> -endobj - -580 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [585 0 R 581 0 R] ->> -endobj - -581 0 obj -<< - /Type /StructElem - /S /LBody - /P 580 0 R - /K [582 0 R] ->> -endobj - -582 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 581 0 R - /K [98 584 0 R 100 101 583 0 R 103] - /Pg 5127 0 R ->> -endobj - -583 0 obj -<< - /Type /StructElem - /S /Link - /P 582 0 R - /K [102 << - /Type /OBJR - /Pg 5127 0 R - /Obj 5124 0 R - >>] - /Pg 5127 0 R ->> -endobj - -584 0 obj -<< - /Type /StructElem - /S /Em - /P 582 0 R - /K [99] - /Pg 5127 0 R ->> -endobj - -585 0 obj -<< - /Type /StructElem - /S /Lbl - /P 580 0 R - /K [586 0 R] ->> -endobj - -586 0 obj -<< - /Type /StructElem - /S /Link - /P 585 0 R - /K [97 << - /Type /OBJR - /Pg 5127 0 R - /Obj 5123 0 R - >>] - /Pg 5127 0 R ->> -endobj - -587 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [592 0 R 588 0 R] ->> -endobj - -588 0 obj -<< - /Type /StructElem - /S /LBody - /P 587 0 R - /K [589 0 R] ->> -endobj - -589 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 588 0 R - /K [90 591 0 R 93 94 590 0 R 96] - /Pg 5127 0 R ->> -endobj - -590 0 obj -<< - /Type /StructElem - /S /Link - /P 589 0 R - /K [95 << - /Type /OBJR - /Pg 5127 0 R - /Obj 5122 0 R - >>] - /Pg 5127 0 R ->> -endobj - -591 0 obj -<< - /Type /StructElem - /S /Em - /P 589 0 R - /K [91 92] - /Pg 5127 0 R ->> -endobj - -592 0 obj -<< - /Type /StructElem - /S /Lbl - /P 587 0 R - /K [593 0 R] ->> -endobj - -593 0 obj -<< - /Type /StructElem - /S /Link - /P 592 0 R - /K [89 << - /Type /OBJR - /Pg 5127 0 R - /Obj 5121 0 R - >>] - /Pg 5127 0 R ->> -endobj - -594 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [599 0 R 595 0 R] ->> -endobj - -595 0 obj -<< - /Type /StructElem - /S /LBody - /P 594 0 R - /K [596 0 R] ->> -endobj - -596 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 595 0 R - /K [83 84 598 0 R 86 597 0 R 88] - /Pg 5127 0 R ->> -endobj - -597 0 obj -<< - /Type /StructElem - /S /Link - /P 596 0 R - /K [87 << - /Type /OBJR - /Pg 5127 0 R - /Obj 5120 0 R - >>] - /Pg 5127 0 R ->> -endobj - -598 0 obj -<< - /Type /StructElem - /S /Em - /P 596 0 R - /K [85] - /Pg 5127 0 R ->> -endobj - -599 0 obj -<< - /Type /StructElem - /S /Lbl - /P 594 0 R - /K [600 0 R] ->> -endobj - -600 0 obj -<< - /Type /StructElem - /S /Link - /P 599 0 R - /K [82 << - /Type /OBJR - /Pg 5127 0 R - /Obj 5119 0 R - >>] - /Pg 5127 0 R ->> -endobj - -601 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [606 0 R 602 0 R] ->> -endobj - -602 0 obj -<< - /Type /StructElem - /S /LBody - /P 601 0 R - /K [603 0 R] ->> -endobj - -603 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 602 0 R - /K [75 76 605 0 R 79 604 0 R 81] - /Pg 5127 0 R ->> -endobj - -604 0 obj -<< - /Type /StructElem - /S /Link - /P 603 0 R - /K [80 << - /Type /OBJR - /Pg 5127 0 R - /Obj 5118 0 R - >>] - /Pg 5127 0 R ->> -endobj - -605 0 obj -<< - /Type /StructElem - /S /Em - /P 603 0 R - /K [77 78] - /Pg 5127 0 R ->> -endobj - -606 0 obj -<< - /Type /StructElem - /S /Lbl - /P 601 0 R - /K [607 0 R] ->> -endobj - -607 0 obj -<< - /Type /StructElem - /S /Link - /P 606 0 R - /K [74 << - /Type /OBJR - /Pg 5127 0 R - /Obj 5117 0 R - >>] - /Pg 5127 0 R ->> -endobj - -608 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [613 0 R 609 0 R] ->> -endobj - -609 0 obj -<< - /Type /StructElem - /S /LBody - /P 608 0 R - /K [610 0 R] ->> -endobj - -610 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 609 0 R - /K [67 612 0 R 71 611 0 R 73] - /Pg 5127 0 R ->> -endobj - -611 0 obj -<< - /Type /StructElem - /S /Link - /P 610 0 R - /K [72 << - /Type /OBJR - /Pg 5127 0 R - /Obj 5116 0 R - >>] - /Pg 5127 0 R ->> -endobj - -612 0 obj -<< - /Type /StructElem - /S /Em - /P 610 0 R - /K [68 69 70] - /Pg 5127 0 R ->> -endobj - -613 0 obj -<< - /Type /StructElem - /S /Lbl - /P 608 0 R - /K [614 0 R] ->> -endobj - -614 0 obj -<< - /Type /StructElem - /S /Link - /P 613 0 R - /K [66 << - /Type /OBJR - /Pg 5127 0 R - /Obj 5115 0 R - >>] - /Pg 5127 0 R ->> -endobj - -615 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [620 0 R 616 0 R] ->> -endobj - -616 0 obj -<< - /Type /StructElem - /S /LBody - /P 615 0 R - /K [617 0 R] ->> -endobj - -617 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 616 0 R - /K [58 59 619 0 R 62 63 618 0 R 65] - /Pg 5127 0 R ->> -endobj - -618 0 obj -<< - /Type /StructElem - /S /Link - /P 617 0 R - /K [64 << - /Type /OBJR - /Pg 5127 0 R - /Obj 5114 0 R - >>] - /Pg 5127 0 R ->> -endobj - -619 0 obj -<< - /Type /StructElem - /S /Em - /P 617 0 R - /K [60 61] - /Pg 5127 0 R ->> -endobj - -620 0 obj -<< - /Type /StructElem - /S /Lbl - /P 615 0 R - /K [621 0 R] ->> -endobj - -621 0 obj -<< - /Type /StructElem - /S /Link - /P 620 0 R - /K [57 << - /Type /OBJR - /Pg 5127 0 R - /Obj 5113 0 R - >>] - /Pg 5127 0 R ->> -endobj - -622 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [628 0 R 623 0 R] ->> -endobj - -623 0 obj -<< - /Type /StructElem - /S /LBody - /P 622 0 R - /K [624 0 R] ->> -endobj - -624 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 623 0 R - /K [49 627 0 R 51 626 0 R 54 625 0 R 56] - /Pg 5127 0 R ->> -endobj - -625 0 obj -<< - /Type /StructElem - /S /Link - /P 624 0 R - /K [55 << - /Type /OBJR - /Pg 5127 0 R - /Obj 5112 0 R - >>] - /Pg 5127 0 R ->> -endobj - -626 0 obj -<< - /Type /StructElem - /S /Em - /P 624 0 R - /K [52 53] - /Pg 5127 0 R ->> -endobj - -627 0 obj -<< - /Type /StructElem - /S /Em - /P 624 0 R - /K [50] - /Pg 5127 0 R ->> -endobj - -628 0 obj -<< - /Type /StructElem - /S /Lbl - /P 622 0 R - /K [629 0 R] ->> -endobj - -629 0 obj -<< - /Type /StructElem - /S /Link - /P 628 0 R - /K [48 << - /Type /OBJR - /Pg 5127 0 R - /Obj 5111 0 R - >>] - /Pg 5127 0 R ->> -endobj - -630 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [635 0 R 631 0 R] ->> -endobj - -631 0 obj -<< - /Type /StructElem - /S /LBody - /P 630 0 R - /K [632 0 R] ->> -endobj - -632 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 631 0 R - /K [42 634 0 R 45 633 0 R 47] - /Pg 5127 0 R ->> -endobj - -633 0 obj -<< - /Type /StructElem - /S /Link - /P 632 0 R - /K [46 << - /Type /OBJR - /Pg 5127 0 R - /Obj 5110 0 R - >>] - /Pg 5127 0 R ->> -endobj - -634 0 obj -<< - /Type /StructElem - /S /Em - /P 632 0 R - /K [43 44] - /Pg 5127 0 R ->> -endobj - -635 0 obj -<< - /Type /StructElem - /S /Lbl - /P 630 0 R - /K [636 0 R] ->> -endobj - -636 0 obj -<< - /Type /StructElem - /S /Link - /P 635 0 R - /K [41 << - /Type /OBJR - /Pg 5127 0 R - /Obj 5109 0 R - >>] - /Pg 5127 0 R ->> -endobj - -637 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [642 0 R 638 0 R] ->> -endobj - -638 0 obj -<< - /Type /StructElem - /S /LBody - /P 637 0 R - /K [639 0 R] ->> -endobj - -639 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 638 0 R - /K [34 641 0 R 37 38 640 0 R 40] - /Pg 5127 0 R ->> -endobj - -640 0 obj -<< - /Type /StructElem - /S /Link - /P 639 0 R - /K [39 << - /Type /OBJR - /Pg 5127 0 R - /Obj 5108 0 R - >>] - /Pg 5127 0 R ->> -endobj - -641 0 obj -<< - /Type /StructElem - /S /Em - /P 639 0 R - /K [35 36] - /Pg 5127 0 R ->> -endobj - -642 0 obj -<< - /Type /StructElem - /S /Lbl - /P 637 0 R - /K [643 0 R] ->> -endobj - -643 0 obj -<< - /Type /StructElem - /S /Link - /P 642 0 R - /K [33 << - /Type /OBJR - /Pg 5127 0 R - /Obj 5107 0 R - >>] - /Pg 5127 0 R ->> -endobj - -644 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [649 0 R 645 0 R] ->> -endobj - -645 0 obj -<< - /Type /StructElem - /S /LBody - /P 644 0 R - /K [646 0 R] ->> -endobj - -646 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 645 0 R - /K [25 648 0 R 29 647 0 R 32] - /Pg 5127 0 R ->> -endobj - -647 0 obj -<< - /Type /StructElem - /S /Link - /P 646 0 R - /K [30 << - /Type /OBJR - /Pg 5127 0 R - /Obj 5105 0 R - >> 31 << - /Type /OBJR - /Pg 5127 0 R - /Obj 5106 0 R - >>] - /Pg 5127 0 R ->> -endobj - -648 0 obj -<< - /Type /StructElem - /S /Em - /P 646 0 R - /K [26 27 28] - /Pg 5127 0 R ->> -endobj - -649 0 obj -<< - /Type /StructElem - /S /Lbl - /P 644 0 R - /K [650 0 R] ->> -endobj - -650 0 obj -<< - /Type /StructElem - /S /Link - /P 649 0 R - /K [24 << - /Type /OBJR - /Pg 5127 0 R - /Obj 5104 0 R - >>] - /Pg 5127 0 R ->> -endobj - -651 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [656 0 R 652 0 R] ->> -endobj - -652 0 obj -<< - /Type /StructElem - /S /LBody - /P 651 0 R - /K [653 0 R] ->> -endobj - -653 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 652 0 R - /K [18 655 0 R 20 654 0 R 23] - /Pg 5127 0 R ->> -endobj - -654 0 obj -<< - /Type /StructElem - /S /Link - /P 653 0 R - /K [21 << - /Type /OBJR - /Pg 5127 0 R - /Obj 5102 0 R - >> 22 << - /Type /OBJR - /Pg 5127 0 R - /Obj 5103 0 R - >>] - /Pg 5127 0 R ->> -endobj - -655 0 obj -<< - /Type /StructElem - /S /Em - /P 653 0 R - /K [19] - /Pg 5127 0 R ->> -endobj - -656 0 obj -<< - /Type /StructElem - /S /Lbl - /P 651 0 R - /K [657 0 R] ->> -endobj - -657 0 obj -<< - /Type /StructElem - /S /Link - /P 656 0 R - /K [17 << - /Type /OBJR - /Pg 5127 0 R - /Obj 5101 0 R - >>] - /Pg 5127 0 R ->> -endobj - -658 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [663 0 R 659 0 R] ->> -endobj - -659 0 obj -<< - /Type /StructElem - /S /LBody - /P 658 0 R - /K [660 0 R] ->> -endobj - -660 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 659 0 R - /K [10 662 0 R 13 14 661 0 R 16] - /Pg 5127 0 R ->> -endobj - -661 0 obj -<< - /Type /StructElem - /S /Link - /P 660 0 R - /K [15 << - /Type /OBJR - /Pg 5127 0 R - /Obj 5100 0 R - >>] - /Pg 5127 0 R ->> -endobj - -662 0 obj -<< - /Type /StructElem - /S /Em - /P 660 0 R - /K [11 12] - /Pg 5127 0 R ->> -endobj - -663 0 obj -<< - /Type /StructElem - /S /Lbl - /P 658 0 R - /K [664 0 R] ->> -endobj - -664 0 obj -<< - /Type /StructElem - /S /Link - /P 663 0 R - /K [9 << - /Type /OBJR - /Pg 5127 0 R - /Obj 5099 0 R - >>] - /Pg 5127 0 R ->> -endobj - -665 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [670 0 R 666 0 R] ->> -endobj - -666 0 obj -<< - /Type /StructElem - /S /LBody - /P 665 0 R - /K [667 0 R] ->> -endobj - -667 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 666 0 R - /K [1 669 0 R 4 5 6 668 0 R 8] - /Pg 5127 0 R ->> -endobj - -668 0 obj -<< - /Type /StructElem - /S /Link - /P 667 0 R - /K [7 << - /Type /OBJR - /Pg 5127 0 R - /Obj 5098 0 R - >>] - /Pg 5127 0 R ->> -endobj - -669 0 obj -<< - /Type /StructElem - /S /Em - /P 667 0 R - /K [2 3] - /Pg 5127 0 R ->> -endobj - -670 0 obj -<< - /Type /StructElem - /S /Lbl - /P 665 0 R - /K [671 0 R] ->> -endobj - -671 0 obj -<< - /Type /StructElem - /S /Link - /P 670 0 R - /K [0 << - /Type /OBJR - /Pg 5127 0 R - /Obj 5097 0 R - >>] - /Pg 5127 0 R ->> -endobj - -672 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [676 0 R 673 0 R] ->> -endobj - -673 0 obj -<< - /Type /StructElem - /S /LBody - /P 672 0 R - /K [674 0 R] ->> -endobj - -674 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 673 0 R - /K [107 675 0 R 109 110] - /Pg 5095 0 R ->> -endobj - -675 0 obj -<< - /Type /StructElem - /S /Em - /P 674 0 R - /K [108] - /Pg 5095 0 R ->> -endobj - -676 0 obj -<< - /Type /StructElem - /S /Lbl - /P 672 0 R - /K [677 0 R] ->> -endobj - -677 0 obj -<< - /Type /StructElem - /S /Link - /P 676 0 R - /K [106 << - /Type /OBJR - /Pg 5095 0 R - /Obj 5094 0 R - >>] - /Pg 5095 0 R ->> -endobj - -678 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [683 0 R 679 0 R] ->> -endobj - -679 0 obj -<< - /Type /StructElem - /S /LBody - /P 678 0 R - /K [680 0 R] ->> -endobj - -680 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 679 0 R - /K [98 682 0 R 101 102 103 681 0 R 105] - /Pg 5095 0 R ->> -endobj - -681 0 obj -<< - /Type /StructElem - /S /Link - /P 680 0 R - /K [104 << - /Type /OBJR - /Pg 5095 0 R - /Obj 5093 0 R - >>] - /Pg 5095 0 R ->> -endobj - -682 0 obj -<< - /Type /StructElem - /S /Em - /P 680 0 R - /K [99 100] - /Pg 5095 0 R ->> -endobj - -683 0 obj -<< - /Type /StructElem - /S /Lbl - /P 678 0 R - /K [684 0 R] ->> -endobj - -684 0 obj -<< - /Type /StructElem - /S /Link - /P 683 0 R - /K [97 << - /Type /OBJR - /Pg 5095 0 R - /Obj 5092 0 R - >>] - /Pg 5095 0 R ->> -endobj - -685 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [689 0 R 686 0 R] ->> -endobj - -686 0 obj -<< - /Type /StructElem - /S /LBody - /P 685 0 R - /K [687 0 R] ->> -endobj - -687 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 686 0 R - /K [94 688 0 R 96] - /Pg 5095 0 R ->> -endobj - -688 0 obj -<< - /Type /StructElem - /S /Em - /P 687 0 R - /K [95] - /Pg 5095 0 R ->> -endobj - -689 0 obj -<< - /Type /StructElem - /S /Lbl - /P 685 0 R - /K [690 0 R] ->> -endobj - -690 0 obj -<< - /Type /StructElem - /S /Link - /P 689 0 R - /K [93 << - /Type /OBJR - /Pg 5095 0 R - /Obj 5091 0 R - >>] - /Pg 5095 0 R ->> -endobj - -691 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [696 0 R 692 0 R] ->> -endobj - -692 0 obj -<< - /Type /StructElem - /S /LBody - /P 691 0 R - /K [693 0 R] ->> -endobj - -693 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 692 0 R - /K [87 695 0 R 89 90 694 0 R 92] - /Pg 5095 0 R ->> -endobj - -694 0 obj -<< - /Type /StructElem - /S /Link - /P 693 0 R - /K [91 << - /Type /OBJR - /Pg 5095 0 R - /Obj 5090 0 R - >>] - /Pg 5095 0 R ->> -endobj - -695 0 obj -<< - /Type /StructElem - /S /Em - /P 693 0 R - /K [88] - /Pg 5095 0 R ->> -endobj - -696 0 obj -<< - /Type /StructElem - /S /Lbl - /P 691 0 R - /K [697 0 R] ->> -endobj - -697 0 obj -<< - /Type /StructElem - /S /Link - /P 696 0 R - /K [86 << - /Type /OBJR - /Pg 5095 0 R - /Obj 5089 0 R - >>] - /Pg 5095 0 R ->> -endobj - -698 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [703 0 R 699 0 R] ->> -endobj - -699 0 obj -<< - /Type /StructElem - /S /LBody - /P 698 0 R - /K [700 0 R] ->> -endobj - -700 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 699 0 R - /K [77 78 702 0 R 81 82 83 701 0 R 85] - /Pg 5095 0 R ->> -endobj - -701 0 obj -<< - /Type /StructElem - /S /Link - /P 700 0 R - /K [84 << - /Type /OBJR - /Pg 5095 0 R - /Obj 5088 0 R - >>] - /Pg 5095 0 R ->> -endobj - -702 0 obj -<< - /Type /StructElem - /S /Em - /P 700 0 R - /K [79 80] - /Pg 5095 0 R ->> -endobj - -703 0 obj -<< - /Type /StructElem - /S /Lbl - /P 698 0 R - /K [704 0 R] ->> -endobj - -704 0 obj -<< - /Type /StructElem - /S /Link - /P 703 0 R - /K [76 << - /Type /OBJR - /Pg 5095 0 R - /Obj 5087 0 R - >>] - /Pg 5095 0 R ->> -endobj - -705 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [710 0 R 706 0 R] ->> -endobj - -706 0 obj -<< - /Type /StructElem - /S /LBody - /P 705 0 R - /K [707 0 R] ->> -endobj - -707 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 706 0 R - /K [68 69 709 0 R 72 73 708 0 R 75] - /Pg 5095 0 R ->> -endobj - -708 0 obj -<< - /Type /StructElem - /S /Link - /P 707 0 R - /K [74 << - /Type /OBJR - /Pg 5095 0 R - /Obj 5086 0 R - >>] - /Pg 5095 0 R ->> -endobj - -709 0 obj -<< - /Type /StructElem - /S /Em - /P 707 0 R - /K [70 71] - /Pg 5095 0 R ->> -endobj - -710 0 obj -<< - /Type /StructElem - /S /Lbl - /P 705 0 R - /K [711 0 R] ->> -endobj - -711 0 obj -<< - /Type /StructElem - /S /Link - /P 710 0 R - /K [67 << - /Type /OBJR - /Pg 5095 0 R - /Obj 5085 0 R - >>] - /Pg 5095 0 R ->> -endobj - -712 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [716 0 R 713 0 R] ->> -endobj - -713 0 obj -<< - /Type /StructElem - /S /LBody - /P 712 0 R - /K [714 0 R] ->> -endobj - -714 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 713 0 R - /K [62 715 0 R 65 66] - /Pg 5095 0 R ->> -endobj - -715 0 obj -<< - /Type /StructElem - /S /Em - /P 714 0 R - /K [63 64] - /Pg 5095 0 R ->> -endobj - -716 0 obj -<< - /Type /StructElem - /S /Lbl - /P 712 0 R - /K [717 0 R] ->> -endobj - -717 0 obj -<< - /Type /StructElem - /S /Link - /P 716 0 R - /K [61 << - /Type /OBJR - /Pg 5095 0 R - /Obj 5084 0 R - >>] - /Pg 5095 0 R ->> -endobj - -718 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [723 0 R 719 0 R] ->> -endobj - -719 0 obj -<< - /Type /StructElem - /S /LBody - /P 718 0 R - /K [720 0 R] ->> -endobj - -720 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 719 0 R - /K [55 722 0 R 57 58 721 0 R 60] - /Pg 5095 0 R ->> -endobj - -721 0 obj -<< - /Type /StructElem - /S /Link - /P 720 0 R - /K [59 << - /Type /OBJR - /Pg 5095 0 R - /Obj 5083 0 R - >>] - /Pg 5095 0 R ->> -endobj - -722 0 obj -<< - /Type /StructElem - /S /Em - /P 720 0 R - /K [56] - /Pg 5095 0 R ->> -endobj - -723 0 obj -<< - /Type /StructElem - /S /Lbl - /P 718 0 R - /K [724 0 R] ->> -endobj - -724 0 obj -<< - /Type /StructElem - /S /Link - /P 723 0 R - /K [54 << - /Type /OBJR - /Pg 5095 0 R - /Obj 5082 0 R - >>] - /Pg 5095 0 R ->> -endobj - -725 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [728 0 R 726 0 R] ->> -endobj - -726 0 obj -<< - /Type /StructElem - /S /LBody - /P 725 0 R - /K [727 0 R] ->> -endobj - -727 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 726 0 R - /K [52 53] - /Pg 5095 0 R ->> -endobj - -728 0 obj -<< - /Type /StructElem - /S /Lbl - /P 725 0 R - /K [729 0 R] ->> -endobj - -729 0 obj -<< - /Type /StructElem - /S /Link - /P 728 0 R - /K [51 << - /Type /OBJR - /Pg 5095 0 R - /Obj 5081 0 R - >>] - /Pg 5095 0 R ->> -endobj - -730 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [734 0 R 731 0 R] ->> -endobj - -731 0 obj -<< - /Type /StructElem - /S /LBody - /P 730 0 R - /K [732 0 R] ->> -endobj - -732 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 731 0 R - /K [46 47 733 0 R 49 50] - /Pg 5095 0 R ->> -endobj - -733 0 obj -<< - /Type /StructElem - /S /Em - /P 732 0 R - /K [48] - /Pg 5095 0 R ->> -endobj - -734 0 obj -<< - /Type /StructElem - /S /Lbl - /P 730 0 R - /K [735 0 R] ->> -endobj - -735 0 obj -<< - /Type /StructElem - /S /Link - /P 734 0 R - /K [45 << - /Type /OBJR - /Pg 5095 0 R - /Obj 5080 0 R - >>] - /Pg 5095 0 R ->> -endobj - -736 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [742 0 R 737 0 R] ->> -endobj - -737 0 obj -<< - /Type /StructElem - /S /LBody - /P 736 0 R - /K [738 0 R] ->> -endobj - -738 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 737 0 R - /K [36 741 0 R 38 39 740 0 R 42 739 0 R 44] - /Pg 5095 0 R ->> -endobj - -739 0 obj -<< - /Type /StructElem - /S /Link - /P 738 0 R - /K [43 << - /Type /OBJR - /Pg 5095 0 R - /Obj 5079 0 R - >>] - /Pg 5095 0 R ->> -endobj - -740 0 obj -<< - /Type /StructElem - /S /Em - /P 738 0 R - /K [40 41] - /Pg 5095 0 R ->> -endobj - -741 0 obj -<< - /Type /StructElem - /S /Em - /P 738 0 R - /K [37] - /Pg 5095 0 R ->> -endobj - -742 0 obj -<< - /Type /StructElem - /S /Lbl - /P 736 0 R - /K [743 0 R] ->> -endobj - -743 0 obj -<< - /Type /StructElem - /S /Link - /P 742 0 R - /K [35 << - /Type /OBJR - /Pg 5095 0 R - /Obj 5078 0 R - >>] - /Pg 5095 0 R ->> -endobj - -744 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [748 0 R 745 0 R] ->> -endobj - -745 0 obj -<< - /Type /StructElem - /S /LBody - /P 744 0 R - /K [746 0 R] ->> -endobj - -746 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 745 0 R - /K [31 32 747 0 R 34] - /Pg 5095 0 R ->> -endobj - -747 0 obj -<< - /Type /StructElem - /S /Em - /P 746 0 R - /K [33] - /Pg 5095 0 R ->> -endobj - -748 0 obj -<< - /Type /StructElem - /S /Lbl - /P 744 0 R - /K [749 0 R] ->> -endobj - -749 0 obj -<< - /Type /StructElem - /S /Link - /P 748 0 R - /K [30 << - /Type /OBJR - /Pg 5095 0 R - /Obj 5077 0 R - >>] - /Pg 5095 0 R ->> -endobj - -750 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [756 0 R 751 0 R] ->> -endobj - -751 0 obj -<< - /Type /StructElem - /S /LBody - /P 750 0 R - /K [752 0 R] ->> -endobj - -752 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 751 0 R - /K [22 755 0 R 24 754 0 R 26 27 753 0 R 29] - /Pg 5095 0 R ->> -endobj - -753 0 obj -<< - /Type /StructElem - /S /Link - /P 752 0 R - /K [28 << - /Type /OBJR - /Pg 5095 0 R - /Obj 5076 0 R - >>] - /Pg 5095 0 R ->> -endobj - -754 0 obj -<< - /Type /StructElem - /S /Em - /P 752 0 R - /K [25] - /Pg 5095 0 R ->> -endobj - -755 0 obj -<< - /Type /StructElem - /S /Em - /P 752 0 R - /K [23] - /Pg 5095 0 R ->> -endobj - -756 0 obj -<< - /Type /StructElem - /S /Lbl - /P 750 0 R - /K [757 0 R] ->> -endobj - -757 0 obj -<< - /Type /StructElem - /S /Link - /P 756 0 R - /K [21 << - /Type /OBJR - /Pg 5095 0 R - /Obj 5075 0 R - >>] - /Pg 5095 0 R ->> -endobj - -758 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [764 0 R 759 0 R] ->> -endobj - -759 0 obj -<< - /Type /StructElem - /S /LBody - /P 758 0 R - /K [760 0 R] ->> -endobj - -760 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 759 0 R - /K [12 763 0 R 14 762 0 R 18 761 0 R 20] - /Pg 5095 0 R ->> -endobj - -761 0 obj -<< - /Type /StructElem - /S /Link - /P 760 0 R - /K [19 << - /Type /OBJR - /Pg 5095 0 R - /Obj 5074 0 R - >>] - /Pg 5095 0 R ->> -endobj - -762 0 obj -<< - /Type /StructElem - /S /Em - /P 760 0 R - /K [15 16 17] - /Pg 5095 0 R ->> -endobj - -763 0 obj -<< - /Type /StructElem - /S /Em - /P 760 0 R - /K [13] - /Pg 5095 0 R ->> -endobj - -764 0 obj -<< - /Type /StructElem - /S /Lbl - /P 758 0 R - /K [765 0 R] ->> -endobj - -765 0 obj -<< - /Type /StructElem - /S /Link - /P 764 0 R - /K [11 << - /Type /OBJR - /Pg 5095 0 R - /Obj 5073 0 R - >>] - /Pg 5095 0 R ->> -endobj - -766 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [770 0 R 767 0 R] ->> -endobj - -767 0 obj -<< - /Type /StructElem - /S /LBody - /P 766 0 R - /K [768 0 R] ->> -endobj - -768 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 767 0 R - /K [6 7 8 769 0 R] - /Pg 5095 0 R ->> -endobj - -769 0 obj -<< - /Type /StructElem - /S /Link - /P 768 0 R - /K [9 << - /Type /OBJR - /Pg 5095 0 R - /Obj 5071 0 R - >> 10 << - /Type /OBJR - /Pg 5095 0 R - /Obj 5072 0 R - >>] - /Pg 5095 0 R ->> -endobj - -770 0 obj -<< - /Type /StructElem - /S /Lbl - /P 766 0 R - /K [771 0 R] ->> -endobj - -771 0 obj -<< - /Type /StructElem - /S /Link - /P 770 0 R - /K [5 << - /Type /OBJR - /Pg 5095 0 R - /Obj 5070 0 R - >>] - /Pg 5095 0 R ->> -endobj - -772 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [776 0 R 773 0 R] ->> -endobj - -773 0 obj -<< - /Type /StructElem - /S /LBody - /P 772 0 R - /K [774 0 R] ->> -endobj - -774 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 773 0 R - /K [1 2 3 775 0 R] - /Pg 5095 0 R ->> -endobj - -775 0 obj -<< - /Type /StructElem - /S /Link - /P 774 0 R - /K [4 << - /Type /OBJR - /Pg 5095 0 R - /Obj 5069 0 R - >>] - /Pg 5095 0 R ->> -endobj - -776 0 obj -<< - /Type /StructElem - /S /Lbl - /P 772 0 R - /K [777 0 R] ->> -endobj - -777 0 obj -<< - /Type /StructElem - /S /Link - /P 776 0 R - /K [0 << - /Type /OBJR - /Pg 5095 0 R - /Obj 5068 0 R - >>] - /Pg 5095 0 R ->> -endobj - -778 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [782 0 R 779 0 R] ->> -endobj - -779 0 obj -<< - /Type /StructElem - /S /LBody - /P 778 0 R - /K [780 0 R] ->> -endobj - -780 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 779 0 R - /K [76 781 0 R 78 79] - /Pg 5066 0 R ->> -endobj - -781 0 obj -<< - /Type /StructElem - /S /Em - /P 780 0 R - /K [77] - /Pg 5066 0 R ->> -endobj - -782 0 obj -<< - /Type /StructElem - /S /Lbl - /P 778 0 R - /K [783 0 R] ->> -endobj - -783 0 obj -<< - /Type /StructElem - /S /Link - /P 782 0 R - /K [75 << - /Type /OBJR - /Pg 5066 0 R - /Obj 5065 0 R - >>] - /Pg 5066 0 R ->> -endobj - -784 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [789 0 R 785 0 R] ->> -endobj - -785 0 obj -<< - /Type /StructElem - /S /LBody - /P 784 0 R - /K [786 0 R] ->> -endobj - -786 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 785 0 R - /K [67 68 788 0 R 71 72 787 0 R 74] - /Pg 5066 0 R ->> -endobj - -787 0 obj -<< - /Type /StructElem - /S /Link - /P 786 0 R - /K [73 << - /Type /OBJR - /Pg 5066 0 R - /Obj 5064 0 R - >>] - /Pg 5066 0 R ->> -endobj - -788 0 obj -<< - /Type /StructElem - /S /Em - /P 786 0 R - /K [69 70] - /Pg 5066 0 R ->> -endobj - -789 0 obj -<< - /Type /StructElem - /S /Lbl - /P 784 0 R - /K [790 0 R] ->> -endobj - -790 0 obj -<< - /Type /StructElem - /S /Link - /P 789 0 R - /K [66 << - /Type /OBJR - /Pg 5066 0 R - /Obj 5063 0 R - >>] - /Pg 5066 0 R ->> -endobj - -791 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [795 0 R 792 0 R] ->> -endobj - -792 0 obj -<< - /Type /StructElem - /S /LBody - /P 791 0 R - /K [793 0 R] ->> -endobj - -793 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 792 0 R - /K [63 794 0 R 65] - /Pg 5066 0 R ->> -endobj - -794 0 obj -<< - /Type /StructElem - /S /Em - /P 793 0 R - /K [64] - /Pg 5066 0 R ->> -endobj - -795 0 obj -<< - /Type /StructElem - /S /Lbl - /P 791 0 R - /K [796 0 R] ->> -endobj - -796 0 obj -<< - /Type /StructElem - /S /Link - /P 795 0 R - /K [62 << - /Type /OBJR - /Pg 5066 0 R - /Obj 5062 0 R - >>] - /Pg 5066 0 R ->> -endobj - -797 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [802 0 R 798 0 R] ->> -endobj - -798 0 obj -<< - /Type /StructElem - /S /LBody - /P 797 0 R - /K [799 0 R] ->> -endobj - -799 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 798 0 R - /K [55 56 57 801 0 R 59 800 0 R 61] - /Pg 5066 0 R ->> -endobj - -800 0 obj -<< - /Type /StructElem - /S /Link - /P 799 0 R - /K [60 << - /Type /OBJR - /Pg 5066 0 R - /Obj 5061 0 R - >>] - /Pg 5066 0 R ->> -endobj - -801 0 obj -<< - /Type /StructElem - /S /Em - /P 799 0 R - /K [58] - /Pg 5066 0 R ->> -endobj - -802 0 obj -<< - /Type /StructElem - /S /Lbl - /P 797 0 R - /K [803 0 R] ->> -endobj - -803 0 obj -<< - /Type /StructElem - /S /Link - /P 802 0 R - /K [54 << - /Type /OBJR - /Pg 5066 0 R - /Obj 5060 0 R - >>] - /Pg 5066 0 R ->> -endobj - -804 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [809 0 R 805 0 R] ->> -endobj - -805 0 obj -<< - /Type /StructElem - /S /LBody - /P 804 0 R - /K [806 0 R] ->> -endobj - -806 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 805 0 R - /K [48 808 0 R 50 51 807 0 R 53] - /Pg 5066 0 R ->> -endobj - -807 0 obj -<< - /Type /StructElem - /S /Link - /P 806 0 R - /K [52 << - /Type /OBJR - /Pg 5066 0 R - /Obj 5059 0 R - >>] - /Pg 5066 0 R ->> -endobj - -808 0 obj -<< - /Type /StructElem - /S /Em - /P 806 0 R - /K [49] - /Pg 5066 0 R ->> -endobj - -809 0 obj -<< - /Type /StructElem - /S /Lbl - /P 804 0 R - /K [810 0 R] ->> -endobj - -810 0 obj -<< - /Type /StructElem - /S /Link - /P 809 0 R - /K [47 << - /Type /OBJR - /Pg 5066 0 R - /Obj 5058 0 R - >>] - /Pg 5066 0 R ->> -endobj - -811 0 obj -<< - /Type /StructElem - /S /LI - /P 104 0 R - /K [816 0 R 812 0 R] ->> -endobj - -812 0 obj -<< - /Type /StructElem - /S /LBody - /P 811 0 R - /K [813 0 R] ->> -endobj - -813 0 obj -<< - /Type /StructElem - /S /BibEntry - /P 812 0 R - /K [40 815 0 R 44 814 0 R 46] - /Pg 5066 0 R ->> -endobj - -814 0 obj -<< - /Type /StructElem - /S /Link - /P 813 0 R - /K [45 << - /Type /OBJR - /Pg 5066 0 R - /Obj 5057 0 R - >>] - /Pg 5066 0 R ->> -endobj - -815 0 obj -<< - /Type /StructElem - /S /Em - /P 813 0 R - /K [41 42 43] - /Pg 5066 0 R ->> -endobj - -816 0 obj -<< - /Type /StructElem - /S /Lbl - /P 811 0 R - /K [817 0 R] ->> -endobj - -817 0 obj -<< - /Type /StructElem - /S /Link - /P 816 0 R - /K [39 << - /Type /OBJR - /Pg 5066 0 R - /Obj 5056 0 R - >>] - /Pg 5066 0 R ->> -endobj - -818 0 obj -<< - /Type /StructElem - /S /H1 - /P 103 0 R - /T (References) - /K [38] - /Pg 5066 0 R ->> -endobj - -819 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [28 29 820 0 R 31 32 33 34 35 36 37] - /Pg 5066 0 R ->> -endobj - -820 0 obj -<< - /Type /StructElem - /S /Link - /P 819 0 R - /K [30 << - /Type /OBJR - /Pg 5066 0 R - /Obj 5055 0 R - >>] - /Pg 5066 0 R ->> -endobj - -821 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [7 8 825 0 R 10 11 12 13 824 0 R 15 16 17 823 0 R 19 20 822 0 R 23 24 25 26 27] - /Pg 5066 0 R ->> -endobj - -822 0 obj -<< - /Type /StructElem - /S /Em - /P 821 0 R - /K [21 22] - /Pg 5066 0 R ->> -endobj - -823 0 obj -<< - /Type /StructElem - /S /Em - /P 821 0 R - /K [18] - /Pg 5066 0 R ->> -endobj - -824 0 obj -<< - /Type /StructElem - /S /Em - /P 821 0 R - /K [14] - /Pg 5066 0 R ->> -endobj - -825 0 obj -<< - /Type /StructElem - /S /Em - /P 821 0 R - /K [9] - /Pg 5066 0 R ->> -endobj - -826 0 obj -<< - /Type /StructElem - /S /H1 - /P 103 0 R - /T (Conclusion) - /K [5 6] - /Pg 5066 0 R ->> -endobj - -827 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [835 0 R 118 119 834 0 R 121 122 123 124 125 833 0 R 127 832 0 R 129 130 131 831 0 R 133 134 135 136 830 0 R 138 139 829 0 R 828 0 R << - /Type /MCR - /MCID 1 - /Pg 5066 0 R - >> << - /Type /MCR - /MCID 2 - /Pg 5066 0 R - >> << - /Type /MCR - /MCID 3 - /Pg 5066 0 R - >> << - /Type /MCR - /MCID 4 - /Pg 5066 0 R - >>] - /Pg 5053 0 R ->> -endobj - -828 0 obj -<< - /Type /StructElem - /S /Em - /P 827 0 R - /K [0] - /Pg 5066 0 R ->> -endobj - -829 0 obj -<< - /Type /StructElem - /S /Em - /P 827 0 R - /K [140] - /Pg 5053 0 R ->> -endobj - -830 0 obj -<< - /Type /StructElem - /S /Link - /P 827 0 R - /K [137 << - /Type /OBJR - /Pg 5053 0 R - /Obj 5052 0 R - >>] - /Pg 5053 0 R ->> -endobj - -831 0 obj -<< - /Type /StructElem - /S /Em - /P 827 0 R - /K [132] - /Pg 5053 0 R ->> -endobj - -832 0 obj -<< - /Type /StructElem - /S /Link - /P 827 0 R - /K [128 << - /Type /OBJR - /Pg 5053 0 R - /Obj 5051 0 R - >>] - /Pg 5053 0 R ->> -endobj - -833 0 obj -<< - /Type /StructElem - /S /Link - /P 827 0 R - /K [126 << - /Type /OBJR - /Pg 5053 0 R - /Obj 5050 0 R - >>] - /Pg 5053 0 R ->> -endobj - -834 0 obj -<< - /Type /StructElem - /S /Link - /P 827 0 R - /K [120 << - /Type /OBJR - /Pg 5053 0 R - /Obj 5049 0 R - >>] - /Pg 5053 0 R ->> -endobj - -835 0 obj -<< - /Type /StructElem - /S /Strong - /P 827 0 R - /K [117] - /Pg 5053 0 R ->> -endobj - -836 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [846 0 R 77 78 79 845 0 R 81 844 0 R 83 84 85 86 87 88 843 0 R 90 91 92 93 842 0 R 95 841 0 R 97 98 840 0 R 100 101 102 103 839 0 R 105 106 107 108 109 110 111 838 0 R 113 114 837 0 R 116] - /Pg 5053 0 R ->> -endobj - -837 0 obj -<< - /Type /StructElem - /S /Link - /P 836 0 R - /K [115 << - /Type /OBJR - /Pg 5053 0 R - /Obj 5048 0 R - >>] - /Pg 5053 0 R ->> -endobj - -838 0 obj -<< - /Type /StructElem - /S /Code - /P 836 0 R - /K [112] - /Pg 5053 0 R ->> -endobj - -839 0 obj -<< - /Type /StructElem - /S /Link - /P 836 0 R - /K [104 << - /Type /OBJR - /Pg 5053 0 R - /Obj 5047 0 R - >>] - /Pg 5053 0 R ->> -endobj - -840 0 obj -<< - /Type /StructElem - /S /Link - /P 836 0 R - /K [99 << - /Type /OBJR - /Pg 5053 0 R - /Obj 5046 0 R - >>] - /Pg 5053 0 R ->> -endobj - -841 0 obj -<< - /Type /StructElem - /S /Code - /P 836 0 R - /K [96] - /Pg 5053 0 R ->> -endobj - -842 0 obj -<< - /Type /StructElem - /S /Code - /P 836 0 R - /K [94] - /Pg 5053 0 R ->> -endobj - -843 0 obj -<< - /Type /StructElem - /S /Link - /P 836 0 R - /K [89 << - /Type /OBJR - /Pg 5053 0 R - /Obj 5045 0 R - >>] - /Pg 5053 0 R ->> -endobj - -844 0 obj -<< - /Type /StructElem - /S /Link - /P 836 0 R - /K [82 << - /Type /OBJR - /Pg 5053 0 R - /Obj 5044 0 R - >>] - /Pg 5053 0 R ->> -endobj - -845 0 obj -<< - /Type /StructElem - /S /Link - /P 836 0 R - /K [80 << - /Type /OBJR - /Pg 5053 0 R - /Obj 5043 0 R - >>] - /Pg 5053 0 R ->> -endobj - -846 0 obj -<< - /Type /StructElem - /S /Strong - /P 836 0 R - /K [76] - /Pg 5053 0 R ->> -endobj - -847 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [853 0 R 51 52 53 852 0 R 55 56 57 851 0 R 59 60 61 62 850 0 R 64 849 0 R 66 67 68 69 70 71 848 0 R 73 74 75] - /Pg 5053 0 R ->> -endobj - -848 0 obj -<< - /Type /StructElem - /S /Link - /P 847 0 R - /K [72 << - /Type /OBJR - /Pg 5053 0 R - /Obj 5042 0 R - >>] - /Pg 5053 0 R ->> -endobj - -849 0 obj -<< - /Type /StructElem - /S /Code - /P 847 0 R - /K [65] - /Pg 5053 0 R ->> -endobj - -850 0 obj -<< - /Type /StructElem - /S /Code - /P 847 0 R - /K [63] - /Pg 5053 0 R ->> -endobj - -851 0 obj -<< - /Type /StructElem - /S /Link - /P 847 0 R - /K [58 << - /Type /OBJR - /Pg 5053 0 R - /Obj 5041 0 R - >>] - /Pg 5053 0 R ->> -endobj - -852 0 obj -<< - /Type /StructElem - /S /Link - /P 847 0 R - /K [54 << - /Type /OBJR - /Pg 5053 0 R - /Obj 5040 0 R - >>] - /Pg 5053 0 R ->> -endobj - -853 0 obj -<< - /Type /StructElem - /S /Strong - /P 847 0 R - /K [50] - /Pg 5053 0 R ->> -endobj - -854 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [46 47 48 49] - /Pg 5053 0 R ->> -endobj - -855 0 obj -<< - /Type /StructElem - /S /H2 - /P 103 0 R - /T (Spatial Composability) - /K [44 45] - /Pg 5053 0 R ->> -endobj - -856 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [866 0 R 1 2 3 865 0 R 5 864 0 R 7 8 9 10 863 0 R 12 13 14 15 16 862 0 R 18 861 0 R 20 21 22 23 860 0 R 25 26 27 28 859 0 R 30 31 32 858 0 R 34 35 36 857 0 R 38 39 40 41 42 43] - /Pg 5053 0 R ->> -endobj - -857 0 obj -<< - /Type /StructElem - /S /Link - /P 856 0 R - /K [37 << - /Type /OBJR - /Pg 5053 0 R - /Obj 5039 0 R - >>] - /Pg 5053 0 R ->> -endobj - -858 0 obj -<< - /Type /StructElem - /S /Link - /P 856 0 R - /K [33 << - /Type /OBJR - /Pg 5053 0 R - /Obj 5038 0 R - >>] - /Pg 5053 0 R ->> -endobj - -859 0 obj -<< - /Type /StructElem - /S /Link - /P 856 0 R - /K [29 << - /Type /OBJR - /Pg 5053 0 R - /Obj 5037 0 R - >>] - /Pg 5053 0 R ->> -endobj - -860 0 obj -<< - /Type /StructElem - /S /Link - /P 856 0 R - /K [24 << - /Type /OBJR - /Pg 5053 0 R - /Obj 5036 0 R - >>] - /Pg 5053 0 R ->> -endobj - -861 0 obj -<< - /Type /StructElem - /S /Link - /P 856 0 R - /K [19 << - /Type /OBJR - /Pg 5053 0 R - /Obj 5035 0 R - >>] - /Pg 5053 0 R ->> -endobj - -862 0 obj -<< - /Type /StructElem - /S /Link - /P 856 0 R - /K [17 << - /Type /OBJR - /Pg 5053 0 R - /Obj 5034 0 R - >>] - /Pg 5053 0 R ->> -endobj - -863 0 obj -<< - /Type /StructElem - /S /Link - /P 856 0 R - /K [11 << - /Type /OBJR - /Pg 5053 0 R - /Obj 5033 0 R - >>] - /Pg 5053 0 R ->> -endobj - -864 0 obj -<< - /Type /StructElem - /S /Link - /P 856 0 R - /K [6 << - /Type /OBJR - /Pg 5053 0 R - /Obj 5032 0 R - >>] - /Pg 5053 0 R ->> -endobj - -865 0 obj -<< - /Type /StructElem - /S /Link - /P 856 0 R - /K [4 << - /Type /OBJR - /Pg 5053 0 R - /Obj 5031 0 R - >>] - /Pg 5053 0 R ->> -endobj - -866 0 obj -<< - /Type /StructElem - /S /Strong - /P 856 0 R - /K [0] - /Pg 5053 0 R ->> -endobj - -867 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [877 0 R 81 82 83 84 876 0 R 86 87 88 89 875 0 R 91 92 93 874 0 R 95 96 873 0 R 98 99 100 101 102 872 0 R 104 105 106 871 0 R 108 109 110 111 112 870 0 R 114 869 0 R 116 117 868 0 R 119 120 121 122 123 124 125 126 127 128 129 130 131] - /Pg 5029 0 R ->> -endobj - -868 0 obj -<< - /Type /StructElem - /S /Link - /P 867 0 R - /K [118 << - /Type /OBJR - /Pg 5029 0 R - /Obj 5028 0 R - >>] - /Pg 5029 0 R ->> -endobj - -869 0 obj -<< - /Type /StructElem - /S /Code - /P 867 0 R - /K [115] - /Pg 5029 0 R ->> -endobj - -870 0 obj -<< - /Type /StructElem - /S /Link - /P 867 0 R - /K [113 << - /Type /OBJR - /Pg 5029 0 R - /Obj 5027 0 R - >>] - /Pg 5029 0 R ->> -endobj - -871 0 obj -<< - /Type /StructElem - /S /Link - /P 867 0 R - /K [107 << - /Type /OBJR - /Pg 5029 0 R - /Obj 5026 0 R - >>] - /Pg 5029 0 R ->> -endobj - -872 0 obj -<< - /Type /StructElem - /S /Link - /P 867 0 R - /K [103 << - /Type /OBJR - /Pg 5029 0 R - /Obj 5025 0 R - >>] - /Pg 5029 0 R ->> -endobj - -873 0 obj -<< - /Type /StructElem - /S /Link - /P 867 0 R - /K [97 << - /Type /OBJR - /Pg 5029 0 R - /Obj 5024 0 R - >>] - /Pg 5029 0 R ->> -endobj - -874 0 obj -<< - /Type /StructElem - /S /Code - /P 867 0 R - /K [94] - /Pg 5029 0 R ->> -endobj - -875 0 obj -<< - /Type /StructElem - /S /Link - /P 867 0 R - /K [90 << - /Type /OBJR - /Pg 5029 0 R - /Obj 5023 0 R - >>] - /Pg 5029 0 R ->> -endobj - -876 0 obj -<< - /Type /StructElem - /S /Link - /P 867 0 R - /K [85 << - /Type /OBJR - /Pg 5029 0 R - /Obj 5022 0 R - >>] - /Pg 5029 0 R ->> -endobj - -877 0 obj -<< - /Type /StructElem - /S /Strong - /P 867 0 R - /K [80] - /Pg 5029 0 R ->> -endobj - -878 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [895 0 R 4 5 6 7 894 0 R 9 10 893 0 R 12 13 14 892 0 R 16 17 891 0 R 19 20 890 0 R 22 23 24 25 26 27 889 0 R 29 30 31 32 888 0 R 34 35 36 887 0 R 38 39 40 41 42 43 886 0 R 45 46 47 48 49 885 0 R 51 52 53 884 0 R 55 56 57 58 883 0 R 60 61 62 882 0 R 64 65 66 881 0 R 68 880 0 R 70 71 879 0 R 73 74 75 76 77 78 79] - /Pg 5029 0 R ->> -endobj - -879 0 obj -<< - /Type /StructElem - /S /Link - /P 878 0 R - /K [72 << - /Type /OBJR - /Pg 5029 0 R - /Obj 5021 0 R - >>] - /Pg 5029 0 R ->> -endobj - -880 0 obj -<< - /Type /StructElem - /S /Code - /P 878 0 R - /K [69] - /Pg 5029 0 R ->> -endobj - -881 0 obj -<< - /Type /StructElem - /S /Code - /P 878 0 R - /K [67] - /Pg 5029 0 R ->> -endobj - -882 0 obj -<< - /Type /StructElem - /S /Link - /P 878 0 R - /K [63 << - /Type /OBJR - /Pg 5029 0 R - /Obj 5020 0 R - >>] - /Pg 5029 0 R ->> -endobj - -883 0 obj -<< - /Type /StructElem - /S /Link - /P 878 0 R - /K [59 << - /Type /OBJR - /Pg 5029 0 R - /Obj 5019 0 R - >>] - /Pg 5029 0 R ->> -endobj - -884 0 obj -<< - /Type /StructElem - /S /Code - /P 878 0 R - /K [54] - /Pg 5029 0 R ->> -endobj - -885 0 obj -<< - /Type /StructElem - /S /Link - /P 878 0 R - /K [50 << - /Type /OBJR - /Pg 5029 0 R - /Obj 5018 0 R - >>] - /Pg 5029 0 R ->> -endobj - -886 0 obj -<< - /Type /StructElem - /S /Link - /P 878 0 R - /K [44 << - /Type /OBJR - /Pg 5029 0 R - /Obj 5017 0 R - >>] - /Pg 5029 0 R ->> -endobj - -887 0 obj -<< - /Type /StructElem - /S /Link - /P 878 0 R - /K [37 << - /Type /OBJR - /Pg 5029 0 R - /Obj 5016 0 R - >>] - /Pg 5029 0 R ->> -endobj - -888 0 obj -<< - /Type /StructElem - /S /Link - /P 878 0 R - /K [33 << - /Type /OBJR - /Pg 5029 0 R - /Obj 5015 0 R - >>] - /Pg 5029 0 R ->> -endobj - -889 0 obj -<< - /Type /StructElem - /S /Link - /P 878 0 R - /K [28 << - /Type /OBJR - /Pg 5029 0 R - /Obj 5014 0 R - >>] - /Pg 5029 0 R ->> -endobj - -890 0 obj -<< - /Type /StructElem - /S /Link - /P 878 0 R - /K [21 << - /Type /OBJR - /Pg 5029 0 R - /Obj 5013 0 R - >>] - /Pg 5029 0 R ->> -endobj - -891 0 obj -<< - /Type /StructElem - /S /Link - /P 878 0 R - /K [18 << - /Type /OBJR - /Pg 5029 0 R - /Obj 5012 0 R - >>] - /Pg 5029 0 R ->> -endobj - -892 0 obj -<< - /Type /StructElem - /S /Em - /P 878 0 R - /K [15] - /Pg 5029 0 R ->> -endobj - -893 0 obj -<< - /Type /StructElem - /S /Link - /P 878 0 R - /K [11 << - /Type /OBJR - /Pg 5029 0 R - /Obj 5011 0 R - >>] - /Pg 5029 0 R ->> -endobj - -894 0 obj -<< - /Type /StructElem - /S /Em - /P 878 0 R - /K [8] - /Pg 5029 0 R ->> -endobj - -895 0 obj -<< - /Type /StructElem - /S /Strong - /P 878 0 R - /K [3] - /Pg 5029 0 R ->> -endobj - -896 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [89 90 << - /Type /MCR - /MCID 0 - /Pg 5029 0 R - >> << - /Type /MCR - /MCID 1 - /Pg 5029 0 R - >> << - /Type /MCR - /MCID 2 - /Pg 5029 0 R - >>] - /Pg 5009 0 R ->> -endobj - -897 0 obj -<< - /Type /StructElem - /S /H2 - /P 103 0 R - /T (Temporal Composability) - /K [87 88] - /Pg 5009 0 R ->> -endobj - -898 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [909 0 R 45 46 908 0 R 48 907 0 R 50 51 906 0 R 53 905 0 R 55 904 0 R 57 903 0 R 59 60 61 62 63 64 902 0 R 67 68 69 70 71 72 901 0 R 74 75 76 77 78 900 0 R 80 899 0 R 82 83 84 85 86] - /Pg 5009 0 R ->> -endobj - -899 0 obj -<< - /Type /StructElem - /S /Link - /P 898 0 R - /K [81 << - /Type /OBJR - /Pg 5009 0 R - /Obj 5008 0 R - >>] - /Pg 5009 0 R ->> -endobj - -900 0 obj -<< - /Type /StructElem - /S /Link - /P 898 0 R - /K [79 << - /Type /OBJR - /Pg 5009 0 R - /Obj 5007 0 R - >>] - /Pg 5009 0 R ->> -endobj - -901 0 obj -<< - /Type /StructElem - /S /Em - /P 898 0 R - /K [73] - /Pg 5009 0 R ->> -endobj - -902 0 obj -<< - /Type /StructElem - /S /Em - /P 898 0 R - /K [65 66] - /Pg 5009 0 R ->> -endobj - -903 0 obj -<< - /Type /StructElem - /S /Em - /P 898 0 R - /K [58] - /Pg 5009 0 R ->> -endobj - -904 0 obj -<< - /Type /StructElem - /S /Em - /P 898 0 R - /K [56] - /Pg 5009 0 R ->> -endobj - -905 0 obj -<< - /Type /StructElem - /S /Em - /P 898 0 R - /K [54] - /Pg 5009 0 R ->> -endobj - -906 0 obj -<< - /Type /StructElem - /S /Em - /P 898 0 R - /K [52] - /Pg 5009 0 R ->> -endobj - -907 0 obj -<< - /Type /StructElem - /S /Link - /P 898 0 R - /K [49 << - /Type /OBJR - /Pg 5009 0 R - /Obj 5006 0 R - >>] - /Pg 5009 0 R ->> -endobj - -908 0 obj -<< - /Type /StructElem - /S /Link - /P 898 0 R - /K [47 << - /Type /OBJR - /Pg 5009 0 R - /Obj 5005 0 R - >>] - /Pg 5009 0 R ->> -endobj - -909 0 obj -<< - /Type /StructElem - /S /Strong - /P 898 0 R - /K [44] - /Pg 5009 0 R ->> -endobj - -910 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [917 0 R 9 10 916 0 R 12 915 0 R 14 15 914 0 R 17 18 19 20 21 22 913 0 R 24 25 26 27 28 29 30 912 0 R 33 34 911 0 R 36 37 38 39 40 41 42 43] - /Pg 5009 0 R ->> -endobj - -911 0 obj -<< - /Type /StructElem - /S /Link - /P 910 0 R - /K [35 << - /Type /OBJR - /Pg 5009 0 R - /Obj 5004 0 R - >>] - /Pg 5009 0 R ->> -endobj - -912 0 obj -<< - /Type /StructElem - /S /Formula - /P 910 0 R - /K [31 32] - /Pg 5009 0 R ->> -endobj - -913 0 obj -<< - /Type /StructElem - /S /Link - /P 910 0 R - /K [23 << - /Type /OBJR - /Pg 5009 0 R - /Obj 5003 0 R - >>] - /Pg 5009 0 R ->> -endobj - -914 0 obj -<< - /Type /StructElem - /S /Em - /P 910 0 R - /K [16] - /Pg 5009 0 R ->> -endobj - -915 0 obj -<< - /Type /StructElem - /S /Link - /P 910 0 R - /K [13 << - /Type /OBJR - /Pg 5009 0 R - /Obj 5002 0 R - >>] - /Pg 5009 0 R ->> -endobj - -916 0 obj -<< - /Type /StructElem - /S /Link - /P 910 0 R - /K [11 << - /Type /OBJR - /Pg 5009 0 R - /Obj 5001 0 R - >>] - /Pg 5009 0 R ->> -endobj - -917 0 obj -<< - /Type /StructElem - /S /Strong - /P 910 0 R - /K [8] - /Pg 5009 0 R ->> -endobj - -918 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [919 0 R 5 6 7] - /Pg 5009 0 R ->> -endobj - -919 0 obj -<< - /Type /StructElem - /S /Link - /P 918 0 R - /K [4 << - /Type /OBJR - /Pg 5009 0 R - /Obj 5000 0 R - >>] - /Pg 5009 0 R ->> -endobj - -920 0 obj -<< - /Type /StructElem - /S /H2 - /P 103 0 R - /T (Programming Paradigms) - /K [2 3] - /Pg 5009 0 R ->> -endobj - -921 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [927 0 R 69 70 926 0 R 72 73 925 0 R 76 77 78 79 80 81 924 0 R 83 923 0 R 85 86 87 922 0 R 89 90 91 92 << - /Type /MCR - /MCID 0 - /Pg 5009 0 R - >> << - /Type /MCR - /MCID 1 - /Pg 5009 0 R - >>] - /Pg 4998 0 R ->> -endobj - -922 0 obj -<< - /Type /StructElem - /S /Link - /P 921 0 R - /K [88 << - /Type /OBJR - /Pg 4998 0 R - /Obj 4997 0 R - >>] - /Pg 4998 0 R ->> -endobj - -923 0 obj -<< - /Type /StructElem - /S /Link - /P 921 0 R - /K [84 << - /Type /OBJR - /Pg 4998 0 R - /Obj 4996 0 R - >>] - /Pg 4998 0 R ->> -endobj - -924 0 obj -<< - /Type /StructElem - /S /Link - /P 921 0 R - /K [82 << - /Type /OBJR - /Pg 4998 0 R - /Obj 4995 0 R - >>] - /Pg 4998 0 R ->> -endobj - -925 0 obj -<< - /Type /StructElem - /S /Em - /P 921 0 R - /K [74 75] - /Pg 4998 0 R ->> -endobj - -926 0 obj -<< - /Type /StructElem - /S /Link - /P 921 0 R - /K [71 << - /Type /OBJR - /Pg 4998 0 R - /Obj 4994 0 R - >>] - /Pg 4998 0 R ->> -endobj - -927 0 obj -<< - /Type /StructElem - /S /Strong - /P 921 0 R - /K [68] - /Pg 4998 0 R ->> -endobj - -928 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [933 0 R 47 48 49 932 0 R 51 52 53 931 0 R 55 930 0 R 57 58 59 60 61 62 63 64 65 929 0 R 67] - /Pg 4998 0 R ->> -endobj - -929 0 obj -<< - /Type /StructElem - /S /Link - /P 928 0 R - /K [66 << - /Type /OBJR - /Pg 4998 0 R - /Obj 4993 0 R - >>] - /Pg 4998 0 R ->> -endobj - -930 0 obj -<< - /Type /StructElem - /S /Em - /P 928 0 R - /K [56] - /Pg 4998 0 R ->> -endobj - -931 0 obj -<< - /Type /StructElem - /S /Em - /P 928 0 R - /K [54] - /Pg 4998 0 R ->> -endobj - -932 0 obj -<< - /Type /StructElem - /S /Link - /P 928 0 R - /K [50 << - /Type /OBJR - /Pg 4998 0 R - /Obj 4992 0 R - >>] - /Pg 4998 0 R ->> -endobj - -933 0 obj -<< - /Type /StructElem - /S /Strong - /P 928 0 R - /K [46] - /Pg 4998 0 R ->> -endobj - -934 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [942 0 R 12 941 0 R 14 15 16 940 0 R 18 19 939 0 R 21 938 0 R 23 24 25 26 27 937 0 R 29 30 31 32 33 34 35 936 0 R 37 38 935 0 R 40 41 42 43 44 45] - /Pg 4998 0 R ->> -endobj - -935 0 obj -<< - /Type /StructElem - /S /Em - /P 934 0 R - /K [39] - /Pg 4998 0 R ->> -endobj - -936 0 obj -<< - /Type /StructElem - /S /Em - /P 934 0 R - /K [36] - /Pg 4998 0 R ->> -endobj - -937 0 obj -<< - /Type /StructElem - /S /Link - /P 934 0 R - /K [28 << - /Type /OBJR - /Pg 4998 0 R - /Obj 4991 0 R - >>] - /Pg 4998 0 R ->> -endobj - -938 0 obj -<< - /Type /StructElem - /S /Link - /P 934 0 R - /K [22 << - /Type /OBJR - /Pg 4998 0 R - /Obj 4990 0 R - >>] - /Pg 4998 0 R ->> -endobj - -939 0 obj -<< - /Type /StructElem - /S /Link - /P 934 0 R - /K [20 << - /Type /OBJR - /Pg 4998 0 R - /Obj 4989 0 R - >>] - /Pg 4998 0 R ->> -endobj - -940 0 obj -<< - /Type /StructElem - /S /Em - /P 934 0 R - /K [17] - /Pg 4998 0 R ->> -endobj - -941 0 obj -<< - /Type /StructElem - /S /Link - /P 934 0 R - /K [13 << - /Type /OBJR - /Pg 4998 0 R - /Obj 4988 0 R - >>] - /Pg 4998 0 R ->> -endobj - -942 0 obj -<< - /Type /StructElem - /S /Strong - /P 934 0 R - /K [11] - /Pg 4998 0 R ->> -endobj - -943 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [944 0 R 7 8 9 10] - /Pg 4998 0 R ->> -endobj - -944 0 obj -<< - /Type /StructElem - /S /Link - /P 943 0 R - /K [6 << - /Type /OBJR - /Pg 4998 0 R - /Obj 4987 0 R - >>] - /Pg 4998 0 R ->> -endobj - -945 0 obj -<< - /Type /StructElem - /S /H2 - /P 103 0 R - /T (Effect and Coeffect Systems) - /K [4 5] - /Pg 4998 0 R ->> -endobj - -946 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [2 3] - /Pg 4998 0 R ->> -endobj - -947 0 obj -<< - /Type /StructElem - /S /H1 - /P 103 0 R - /T (Related Work) - /K [0 1] - /Pg 4998 0 R ->> -endobj - -948 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [114 115 116] - /Pg 4985 0 R ->> -endobj - -949 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [955 0 R 81 82 83 954 0 R 90 91 92 93 953 0 R 95 96 97 98 99 100 101 952 0 R 103 104 105 951 0 R 107 108 109 110 950 0 R 112 113] - /Pg 4985 0 R ->> -endobj - -950 0 obj -<< - /Type /StructElem - /S /Link - /P 949 0 R - /K [111 << - /Type /OBJR - /Pg 4985 0 R - /Obj 4984 0 R - >>] - /Pg 4985 0 R ->> -endobj - -951 0 obj -<< - /Type /StructElem - /S /Link - /P 949 0 R - /K [106 << - /Type /OBJR - /Pg 4985 0 R - /Obj 4983 0 R - >>] - /Pg 4985 0 R ->> -endobj - -952 0 obj -<< - /Type /StructElem - /S /Link - /P 949 0 R - /K [102 << - /Type /OBJR - /Pg 4985 0 R - /Obj 4982 0 R - >>] - /Pg 4985 0 R ->> -endobj - -953 0 obj -<< - /Type /StructElem - /S /Link - /P 949 0 R - /K [94 << - /Type /OBJR - /Pg 4985 0 R - /Obj 4981 0 R - >>] - /Pg 4985 0 R ->> -endobj - -954 0 obj -<< - /Type /StructElem - /S /Formula - /P 949 0 R - /K [84 85 86 87 88 89] - /Pg 4985 0 R ->> -endobj - -955 0 obj -<< - /Type /StructElem - /S /Strong - /P 949 0 R - /K [80] - /Pg 4985 0 R ->> -endobj - -956 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [959 0 R 62 63 64 958 0 R 66 67 68 957 0 R 70 71 72 73 74 75 76 77 78 79] - /Pg 4985 0 R ->> -endobj - -957 0 obj -<< - /Type /StructElem - /S /Em - /P 956 0 R - /K [69] - /Pg 4985 0 R ->> -endobj - -958 0 obj -<< - /Type /StructElem - /S /Link - /P 956 0 R - /K [65 << - /Type /OBJR - /Pg 4985 0 R - /Obj 4980 0 R - >>] - /Pg 4985 0 R ->> -endobj - -959 0 obj -<< - /Type /StructElem - /S /Strong - /P 956 0 R - /K [61] - /Pg 4985 0 R ->> -endobj - -960 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [964 0 R 48 963 0 R 50 962 0 R 54 961 0 R 56 57 58 59 60] - /Pg 4985 0 R ->> -endobj - -961 0 obj -<< - /Type /StructElem - /S /Formula - /P 960 0 R - /K [55] - /Pg 4985 0 R ->> -endobj - -962 0 obj -<< - /Type /StructElem - /S /Formula - /P 960 0 R - /K [51 52 53] - /Pg 4985 0 R ->> -endobj - -963 0 obj -<< - /Type /StructElem - /S /Formula - /P 960 0 R - /K [49] - /Pg 4985 0 R ->> -endobj - -964 0 obj -<< - /Type /StructElem - /S /Strong - /P 960 0 R - /K [47] - /Pg 4985 0 R ->> -endobj - -965 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [34 969 0 R 36 37 968 0 R 39 967 0 R 41 42 966 0 R 44 45 46] - /Pg 4985 0 R ->> -endobj - -966 0 obj -<< - /Type /StructElem - /S /Link - /P 965 0 R - /K [43 << - /Type /OBJR - /Pg 4985 0 R - /Obj 4979 0 R - >>] - /Pg 4985 0 R ->> -endobj - -967 0 obj -<< - /Type /StructElem - /S /Em - /P 965 0 R - /K [40] - /Pg 4985 0 R ->> -endobj - -968 0 obj -<< - /Type /StructElem - /S /Em - /P 965 0 R - /K [38] - /Pg 4985 0 R ->> -endobj - -969 0 obj -<< - /Type /StructElem - /S /Em - /P 965 0 R - /K [35] - /Pg 4985 0 R ->> -endobj - -970 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [972 0 R 26 971 0 R 28 29 30 31 32 33] - /Pg 4985 0 R ->> -endobj - -971 0 obj -<< - /Type /StructElem - /S /Formula - /P 970 0 R - /K [27] - /Pg 4985 0 R ->> -endobj - -972 0 obj -<< - /Type /StructElem - /S /Strong - /P 970 0 R - /K [25] - /Pg 4985 0 R ->> -endobj - -973 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [978 0 R 3 977 0 R 5 6 7 8 976 0 R 10 11 975 0 R 18 19 20 21 974 0 R 23 24] - /Pg 4985 0 R ->> -endobj - -974 0 obj -<< - /Type /StructElem - /S /Link - /P 973 0 R - /K [22 << - /Type /OBJR - /Pg 4985 0 R - /Obj 4978 0 R - >>] - /Pg 4985 0 R ->> -endobj - -975 0 obj -<< - /Type /StructElem - /S /Formula - /P 973 0 R - /K [12 13 14 15 16 17] - /Pg 4985 0 R ->> -endobj - -976 0 obj -<< - /Type /StructElem - /S /Formula - /P 973 0 R - /K [9] - /Pg 4985 0 R ->> -endobj - -977 0 obj -<< - /Type /StructElem - /S /Formula - /P 973 0 R - /K [4] - /Pg 4985 0 R ->> -endobj - -978 0 obj -<< - /Type /StructElem - /S /Strong - /P 973 0 R - /K [2] - /Pg 4985 0 R ->> -endobj - -979 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [63 64 982 0 R 66 981 0 R 68 980 0 R 71 << - /Type /MCR - /MCID 0 - /Pg 4985 0 R - >> << - /Type /MCR - /MCID 1 - /Pg 4985 0 R - >>] - /Pg 4976 0 R ->> -endobj - -980 0 obj -<< - /Type /StructElem - /S /Formula - /P 979 0 R - /K [69 70] - /Pg 4976 0 R ->> -endobj - -981 0 obj -<< - /Type /StructElem - /S /Formula - /P 979 0 R - /K [67] - /Pg 4976 0 R ->> -endobj - -982 0 obj -<< - /Type /StructElem - /S /Formula - /P 979 0 R - /K [65] - /Pg 4976 0 R ->> -endobj - -983 0 obj -<< - /Type /StructElem - /S /H2 - /P 103 0 R - /T (Dependency Typing and Versioning) - /K [61 62] - /Pg 4976 0 R ->> -endobj - -984 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [53 54 55 56 57 58 59 60] - /Pg 4976 0 R ->> -endobj - -985 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [38 39 40 987 0 R 42 43 986 0 R 45 46 47 48 49 50 51 52] - /Pg 4976 0 R ->> -endobj - -986 0 obj -<< - /Type /StructElem - /S /Formula - /P 985 0 R - /K [44] - /Pg 4976 0 R ->> -endobj - -987 0 obj -<< - /Type /StructElem - /S /Formula - /P 985 0 R - /K [41] - /Pg 4976 0 R ->> -endobj - -988 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [26 27 28 29 30 31 32 33 34 35 36 37] - /Pg 4976 0 R ->> -endobj - -989 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [10 11 995 0 R 13 994 0 R 15 993 0 R 17 992 0 R 19 991 0 R 21 990 0 R 23 24 25] - /Pg 4976 0 R ->> -endobj - -990 0 obj -<< - /Type /StructElem - /S /Formula - /P 989 0 R - /K [22] - /Pg 4976 0 R ->> -endobj - -991 0 obj -<< - /Type /StructElem - /S /Formula - /P 989 0 R - /K [20] - /Pg 4976 0 R ->> -endobj - -992 0 obj -<< - /Type /StructElem - /S /Formula - /P 989 0 R - /K [18] - /Pg 4976 0 R ->> -endobj - -993 0 obj -<< - /Type /StructElem - /S /Formula - /P 989 0 R - /K [16] - /Pg 4976 0 R ->> -endobj - -994 0 obj -<< - /Type /StructElem - /S /Formula - /P 989 0 R - /K [14] - /Pg 4976 0 R ->> -endobj - -995 0 obj -<< - /Type /StructElem - /S /Formula - /P 989 0 R - /K [12] - /Pg 4976 0 R ->> -endobj - -996 0 obj -<< - /Type /StructElem - /S /H2 - /P 103 0 R - /T (Mutual Dependencies and Component Granularity) - /K [8 9] - /Pg 4976 0 R ->> -endobj - -997 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [108 109 110 999 0 R 112 113 << - /Type /MCR - /MCID 0 - /Pg 4976 0 R - >> << - /Type /MCR - /MCID 1 - /Pg 4976 0 R - >> << - /Type /MCR - /MCID 2 - /Pg 4976 0 R - >> 998 0 R << - /Type /MCR - /MCID 4 - /Pg 4976 0 R - >> << - /Type /MCR - /MCID 5 - /Pg 4976 0 R - >> << - /Type /MCR - /MCID 6 - /Pg 4976 0 R - >> << - /Type /MCR - /MCID 7 - /Pg 4976 0 R - >>] - /Pg 4973 0 R ->> -endobj - -998 0 obj -<< - /Type /StructElem - /S /Link - /P 997 0 R - /K [3 << - /Type /OBJR - /Pg 4976 0 R - /Obj 4975 0 R - >>] - /Pg 4976 0 R ->> -endobj - -999 0 obj -<< - /Type /StructElem - /S /Link - /P 997 0 R - /K [111 << - /Type /OBJR - /Pg 4973 0 R - /Obj 4971 0 R - >>] - /Pg 4973 0 R ->> -endobj - -1000 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [84 85 86 87 1006 0 R 89 90 1005 0 R 92 93 94 1004 0 R 96 97 1003 0 R 99 100 101 1002 0 R 103 1001 0 R 105 106 107] - /Pg 4973 0 R ->> -endobj - -1001 0 obj -<< - /Type /StructElem - /S /Link - /P 1000 0 R - /K [104 << - /Type /OBJR - /Pg 4973 0 R - /Obj 4970 0 R - >>] - /Pg 4973 0 R ->> -endobj - -1002 0 obj -<< - /Type /StructElem - /S /Link - /P 1000 0 R - /K [102 << - /Type /OBJR - /Pg 4973 0 R - /Obj 4969 0 R - >>] - /Pg 4973 0 R ->> -endobj - -1003 0 obj -<< - /Type /StructElem - /S /Link - /P 1000 0 R - /K [98 << - /Type /OBJR - /Pg 4973 0 R - /Obj 4968 0 R - >>] - /Pg 4973 0 R ->> -endobj - -1004 0 obj -<< - /Type /StructElem - /S /Code - /P 1000 0 R - /K [95] - /Pg 4973 0 R ->> -endobj - -1005 0 obj -<< - /Type /StructElem - /S /Link - /P 1000 0 R - /K [91 << - /Type /OBJR - /Pg 4973 0 R - /Obj 4967 0 R - >>] - /Pg 4973 0 R ->> -endobj - -1006 0 obj -<< - /Type /StructElem - /S /Code - /P 1000 0 R - /K [88] - /Pg 4973 0 R ->> -endobj - -1007 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [56 57 58 1014 0 R 60 61 1013 0 R 63 64 65 66 1012 0 R 68 69 70 1011 0 R 72 1010 0 R 74 75 1009 0 R 77 78 79 1008 0 R 81 82 83] - /Pg 4973 0 R ->> -endobj - -1008 0 obj -<< - /Type /StructElem - /S /Link - /P 1007 0 R - /K [80 << - /Type /OBJR - /Pg 4973 0 R - /Obj 4966 0 R - >>] - /Pg 4973 0 R ->> -endobj - -1009 0 obj -<< - /Type /StructElem - /S /Link - /P 1007 0 R - /K [76 << - /Type /OBJR - /Pg 4973 0 R - /Obj 4965 0 R - >>] - /Pg 4973 0 R ->> -endobj - -1010 0 obj -<< - /Type /StructElem - /S /Code - /P 1007 0 R - /K [73] - /Pg 4973 0 R ->> -endobj - -1011 0 obj -<< - /Type /StructElem - /S /Code - /P 1007 0 R - /K [71] - /Pg 4973 0 R ->> -endobj - -1012 0 obj -<< - /Type /StructElem - /S /Link - /P 1007 0 R - /K [67 << - /Type /OBJR - /Pg 4973 0 R - /Obj 4964 0 R - >>] - /Pg 4973 0 R ->> -endobj - -1013 0 obj -<< - /Type /StructElem - /S /Link - /P 1007 0 R - /K [62 << - /Type /OBJR - /Pg 4973 0 R - /Obj 4963 0 R - >>] - /Pg 4973 0 R ->> -endobj - -1014 0 obj -<< - /Type /StructElem - /S /Link - /P 1007 0 R - /K [59 << - /Type /OBJR - /Pg 4973 0 R - /Obj 4962 0 R - >>] - /Pg 4973 0 R ->> -endobj - -1015 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [1019 0 R 44 45 46 47 1018 0 R 49 50 51 1017 0 R 53 1016 0 R 55] - /Pg 4973 0 R ->> -endobj - -1016 0 obj -<< - /Type /StructElem - /S /Em - /P 1015 0 R - /K [54] - /Pg 4973 0 R ->> -endobj - -1017 0 obj -<< - /Type /StructElem - /S /Em - /P 1015 0 R - /K [52] - /Pg 4973 0 R ->> -endobj - -1018 0 obj -<< - /Type /StructElem - /S /Link - /P 1015 0 R - /K [48 << - /Type /OBJR - /Pg 4973 0 R - /Obj 4961 0 R - >>] - /Pg 4973 0 R ->> -endobj - -1019 0 obj -<< - /Type /StructElem - /S /Strong - /P 1015 0 R - /K [43] - /Pg 4973 0 R ->> -endobj - -1020 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [18 19 20 21 1031 0 R 1026 0 R 23 24 1025 0 R 26 1024 0 R 28 29 1023 0 R 31 1022 0 R 33 34 1021 0 R 36 37 38 39 40 41 42] - /Pg 4973 0 R ->> -endobj - -1021 0 obj -<< - /Type /StructElem - /S /Link - /P 1020 0 R - /K [35 << - /Type /OBJR - /Pg 4973 0 R - /Obj 4960 0 R - >>] - /Pg 4973 0 R ->> -endobj - -1022 0 obj -<< - /Type /StructElem - /S /Code - /P 1020 0 R - /K [32] - /Pg 4973 0 R ->> -endobj - -1023 0 obj -<< - /Type /StructElem - /S /Code - /P 1020 0 R - /K [30] - /Pg 4973 0 R ->> -endobj - -1024 0 obj -<< - /Type /StructElem - /S /Code - /P 1020 0 R - /K [27] - /Pg 4973 0 R ->> -endobj - -1025 0 obj -<< - /Type /StructElem - /S /Code - /P 1020 0 R - /K [25] - /Pg 4973 0 R ->> -endobj - -1026 0 obj -<< - /Type /StructElem - /S /Note - /P 1020 0 R - /ID (Note 6) - /K [1028 0 R 115 1027 0 R 117 118] - /Pg 4973 0 R ->> -endobj - -1027 0 obj -<< - /Type /StructElem - /S /Code - /P 1026 0 R - /K [116] - /Pg 4973 0 R ->> -endobj - -1028 0 obj -<< - /Type /StructElem - /S /Lbl - /P 1026 0 R - /K [1029 0 R] ->> -endobj - -1029 0 obj -<< - /Type /StructElem - /S /Link - /P 1028 0 R - /K [<< - /Type /OBJR - /Pg 4973 0 R - /Obj 4972 0 R - >> 1030 0 R] ->> -endobj - -1030 0 obj -<< - /Type /StructElem - /S /Span - /P 1029 0 R - /A [<< - /O /Layout - /BaselineShift 2.5866 - /LineHeight 3.24 - >>] - /K [114] - /Pg 4973 0 R ->> -endobj - -1031 0 obj -<< - /Type /StructElem - /S /Lbl - /P 1020 0 R - /K [1032 0 R] ->> -endobj - -1032 0 obj -<< - /Type /StructElem - /S /Link - /P 1031 0 R - /K [<< - /Type /OBJR - /Pg 4973 0 R - /Obj 4959 0 R - >> 1033 0 R] ->> -endobj - -1033 0 obj -<< - /Type /StructElem - /S /Span - /P 1032 0 R - /A [<< - /O /Layout - /BaselineShift 3.1614 - /LineHeight 3.96 - >>] - /K [22] - /Pg 4973 0 R ->> -endobj - -1034 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [1036 0 R 12 1035 0 R 14 15 16 17] - /Pg 4973 0 R ->> -endobj - -1035 0 obj -<< - /Type /StructElem - /S /Em - /P 1034 0 R - /K [13] - /Pg 4973 0 R ->> -endobj - -1036 0 obj -<< - /Type /StructElem - /S /Strong - /P 1034 0 R - /K [11] - /Pg 4973 0 R ->> -endobj - -1037 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [7 8 9 10] - /Pg 4973 0 R ->> -endobj - -1038 0 obj -<< - /Type /StructElem - /S /H2 - /P 103 0 R - /T (Language Independence and Selection) - /K [5 6] - /Pg 4973 0 R ->> -endobj - -1039 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [1043 0 R 60 61 62 63 64 65 66 1042 0 R 68 69 70 71 1041 0 R 73 74 75 << - /Type /MCR - /MCID 0 - /Pg 4973 0 R - >> 1040 0 R << - /Type /MCR - /MCID 2 - /Pg 4973 0 R - >> << - /Type /MCR - /MCID 3 - /Pg 4973 0 R - >> << - /Type /MCR - /MCID 4 - /Pg 4973 0 R - >>] - /Pg 4956 0 R ->> -endobj - -1040 0 obj -<< - /Type /StructElem - /S /Link - /P 1039 0 R - /K [1 << - /Type /OBJR - /Pg 4973 0 R - /Obj 4958 0 R - >>] - /Pg 4973 0 R ->> -endobj - -1041 0 obj -<< - /Type /StructElem - /S /Link - /P 1039 0 R - /K [72 << - /Type /OBJR - /Pg 4956 0 R - /Obj 4955 0 R - >>] - /Pg 4956 0 R ->> -endobj - -1042 0 obj -<< - /Type /StructElem - /S /Link - /P 1039 0 R - /K [67 << - /Type /OBJR - /Pg 4956 0 R - /Obj 4954 0 R - >>] - /Pg 4956 0 R ->> -endobj - -1043 0 obj -<< - /Type /StructElem - /S /Strong - /P 1039 0 R - /K [59] - /Pg 4956 0 R ->> -endobj - -1044 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [46 47 1045 0 R 49 50 51 52 53 54 55 56 57 58] - /Pg 4956 0 R ->> -endobj - -1045 0 obj -<< - /Type /StructElem - /S /Link - /P 1044 0 R - /K [48 << - /Type /OBJR - /Pg 4956 0 R - /Obj 4953 0 R - >>] - /Pg 4956 0 R ->> -endobj - -1046 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [1051 0 R 27 1050 0 R 29 30 31 32 33 1049 0 R 35 1048 0 R 37 38 39 1047 0 R 41 42 43 44 45] - /Pg 4956 0 R ->> -endobj - -1047 0 obj -<< - /Type /StructElem - /S /Code - /P 1046 0 R - /K [40] - /Pg 4956 0 R ->> -endobj - -1048 0 obj -<< - /Type /StructElem - /S /Link - /P 1046 0 R - /K [36 << - /Type /OBJR - /Pg 4956 0 R - /Obj 4952 0 R - >>] - /Pg 4956 0 R ->> -endobj - -1049 0 obj -<< - /Type /StructElem - /S /Link - /P 1046 0 R - /K [34 << - /Type /OBJR - /Pg 4956 0 R - /Obj 4951 0 R - >>] - /Pg 4956 0 R ->> -endobj - -1050 0 obj -<< - /Type /StructElem - /S /Link - /P 1046 0 R - /K [28 << - /Type /OBJR - /Pg 4956 0 R - /Obj 4950 0 R - >>] - /Pg 4956 0 R ->> -endobj - -1051 0 obj -<< - /Type /StructElem - /S /Strong - /P 1046 0 R - /K [26] - /Pg 4956 0 R ->> -endobj - -1052 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [21 22 23 24 25] - /Pg 4956 0 R ->> -endobj - -1053 0 obj -<< - /Type /StructElem - /S /H2 - /P 103 0 R - /T (Access Control and Sandboxing) - /K [19 20] - /Pg 4956 0 R ->> -endobj - -1054 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [1056 0 R 8 9 1055 0 R 11 12 13 14 15 16 17 18] - /Pg 4956 0 R ->> -endobj - -1055 0 obj -<< - /Type /StructElem - /S /Link - /P 1054 0 R - /K [10 << - /Type /OBJR - /Pg 4956 0 R - /Obj 4949 0 R - >>] - /Pg 4956 0 R ->> -endobj - -1056 0 obj -<< - /Type /StructElem - /S /Strong - /P 1054 0 R - /K [7] - /Pg 4956 0 R ->> -endobj - -1057 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [1061 0 R 66 67 68 1060 0 R 70 1059 0 R 72 73 << - /Type /MCR - /MCID 0 - /Pg 4956 0 R - >> 1058 0 R << - /Type /MCR - /MCID 2 - /Pg 4956 0 R - >> << - /Type /MCR - /MCID 3 - /Pg 4956 0 R - >> << - /Type /MCR - /MCID 4 - /Pg 4956 0 R - >> << - /Type /MCR - /MCID 5 - /Pg 4956 0 R - >> << - /Type /MCR - /MCID 6 - /Pg 4956 0 R - >>] - /Pg 4947 0 R ->> -endobj - -1058 0 obj -<< - /Type /StructElem - /S /Code - /P 1057 0 R - /K [1] - /Pg 4956 0 R ->> -endobj - -1059 0 obj -<< - /Type /StructElem - /S /Link - /P 1057 0 R - /K [71 << - /Type /OBJR - /Pg 4947 0 R - /Obj 4946 0 R - >>] - /Pg 4947 0 R ->> -endobj - -1060 0 obj -<< - /Type /StructElem - /S /Link - /P 1057 0 R - /K [69 << - /Type /OBJR - /Pg 4947 0 R - /Obj 4945 0 R - >>] - /Pg 4947 0 R ->> -endobj - -1061 0 obj -<< - /Type /StructElem - /S /Strong - /P 1057 0 R - /K [65] - /Pg 4947 0 R ->> -endobj - -1062 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [1063 0 R 59 60 61 62 63 64] - /Pg 4947 0 R ->> -endobj - -1063 0 obj -<< - /Type /StructElem - /S /Strong - /P 1062 0 R - /K [58] - /Pg 4947 0 R ->> -endobj - -1064 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [56 57] - /Pg 4947 0 R ->> -endobj - -1065 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [25 26 1073 0 R 28 29 1072 0 R 31 32 33 34 1071 0 R 36 1070 0 R 38 1069 0 R 40 41 1068 0 R 43 44 1067 0 R 46 47 48 49 1066 0 R 51 52 53 54 55] - /Pg 4947 0 R ->> -endobj - -1066 0 obj -<< - /Type /StructElem - /S /Em - /P 1065 0 R - /K [50] - /Pg 4947 0 R ->> -endobj - -1067 0 obj -<< - /Type /StructElem - /S /Em - /P 1065 0 R - /K [45] - /Pg 4947 0 R ->> -endobj - -1068 0 obj -<< - /Type /StructElem - /S /Em - /P 1065 0 R - /K [42] - /Pg 4947 0 R ->> -endobj - -1069 0 obj -<< - /Type /StructElem - /S /Code - /P 1065 0 R - /K [39] - /Pg 4947 0 R ->> -endobj - -1070 0 obj -<< - /Type /StructElem - /S /Em - /P 1065 0 R - /K [37] - /Pg 4947 0 R ->> -endobj - -1071 0 obj -<< - /Type /StructElem - /S /Code - /P 1065 0 R - /K [35] - /Pg 4947 0 R ->> -endobj - -1072 0 obj -<< - /Type /StructElem - /S /Em - /P 1065 0 R - /K [30] - /Pg 4947 0 R ->> -endobj - -1073 0 obj -<< - /Type /StructElem - /S /Link - /P 1065 0 R - /K [27 << - /Type /OBJR - /Pg 4947 0 R - /Obj 4944 0 R - >>] - /Pg 4947 0 R ->> -endobj - -1074 0 obj -<< - /Type /StructElem - /S /H2 - /P 103 0 R - /T (Service Multiplexing) - /K [23 24] - /Pg 4947 0 R ->> -endobj - -1075 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [18 19 20 21 22] - /Pg 4947 0 R ->> -endobj - -1076 0 obj -<< - /Type /StructElem - /S /H1 - /P 103 0 R - /T (Discussion) - /K [16 17] - /Pg 4947 0 R ->> -endobj - -1077 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [1078 0 R 9 10 11 12 13 14 15] - /Pg 4947 0 R ->> -endobj - -1078 0 obj -<< - /Type /StructElem - /S /Strong - /P 1077 0 R - /K [8] - /Pg 4947 0 R ->> -endobj - -1079 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [1082 0 R 66 1081 0 R 68 69 70 71 << - /Type /MCR - /MCID 0 - /Pg 4947 0 R - >> << - /Type /MCR - /MCID 1 - /Pg 4947 0 R - >> 1080 0 R << - /Type /MCR - /MCID 3 - /Pg 4947 0 R - >> << - /Type /MCR - /MCID 4 - /Pg 4947 0 R - >> << - /Type /MCR - /MCID 5 - /Pg 4947 0 R - >> << - /Type /MCR - /MCID 6 - /Pg 4947 0 R - >> << - /Type /MCR - /MCID 7 - /Pg 4947 0 R - >>] - /Pg 4941 0 R ->> -endobj - -1080 0 obj -<< - /Type /StructElem - /S /Link - /P 1079 0 R - /K [2 << - /Type /OBJR - /Pg 4947 0 R - /Obj 4943 0 R - >>] - /Pg 4947 0 R ->> -endobj - -1081 0 obj -<< - /Type /StructElem - /S /Link - /P 1079 0 R - /K [67 << - /Type /OBJR - /Pg 4941 0 R - /Obj 4938 0 R - >>] - /Pg 4941 0 R ->> -endobj - -1082 0 obj -<< - /Type /StructElem - /S /Strong - /P 1079 0 R - /K [65] - /Pg 4941 0 R ->> -endobj - -1083 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [1087 0 R 48 1086 0 R 50 51 52 53 54 55 56 57 1085 0 R 59 60 61 1084 0 R 63 64] - /Pg 4941 0 R ->> -endobj - -1084 0 obj -<< - /Type /StructElem - /S /Link - /P 1083 0 R - /K [62 << - /Type /OBJR - /Pg 4941 0 R - /Obj 4937 0 R - >>] - /Pg 4941 0 R ->> -endobj - -1085 0 obj -<< - /Type /StructElem - /S /Link - /P 1083 0 R - /K [58 << - /Type /OBJR - /Pg 4941 0 R - /Obj 4936 0 R - >>] - /Pg 4941 0 R ->> -endobj - -1086 0 obj -<< - /Type /StructElem - /S /Link - /P 1083 0 R - /K [49 << - /Type /OBJR - /Pg 4941 0 R - /Obj 4935 0 R - >>] - /Pg 4941 0 R ->> -endobj - -1087 0 obj -<< - /Type /StructElem - /S /Strong - /P 1083 0 R - /K [47] - /Pg 4941 0 R ->> -endobj - -1088 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [1091 0 R 33 34 1090 0 R 36 37 38 39 40 1089 0 R 42 43 44 45 46] - /Pg 4941 0 R ->> -endobj - -1089 0 obj -<< - /Type /StructElem - /S /Link - /P 1088 0 R - /K [41 << - /Type /OBJR - /Pg 4941 0 R - /Obj 4934 0 R - >>] - /Pg 4941 0 R ->> -endobj - -1090 0 obj -<< - /Type /StructElem - /S /Link - /P 1088 0 R - /K [35 << - /Type /OBJR - /Pg 4941 0 R - /Obj 4933 0 R - >>] - /Pg 4941 0 R ->> -endobj - -1091 0 obj -<< - /Type /StructElem - /S /Strong - /P 1088 0 R - /K [32] - /Pg 4941 0 R ->> -endobj - -1092 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [23 1106 0 R 1102 0 R 25 26 1099 0 R 1093 0 R 28 29 30 31] - /Pg 4941 0 R ->> -endobj - -1093 0 obj -<< - /Type /StructElem - /S /Note - /P 1092 0 R - /ID (Note 5) - /K [1096 0 R 76 1095 0 R 78 1094 0 R 80] - /Pg 4941 0 R ->> -endobj - -1094 0 obj -<< - /Type /StructElem - /S /Em - /P 1093 0 R - /K [79] - /Pg 4941 0 R ->> -endobj - -1095 0 obj -<< - /Type /StructElem - /S /Em - /P 1093 0 R - /K [77] - /Pg 4941 0 R ->> -endobj - -1096 0 obj -<< - /Type /StructElem - /S /Lbl - /P 1093 0 R - /K [1097 0 R] ->> -endobj - -1097 0 obj -<< - /Type /StructElem - /S /Link - /P 1096 0 R - /K [<< - /Type /OBJR - /Pg 4941 0 R - /Obj 4940 0 R - >> 1098 0 R] ->> -endobj - -1098 0 obj -<< - /Type /StructElem - /S /Span - /P 1097 0 R - /A [<< - /O /Layout - /BaselineShift 2.5866 - /LineHeight 3.24 - >>] - /K [75] - /Pg 4941 0 R ->> -endobj - -1099 0 obj -<< - /Type /StructElem - /S /Lbl - /P 1092 0 R - /K [1100 0 R] ->> -endobj - -1100 0 obj -<< - /Type /StructElem - /S /Link - /P 1099 0 R - /K [<< - /Type /OBJR - /Pg 4941 0 R - /Obj 4932 0 R - >> 1101 0 R] ->> -endobj - -1101 0 obj -<< - /Type /StructElem - /S /Span - /P 1100 0 R - /A [<< - /O /Layout - /BaselineShift 3.1614 - /LineHeight 3.96 - >>] - /K [27] - /Pg 4941 0 R ->> -endobj - -1102 0 obj -<< - /Type /StructElem - /S /Note - /P 1092 0 R - /ID (Note 4) - /K [1103 0 R 73 74] - /Pg 4941 0 R ->> -endobj - -1103 0 obj -<< - /Type /StructElem - /S /Lbl - /P 1102 0 R - /K [1104 0 R] ->> -endobj - -1104 0 obj -<< - /Type /StructElem - /S /Link - /P 1103 0 R - /K [<< - /Type /OBJR - /Pg 4941 0 R - /Obj 4939 0 R - >> 1105 0 R] ->> -endobj - -1105 0 obj -<< - /Type /StructElem - /S /Span - /P 1104 0 R - /A [<< - /O /Layout - /BaselineShift 2.5866 - /LineHeight 3.24 - >>] - /K [72] - /Pg 4941 0 R ->> -endobj - -1106 0 obj -<< - /Type /StructElem - /S /Lbl - /P 1092 0 R - /K [1107 0 R] ->> -endobj - -1107 0 obj -<< - /Type /StructElem - /S /Link - /P 1106 0 R - /K [<< - /Type /OBJR - /Pg 4941 0 R - /Obj 4931 0 R - >> 1108 0 R] ->> -endobj - -1108 0 obj -<< - /Type /StructElem - /S /Span - /P 1107 0 R - /A [<< - /O /Layout - /BaselineShift 3.1614 - /LineHeight 3.96 - >>] - /K [24] - /Pg 4941 0 R ->> -endobj - -1109 0 obj -<< - /Type /StructElem - /S /H2 - /P 103 0 R - /T (Case Study: Koishi) - /K [21 22] - /Pg 4941 0 R ->> -endobj - -1110 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [15 16 17 1111 0 R 19 20] - /Pg 4941 0 R ->> -endobj - -1111 0 obj -<< - /Type /StructElem - /S /Code - /P 1110 0 R - /K [18] - /Pg 4941 0 R ->> -endobj - -1112 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [1207 0 R 1113 0 R] ->> -endobj - -1113 0 obj -<< - /Type /StructElem - /S /Div - /P 1112 0 R - /K [1206 0 R 1204 0 R 1201 0 R 1199 0 R 1198 0 R 1197 0 R 1193 0 R 1191 0 R 1190 0 R 1188 0 R 1186 0 R 1185 0 R 1184 0 R 1183 0 R 1178 0 R 1176 0 R 1175 0 R 1174 0 R 1173 0 R 1172 0 R 1170 0 R 1168 0 R 1167 0 R 1166 0 R 1165 0 R 1161 0 R 1159 0 R 1158 0 R 1155 0 R 1153 0 R 1152 0 R 1151 0 R 1150 0 R 1148 0 R 1146 0 R 1145 0 R 1144 0 R 1139 0 R 1137 0 R 1136 0 R 1135 0 R 1134 0 R 1133 0 R 1131 0 R 1129 0 R 1128 0 R 1127 0 R 1126 0 R 1122 0 R 1120 0 R 1119 0 R 1118 0 R 1115 0 R 1114 0 R] ->> -endobj - -1114 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [] ->> -endobj - -1115 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [1117 0 R 1116 0 R] ->> -endobj - -1116 0 obj -<< - /Type /StructElem - /S /Span - /P 1115 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [14] - /Pg 4941 0 R ->> -endobj - -1117 0 obj -<< - /Type /StructElem - /S /Strong - /P 1115 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [13] - /Pg 4941 0 R ->> -endobj - -1118 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [] ->> -endobj - -1119 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [] ->> -endobj - -1120 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [1121 0 R] ->> -endobj - -1121 0 obj -<< - /Type /StructElem - /S /Span - /P 1120 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [12] - /Pg 4941 0 R ->> -endobj - -1122 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [1125 0 R 1124 0 R 1123 0 R] ->> -endobj - -1123 0 obj -<< - /Type /StructElem - /S /Span - /P 1122 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [11] - /Pg 4941 0 R ->> -endobj - -1124 0 obj -<< - /Type /StructElem - /S /Formula - /P 1122 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [10] - /Pg 4941 0 R ->> -endobj - -1125 0 obj -<< - /Type /StructElem - /S /Span - /P 1122 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [9] - /Pg 4941 0 R ->> -endobj - -1126 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [] ->> -endobj - -1127 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [] ->> -endobj - -1128 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [] ->> -endobj - -1129 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [1130 0 R] ->> -endobj - -1130 0 obj -<< - /Type /StructElem - /S /Span - /P 1129 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [8] - /Pg 4941 0 R ->> -endobj - -1131 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [1132 0 R] ->> -endobj - -1132 0 obj -<< - /Type /StructElem - /S /Span - /P 1131 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [7] - /Pg 4941 0 R ->> -endobj - -1133 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [] ->> -endobj - -1134 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [] ->> -endobj - -1135 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [] ->> -endobj - -1136 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [] ->> -endobj - -1137 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [1138 0 R] ->> -endobj - -1138 0 obj -<< - /Type /StructElem - /S /Span - /P 1137 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [6] - /Pg 4941 0 R ->> -endobj - -1139 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [1143 0 R 1142 0 R 1141 0 R 1140 0 R] ->> -endobj - -1140 0 obj -<< - /Type /StructElem - /S /Span - /P 1139 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [2 4] - /Pg 4941 0 R ->> -endobj - -1141 0 obj -<< - /Type /StructElem - /S /Strong - /P 1139 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [5] - /Pg 4941 0 R ->> -endobj - -1142 0 obj -<< - /Type /StructElem - /S /Strong - /P 1139 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [3] - /Pg 4941 0 R ->> -endobj - -1143 0 obj -<< - /Type /StructElem - /S /Strong - /P 1139 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [1] - /Pg 4941 0 R ->> -endobj - -1144 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [] ->> -endobj - -1145 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [] ->> -endobj - -1146 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [1147 0 R] ->> -endobj - -1147 0 obj -<< - /Type /StructElem - /S /Span - /P 1146 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [0] - /Pg 4941 0 R ->> -endobj - -1148 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [1149 0 R] ->> -endobj - -1149 0 obj -<< - /Type /StructElem - /S /Span - /P 1148 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [147] - /Pg 4929 0 R ->> -endobj - -1150 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [] ->> -endobj - -1151 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [] ->> -endobj - -1152 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [] ->> -endobj - -1153 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [1154 0 R] ->> -endobj - -1154 0 obj -<< - /Type /StructElem - /S /Span - /P 1153 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [146] - /Pg 4929 0 R ->> -endobj - -1155 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [1157 0 R 1156 0 R] ->> -endobj - -1156 0 obj -<< - /Type /StructElem - /S /Span - /P 1155 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [145] - /Pg 4929 0 R ->> -endobj - -1157 0 obj -<< - /Type /StructElem - /S /Strong - /P 1155 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [144] - /Pg 4929 0 R ->> -endobj - -1158 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [] ->> -endobj - -1159 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [1160 0 R] ->> -endobj - -1160 0 obj -<< - /Type /StructElem - /S /Span - /P 1159 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [143] - /Pg 4929 0 R ->> -endobj - -1161 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [1164 0 R 1163 0 R 1162 0 R] ->> -endobj - -1162 0 obj -<< - /Type /StructElem - /S /Span - /P 1161 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [142] - /Pg 4929 0 R ->> -endobj - -1163 0 obj -<< - /Type /StructElem - /S /Formula - /P 1161 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [141] - /Pg 4929 0 R ->> -endobj - -1164 0 obj -<< - /Type /StructElem - /S /Span - /P 1161 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [140] - /Pg 4929 0 R ->> -endobj - -1165 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [] ->> -endobj - -1166 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [] ->> -endobj - -1167 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [] ->> -endobj - -1168 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [1169 0 R] ->> -endobj - -1169 0 obj -<< - /Type /StructElem - /S /Span - /P 1168 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [139] - /Pg 4929 0 R ->> -endobj - -1170 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [1171 0 R] ->> -endobj - -1171 0 obj -<< - /Type /StructElem - /S /Span - /P 1170 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [138] - /Pg 4929 0 R ->> -endobj - -1172 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [] ->> -endobj - -1173 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [] ->> -endobj - -1174 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [] ->> -endobj - -1175 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [] ->> -endobj - -1176 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [1177 0 R] ->> -endobj - -1177 0 obj -<< - /Type /StructElem - /S /Span - /P 1176 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [137] - /Pg 4929 0 R ->> -endobj - -1178 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [1182 0 R 1181 0 R 1180 0 R 1179 0 R] ->> -endobj - -1179 0 obj -<< - /Type /StructElem - /S /Span - /P 1178 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [133 135] - /Pg 4929 0 R ->> -endobj - -1180 0 obj -<< - /Type /StructElem - /S /Strong - /P 1178 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [136] - /Pg 4929 0 R ->> -endobj - -1181 0 obj -<< - /Type /StructElem - /S /Strong - /P 1178 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [134] - /Pg 4929 0 R ->> -endobj - -1182 0 obj -<< - /Type /StructElem - /S /Strong - /P 1178 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [132] - /Pg 4929 0 R ->> -endobj - -1183 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [] ->> -endobj - -1184 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [] ->> -endobj - -1185 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [] ->> -endobj - -1186 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [1187 0 R] ->> -endobj - -1187 0 obj -<< - /Type /StructElem - /S /Span - /P 1186 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [131] - /Pg 4929 0 R ->> -endobj - -1188 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [1189 0 R] ->> -endobj - -1189 0 obj -<< - /Type /StructElem - /S /Strong - /P 1188 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [130] - /Pg 4929 0 R ->> -endobj - -1190 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [] ->> -endobj - -1191 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [1192 0 R] ->> -endobj - -1192 0 obj -<< - /Type /StructElem - /S /Span - /P 1191 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [129] - /Pg 4929 0 R ->> -endobj - -1193 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [1196 0 R 1195 0 R 1194 0 R] ->> -endobj - -1194 0 obj -<< - /Type /StructElem - /S /Span - /P 1193 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [128] - /Pg 4929 0 R ->> -endobj - -1195 0 obj -<< - /Type /StructElem - /S /Formula - /P 1193 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [127] - /Pg 4929 0 R ->> -endobj - -1196 0 obj -<< - /Type /StructElem - /S /Span - /P 1193 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [126] - /Pg 4929 0 R ->> -endobj - -1197 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [] ->> -endobj - -1198 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [] ->> -endobj - -1199 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [1200 0 R] ->> -endobj - -1200 0 obj -<< - /Type /StructElem - /S /Span - /P 1199 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [125] - /Pg 4929 0 R ->> -endobj - -1201 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [1203 0 R 1202 0 R] ->> -endobj - -1202 0 obj -<< - /Type /StructElem - /S /Span - /P 1201 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [124] - /Pg 4929 0 R ->> -endobj - -1203 0 obj -<< - /Type /StructElem - /S /Strong - /P 1201 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [123] - /Pg 4929 0 R ->> -endobj - -1204 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [1205 0 R] ->> -endobj - -1205 0 obj -<< - /Type /StructElem - /S /Span - /P 1204 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [122] - /Pg 4929 0 R ->> -endobj - -1206 0 obj -<< - /Type /StructElem - /S /Div - /P 1113 0 R - /K [] ->> -endobj - -1207 0 obj -<< - /Type /StructElem - /S /P - /P 1112 0 R - /K [1208 0 R 121] - /Pg 4929 0 R ->> -endobj - -1208 0 obj -<< - /Type /StructElem - /S /Strong - /P 1207 0 R - /K [120] - /Pg 4929 0 R ->> -endobj - -1209 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [1218 0 R 113 114 1215 0 R 1211 0 R 116 117 1210 0 R 119] - /Pg 4929 0 R ->> -endobj - -1210 0 obj -<< - /Type /StructElem - /S /Code - /P 1209 0 R - /K [118] - /Pg 4929 0 R ->> -endobj - -1211 0 obj -<< - /Type /StructElem - /S /Note - /P 1209 0 R - /ID (Note 3) - /K [1212 0 R 149 150] - /Pg 4929 0 R ->> -endobj - -1212 0 obj -<< - /Type /StructElem - /S /Lbl - /P 1211 0 R - /K [1213 0 R] ->> -endobj - -1213 0 obj -<< - /Type /StructElem - /S /Link - /P 1212 0 R - /K [<< - /Type /OBJR - /Pg 4929 0 R - /Obj 4928 0 R - >> 1214 0 R] ->> -endobj - -1214 0 obj -<< - /Type /StructElem - /S /Span - /P 1213 0 R - /A [<< - /O /Layout - /BaselineShift 2.5866 - /LineHeight 3.24 - >>] - /K [148] - /Pg 4929 0 R ->> -endobj - -1215 0 obj -<< - /Type /StructElem - /S /Lbl - /P 1209 0 R - /K [1216 0 R] ->> -endobj - -1216 0 obj -<< - /Type /StructElem - /S /Link - /P 1215 0 R - /K [<< - /Type /OBJR - /Pg 4929 0 R - /Obj 4927 0 R - >> 1217 0 R] ->> -endobj - -1217 0 obj -<< - /Type /StructElem - /S /Span - /P 1216 0 R - /A [<< - /O /Layout - /BaselineShift 3.1614 - /LineHeight 3.96 - >>] - /K [115] - /Pg 4929 0 R ->> -endobj - -1218 0 obj -<< - /Type /StructElem - /S /Strong - /P 1209 0 R - /K [112] - /Pg 4929 0 R ->> -endobj - -1219 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [107 1221 0 R 109 1220 0 R 111] - /Pg 4929 0 R ->> -endobj - -1220 0 obj -<< - /Type /StructElem - /S /Code - /P 1219 0 R - /K [110] - /Pg 4929 0 R ->> -endobj - -1221 0 obj -<< - /Type /StructElem - /S /Code - /P 1219 0 R - /K [108] - /Pg 4929 0 R ->> -endobj - -1222 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [1365 0 R 1223 0 R] ->> -endobj - -1223 0 obj -<< - /Type /StructElem - /S /Div - /P 1222 0 R - /K [1364 0 R 1362 0 R 1359 0 R 1357 0 R 1356 0 R 1355 0 R 1350 0 R 1348 0 R 1347 0 R 1344 0 R 1342 0 R 1341 0 R 1340 0 R 1339 0 R 1329 0 R 1327 0 R 1326 0 R 1325 0 R 1319 0 R 1317 0 R 1316 0 R 1315 0 R 1310 0 R 1308 0 R 1307 0 R 1305 0 R 1303 0 R 1302 0 R 1299 0 R 1297 0 R 1294 0 R 1292 0 R 1291 0 R 1290 0 R 1285 0 R 1283 0 R 1282 0 R 1277 0 R 1275 0 R 1274 0 R 1273 0 R 1272 0 R 1268 0 R 1266 0 R 1265 0 R 1264 0 R 1254 0 R 1252 0 R 1251 0 R 1250 0 R 1249 0 R 1248 0 R 1242 0 R 1240 0 R 1239 0 R 1238 0 R 1237 0 R 1231 0 R 1229 0 R 1228 0 R 1225 0 R 1224 0 R] ->> -endobj - -1224 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [] ->> -endobj - -1225 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [1227 0 R 1226 0 R] ->> -endobj - -1226 0 obj -<< - /Type /StructElem - /S /Span - /P 1225 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [106] - /Pg 4929 0 R ->> -endobj - -1227 0 obj -<< - /Type /StructElem - /S /Strong - /P 1225 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [105] - /Pg 4929 0 R ->> -endobj - -1228 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [] ->> -endobj - -1229 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [1230 0 R] ->> -endobj - -1230 0 obj -<< - /Type /StructElem - /S /Span - /P 1229 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [104] - /Pg 4929 0 R ->> -endobj - -1231 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [1236 0 R 1235 0 R 1234 0 R 1233 0 R 1232 0 R] ->> -endobj - -1232 0 obj -<< - /Type /StructElem - /S /Span - /P 1231 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [103] - /Pg 4929 0 R ->> -endobj - -1233 0 obj -<< - /Type /StructElem - /S /Formula - /P 1231 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [102] - /Pg 4929 0 R ->> -endobj - -1234 0 obj -<< - /Type /StructElem - /S /Span - /P 1231 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [101] - /Pg 4929 0 R ->> -endobj - -1235 0 obj -<< - /Type /StructElem - /S /Formula - /P 1231 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [100] - /Pg 4929 0 R ->> -endobj - -1236 0 obj -<< - /Type /StructElem - /S /Span - /P 1231 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [99] - /Pg 4929 0 R ->> -endobj - -1237 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [] ->> -endobj - -1238 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [] ->> -endobj - -1239 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [] ->> -endobj - -1240 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [1241 0 R] ->> -endobj - -1241 0 obj -<< - /Type /StructElem - /S /Span - /P 1240 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [98] - /Pg 4929 0 R ->> -endobj - -1242 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [1247 0 R 1246 0 R 1245 0 R 1244 0 R 1243 0 R] ->> -endobj - -1243 0 obj -<< - /Type /StructElem - /S /Span - /P 1242 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [97] - /Pg 4929 0 R ->> -endobj - -1244 0 obj -<< - /Type /StructElem - /S /Formula - /P 1242 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [96] - /Pg 4929 0 R ->> -endobj - -1245 0 obj -<< - /Type /StructElem - /S /Span - /P 1242 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [95] - /Pg 4929 0 R ->> -endobj - -1246 0 obj -<< - /Type /StructElem - /S /Formula - /P 1242 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [94] - /Pg 4929 0 R ->> -endobj - -1247 0 obj -<< - /Type /StructElem - /S /Span - /P 1242 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [93] - /Pg 4929 0 R ->> -endobj - -1248 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [] ->> -endobj - -1249 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [] ->> -endobj - -1250 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [] ->> -endobj - -1251 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [] ->> -endobj - -1252 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [1253 0 R] ->> -endobj - -1253 0 obj -<< - /Type /StructElem - /S /Span - /P 1252 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [92] - /Pg 4929 0 R ->> -endobj - -1254 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [1263 0 R 1262 0 R 1261 0 R 1260 0 R 1259 0 R 1258 0 R 1257 0 R 1256 0 R 1255 0 R] ->> -endobj - -1255 0 obj -<< - /Type /StructElem - /S /Span - /P 1254 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [90] - /Pg 4929 0 R ->> -endobj - -1256 0 obj -<< - /Type /StructElem - /S /Strong - /P 1254 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [91] - /Pg 4929 0 R ->> -endobj - -1257 0 obj -<< - /Type /StructElem - /S /Formula - /P 1254 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [89] - /Pg 4929 0 R ->> -endobj - -1258 0 obj -<< - /Type /StructElem - /S /Span - /P 1254 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [88] - /Pg 4929 0 R ->> -endobj - -1259 0 obj -<< - /Type /StructElem - /S /Formula - /P 1254 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [87] - /Pg 4929 0 R ->> -endobj - -1260 0 obj -<< - /Type /StructElem - /S /Span - /P 1254 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [86] - /Pg 4929 0 R ->> -endobj - -1261 0 obj -<< - /Type /StructElem - /S /Formula - /P 1254 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [85] - /Pg 4929 0 R ->> -endobj - -1262 0 obj -<< - /Type /StructElem - /S /Span - /P 1254 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [84] - /Pg 4929 0 R ->> -endobj - -1263 0 obj -<< - /Type /StructElem - /S /Strong - /P 1254 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [83] - /Pg 4929 0 R ->> -endobj - -1264 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [] ->> -endobj - -1265 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [] ->> -endobj - -1266 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [1267 0 R] ->> -endobj - -1267 0 obj -<< - /Type /StructElem - /S /Span - /P 1266 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [82] - /Pg 4929 0 R ->> -endobj - -1268 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [1271 0 R 1270 0 R 1269 0 R] ->> -endobj - -1269 0 obj -<< - /Type /StructElem - /S /Span - /P 1268 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [81] - /Pg 4929 0 R ->> -endobj - -1270 0 obj -<< - /Type /StructElem - /S /Formula - /P 1268 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [80] - /Pg 4929 0 R ->> -endobj - -1271 0 obj -<< - /Type /StructElem - /S /Span - /P 1268 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [79] - /Pg 4929 0 R ->> -endobj - -1272 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [] ->> -endobj - -1273 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [] ->> -endobj - -1274 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [] ->> -endobj - -1275 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [1276 0 R] ->> -endobj - -1276 0 obj -<< - /Type /StructElem - /S /Span - /P 1275 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [78] - /Pg 4929 0 R ->> -endobj - -1277 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [1281 0 R 1280 0 R 1279 0 R 1278 0 R] ->> -endobj - -1278 0 obj -<< - /Type /StructElem - /S /Span - /P 1277 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [74 76] - /Pg 4929 0 R ->> -endobj - -1279 0 obj -<< - /Type /StructElem - /S /Strong - /P 1277 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [77] - /Pg 4929 0 R ->> -endobj - -1280 0 obj -<< - /Type /StructElem - /S /Strong - /P 1277 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [75] - /Pg 4929 0 R ->> -endobj - -1281 0 obj -<< - /Type /StructElem - /S /Strong - /P 1277 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [73] - /Pg 4929 0 R ->> -endobj - -1282 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [] ->> -endobj - -1283 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [1284 0 R] ->> -endobj - -1284 0 obj -<< - /Type /StructElem - /S /Span - /P 1283 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [72] - /Pg 4929 0 R ->> -endobj - -1285 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [1289 0 R 1288 0 R 1287 0 R 1286 0 R] ->> -endobj - -1286 0 obj -<< - /Type /StructElem - /S /Formula - /P 1285 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [71] - /Pg 4929 0 R ->> -endobj - -1287 0 obj -<< - /Type /StructElem - /S /Span - /P 1285 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [70] - /Pg 4929 0 R ->> -endobj - -1288 0 obj -<< - /Type /StructElem - /S /Formula - /P 1285 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [69] - /Pg 4929 0 R ->> -endobj - -1289 0 obj -<< - /Type /StructElem - /S /Span - /P 1285 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [68] - /Pg 4929 0 R ->> -endobj - -1290 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [] ->> -endobj - -1291 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [] ->> -endobj - -1292 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [1293 0 R] ->> -endobj - -1293 0 obj -<< - /Type /StructElem - /S /Span - /P 1292 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [67] - /Pg 4929 0 R ->> -endobj - -1294 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [1296 0 R 1295 0 R] ->> -endobj - -1295 0 obj -<< - /Type /StructElem - /S /Span - /P 1294 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [66] - /Pg 4929 0 R ->> -endobj - -1296 0 obj -<< - /Type /StructElem - /S /Strong - /P 1294 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [65] - /Pg 4929 0 R ->> -endobj - -1297 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [1298 0 R] ->> -endobj - -1298 0 obj -<< - /Type /StructElem - /S /Span - /P 1297 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [64] - /Pg 4929 0 R ->> -endobj - -1299 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [1301 0 R 1300 0 R] ->> -endobj - -1300 0 obj -<< - /Type /StructElem - /S /Span - /P 1299 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [63] - /Pg 4929 0 R ->> -endobj - -1301 0 obj -<< - /Type /StructElem - /S /Strong - /P 1299 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [62] - /Pg 4929 0 R ->> -endobj - -1302 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [] ->> -endobj - -1303 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [1304 0 R] ->> -endobj - -1304 0 obj -<< - /Type /StructElem - /S /Span - /P 1303 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [61] - /Pg 4929 0 R ->> -endobj - -1305 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [1306 0 R] ->> -endobj - -1306 0 obj -<< - /Type /StructElem - /S /Span - /P 1305 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [60] - /Pg 4929 0 R ->> -endobj - -1307 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [] ->> -endobj - -1308 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [1309 0 R] ->> -endobj - -1309 0 obj -<< - /Type /StructElem - /S /Span - /P 1308 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [59] - /Pg 4929 0 R ->> -endobj - -1310 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [1314 0 R 1313 0 R 1312 0 R 1311 0 R] ->> -endobj - -1311 0 obj -<< - /Type /StructElem - /S /Span - /P 1310 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [54 56 58] - /Pg 4929 0 R ->> -endobj - -1312 0 obj -<< - /Type /StructElem - /S /Strong - /P 1310 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [57] - /Pg 4929 0 R ->> -endobj - -1313 0 obj -<< - /Type /StructElem - /S /Strong - /P 1310 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [55] - /Pg 4929 0 R ->> -endobj - -1314 0 obj -<< - /Type /StructElem - /S /Strong - /P 1310 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [53] - /Pg 4929 0 R ->> -endobj - -1315 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [] ->> -endobj - -1316 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [] ->> -endobj - -1317 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [1318 0 R] ->> -endobj - -1318 0 obj -<< - /Type /StructElem - /S /Span - /P 1317 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [52] - /Pg 4929 0 R ->> -endobj - -1319 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [1324 0 R 1323 0 R 1322 0 R 1321 0 R 1320 0 R] ->> -endobj - -1320 0 obj -<< - /Type /StructElem - /S /Span - /P 1319 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [51] - /Pg 4929 0 R ->> -endobj - -1321 0 obj -<< - /Type /StructElem - /S /Formula - /P 1319 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [50] - /Pg 4929 0 R ->> -endobj - -1322 0 obj -<< - /Type /StructElem - /S /Span - /P 1319 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [49] - /Pg 4929 0 R ->> -endobj - -1323 0 obj -<< - /Type /StructElem - /S /Formula - /P 1319 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [48] - /Pg 4929 0 R ->> -endobj - -1324 0 obj -<< - /Type /StructElem - /S /Span - /P 1319 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [47] - /Pg 4929 0 R ->> -endobj - -1325 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [] ->> -endobj - -1326 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [] ->> -endobj - -1327 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [1328 0 R] ->> -endobj - -1328 0 obj -<< - /Type /StructElem - /S /Span - /P 1327 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [46] - /Pg 4929 0 R ->> -endobj - -1329 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [1338 0 R 1337 0 R 1336 0 R 1335 0 R 1334 0 R 1333 0 R 1332 0 R 1331 0 R 1330 0 R] ->> -endobj - -1330 0 obj -<< - /Type /StructElem - /S /Span - /P 1329 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [42 44] - /Pg 4929 0 R ->> -endobj - -1331 0 obj -<< - /Type /StructElem - /S /Strong - /P 1329 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [45] - /Pg 4929 0 R ->> -endobj - -1332 0 obj -<< - /Type /StructElem - /S /Strong - /P 1329 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [43] - /Pg 4929 0 R ->> -endobj - -1333 0 obj -<< - /Type /StructElem - /S /Formula - /P 1329 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [41] - /Pg 4929 0 R ->> -endobj - -1334 0 obj -<< - /Type /StructElem - /S /Span - /P 1329 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [38 40] - /Pg 4929 0 R ->> -endobj - -1335 0 obj -<< - /Type /StructElem - /S /Strong - /P 1329 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [39] - /Pg 4929 0 R ->> -endobj - -1336 0 obj -<< - /Type /StructElem - /S /Formula - /P 1329 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [37] - /Pg 4929 0 R ->> -endobj - -1337 0 obj -<< - /Type /StructElem - /S /Span - /P 1329 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [36] - /Pg 4929 0 R ->> -endobj - -1338 0 obj -<< - /Type /StructElem - /S /Strong - /P 1329 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [35] - /Pg 4929 0 R ->> -endobj - -1339 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [] ->> -endobj - -1340 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [] ->> -endobj - -1341 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [] ->> -endobj - -1342 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [1343 0 R] ->> -endobj - -1343 0 obj -<< - /Type /StructElem - /S /Span - /P 1342 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [34] - /Pg 4929 0 R ->> -endobj - -1344 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [1346 0 R 1345 0 R] ->> -endobj - -1345 0 obj -<< - /Type /StructElem - /S /Span - /P 1344 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [33] - /Pg 4929 0 R ->> -endobj - -1346 0 obj -<< - /Type /StructElem - /S /Strong - /P 1344 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [32] - /Pg 4929 0 R ->> -endobj - -1347 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [] ->> -endobj - -1348 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [1349 0 R] ->> -endobj - -1349 0 obj -<< - /Type /StructElem - /S /Span - /P 1348 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [31] - /Pg 4929 0 R ->> -endobj - -1350 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [1354 0 R 1353 0 R 1352 0 R 1351 0 R] ->> -endobj - -1351 0 obj -<< - /Type /StructElem - /S /Formula - /P 1350 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [30] - /Pg 4929 0 R ->> -endobj - -1352 0 obj -<< - /Type /StructElem - /S /Span - /P 1350 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [29] - /Pg 4929 0 R ->> -endobj - -1353 0 obj -<< - /Type /StructElem - /S /Formula - /P 1350 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [28] - /Pg 4929 0 R ->> -endobj - -1354 0 obj -<< - /Type /StructElem - /S /Span - /P 1350 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [27] - /Pg 4929 0 R ->> -endobj - -1355 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [] ->> -endobj - -1356 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [] ->> -endobj - -1357 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [1358 0 R] ->> -endobj - -1358 0 obj -<< - /Type /StructElem - /S /Span - /P 1357 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [26] - /Pg 4929 0 R ->> -endobj - -1359 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [1361 0 R 1360 0 R] ->> -endobj - -1360 0 obj -<< - /Type /StructElem - /S /Span - /P 1359 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [25] - /Pg 4929 0 R ->> -endobj - -1361 0 obj -<< - /Type /StructElem - /S /Strong - /P 1359 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [24] - /Pg 4929 0 R ->> -endobj - -1362 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [1363 0 R] ->> -endobj - -1363 0 obj -<< - /Type /StructElem - /S /Span - /P 1362 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [23] - /Pg 4929 0 R ->> -endobj - -1364 0 obj -<< - /Type /StructElem - /S /Div - /P 1223 0 R - /K [] ->> -endobj - -1365 0 obj -<< - /Type /StructElem - /S /P - /P 1222 0 R - /K [1366 0 R 22] - /Pg 4929 0 R ->> -endobj - -1366 0 obj -<< - /Type /StructElem - /S /Strong - /P 1365 0 R - /K [21] - /Pg 4929 0 R ->> -endobj - -1367 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [1373 0 R 7 1372 0 R 9 1371 0 R 11 12 1370 0 R 14 15 1369 0 R 17 18 1368 0 R 20] - /Pg 4929 0 R ->> -endobj - -1368 0 obj -<< - /Type /StructElem - /S /Code - /P 1367 0 R - /K [19] - /Pg 4929 0 R ->> -endobj - -1369 0 obj -<< - /Type /StructElem - /S /Code - /P 1367 0 R - /K [16] - /Pg 4929 0 R ->> -endobj - -1370 0 obj -<< - /Type /StructElem - /S /Em - /P 1367 0 R - /K [13] - /Pg 4929 0 R ->> -endobj - -1371 0 obj -<< - /Type /StructElem - /S /Code - /P 1367 0 R - /K [10] - /Pg 4929 0 R ->> -endobj - -1372 0 obj -<< - /Type /StructElem - /S /Code - /P 1367 0 R - /K [8] - /Pg 4929 0 R ->> -endobj - -1373 0 obj -<< - /Type /StructElem - /S /Strong - /P 1367 0 R - /K [6] - /Pg 4929 0 R ->> -endobj - -1374 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [3 4 5] - /Pg 4929 0 R ->> -endobj - -1375 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [1595 0 R 1376 0 R] ->> -endobj - -1376 0 obj -<< - /Type /StructElem - /S /Div - /P 1375 0 R - /K [1594 0 R 1592 0 R 1589 0 R 1587 0 R 1586 0 R 1585 0 R 1581 0 R 1579 0 R 1578 0 R 1574 0 R 1572 0 R 1571 0 R 1566 0 R 1564 0 R 1563 0 R 1558 0 R 1556 0 R 1555 0 R 1554 0 R 1553 0 R 1543 0 R 1541 0 R 1540 0 R 1538 0 R 1536 0 R 1535 0 R 1534 0 R 1533 0 R 1529 0 R 1527 0 R 1526 0 R 1525 0 R 1520 0 R 1518 0 R 1517 0 R 1516 0 R 1515 0 R 1514 0 R 1504 0 R 1502 0 R 1501 0 R 1500 0 R 1499 0 R 1498 0 R 1497 0 R 1491 0 R 1489 0 R 1488 0 R 1487 0 R 1486 0 R 1485 0 R 1479 0 R 1477 0 R 1476 0 R 1475 0 R 1474 0 R 1473 0 R 1469 0 R 1467 0 R 1466 0 R 1465 0 R 1464 0 R 1458 0 R 1456 0 R 1455 0 R 1454 0 R 1453 0 R 1452 0 R 1451 0 R 1445 0 R 1443 0 R 1442 0 R 1441 0 R 1440 0 R 1439 0 R 1433 0 R 1431 0 R 1430 0 R 1429 0 R 1428 0 R 1427 0 R 1423 0 R 1421 0 R 1420 0 R 1419 0 R 1418 0 R 1416 0 R 1414 0 R 1413 0 R 1412 0 R 1411 0 R 1410 0 R 1409 0 R 1399 0 R 1397 0 R 1396 0 R 1393 0 R 1391 0 R 1390 0 R 1384 0 R 1382 0 R 1381 0 R 1378 0 R 1377 0 R] ->> -endobj - -1377 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1378 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1380 0 R 1379 0 R] ->> -endobj - -1379 0 obj -<< - /Type /StructElem - /S /Span - /P 1378 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [2] - /Pg 4929 0 R ->> -endobj - -1380 0 obj -<< - /Type /StructElem - /S /Strong - /P 1378 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [1] - /Pg 4929 0 R ->> -endobj - -1381 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1382 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1383 0 R] ->> -endobj - -1383 0 obj -<< - /Type /StructElem - /S /Span - /P 1382 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [0] - /Pg 4929 0 R ->> -endobj - -1384 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1389 0 R 1388 0 R 1387 0 R 1386 0 R 1385 0 R] ->> -endobj - -1385 0 obj -<< - /Type /StructElem - /S /Span - /P 1384 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [169] - /Pg 4925 0 R ->> -endobj - -1386 0 obj -<< - /Type /StructElem - /S /Formula - /P 1384 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [168] - /Pg 4925 0 R ->> -endobj - -1387 0 obj -<< - /Type /StructElem - /S /Span - /P 1384 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [167] - /Pg 4925 0 R ->> -endobj - -1388 0 obj -<< - /Type /StructElem - /S /Formula - /P 1384 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [166] - /Pg 4925 0 R ->> -endobj - -1389 0 obj -<< - /Type /StructElem - /S /Span - /P 1384 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [165] - /Pg 4925 0 R ->> -endobj - -1390 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1391 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1392 0 R] ->> -endobj - -1392 0 obj -<< - /Type /StructElem - /S /Span - /P 1391 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [164] - /Pg 4925 0 R ->> -endobj - -1393 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1395 0 R 1394 0 R] ->> -endobj - -1394 0 obj -<< - /Type /StructElem - /S /Span - /P 1393 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [163] - /Pg 4925 0 R ->> -endobj - -1395 0 obj -<< - /Type /StructElem - /S /Strong - /P 1393 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [162] - /Pg 4925 0 R ->> -endobj - -1396 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1397 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1398 0 R] ->> -endobj - -1398 0 obj -<< - /Type /StructElem - /S /Span - /P 1397 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [161] - /Pg 4925 0 R ->> -endobj - -1399 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1408 0 R 1407 0 R 1406 0 R 1405 0 R 1404 0 R 1403 0 R 1402 0 R 1401 0 R 1400 0 R] ->> -endobj - -1400 0 obj -<< - /Type /StructElem - /S /Span - /P 1399 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [160] - /Pg 4925 0 R ->> -endobj - -1401 0 obj -<< - /Type /StructElem - /S /Formula - /P 1399 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [159] - /Pg 4925 0 R ->> -endobj - -1402 0 obj -<< - /Type /StructElem - /S /Span - /P 1399 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [158] - /Pg 4925 0 R ->> -endobj - -1403 0 obj -<< - /Type /StructElem - /S /Formula - /P 1399 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [157] - /Pg 4925 0 R ->> -endobj - -1404 0 obj -<< - /Type /StructElem - /S /Span - /P 1399 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [156] - /Pg 4925 0 R ->> -endobj - -1405 0 obj -<< - /Type /StructElem - /S /Formula - /P 1399 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [155] - /Pg 4925 0 R ->> -endobj - -1406 0 obj -<< - /Type /StructElem - /S /Span - /P 1399 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [154] - /Pg 4925 0 R ->> -endobj - -1407 0 obj -<< - /Type /StructElem - /S /Formula - /P 1399 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [153] - /Pg 4925 0 R ->> -endobj - -1408 0 obj -<< - /Type /StructElem - /S /Span - /P 1399 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [152] - /Pg 4925 0 R ->> -endobj - -1409 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1410 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1411 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1412 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1413 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1414 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1415 0 R] ->> -endobj - -1415 0 obj -<< - /Type /StructElem - /S /Span - /P 1414 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [151] - /Pg 4925 0 R ->> -endobj - -1416 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1417 0 R] ->> -endobj - -1417 0 obj -<< - /Type /StructElem - /S /Strong - /P 1416 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [150] - /Pg 4925 0 R ->> -endobj - -1418 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1419 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1420 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1421 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1422 0 R] ->> -endobj - -1422 0 obj -<< - /Type /StructElem - /S /Span - /P 1421 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [149] - /Pg 4925 0 R ->> -endobj - -1423 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1426 0 R 1425 0 R 1424 0 R] ->> -endobj - -1424 0 obj -<< - /Type /StructElem - /S /Span - /P 1423 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [148] - /Pg 4925 0 R ->> -endobj - -1425 0 obj -<< - /Type /StructElem - /S /Formula - /P 1423 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [147] - /Pg 4925 0 R ->> -endobj - -1426 0 obj -<< - /Type /StructElem - /S /Span - /P 1423 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [146] - /Pg 4925 0 R ->> -endobj - -1427 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1428 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1429 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1430 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1431 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1432 0 R] ->> -endobj - -1432 0 obj -<< - /Type /StructElem - /S /Span - /P 1431 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [145] - /Pg 4925 0 R ->> -endobj - -1433 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1438 0 R 1437 0 R 1436 0 R 1435 0 R 1434 0 R] ->> -endobj - -1434 0 obj -<< - /Type /StructElem - /S /Span - /P 1433 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [144] - /Pg 4925 0 R ->> -endobj - -1435 0 obj -<< - /Type /StructElem - /S /Formula - /P 1433 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [143] - /Pg 4925 0 R ->> -endobj - -1436 0 obj -<< - /Type /StructElem - /S /Span - /P 1433 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [142] - /Pg 4925 0 R ->> -endobj - -1437 0 obj -<< - /Type /StructElem - /S /Formula - /P 1433 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [141] - /Pg 4925 0 R ->> -endobj - -1438 0 obj -<< - /Type /StructElem - /S /Span - /P 1433 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [140] - /Pg 4925 0 R ->> -endobj - -1439 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1440 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1441 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1442 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1443 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1444 0 R] ->> -endobj - -1444 0 obj -<< - /Type /StructElem - /S /Span - /P 1443 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [139] - /Pg 4925 0 R ->> -endobj - -1445 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1450 0 R 1449 0 R 1448 0 R 1447 0 R 1446 0 R] ->> -endobj - -1446 0 obj -<< - /Type /StructElem - /S /Span - /P 1445 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [138] - /Pg 4925 0 R ->> -endobj - -1447 0 obj -<< - /Type /StructElem - /S /Formula - /P 1445 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [137] - /Pg 4925 0 R ->> -endobj - -1448 0 obj -<< - /Type /StructElem - /S /Span - /P 1445 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [136] - /Pg 4925 0 R ->> -endobj - -1449 0 obj -<< - /Type /StructElem - /S /Formula - /P 1445 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [135] - /Pg 4925 0 R ->> -endobj - -1450 0 obj -<< - /Type /StructElem - /S /Span - /P 1445 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [134] - /Pg 4925 0 R ->> -endobj - -1451 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1452 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1453 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1454 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1455 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1456 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1457 0 R] ->> -endobj - -1457 0 obj -<< - /Type /StructElem - /S /Span - /P 1456 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [133] - /Pg 4925 0 R ->> -endobj - -1458 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1463 0 R 1462 0 R 1461 0 R 1460 0 R 1459 0 R] ->> -endobj - -1459 0 obj -<< - /Type /StructElem - /S /Span - /P 1458 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [131] - /Pg 4925 0 R ->> -endobj - -1460 0 obj -<< - /Type /StructElem - /S /Strong - /P 1458 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [132] - /Pg 4925 0 R ->> -endobj - -1461 0 obj -<< - /Type /StructElem - /S /Formula - /P 1458 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [130] - /Pg 4925 0 R ->> -endobj - -1462 0 obj -<< - /Type /StructElem - /S /Span - /P 1458 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [129] - /Pg 4925 0 R ->> -endobj - -1463 0 obj -<< - /Type /StructElem - /S /Strong - /P 1458 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [128] - /Pg 4925 0 R ->> -endobj - -1464 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1465 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1466 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1467 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1468 0 R] ->> -endobj - -1468 0 obj -<< - /Type /StructElem - /S /Span - /P 1467 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [127] - /Pg 4925 0 R ->> -endobj - -1469 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1472 0 R 1471 0 R 1470 0 R] ->> -endobj - -1470 0 obj -<< - /Type /StructElem - /S /Span - /P 1469 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [126] - /Pg 4925 0 R ->> -endobj - -1471 0 obj -<< - /Type /StructElem - /S /Formula - /P 1469 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [125] - /Pg 4925 0 R ->> -endobj - -1472 0 obj -<< - /Type /StructElem - /S /Span - /P 1469 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [124] - /Pg 4925 0 R ->> -endobj - -1473 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1474 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1475 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1476 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1477 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1478 0 R] ->> -endobj - -1478 0 obj -<< - /Type /StructElem - /S /Span - /P 1477 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [123] - /Pg 4925 0 R ->> -endobj - -1479 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1484 0 R 1483 0 R 1482 0 R 1481 0 R 1480 0 R] ->> -endobj - -1480 0 obj -<< - /Type /StructElem - /S /Span - /P 1479 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [122] - /Pg 4925 0 R ->> -endobj - -1481 0 obj -<< - /Type /StructElem - /S /Formula - /P 1479 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [121] - /Pg 4925 0 R ->> -endobj - -1482 0 obj -<< - /Type /StructElem - /S /Span - /P 1479 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [120] - /Pg 4925 0 R ->> -endobj - -1483 0 obj -<< - /Type /StructElem - /S /Formula - /P 1479 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [119] - /Pg 4925 0 R ->> -endobj - -1484 0 obj -<< - /Type /StructElem - /S /Span - /P 1479 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [118] - /Pg 4925 0 R ->> -endobj - -1485 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1486 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1487 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1488 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1489 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1490 0 R] ->> -endobj - -1490 0 obj -<< - /Type /StructElem - /S /Span - /P 1489 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [117] - /Pg 4925 0 R ->> -endobj - -1491 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1496 0 R 1495 0 R 1494 0 R 1493 0 R 1492 0 R] ->> -endobj - -1492 0 obj -<< - /Type /StructElem - /S /Span - /P 1491 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [116] - /Pg 4925 0 R ->> -endobj - -1493 0 obj -<< - /Type /StructElem - /S /Formula - /P 1491 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [115] - /Pg 4925 0 R ->> -endobj - -1494 0 obj -<< - /Type /StructElem - /S /Span - /P 1491 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [114] - /Pg 4925 0 R ->> -endobj - -1495 0 obj -<< - /Type /StructElem - /S /Formula - /P 1491 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [113] - /Pg 4925 0 R ->> -endobj - -1496 0 obj -<< - /Type /StructElem - /S /Span - /P 1491 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [112] - /Pg 4925 0 R ->> -endobj - -1497 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1498 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1499 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1500 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1501 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1502 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1503 0 R] ->> -endobj - -1503 0 obj -<< - /Type /StructElem - /S /Span - /P 1502 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [111] - /Pg 4925 0 R ->> -endobj - -1504 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1513 0 R 1512 0 R 1511 0 R 1510 0 R 1509 0 R 1508 0 R 1507 0 R 1506 0 R 1505 0 R] ->> -endobj - -1505 0 obj -<< - /Type /StructElem - /S /Span - /P 1504 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [109] - /Pg 4925 0 R ->> -endobj - -1506 0 obj -<< - /Type /StructElem - /S /Strong - /P 1504 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [110] - /Pg 4925 0 R ->> -endobj - -1507 0 obj -<< - /Type /StructElem - /S /Formula - /P 1504 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [108] - /Pg 4925 0 R ->> -endobj - -1508 0 obj -<< - /Type /StructElem - /S /Span - /P 1504 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [107] - /Pg 4925 0 R ->> -endobj - -1509 0 obj -<< - /Type /StructElem - /S /Formula - /P 1504 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [106] - /Pg 4925 0 R ->> -endobj - -1510 0 obj -<< - /Type /StructElem - /S /Span - /P 1504 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [105] - /Pg 4925 0 R ->> -endobj - -1511 0 obj -<< - /Type /StructElem - /S /Formula - /P 1504 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [104] - /Pg 4925 0 R ->> -endobj - -1512 0 obj -<< - /Type /StructElem - /S /Span - /P 1504 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [103] - /Pg 4925 0 R ->> -endobj - -1513 0 obj -<< - /Type /StructElem - /S /Strong - /P 1504 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [102] - /Pg 4925 0 R ->> -endobj - -1514 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1515 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1516 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1517 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1518 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1519 0 R] ->> -endobj - -1519 0 obj -<< - /Type /StructElem - /S /Span - /P 1518 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [101] - /Pg 4925 0 R ->> -endobj - -1520 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1524 0 R 1523 0 R 1522 0 R 1521 0 R] ->> -endobj - -1521 0 obj -<< - /Type /StructElem - /S /Span - /P 1520 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [97 99] - /Pg 4925 0 R ->> -endobj - -1522 0 obj -<< - /Type /StructElem - /S /Strong - /P 1520 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [100] - /Pg 4925 0 R ->> -endobj - -1523 0 obj -<< - /Type /StructElem - /S /Strong - /P 1520 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [98] - /Pg 4925 0 R ->> -endobj - -1524 0 obj -<< - /Type /StructElem - /S /Strong - /P 1520 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [96] - /Pg 4925 0 R ->> -endobj - -1525 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1526 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1527 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1528 0 R] ->> -endobj - -1528 0 obj -<< - /Type /StructElem - /S /Span - /P 1527 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [95] - /Pg 4925 0 R ->> -endobj - -1529 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1532 0 R 1531 0 R 1530 0 R] ->> -endobj - -1530 0 obj -<< - /Type /StructElem - /S /Span - /P 1529 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [94] - /Pg 4925 0 R ->> -endobj - -1531 0 obj -<< - /Type /StructElem - /S /Formula - /P 1529 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [93] - /Pg 4925 0 R ->> -endobj - -1532 0 obj -<< - /Type /StructElem - /S /Span - /P 1529 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [92] - /Pg 4925 0 R ->> -endobj - -1533 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1534 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1535 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1536 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1537 0 R] ->> -endobj - -1537 0 obj -<< - /Type /StructElem - /S /Span - /P 1536 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [91] - /Pg 4925 0 R ->> -endobj - -1538 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1539 0 R] ->> -endobj - -1539 0 obj -<< - /Type /StructElem - /S /Strong - /P 1538 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [90] - /Pg 4925 0 R ->> -endobj - -1540 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1541 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1542 0 R] ->> -endobj - -1542 0 obj -<< - /Type /StructElem - /S /Span - /P 1541 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [89] - /Pg 4925 0 R ->> -endobj - -1543 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1552 0 R 1551 0 R 1550 0 R 1549 0 R 1548 0 R 1547 0 R 1546 0 R 1545 0 R 1544 0 R] ->> -endobj - -1544 0 obj -<< - /Type /StructElem - /S /Span - /P 1543 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [88] - /Pg 4925 0 R ->> -endobj - -1545 0 obj -<< - /Type /StructElem - /S /Formula - /P 1543 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [87] - /Pg 4925 0 R ->> -endobj - -1546 0 obj -<< - /Type /StructElem - /S /Span - /P 1543 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [86] - /Pg 4925 0 R ->> -endobj - -1547 0 obj -<< - /Type /StructElem - /S /Formula - /P 1543 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [85] - /Pg 4925 0 R ->> -endobj - -1548 0 obj -<< - /Type /StructElem - /S /Span - /P 1543 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [84] - /Pg 4925 0 R ->> -endobj - -1549 0 obj -<< - /Type /StructElem - /S /Formula - /P 1543 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [83] - /Pg 4925 0 R ->> -endobj - -1550 0 obj -<< - /Type /StructElem - /S /Span - /P 1543 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [82] - /Pg 4925 0 R ->> -endobj - -1551 0 obj -<< - /Type /StructElem - /S /Formula - /P 1543 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [81] - /Pg 4925 0 R ->> -endobj - -1552 0 obj -<< - /Type /StructElem - /S /Span - /P 1543 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [80] - /Pg 4925 0 R ->> -endobj - -1553 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1554 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1555 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1556 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1557 0 R] ->> -endobj - -1557 0 obj -<< - /Type /StructElem - /S /Span - /P 1556 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [79] - /Pg 4925 0 R ->> -endobj - -1558 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1562 0 R 1561 0 R 1560 0 R 1559 0 R] ->> -endobj - -1559 0 obj -<< - /Type /StructElem - /S /Span - /P 1558 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [75 77] - /Pg 4925 0 R ->> -endobj - -1560 0 obj -<< - /Type /StructElem - /S /Strong - /P 1558 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [78] - /Pg 4925 0 R ->> -endobj - -1561 0 obj -<< - /Type /StructElem - /S /Strong - /P 1558 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [76] - /Pg 4925 0 R ->> -endobj - -1562 0 obj -<< - /Type /StructElem - /S /Strong - /P 1558 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [74] - /Pg 4925 0 R ->> -endobj - -1563 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1564 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1565 0 R] ->> -endobj - -1565 0 obj -<< - /Type /StructElem - /S /Span - /P 1564 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [73] - /Pg 4925 0 R ->> -endobj - -1566 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1570 0 R 1569 0 R 1568 0 R 1567 0 R] ->> -endobj - -1567 0 obj -<< - /Type /StructElem - /S /Formula - /P 1566 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [72] - /Pg 4925 0 R ->> -endobj - -1568 0 obj -<< - /Type /StructElem - /S /Span - /P 1566 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [71] - /Pg 4925 0 R ->> -endobj - -1569 0 obj -<< - /Type /StructElem - /S /Formula - /P 1566 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [70] - /Pg 4925 0 R ->> -endobj - -1570 0 obj -<< - /Type /StructElem - /S /Span - /P 1566 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [69] - /Pg 4925 0 R ->> -endobj - -1571 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1572 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1573 0 R] ->> -endobj - -1573 0 obj -<< - /Type /StructElem - /S /Span - /P 1572 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [68] - /Pg 4925 0 R ->> -endobj - -1574 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1577 0 R 1576 0 R 1575 0 R] ->> -endobj - -1575 0 obj -<< - /Type /StructElem - /S /Span - /P 1574 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [67] - /Pg 4925 0 R ->> -endobj - -1576 0 obj -<< - /Type /StructElem - /S /Formula - /P 1574 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [66] - /Pg 4925 0 R ->> -endobj - -1577 0 obj -<< - /Type /StructElem - /S /Span - /P 1574 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [65] - /Pg 4925 0 R ->> -endobj - -1578 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1579 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1580 0 R] ->> -endobj - -1580 0 obj -<< - /Type /StructElem - /S /Span - /P 1579 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [64] - /Pg 4925 0 R ->> -endobj - -1581 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1584 0 R 1583 0 R 1582 0 R] ->> -endobj - -1582 0 obj -<< - /Type /StructElem - /S /Span - /P 1581 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [63] - /Pg 4925 0 R ->> -endobj - -1583 0 obj -<< - /Type /StructElem - /S /Formula - /P 1581 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [62] - /Pg 4925 0 R ->> -endobj - -1584 0 obj -<< - /Type /StructElem - /S /Span - /P 1581 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [61] - /Pg 4925 0 R ->> -endobj - -1585 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1586 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1587 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1588 0 R] ->> -endobj - -1588 0 obj -<< - /Type /StructElem - /S /Span - /P 1587 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [60] - /Pg 4925 0 R ->> -endobj - -1589 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1591 0 R 1590 0 R] ->> -endobj - -1590 0 obj -<< - /Type /StructElem - /S /Span - /P 1589 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [59] - /Pg 4925 0 R ->> -endobj - -1591 0 obj -<< - /Type /StructElem - /S /Strong - /P 1589 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [58] - /Pg 4925 0 R ->> -endobj - -1592 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [1593 0 R] ->> -endobj - -1593 0 obj -<< - /Type /StructElem - /S /Span - /P 1592 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [57] - /Pg 4925 0 R ->> -endobj - -1594 0 obj -<< - /Type /StructElem - /S /Div - /P 1376 0 R - /K [] ->> -endobj - -1595 0 obj -<< - /Type /StructElem - /S /P - /P 1375 0 R - /K [1596 0 R 56] - /Pg 4925 0 R ->> -endobj - -1596 0 obj -<< - /Type /StructElem - /S /Strong - /P 1595 0 R - /K [55] - /Pg 4925 0 R ->> -endobj - -1597 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [1604 0 R 39 1603 0 R 41 42 1602 0 R 44 45 1601 0 R 47 48 1600 0 R 50 1599 0 R 52 1598 0 R 54] - /Pg 4925 0 R ->> -endobj - -1598 0 obj -<< - /Type /StructElem - /S /Code - /P 1597 0 R - /K [53] - /Pg 4925 0 R ->> -endobj - -1599 0 obj -<< - /Type /StructElem - /S /Code - /P 1597 0 R - /K [51] - /Pg 4925 0 R ->> -endobj - -1600 0 obj -<< - /Type /StructElem - /S /Code - /P 1597 0 R - /K [49] - /Pg 4925 0 R ->> -endobj - -1601 0 obj -<< - /Type /StructElem - /S /Code - /P 1597 0 R - /K [46] - /Pg 4925 0 R ->> -endobj - -1602 0 obj -<< - /Type /StructElem - /S /Em - /P 1597 0 R - /K [43] - /Pg 4925 0 R ->> -endobj - -1603 0 obj -<< - /Type /StructElem - /S /Em - /P 1597 0 R - /K [40] - /Pg 4925 0 R ->> -endobj - -1604 0 obj -<< - /Type /StructElem - /S /Strong - /P 1597 0 R - /K [38] - /Pg 4925 0 R ->> -endobj - -1605 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [33 1607 0 R 35 1606 0 R 37] - /Pg 4925 0 R ->> -endobj - -1606 0 obj -<< - /Type /StructElem - /S /Em - /P 1605 0 R - /K [36] - /Pg 4925 0 R ->> -endobj - -1607 0 obj -<< - /Type /StructElem - /S /Code - /P 1605 0 R - /K [34] - /Pg 4925 0 R ->> -endobj - -1608 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [15 1611 0 R 17 18 19 20 21 22 23 24 25 1610 0 R 27 28 29 1609 0 R 31 32] - /Pg 4925 0 R ->> -endobj - -1609 0 obj -<< - /Type /StructElem - /S /Link - /P 1608 0 R - /K [30 << - /Type /OBJR - /Pg 4925 0 R - /Obj 4924 0 R - >>] - /Pg 4925 0 R ->> -endobj - -1610 0 obj -<< - /Type /StructElem - /S /Link - /P 1608 0 R - /K [26 << - /Type /OBJR - /Pg 4925 0 R - /Obj 4923 0 R - >>] - /Pg 4925 0 R ->> -endobj - -1611 0 obj -<< - /Type /StructElem - /S /Em - /P 1608 0 R - /K [16] - /Pg 4925 0 R ->> -endobj - -1612 0 obj -<< - /Type /StructElem - /S /H3 - /P 103 0 R - /T (Hot Module Replacement) - /K [13 14] - /Pg 4925 0 R ->> -endobj - -1613 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [8 1614 0 R 10 11 12] - /Pg 4925 0 R ->> -endobj - -1614 0 obj -<< - /Type /StructElem - /S /Code - /P 1613 0 R - /K [9] - /Pg 4925 0 R ->> -endobj - -1615 0 obj -<< - /Type /StructElem - /S /L - /P 103 0 R - /A [<< - /O /List - /ListNumbering /Circle - >>] - /K [1635 0 R 1631 0 R 1627 0 R 1620 0 R 1616 0 R] ->> -endobj - -1616 0 obj -<< - /Type /StructElem - /S /LI - /P 1615 0 R - /K [1619 0 R 1617 0 R] ->> -endobj - -1617 0 obj -<< - /Type /StructElem - /S /LBody - /P 1616 0 R - /K [1618 0 R 7] - /Pg 4925 0 R ->> -endobj - -1618 0 obj -<< - /Type /StructElem - /S /Code - /P 1617 0 R - /K [6] - /Pg 4925 0 R ->> -endobj - -1619 0 obj -<< - /Type /StructElem - /S /Lbl - /P 1616 0 R - /K [5] - /Pg 4925 0 R ->> -endobj - -1620 0 obj -<< - /Type /StructElem - /S /LI - /P 1615 0 R - /K [1626 0 R 1621 0 R] ->> -endobj - -1621 0 obj -<< - /Type /StructElem - /S /LBody - /P 1620 0 R - /K [1625 0 R 100 101 102 1624 0 R 104 1623 0 R 106 << - /Type /MCR - /MCID 0 - /Pg 4925 0 R - >> 1622 0 R << - /Type /MCR - /MCID 2 - /Pg 4925 0 R - >> << - /Type /MCR - /MCID 3 - /Pg 4925 0 R - >> << - /Type /MCR - /MCID 4 - /Pg 4925 0 R - >>] - /Pg 4921 0 R ->> -endobj - -1622 0 obj -<< - /Type /StructElem - /S /Code - /P 1621 0 R - /K [1] - /Pg 4925 0 R ->> -endobj - -1623 0 obj -<< - /Type /StructElem - /S /Code - /P 1621 0 R - /K [105] - /Pg 4921 0 R ->> -endobj - -1624 0 obj -<< - /Type /StructElem - /S /Code - /P 1621 0 R - /K [103] - /Pg 4921 0 R ->> -endobj - -1625 0 obj -<< - /Type /StructElem - /S /Code - /P 1621 0 R - /K [99] - /Pg 4921 0 R ->> -endobj - -1626 0 obj -<< - /Type /StructElem - /S /Lbl - /P 1620 0 R - /K [98] - /Pg 4921 0 R ->> -endobj - -1627 0 obj -<< - /Type /StructElem - /S /LI - /P 1615 0 R - /K [1630 0 R 1628 0 R] ->> -endobj - -1628 0 obj -<< - /Type /StructElem - /S /LBody - /P 1627 0 R - /K [1629 0 R 96 97] - /Pg 4921 0 R ->> -endobj - -1629 0 obj -<< - /Type /StructElem - /S /Code - /P 1628 0 R - /K [95] - /Pg 4921 0 R ->> -endobj - -1630 0 obj -<< - /Type /StructElem - /S /Lbl - /P 1627 0 R - /K [94] - /Pg 4921 0 R ->> -endobj - -1631 0 obj -<< - /Type /StructElem - /S /LI - /P 1615 0 R - /K [1634 0 R 1632 0 R] ->> -endobj - -1632 0 obj -<< - /Type /StructElem - /S /LBody - /P 1631 0 R - /K [1633 0 R 92 93] - /Pg 4921 0 R ->> -endobj - -1633 0 obj -<< - /Type /StructElem - /S /Code - /P 1632 0 R - /K [91] - /Pg 4921 0 R ->> -endobj - -1634 0 obj -<< - /Type /StructElem - /S /Lbl - /P 1631 0 R - /K [90] - /Pg 4921 0 R ->> -endobj - -1635 0 obj -<< - /Type /StructElem - /S /LI - /P 1615 0 R - /K [1639 0 R 1636 0 R] ->> -endobj - -1636 0 obj -<< - /Type /StructElem - /S /LBody - /P 1635 0 R - /K [1638 0 R 87 1637 0 R 89] - /Pg 4921 0 R ->> -endobj - -1637 0 obj -<< - /Type /StructElem - /S /Code - /P 1636 0 R - /K [88] - /Pg 4921 0 R ->> -endobj - -1638 0 obj -<< - /Type /StructElem - /S /Code - /P 1636 0 R - /K [86] - /Pg 4921 0 R ->> -endobj - -1639 0 obj -<< - /Type /StructElem - /S /Lbl - /P 1635 0 R - /K [85] - /Pg 4921 0 R ->> -endobj - -1640 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [82 83 84] - /Pg 4921 0 R ->> -endobj - -1641 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [70 1644 0 R 72 73 74 75 1643 0 R 77 78 1642 0 R 80 81] - /Pg 4921 0 R ->> -endobj - -1642 0 obj -<< - /Type /StructElem - /S /Code - /P 1641 0 R - /K [79] - /Pg 4921 0 R ->> -endobj - -1643 0 obj -<< - /Type /StructElem - /S /Code - /P 1641 0 R - /K [76] - /Pg 4921 0 R ->> -endobj - -1644 0 obj -<< - /Type /StructElem - /S /Em - /P 1641 0 R - /K [71] - /Pg 4921 0 R ->> -endobj - -1645 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [1673 0 R 1647 0 R 1646 0 R] ->> -endobj - -1646 0 obj -<< - /Type /StructElem - /S /P - /P 1645 0 R - /K [68 69] - /Pg 4921 0 R ->> -endobj - -1647 0 obj -<< - /Type /StructElem - /S /L - /P 1645 0 R - /A [<< - /O /List - /ListNumbering /Circle - >>] - /K [1669 0 R 1665 0 R 1661 0 R 1657 0 R 1652 0 R 1648 0 R] ->> -endobj - -1648 0 obj -<< - /Type /StructElem - /S /LI - /P 1647 0 R - /K [1651 0 R 1649 0 R] ->> -endobj - -1649 0 obj -<< - /Type /StructElem - /S /LBody - /P 1648 0 R - /K [1650 0 R 67] - /Pg 4921 0 R ->> -endobj - -1650 0 obj -<< - /Type /StructElem - /S /Code - /P 1649 0 R - /K [66] - /Pg 4921 0 R ->> -endobj - -1651 0 obj -<< - /Type /StructElem - /S /Lbl - /P 1648 0 R - /K [65] - /Pg 4921 0 R ->> -endobj - -1652 0 obj -<< - /Type /StructElem - /S /LI - /P 1647 0 R - /K [1656 0 R 1653 0 R] ->> -endobj - -1653 0 obj -<< - /Type /StructElem - /S /LBody - /P 1652 0 R - /K [1655 0 R 62 1654 0 R 64] - /Pg 4921 0 R ->> -endobj - -1654 0 obj -<< - /Type /StructElem - /S /Code - /P 1653 0 R - /K [63] - /Pg 4921 0 R ->> -endobj - -1655 0 obj -<< - /Type /StructElem - /S /Code - /P 1653 0 R - /K [61] - /Pg 4921 0 R ->> -endobj - -1656 0 obj -<< - /Type /StructElem - /S /Lbl - /P 1652 0 R - /K [60] - /Pg 4921 0 R ->> -endobj - -1657 0 obj -<< - /Type /StructElem - /S /LI - /P 1647 0 R - /K [1660 0 R 1658 0 R] ->> -endobj - -1658 0 obj -<< - /Type /StructElem - /S /LBody - /P 1657 0 R - /K [1659 0 R 59] - /Pg 4921 0 R ->> -endobj - -1659 0 obj -<< - /Type /StructElem - /S /Code - /P 1658 0 R - /K [58] - /Pg 4921 0 R ->> -endobj - -1660 0 obj -<< - /Type /StructElem - /S /Lbl - /P 1657 0 R - /K [57] - /Pg 4921 0 R ->> -endobj - -1661 0 obj -<< - /Type /StructElem - /S /LI - /P 1647 0 R - /K [1664 0 R 1662 0 R] ->> -endobj - -1662 0 obj -<< - /Type /StructElem - /S /LBody - /P 1661 0 R - /K [1663 0 R 56] - /Pg 4921 0 R ->> -endobj - -1663 0 obj -<< - /Type /StructElem - /S /Code - /P 1662 0 R - /K [55] - /Pg 4921 0 R ->> -endobj - -1664 0 obj -<< - /Type /StructElem - /S /Lbl - /P 1661 0 R - /K [54] - /Pg 4921 0 R ->> -endobj - -1665 0 obj -<< - /Type /StructElem - /S /LI - /P 1647 0 R - /K [1668 0 R 1666 0 R] ->> -endobj - -1666 0 obj -<< - /Type /StructElem - /S /LBody - /P 1665 0 R - /K [1667 0 R 53] - /Pg 4921 0 R ->> -endobj - -1667 0 obj -<< - /Type /StructElem - /S /Code - /P 1666 0 R - /K [52] - /Pg 4921 0 R ->> -endobj - -1668 0 obj -<< - /Type /StructElem - /S /Lbl - /P 1665 0 R - /K [51] - /Pg 4921 0 R ->> -endobj - -1669 0 obj -<< - /Type /StructElem - /S /LI - /P 1647 0 R - /K [1672 0 R 1670 0 R] ->> -endobj - -1670 0 obj -<< - /Type /StructElem - /S /LBody - /P 1669 0 R - /K [1671 0 R 50] - /Pg 4921 0 R ->> -endobj - -1671 0 obj -<< - /Type /StructElem - /S /Code - /P 1670 0 R - /K [49] - /Pg 4921 0 R ->> -endobj - -1672 0 obj -<< - /Type /StructElem - /S /Lbl - /P 1669 0 R - /K [48] - /Pg 4921 0 R ->> -endobj - -1673 0 obj -<< - /Type /StructElem - /S /P - /P 1645 0 R - /K [1675 0 R 45 1674 0 R 47] - /Pg 4921 0 R ->> -endobj - -1674 0 obj -<< - /Type /StructElem - /S /Em - /P 1673 0 R - /K [46] - /Pg 4921 0 R ->> -endobj - -1675 0 obj -<< - /Type /StructElem - /S /Strong - /P 1673 0 R - /K [42 43 44] - /Pg 4921 0 R ->> -endobj - -1676 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [34 35 1678 0 R 37 1677 0 R 39 40 41] - /Pg 4921 0 R ->> -endobj - -1677 0 obj -<< - /Type /StructElem - /S /Em - /P 1676 0 R - /K [38] - /Pg 4921 0 R ->> -endobj - -1678 0 obj -<< - /Type /StructElem - /S /Link - /P 1676 0 R - /K [36 << - /Type /OBJR - /Pg 4921 0 R - /Obj 4920 0 R - >>] - /Pg 4921 0 R ->> -endobj - -1679 0 obj -<< - /Type /StructElem - /S /H3 - /P 103 0 R - /T (Declarative Configuration Layer) - /K [32 33] - /Pg 4921 0 R ->> -endobj - -1680 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [11 1686 0 R 13 14 15 1685 0 R 17 1684 0 R 19 1683 0 R 21 1682 0 R 24 25 1681 0 R 27 28 29 30 31] - /Pg 4921 0 R ->> -endobj - -1681 0 obj -<< - /Type /StructElem - /S /Em - /P 1680 0 R - /K [26] - /Pg 4921 0 R ->> -endobj - -1682 0 obj -<< - /Type /StructElem - /S /Em - /P 1680 0 R - /K [22 23] - /Pg 4921 0 R ->> -endobj - -1683 0 obj -<< - /Type /StructElem - /S /Code - /P 1680 0 R - /K [20] - /Pg 4921 0 R ->> -endobj - -1684 0 obj -<< - /Type /StructElem - /S /Code - /P 1680 0 R - /K [18] - /Pg 4921 0 R ->> -endobj - -1685 0 obj -<< - /Type /StructElem - /S /Code - /P 1680 0 R - /K [16] - /Pg 4921 0 R ->> -endobj - -1686 0 obj -<< - /Type /StructElem - /S /Em - /P 1680 0 R - /K [12] - /Pg 4921 0 R ->> -endobj - -1687 0 obj -<< - /Type /StructElem - /S /H2 - /P 103 0 R - /T (Component Loader) - /K [9 10] - /Pg 4921 0 R ->> -endobj - -1688 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [152 1693 0 R 154 155 1692 0 R 157 << - /Type /MCR - /MCID 0 - /Pg 4921 0 R - >> 1691 0 R << - /Type /MCR - /MCID 2 - /Pg 4921 0 R - >> 1690 0 R << - /Type /MCR - /MCID 4 - /Pg 4921 0 R - >> 1689 0 R << - /Type /MCR - /MCID 6 - /Pg 4921 0 R - >> << - /Type /MCR - /MCID 7 - /Pg 4921 0 R - >> << - /Type /MCR - /MCID 8 - /Pg 4921 0 R - >>] - /Pg 4917 0 R ->> -endobj - -1689 0 obj -<< - /Type /StructElem - /S /Link - /P 1688 0 R - /K [5 << - /Type /OBJR - /Pg 4921 0 R - /Obj 4919 0 R - >>] - /Pg 4921 0 R ->> -endobj - -1690 0 obj -<< - /Type /StructElem - /S /Formula - /P 1688 0 R - /K [3] - /Pg 4921 0 R ->> -endobj - -1691 0 obj -<< - /Type /StructElem - /S /Code - /P 1688 0 R - /K [1] - /Pg 4921 0 R ->> -endobj - -1692 0 obj -<< - /Type /StructElem - /S /Formula - /P 1688 0 R - /K [156] - /Pg 4917 0 R ->> -endobj - -1693 0 obj -<< - /Type /StructElem - /S /Em - /P 1688 0 R - /K [153] - /Pg 4917 0 R ->> -endobj - -1694 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [1705 0 R 124 125 1704 0 R 127 1703 0 R 129 1702 0 R 131 1701 0 R 133 134 135 1700 0 R 137 1699 0 R 139 140 1698 0 R 142 143 1697 0 R 145 146 1696 0 R 148 149 1695 0 R 151] - /Pg 4917 0 R ->> -endobj - -1695 0 obj -<< - /Type /StructElem - /S /Link - /P 1694 0 R - /K [150 << - /Type /OBJR - /Pg 4917 0 R - /Obj 4916 0 R - >>] - /Pg 4917 0 R ->> -endobj - -1696 0 obj -<< - /Type /StructElem - /S /Code - /P 1694 0 R - /K [147] - /Pg 4917 0 R ->> -endobj - -1697 0 obj -<< - /Type /StructElem - /S /Formula - /P 1694 0 R - /K [144] - /Pg 4917 0 R ->> -endobj - -1698 0 obj -<< - /Type /StructElem - /S /Em - /P 1694 0 R - /K [141] - /Pg 4917 0 R ->> -endobj - -1699 0 obj -<< - /Type /StructElem - /S /Code - /P 1694 0 R - /K [138] - /Pg 4917 0 R ->> -endobj - -1700 0 obj -<< - /Type /StructElem - /S /Code - /P 1694 0 R - /K [136] - /Pg 4917 0 R ->> -endobj - -1701 0 obj -<< - /Type /StructElem - /S /Link - /P 1694 0 R - /K [132 << - /Type /OBJR - /Pg 4917 0 R - /Obj 4915 0 R - >>] - /Pg 4917 0 R ->> -endobj - -1702 0 obj -<< - /Type /StructElem - /S /Code - /P 1694 0 R - /K [130] - /Pg 4917 0 R ->> -endobj - -1703 0 obj -<< - /Type /StructElem - /S /Code - /P 1694 0 R - /K [128] - /Pg 4917 0 R ->> -endobj - -1704 0 obj -<< - /Type /StructElem - /S /Code - /P 1694 0 R - /K [126] - /Pg 4917 0 R ->> -endobj - -1705 0 obj -<< - /Type /StructElem - /S /Link - /P 1694 0 R - /K [123 << - /Type /OBJR - /Pg 4917 0 R - /Obj 4914 0 R - >>] - /Pg 4917 0 R ->> -endobj - -1706 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [1760 0 R 1707 0 R] ->> -endobj - -1707 0 obj -<< - /Type /StructElem - /S /Div - /P 1706 0 R - /K [1759 0 R 1757 0 R 1754 0 R 1752 0 R 1751 0 R 1750 0 R 1746 0 R 1744 0 R 1743 0 R 1741 0 R 1739 0 R 1738 0 R 1737 0 R 1736 0 R 1729 0 R 1727 0 R 1726 0 R 1725 0 R 1717 0 R 1715 0 R 1714 0 R 1713 0 R 1709 0 R 1708 0 R] ->> -endobj - -1708 0 obj -<< - /Type /StructElem - /S /Div - /P 1707 0 R - /K [] ->> -endobj - -1709 0 obj -<< - /Type /StructElem - /S /Div - /P 1707 0 R - /K [1712 0 R 1711 0 R 1710 0 R] ->> -endobj - -1710 0 obj -<< - /Type /StructElem - /S /Span - /P 1709 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [122] - /Pg 4917 0 R ->> -endobj - -1711 0 obj -<< - /Type /StructElem - /S /Formula - /P 1709 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [121] - /Pg 4917 0 R ->> -endobj - -1712 0 obj -<< - /Type /StructElem - /S /Span - /P 1709 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [120] - /Pg 4917 0 R ->> -endobj - -1713 0 obj -<< - /Type /StructElem - /S /Div - /P 1707 0 R - /K [] ->> -endobj - -1714 0 obj -<< - /Type /StructElem - /S /Div - /P 1707 0 R - /K [] ->> -endobj - -1715 0 obj -<< - /Type /StructElem - /S /Div - /P 1707 0 R - /K [1716 0 R] ->> -endobj - -1716 0 obj -<< - /Type /StructElem - /S /Span - /P 1715 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [119] - /Pg 4917 0 R ->> -endobj - -1717 0 obj -<< - /Type /StructElem - /S /Div - /P 1707 0 R - /K [1724 0 R 1723 0 R 1722 0 R 1721 0 R 1720 0 R 1719 0 R 1718 0 R] ->> -endobj - -1718 0 obj -<< - /Type /StructElem - /S /Code - /P 1717 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [118] - /Pg 4917 0 R ->> -endobj - -1719 0 obj -<< - /Type /StructElem - /S /Span - /P 1717 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [113 115 117] - /Pg 4917 0 R ->> -endobj - -1720 0 obj -<< - /Type /StructElem - /S /Strong - /P 1717 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [116] - /Pg 4917 0 R ->> -endobj - -1721 0 obj -<< - /Type /StructElem - /S /Strong - /P 1717 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [114] - /Pg 4917 0 R ->> -endobj - -1722 0 obj -<< - /Type /StructElem - /S /Formula - /P 1717 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [112] - /Pg 4917 0 R ->> -endobj - -1723 0 obj -<< - /Type /StructElem - /S /Span - /P 1717 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [111] - /Pg 4917 0 R ->> -endobj - -1724 0 obj -<< - /Type /StructElem - /S /Strong - /P 1717 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [110] - /Pg 4917 0 R ->> -endobj - -1725 0 obj -<< - /Type /StructElem - /S /Div - /P 1707 0 R - /K [] ->> -endobj - -1726 0 obj -<< - /Type /StructElem - /S /Div - /P 1707 0 R - /K [] ->> -endobj - -1727 0 obj -<< - /Type /StructElem - /S /Div - /P 1707 0 R - /K [1728 0 R] ->> -endobj - -1728 0 obj -<< - /Type /StructElem - /S /Span - /P 1727 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [109] - /Pg 4917 0 R ->> -endobj - -1729 0 obj -<< - /Type /StructElem - /S /Div - /P 1707 0 R - /K [1735 0 R 1734 0 R 1733 0 R 1732 0 R 1731 0 R 1730 0 R] ->> -endobj - -1730 0 obj -<< - /Type /StructElem - /S /Span - /P 1729 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [104 106 108] - /Pg 4917 0 R ->> -endobj - -1731 0 obj -<< - /Type /StructElem - /S /Strong - /P 1729 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [107] - /Pg 4917 0 R ->> -endobj - -1732 0 obj -<< - /Type /StructElem - /S /Strong - /P 1729 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [105] - /Pg 4917 0 R ->> -endobj - -1733 0 obj -<< - /Type /StructElem - /S /Formula - /P 1729 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [103] - /Pg 4917 0 R ->> -endobj - -1734 0 obj -<< - /Type /StructElem - /S /Span - /P 1729 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [102] - /Pg 4917 0 R ->> -endobj - -1735 0 obj -<< - /Type /StructElem - /S /Strong - /P 1729 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [101] - /Pg 4917 0 R ->> -endobj - -1736 0 obj -<< - /Type /StructElem - /S /Div - /P 1707 0 R - /K [] ->> -endobj - -1737 0 obj -<< - /Type /StructElem - /S /Div - /P 1707 0 R - /K [] ->> -endobj - -1738 0 obj -<< - /Type /StructElem - /S /Div - /P 1707 0 R - /K [] ->> -endobj - -1739 0 obj -<< - /Type /StructElem - /S /Div - /P 1707 0 R - /K [1740 0 R] ->> -endobj - -1740 0 obj -<< - /Type /StructElem - /S /Span - /P 1739 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [100] - /Pg 4917 0 R ->> -endobj - -1741 0 obj -<< - /Type /StructElem - /S /Div - /P 1707 0 R - /K [1742 0 R] ->> -endobj - -1742 0 obj -<< - /Type /StructElem - /S /Strong - /P 1741 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [99] - /Pg 4917 0 R ->> -endobj - -1743 0 obj -<< - /Type /StructElem - /S /Div - /P 1707 0 R - /K [] ->> -endobj - -1744 0 obj -<< - /Type /StructElem - /S /Div - /P 1707 0 R - /K [1745 0 R] ->> -endobj - -1745 0 obj -<< - /Type /StructElem - /S /Span - /P 1744 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [98] - /Pg 4917 0 R ->> -endobj - -1746 0 obj -<< - /Type /StructElem - /S /Div - /P 1707 0 R - /K [1749 0 R 1748 0 R 1747 0 R] ->> -endobj - -1747 0 obj -<< - /Type /StructElem - /S /Span - /P 1746 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [97] - /Pg 4917 0 R ->> -endobj - -1748 0 obj -<< - /Type /StructElem - /S /Formula - /P 1746 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [96] - /Pg 4917 0 R ->> -endobj - -1749 0 obj -<< - /Type /StructElem - /S /Span - /P 1746 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [95] - /Pg 4917 0 R ->> -endobj - -1750 0 obj -<< - /Type /StructElem - /S /Div - /P 1707 0 R - /K [] ->> -endobj - -1751 0 obj -<< - /Type /StructElem - /S /Div - /P 1707 0 R - /K [] ->> -endobj - -1752 0 obj -<< - /Type /StructElem - /S /Div - /P 1707 0 R - /K [1753 0 R] ->> -endobj - -1753 0 obj -<< - /Type /StructElem - /S /Span - /P 1752 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [94] - /Pg 4917 0 R ->> -endobj - -1754 0 obj -<< - /Type /StructElem - /S /Div - /P 1707 0 R - /K [1756 0 R 1755 0 R] ->> -endobj - -1755 0 obj -<< - /Type /StructElem - /S /Span - /P 1754 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [93] - /Pg 4917 0 R ->> -endobj - -1756 0 obj -<< - /Type /StructElem - /S /Strong - /P 1754 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [92] - /Pg 4917 0 R ->> -endobj - -1757 0 obj -<< - /Type /StructElem - /S /Div - /P 1707 0 R - /K [1758 0 R] ->> -endobj - -1758 0 obj -<< - /Type /StructElem - /S /Span - /P 1757 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [91] - /Pg 4917 0 R ->> -endobj - -1759 0 obj -<< - /Type /StructElem - /S /Div - /P 1707 0 R - /K [] ->> -endobj - -1760 0 obj -<< - /Type /StructElem - /S /P - /P 1706 0 R - /K [1761 0 R 90] - /Pg 4917 0 R ->> -endobj - -1761 0 obj -<< - /Type /StructElem - /S /Strong - /P 1760 0 R - /K [89] - /Pg 4917 0 R ->> -endobj - -1762 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [61 1773 0 R 63 1772 0 R 65 1771 0 R 67 1770 0 R 69 70 1769 0 R 72 73 1768 0 R 75 76 1767 0 R 78 79 1766 0 R 81 1765 0 R 83 84 1764 0 R 86 1763 0 R 88] - /Pg 4917 0 R ->> -endobj - -1763 0 obj -<< - /Type /StructElem - /S /Link - /P 1762 0 R - /K [87 << - /Type /OBJR - /Pg 4917 0 R - /Obj 4913 0 R - >>] - /Pg 4917 0 R ->> -endobj - -1764 0 obj -<< - /Type /StructElem - /S /Code - /P 1762 0 R - /K [85] - /Pg 4917 0 R ->> -endobj - -1765 0 obj -<< - /Type /StructElem - /S /Link - /P 1762 0 R - /K [82 << - /Type /OBJR - /Pg 4917 0 R - /Obj 4912 0 R - >>] - /Pg 4917 0 R ->> -endobj - -1766 0 obj -<< - /Type /StructElem - /S /Code - /P 1762 0 R - /K [80] - /Pg 4917 0 R ->> -endobj - -1767 0 obj -<< - /Type /StructElem - /S /Code - /P 1762 0 R - /K [77] - /Pg 4917 0 R ->> -endobj - -1768 0 obj -<< - /Type /StructElem - /S /Code - /P 1762 0 R - /K [74] - /Pg 4917 0 R ->> -endobj - -1769 0 obj -<< - /Type /StructElem - /S /Em - /P 1762 0 R - /K [71] - /Pg 4917 0 R ->> -endobj - -1770 0 obj -<< - /Type /StructElem - /S /Code - /P 1762 0 R - /K [68] - /Pg 4917 0 R ->> -endobj - -1771 0 obj -<< - /Type /StructElem - /S /Code - /P 1762 0 R - /K [66] - /Pg 4917 0 R ->> -endobj - -1772 0 obj -<< - /Type /StructElem - /S /Em - /P 1762 0 R - /K [64] - /Pg 4917 0 R ->> -endobj - -1773 0 obj -<< - /Type /StructElem - /S /Link - /P 1762 0 R - /K [62 << - /Type /OBJR - /Pg 4917 0 R - /Obj 4911 0 R - >>] - /Pg 4917 0 R ->> -endobj - -1774 0 obj -<< - /Type /StructElem - /S /H3 - /P 103 0 R - /T (Context Access) - /K [59 60] - /Pg 4917 0 R ->> -endobj - -1775 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [43 1781 0 R 45 1780 0 R 47 1779 0 R 49 1778 0 R 51 52 1777 0 R 54 55 56 1776 0 R 58] - /Pg 4917 0 R ->> -endobj - -1776 0 obj -<< - /Type /StructElem - /S /Link - /P 1775 0 R - /K [57 << - /Type /OBJR - /Pg 4917 0 R - /Obj 4910 0 R - >>] - /Pg 4917 0 R ->> -endobj - -1777 0 obj -<< - /Type /StructElem - /S /Link - /P 1775 0 R - /K [53 << - /Type /OBJR - /Pg 4917 0 R - /Obj 4909 0 R - >>] - /Pg 4917 0 R ->> -endobj - -1778 0 obj -<< - /Type /StructElem - /S /Em - /P 1775 0 R - /K [50] - /Pg 4917 0 R ->> -endobj - -1779 0 obj -<< - /Type /StructElem - /S /Code - /P 1775 0 R - /K [48] - /Pg 4917 0 R ->> -endobj - -1780 0 obj -<< - /Type /StructElem - /S /Code - /P 1775 0 R - /K [46] - /Pg 4917 0 R ->> -endobj - -1781 0 obj -<< - /Type /StructElem - /S /Em - /P 1775 0 R - /K [44] - /Pg 4917 0 R ->> -endobj - -1782 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [34 35 1785 0 R 37 1784 0 R 39 1783 0 R 41 42] - /Pg 4917 0 R ->> -endobj - -1783 0 obj -<< - /Type /StructElem - /S /Link - /P 1782 0 R - /K [40 << - /Type /OBJR - /Pg 4917 0 R - /Obj 4908 0 R - >>] - /Pg 4917 0 R ->> -endobj - -1784 0 obj -<< - /Type /StructElem - /S /Code - /P 1782 0 R - /K [38] - /Pg 4917 0 R ->> -endobj - -1785 0 obj -<< - /Type /StructElem - /S /Link - /P 1782 0 R - /K [36 << - /Type /OBJR - /Pg 4917 0 R - /Obj 4907 0 R - >>] - /Pg 4917 0 R ->> -endobj - -1786 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [1983 0 R 1787 0 R] ->> -endobj - -1787 0 obj -<< - /Type /StructElem - /S /Div - /P 1786 0 R - /K [1982 0 R 1980 0 R 1977 0 R 1975 0 R 1974 0 R 1973 0 R 1968 0 R 1966 0 R 1965 0 R 1958 0 R 1956 0 R 1955 0 R 1951 0 R 1949 0 R 1948 0 R 1943 0 R 1941 0 R 1940 0 R 1932 0 R 1930 0 R 1929 0 R 1928 0 R 1927 0 R 1923 0 R 1921 0 R 1920 0 R 1918 0 R 1916 0 R 1915 0 R 1914 0 R 1913 0 R 1909 0 R 1907 0 R 1904 0 R 1902 0 R 1901 0 R 1900 0 R 1895 0 R 1893 0 R 1892 0 R 1882 0 R 1880 0 R 1879 0 R 1875 0 R 1873 0 R 1872 0 R 1865 0 R 1863 0 R 1862 0 R 1861 0 R 1860 0 R 1856 0 R 1854 0 R 1853 0 R 1851 0 R 1849 0 R 1848 0 R 1847 0 R 1846 0 R 1842 0 R 1840 0 R 1837 0 R 1835 0 R 1834 0 R 1833 0 R 1830 0 R 1828 0 R 1827 0 R 1823 0 R 1821 0 R 1820 0 R 1812 0 R 1810 0 R 1809 0 R 1808 0 R 1807 0 R 1803 0 R 1801 0 R 1800 0 R 1798 0 R 1796 0 R 1795 0 R 1794 0 R 1793 0 R 1789 0 R 1788 0 R] ->> -endobj - -1788 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1789 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1792 0 R 1791 0 R 1790 0 R] ->> -endobj - -1790 0 obj -<< - /Type /StructElem - /S /Span - /P 1789 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [33] - /Pg 4917 0 R ->> -endobj - -1791 0 obj -<< - /Type /StructElem - /S /Formula - /P 1789 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [32] - /Pg 4917 0 R ->> -endobj - -1792 0 obj -<< - /Type /StructElem - /S /Span - /P 1789 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [31] - /Pg 4917 0 R ->> -endobj - -1793 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1794 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1795 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1796 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1797 0 R] ->> -endobj - -1797 0 obj -<< - /Type /StructElem - /S /Span - /P 1796 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [30] - /Pg 4917 0 R ->> -endobj - -1798 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1799 0 R] ->> -endobj - -1799 0 obj -<< - /Type /StructElem - /S /Strong - /P 1798 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [29] - /Pg 4917 0 R ->> -endobj - -1800 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1801 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1802 0 R] ->> -endobj - -1802 0 obj -<< - /Type /StructElem - /S /Span - /P 1801 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [28] - /Pg 4917 0 R ->> -endobj - -1803 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1806 0 R 1805 0 R 1804 0 R] ->> -endobj - -1804 0 obj -<< - /Type /StructElem - /S /Span - /P 1803 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [27] - /Pg 4917 0 R ->> -endobj - -1805 0 obj -<< - /Type /StructElem - /S /Formula - /P 1803 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [26] - /Pg 4917 0 R ->> -endobj - -1806 0 obj -<< - /Type /StructElem - /S /Span - /P 1803 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [25] - /Pg 4917 0 R ->> -endobj - -1807 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1808 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1809 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1810 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1811 0 R] ->> -endobj - -1811 0 obj -<< - /Type /StructElem - /S /Span - /P 1810 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [24] - /Pg 4917 0 R ->> -endobj - -1812 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1819 0 R 1818 0 R 1817 0 R 1816 0 R 1815 0 R 1814 0 R 1813 0 R] ->> -endobj - -1813 0 obj -<< - /Type /StructElem - /S /Span - /P 1812 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [22] - /Pg 4917 0 R ->> -endobj - -1814 0 obj -<< - /Type /StructElem - /S /Strong - /P 1812 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [23] - /Pg 4917 0 R ->> -endobj - -1815 0 obj -<< - /Type /StructElem - /S /Formula - /P 1812 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [21] - /Pg 4917 0 R ->> -endobj - -1816 0 obj -<< - /Type /StructElem - /S /Span - /P 1812 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [20] - /Pg 4917 0 R ->> -endobj - -1817 0 obj -<< - /Type /StructElem - /S /Formula - /P 1812 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [19] - /Pg 4917 0 R ->> -endobj - -1818 0 obj -<< - /Type /StructElem - /S /Span - /P 1812 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [18] - /Pg 4917 0 R ->> -endobj - -1819 0 obj -<< - /Type /StructElem - /S /Strong - /P 1812 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [17] - /Pg 4917 0 R ->> -endobj - -1820 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1821 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1822 0 R] ->> -endobj - -1822 0 obj -<< - /Type /StructElem - /S /Span - /P 1821 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [16] - /Pg 4917 0 R ->> -endobj - -1823 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1826 0 R 1825 0 R 1824 0 R] ->> -endobj - -1824 0 obj -<< - /Type /StructElem - /S /Span - /P 1823 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [15] - /Pg 4917 0 R ->> -endobj - -1825 0 obj -<< - /Type /StructElem - /S /Formula - /P 1823 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [14] - /Pg 4917 0 R ->> -endobj - -1826 0 obj -<< - /Type /StructElem - /S /Span - /P 1823 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [13] - /Pg 4917 0 R ->> -endobj - -1827 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1828 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1829 0 R] ->> -endobj - -1829 0 obj -<< - /Type /StructElem - /S /Span - /P 1828 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [12] - /Pg 4917 0 R ->> -endobj - -1830 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1832 0 R 1831 0 R] ->> -endobj - -1831 0 obj -<< - /Type /StructElem - /S /Span - /P 1830 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [11] - /Pg 4917 0 R ->> -endobj - -1832 0 obj -<< - /Type /StructElem - /S /Strong - /P 1830 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [10] - /Pg 4917 0 R ->> -endobj - -1833 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1834 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1835 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1836 0 R] ->> -endobj - -1836 0 obj -<< - /Type /StructElem - /S /Span - /P 1835 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [9] - /Pg 4917 0 R ->> -endobj - -1837 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1839 0 R 1838 0 R] ->> -endobj - -1838 0 obj -<< - /Type /StructElem - /S /Span - /P 1837 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [8] - /Pg 4917 0 R ->> -endobj - -1839 0 obj -<< - /Type /StructElem - /S /Strong - /P 1837 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [7] - /Pg 4917 0 R ->> -endobj - -1840 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1841 0 R] ->> -endobj - -1841 0 obj -<< - /Type /StructElem - /S /Span - /P 1840 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [6] - /Pg 4917 0 R ->> -endobj - -1842 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1845 0 R 1844 0 R 1843 0 R] ->> -endobj - -1843 0 obj -<< - /Type /StructElem - /S /Span - /P 1842 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [5] - /Pg 4917 0 R ->> -endobj - -1844 0 obj -<< - /Type /StructElem - /S /Formula - /P 1842 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4] - /Pg 4917 0 R ->> -endobj - -1845 0 obj -<< - /Type /StructElem - /S /Span - /P 1842 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [3] - /Pg 4917 0 R ->> -endobj - -1846 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1847 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1848 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1849 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1850 0 R] ->> -endobj - -1850 0 obj -<< - /Type /StructElem - /S /Span - /P 1849 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [2] - /Pg 4917 0 R ->> -endobj - -1851 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1852 0 R] ->> -endobj - -1852 0 obj -<< - /Type /StructElem - /S /Strong - /P 1851 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [1] - /Pg 4917 0 R ->> -endobj - -1853 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1854 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1855 0 R] ->> -endobj - -1855 0 obj -<< - /Type /StructElem - /S /Span - /P 1854 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [0] - /Pg 4917 0 R ->> -endobj - -1856 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1859 0 R 1858 0 R 1857 0 R] ->> -endobj - -1857 0 obj -<< - /Type /StructElem - /S /Span - /P 1856 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [177] - /Pg 4905 0 R ->> -endobj - -1858 0 obj -<< - /Type /StructElem - /S /Formula - /P 1856 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [176] - /Pg 4905 0 R ->> -endobj - -1859 0 obj -<< - /Type /StructElem - /S /Span - /P 1856 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [175] - /Pg 4905 0 R ->> -endobj - -1860 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1861 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1862 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1863 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1864 0 R] ->> -endobj - -1864 0 obj -<< - /Type /StructElem - /S /Span - /P 1863 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [174] - /Pg 4905 0 R ->> -endobj - -1865 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1871 0 R 1870 0 R 1869 0 R 1868 0 R 1867 0 R 1866 0 R] ->> -endobj - -1866 0 obj -<< - /Type /StructElem - /S /Span - /P 1865 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [170 172] - /Pg 4905 0 R ->> -endobj - -1867 0 obj -<< - /Type /StructElem - /S /Strong - /P 1865 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [173] - /Pg 4905 0 R ->> -endobj - -1868 0 obj -<< - /Type /StructElem - /S /Span - /P 1865 0 R - /A [<< - /O /Layout - /Placement /Block - /BaselineShift -0.9786 - /LineHeight 4.88601 - >>] - /K [171] - /Pg 4905 0 R ->> -endobj - -1869 0 obj -<< - /Type /StructElem - /S /Formula - /P 1865 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [169] - /Pg 4905 0 R ->> -endobj - -1870 0 obj -<< - /Type /StructElem - /S /Span - /P 1865 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [168] - /Pg 4905 0 R ->> -endobj - -1871 0 obj -<< - /Type /StructElem - /S /Strong - /P 1865 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [167] - /Pg 4905 0 R ->> -endobj - -1872 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1873 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1874 0 R] ->> -endobj - -1874 0 obj -<< - /Type /StructElem - /S /Span - /P 1873 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [166] - /Pg 4905 0 R ->> -endobj - -1875 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1878 0 R 1877 0 R 1876 0 R] ->> -endobj - -1876 0 obj -<< - /Type /StructElem - /S /Span - /P 1875 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [165] - /Pg 4905 0 R ->> -endobj - -1877 0 obj -<< - /Type /StructElem - /S /Formula - /P 1875 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [164] - /Pg 4905 0 R ->> -endobj - -1878 0 obj -<< - /Type /StructElem - /S /Span - /P 1875 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [163] - /Pg 4905 0 R ->> -endobj - -1879 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1880 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1881 0 R] ->> -endobj - -1881 0 obj -<< - /Type /StructElem - /S /Span - /P 1880 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [162] - /Pg 4905 0 R ->> -endobj - -1882 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1891 0 R 1890 0 R 1889 0 R 1888 0 R 1887 0 R 1886 0 R 1885 0 R 1884 0 R 1883 0 R] ->> -endobj - -1883 0 obj -<< - /Type /StructElem - /S /Span - /P 1882 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [159 161] - /Pg 4905 0 R ->> -endobj - -1884 0 obj -<< - /Type /StructElem - /S /Span - /P 1882 0 R - /A [<< - /O /Layout - /Placement /Block - /BaselineShift -0.9786 - /LineHeight 4.88601 - >>] - /K [160] - /Pg 4905 0 R ->> -endobj - -1885 0 obj -<< - /Type /StructElem - /S /Formula - /P 1882 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [158] - /Pg 4905 0 R ->> -endobj - -1886 0 obj -<< - /Type /StructElem - /S /Span - /P 1882 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [157] - /Pg 4905 0 R ->> -endobj - -1887 0 obj -<< - /Type /StructElem - /S /Formula - /P 1882 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [156] - /Pg 4905 0 R ->> -endobj - -1888 0 obj -<< - /Type /StructElem - /S /Span - /P 1882 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [153 155] - /Pg 4905 0 R ->> -endobj - -1889 0 obj -<< - /Type /StructElem - /S /Strong - /P 1882 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [154] - /Pg 4905 0 R ->> -endobj - -1890 0 obj -<< - /Type /StructElem - /S /Formula - /P 1882 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [152] - /Pg 4905 0 R ->> -endobj - -1891 0 obj -<< - /Type /StructElem - /S /Span - /P 1882 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [151] - /Pg 4905 0 R ->> -endobj - -1892 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1893 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1894 0 R] ->> -endobj - -1894 0 obj -<< - /Type /StructElem - /S /Span - /P 1893 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [150] - /Pg 4905 0 R ->> -endobj - -1895 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1899 0 R 1898 0 R 1897 0 R 1896 0 R] ->> -endobj - -1896 0 obj -<< - /Type /StructElem - /S /Span - /P 1895 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [149] - /Pg 4905 0 R ->> -endobj - -1897 0 obj -<< - /Type /StructElem - /S /Formula - /P 1895 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [148] - /Pg 4905 0 R ->> -endobj - -1898 0 obj -<< - /Type /StructElem - /S /Span - /P 1895 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [145 147] - /Pg 4905 0 R ->> -endobj - -1899 0 obj -<< - /Type /StructElem - /S /Span - /P 1895 0 R - /A [<< - /O /Layout - /Placement /Block - /BaselineShift -0.9786 - /LineHeight 4.88601 - >>] - /K [146] - /Pg 4905 0 R ->> -endobj - -1900 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1901 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1902 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1903 0 R] ->> -endobj - -1903 0 obj -<< - /Type /StructElem - /S /Span - /P 1902 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [144] - /Pg 4905 0 R ->> -endobj - -1904 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1906 0 R 1905 0 R] ->> -endobj - -1905 0 obj -<< - /Type /StructElem - /S /Span - /P 1904 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [143] - /Pg 4905 0 R ->> -endobj - -1906 0 obj -<< - /Type /StructElem - /S /Strong - /P 1904 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [142] - /Pg 4905 0 R ->> -endobj - -1907 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1908 0 R] ->> -endobj - -1908 0 obj -<< - /Type /StructElem - /S /Span - /P 1907 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [141] - /Pg 4905 0 R ->> -endobj - -1909 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1912 0 R 1911 0 R 1910 0 R] ->> -endobj - -1910 0 obj -<< - /Type /StructElem - /S /Span - /P 1909 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [140] - /Pg 4905 0 R ->> -endobj - -1911 0 obj -<< - /Type /StructElem - /S /Formula - /P 1909 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [139] - /Pg 4905 0 R ->> -endobj - -1912 0 obj -<< - /Type /StructElem - /S /Span - /P 1909 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [138] - /Pg 4905 0 R ->> -endobj - -1913 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1914 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1915 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1916 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1917 0 R] ->> -endobj - -1917 0 obj -<< - /Type /StructElem - /S /Span - /P 1916 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [137] - /Pg 4905 0 R ->> -endobj - -1918 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1919 0 R] ->> -endobj - -1919 0 obj -<< - /Type /StructElem - /S /Strong - /P 1918 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [136] - /Pg 4905 0 R ->> -endobj - -1920 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1921 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1922 0 R] ->> -endobj - -1922 0 obj -<< - /Type /StructElem - /S /Span - /P 1921 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [135] - /Pg 4905 0 R ->> -endobj - -1923 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1926 0 R 1925 0 R 1924 0 R] ->> -endobj - -1924 0 obj -<< - /Type /StructElem - /S /Span - /P 1923 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [134] - /Pg 4905 0 R ->> -endobj - -1925 0 obj -<< - /Type /StructElem - /S /Formula - /P 1923 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [133] - /Pg 4905 0 R ->> -endobj - -1926 0 obj -<< - /Type /StructElem - /S /Span - /P 1923 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [132] - /Pg 4905 0 R ->> -endobj - -1927 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1928 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1929 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1930 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1931 0 R] ->> -endobj - -1931 0 obj -<< - /Type /StructElem - /S /Span - /P 1930 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [131] - /Pg 4905 0 R ->> -endobj - -1932 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1939 0 R 1938 0 R 1937 0 R 1936 0 R 1935 0 R 1934 0 R 1933 0 R] ->> -endobj - -1933 0 obj -<< - /Type /StructElem - /S /Span - /P 1932 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [129] - /Pg 4905 0 R ->> -endobj - -1934 0 obj -<< - /Type /StructElem - /S /Strong - /P 1932 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [130] - /Pg 4905 0 R ->> -endobj - -1935 0 obj -<< - /Type /StructElem - /S /Formula - /P 1932 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [128] - /Pg 4905 0 R ->> -endobj - -1936 0 obj -<< - /Type /StructElem - /S /Span - /P 1932 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [127] - /Pg 4905 0 R ->> -endobj - -1937 0 obj -<< - /Type /StructElem - /S /Formula - /P 1932 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [126] - /Pg 4905 0 R ->> -endobj - -1938 0 obj -<< - /Type /StructElem - /S /Span - /P 1932 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [125] - /Pg 4905 0 R ->> -endobj - -1939 0 obj -<< - /Type /StructElem - /S /Strong - /P 1932 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [124] - /Pg 4905 0 R ->> -endobj - -1940 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1941 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1942 0 R] ->> -endobj - -1942 0 obj -<< - /Type /StructElem - /S /Span - /P 1941 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [123] - /Pg 4905 0 R ->> -endobj - -1943 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1947 0 R 1946 0 R 1945 0 R 1944 0 R] ->> -endobj - -1944 0 obj -<< - /Type /StructElem - /S /Span - /P 1943 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [119 121] - /Pg 4905 0 R ->> -endobj - -1945 0 obj -<< - /Type /StructElem - /S /Strong - /P 1943 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [122] - /Pg 4905 0 R ->> -endobj - -1946 0 obj -<< - /Type /StructElem - /S /Strong - /P 1943 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [120] - /Pg 4905 0 R ->> -endobj - -1947 0 obj -<< - /Type /StructElem - /S /Strong - /P 1943 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [118] - /Pg 4905 0 R ->> -endobj - -1948 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1949 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1950 0 R] ->> -endobj - -1950 0 obj -<< - /Type /StructElem - /S /Span - /P 1949 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [117] - /Pg 4905 0 R ->> -endobj - -1951 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1954 0 R 1953 0 R 1952 0 R] ->> -endobj - -1952 0 obj -<< - /Type /StructElem - /S /Span - /P 1951 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [116] - /Pg 4905 0 R ->> -endobj - -1953 0 obj -<< - /Type /StructElem - /S /Formula - /P 1951 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [115] - /Pg 4905 0 R ->> -endobj - -1954 0 obj -<< - /Type /StructElem - /S /Span - /P 1951 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [114] - /Pg 4905 0 R ->> -endobj - -1955 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1956 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1957 0 R] ->> -endobj - -1957 0 obj -<< - /Type /StructElem - /S /Span - /P 1956 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [113] - /Pg 4905 0 R ->> -endobj - -1958 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1964 0 R 1963 0 R 1962 0 R 1961 0 R 1960 0 R 1959 0 R] ->> -endobj - -1959 0 obj -<< - /Type /StructElem - /S /Span - /P 1958 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [109 111] - /Pg 4905 0 R ->> -endobj - -1960 0 obj -<< - /Type /StructElem - /S /Strong - /P 1958 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [112] - /Pg 4905 0 R ->> -endobj - -1961 0 obj -<< - /Type /StructElem - /S /Strong - /P 1958 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [110] - /Pg 4905 0 R ->> -endobj - -1962 0 obj -<< - /Type /StructElem - /S /Formula - /P 1958 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [108] - /Pg 4905 0 R ->> -endobj - -1963 0 obj -<< - /Type /StructElem - /S /Span - /P 1958 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [107] - /Pg 4905 0 R ->> -endobj - -1964 0 obj -<< - /Type /StructElem - /S /Strong - /P 1958 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [106] - /Pg 4905 0 R ->> -endobj - -1965 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1966 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1967 0 R] ->> -endobj - -1967 0 obj -<< - /Type /StructElem - /S /Span - /P 1966 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [105] - /Pg 4905 0 R ->> -endobj - -1968 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1972 0 R 1971 0 R 1970 0 R 1969 0 R] ->> -endobj - -1969 0 obj -<< - /Type /StructElem - /S /Formula - /P 1968 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [100 101 102 103 104] - /Pg 4905 0 R ->> -endobj - -1970 0 obj -<< - /Type /StructElem - /S /Span - /P 1968 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [99] - /Pg 4905 0 R ->> -endobj - -1971 0 obj -<< - /Type /StructElem - /S /Formula - /P 1968 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [98] - /Pg 4905 0 R ->> -endobj - -1972 0 obj -<< - /Type /StructElem - /S /Span - /P 1968 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [97] - /Pg 4905 0 R ->> -endobj - -1973 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1974 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1975 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1976 0 R] ->> -endobj - -1976 0 obj -<< - /Type /StructElem - /S /Span - /P 1975 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [96] - /Pg 4905 0 R ->> -endobj - -1977 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1979 0 R 1978 0 R] ->> -endobj - -1978 0 obj -<< - /Type /StructElem - /S /Span - /P 1977 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [95] - /Pg 4905 0 R ->> -endobj - -1979 0 obj -<< - /Type /StructElem - /S /Strong - /P 1977 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [94] - /Pg 4905 0 R ->> -endobj - -1980 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [1981 0 R] ->> -endobj - -1981 0 obj -<< - /Type /StructElem - /S /Span - /P 1980 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [93] - /Pg 4905 0 R ->> -endobj - -1982 0 obj -<< - /Type /StructElem - /S /Div - /P 1787 0 R - /K [] ->> -endobj - -1983 0 obj -<< - /Type /StructElem - /S /P - /P 1786 0 R - /K [1984 0 R 92] - /Pg 4905 0 R ->> -endobj - -1984 0 obj -<< - /Type /StructElem - /S /Strong - /P 1983 0 R - /K [91] - /Pg 4905 0 R ->> -endobj - -1985 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [2009 0 R 52 2008 0 R 54 2007 0 R 56 2006 0 R 58 59 60 2005 0 R 62 63 2004 0 R 65 2003 0 R 67 2000 0 R 1994 0 R 69 1993 0 R 71 72 1992 0 R 74 75 1991 0 R 77 78 1990 0 R 80 1989 0 R 82 1988 0 R 84 85 1987 0 R 87 1986 0 R 89 90] - /Pg 4905 0 R ->> -endobj - -1986 0 obj -<< - /Type /StructElem - /S /Code - /P 1985 0 R - /K [88] - /Pg 4905 0 R ->> -endobj - -1987 0 obj -<< - /Type /StructElem - /S /Code - /P 1985 0 R - /K [86] - /Pg 4905 0 R ->> -endobj - -1988 0 obj -<< - /Type /StructElem - /S /Code - /P 1985 0 R - /K [83] - /Pg 4905 0 R ->> -endobj - -1989 0 obj -<< - /Type /StructElem - /S /Code - /P 1985 0 R - /K [81] - /Pg 4905 0 R ->> -endobj - -1990 0 obj -<< - /Type /StructElem - /S /Formula - /P 1985 0 R - /K [79] - /Pg 4905 0 R ->> -endobj - -1991 0 obj -<< - /Type /StructElem - /S /Code - /P 1985 0 R - /K [76] - /Pg 4905 0 R ->> -endobj - -1992 0 obj -<< - /Type /StructElem - /S /Code - /P 1985 0 R - /K [73] - /Pg 4905 0 R ->> -endobj - -1993 0 obj -<< - /Type /StructElem - /S /Code - /P 1985 0 R - /K [70] - /Pg 4905 0 R ->> -endobj - -1994 0 obj -<< - /Type /StructElem - /S /Note - /P 1985 0 R - /ID (Note 2) - /K [1997 0 R 1996 0 R 180 1995 0 R 182 183 184 185] - /Pg 4905 0 R ->> -endobj - -1995 0 obj -<< - /Type /StructElem - /S /Code - /P 1994 0 R - /K [181] - /Pg 4905 0 R ->> -endobj - -1996 0 obj -<< - /Type /StructElem - /S /Code - /P 1994 0 R - /K [179] - /Pg 4905 0 R ->> -endobj - -1997 0 obj -<< - /Type /StructElem - /S /Lbl - /P 1994 0 R - /K [1998 0 R] ->> -endobj - -1998 0 obj -<< - /Type /StructElem - /S /Link - /P 1997 0 R - /K [<< - /Type /OBJR - /Pg 4905 0 R - /Obj 4904 0 R - >> 1999 0 R] ->> -endobj - -1999 0 obj -<< - /Type /StructElem - /S /Span - /P 1998 0 R - /A [<< - /O /Layout - /BaselineShift 2.5866 - /LineHeight 3.24 - >>] - /K [178] - /Pg 4905 0 R ->> -endobj - -2000 0 obj -<< - /Type /StructElem - /S /Lbl - /P 1985 0 R - /K [2001 0 R] ->> -endobj - -2001 0 obj -<< - /Type /StructElem - /S /Link - /P 2000 0 R - /K [<< - /Type /OBJR - /Pg 4905 0 R - /Obj 4903 0 R - >> 2002 0 R] ->> -endobj - -2002 0 obj -<< - /Type /StructElem - /S /Span - /P 2001 0 R - /A [<< - /O /Layout - /BaselineShift 3.1614 - /LineHeight 3.96 - >>] - /K [68] - /Pg 4905 0 R ->> -endobj - -2003 0 obj -<< - /Type /StructElem - /S /Code - /P 1985 0 R - /K [66] - /Pg 4905 0 R ->> -endobj - -2004 0 obj -<< - /Type /StructElem - /S /Code - /P 1985 0 R - /K [64] - /Pg 4905 0 R ->> -endobj - -2005 0 obj -<< - /Type /StructElem - /S /Code - /P 1985 0 R - /K [61] - /Pg 4905 0 R ->> -endobj - -2006 0 obj -<< - /Type /StructElem - /S /Code - /P 1985 0 R - /K [57] - /Pg 4905 0 R ->> -endobj - -2007 0 obj -<< - /Type /StructElem - /S /Code - /P 1985 0 R - /K [55] - /Pg 4905 0 R ->> -endobj - -2008 0 obj -<< - /Type /StructElem - /S /Link - /P 1985 0 R - /K [53 << - /Type /OBJR - /Pg 4905 0 R - /Obj 4902 0 R - >>] - /Pg 4905 0 R ->> -endobj - -2009 0 obj -<< - /Type /StructElem - /S /Link - /P 1985 0 R - /K [51 << - /Type /OBJR - /Pg 4905 0 R - /Obj 4901 0 R - >>] - /Pg 4905 0 R ->> -endobj - -2010 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [2097 0 R 2011 0 R] ->> -endobj - -2011 0 obj -<< - /Type /StructElem - /S /Div - /P 2010 0 R - /K [2096 0 R 2094 0 R 2091 0 R 2088 0 R 2087 0 R 2086 0 R 2083 0 R 2081 0 R 2080 0 R 2079 0 R 2078 0 R 2076 0 R 2074 0 R 2073 0 R 2072 0 R 2068 0 R 2066 0 R 2065 0 R 2064 0 R 2063 0 R 2062 0 R 2057 0 R 2055 0 R 2054 0 R 2053 0 R 2052 0 R 2050 0 R 2048 0 R 2047 0 R 2043 0 R 2041 0 R 2040 0 R 2034 0 R 2031 0 R 2030 0 R 2024 0 R 2022 0 R 2021 0 R 2019 0 R 2017 0 R 2016 0 R 2013 0 R 2012 0 R] ->> -endobj - -2012 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [] ->> -endobj - -2013 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [2015 0 R 2014 0 R] ->> -endobj - -2014 0 obj -<< - /Type /StructElem - /S /Span - /P 2013 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [50] - /Pg 4905 0 R ->> -endobj - -2015 0 obj -<< - /Type /StructElem - /S /Strong - /P 2013 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [49] - /Pg 4905 0 R ->> -endobj - -2016 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [] ->> -endobj - -2017 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [2018 0 R] ->> -endobj - -2018 0 obj -<< - /Type /StructElem - /S /Span - /P 2017 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [48] - /Pg 4905 0 R ->> -endobj - -2019 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [2020 0 R] ->> -endobj - -2020 0 obj -<< - /Type /StructElem - /S /Span - /P 2019 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [47] - /Pg 4905 0 R ->> -endobj - -2021 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [] ->> -endobj - -2022 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [2023 0 R] ->> -endobj - -2023 0 obj -<< - /Type /StructElem - /S /Span - /P 2022 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [46] - /Pg 4905 0 R ->> -endobj - -2024 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [2029 0 R 2028 0 R 2027 0 R 2026 0 R 2025 0 R] ->> -endobj - -2025 0 obj -<< - /Type /StructElem - /S /Span - /P 2024 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [45] - /Pg 4905 0 R ->> -endobj - -2026 0 obj -<< - /Type /StructElem - /S /Formula - /P 2024 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [44] - /Pg 4905 0 R ->> -endobj - -2027 0 obj -<< - /Type /StructElem - /S /Span - /P 2024 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [43] - /Pg 4905 0 R ->> -endobj - -2028 0 obj -<< - /Type /StructElem - /S /Formula - /P 2024 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [42] - /Pg 4905 0 R ->> -endobj - -2029 0 obj -<< - /Type /StructElem - /S /Span - /P 2024 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [41] - /Pg 4905 0 R ->> -endobj - -2030 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [] ->> -endobj - -2031 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [2033 0 R 2032 0 R] ->> -endobj - -2032 0 obj -<< - /Type /StructElem - /S /Span - /P 2031 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [40] - /Pg 4905 0 R ->> -endobj - -2033 0 obj -<< - /Type /StructElem - /S /Div - /P 2031 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [] ->> -endobj - -2034 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [2039 0 R 2038 0 R 2037 0 R 2036 0 R 2035 0 R] ->> -endobj - -2035 0 obj -<< - /Type /StructElem - /S /Span - /P 2034 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [39] - /Pg 4905 0 R ->> -endobj - -2036 0 obj -<< - /Type /StructElem - /S /Formula - /P 2034 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [38] - /Pg 4905 0 R ->> -endobj - -2037 0 obj -<< - /Type /StructElem - /S /Span - /P 2034 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [37] - /Pg 4905 0 R ->> -endobj - -2038 0 obj -<< - /Type /StructElem - /S /Formula - /P 2034 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [36] - /Pg 4905 0 R ->> -endobj - -2039 0 obj -<< - /Type /StructElem - /S /Span - /P 2034 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [35] - /Pg 4905 0 R ->> -endobj - -2040 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [] ->> -endobj - -2041 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [2042 0 R] ->> -endobj - -2042 0 obj -<< - /Type /StructElem - /S /Span - /P 2041 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [34] - /Pg 4905 0 R ->> -endobj - -2043 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [2046 0 R 2045 0 R 2044 0 R] ->> -endobj - -2044 0 obj -<< - /Type /StructElem - /S /Span - /P 2043 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [33] - /Pg 4905 0 R ->> -endobj - -2045 0 obj -<< - /Type /StructElem - /S /Formula - /P 2043 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [32] - /Pg 4905 0 R ->> -endobj - -2046 0 obj -<< - /Type /StructElem - /S /Span - /P 2043 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [31] - /Pg 4905 0 R ->> -endobj - -2047 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [] ->> -endobj - -2048 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [2049 0 R] ->> -endobj - -2049 0 obj -<< - /Type /StructElem - /S /Span - /P 2048 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [30] - /Pg 4905 0 R ->> -endobj - -2050 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [2051 0 R] ->> -endobj - -2051 0 obj -<< - /Type /StructElem - /S /Span - /P 2050 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [29] - /Pg 4905 0 R ->> -endobj - -2052 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [] ->> -endobj - -2053 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [] ->> -endobj - -2054 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [] ->> -endobj - -2055 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [2056 0 R] ->> -endobj - -2056 0 obj -<< - /Type /StructElem - /S /Span - /P 2055 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [28] - /Pg 4905 0 R ->> -endobj - -2057 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [2061 0 R 2060 0 R 2059 0 R 2058 0 R] ->> -endobj - -2058 0 obj -<< - /Type /StructElem - /S /Formula - /P 2057 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [27] - /Pg 4905 0 R ->> -endobj - -2059 0 obj -<< - /Type /StructElem - /S /Span - /P 2057 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [26] - /Pg 4905 0 R ->> -endobj - -2060 0 obj -<< - /Type /StructElem - /S /Formula - /P 2057 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [25] - /Pg 4905 0 R ->> -endobj - -2061 0 obj -<< - /Type /StructElem - /S /Span - /P 2057 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [24] - /Pg 4905 0 R ->> -endobj - -2062 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [] ->> -endobj - -2063 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [] ->> -endobj - -2064 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [] ->> -endobj - -2065 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [] ->> -endobj - -2066 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [2067 0 R] ->> -endobj - -2067 0 obj -<< - /Type /StructElem - /S /Span - /P 2066 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [23] - /Pg 4905 0 R ->> -endobj - -2068 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [2071 0 R 2070 0 R 2069 0 R] ->> -endobj - -2069 0 obj -<< - /Type /StructElem - /S /Span - /P 2068 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [20 22] - /Pg 4905 0 R ->> -endobj - -2070 0 obj -<< - /Type /StructElem - /S /Strong - /P 2068 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [21] - /Pg 4905 0 R ->> -endobj - -2071 0 obj -<< - /Type /StructElem - /S /Strong - /P 2068 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [19] - /Pg 4905 0 R ->> -endobj - -2072 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [] ->> -endobj - -2073 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [] ->> -endobj - -2074 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [2075 0 R] ->> -endobj - -2075 0 obj -<< - /Type /StructElem - /S /Span - /P 2074 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [18] - /Pg 4905 0 R ->> -endobj - -2076 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [2077 0 R] ->> -endobj - -2077 0 obj -<< - /Type /StructElem - /S /Span - /P 2076 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [17] - /Pg 4905 0 R ->> -endobj - -2078 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [] ->> -endobj - -2079 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [] ->> -endobj - -2080 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [] ->> -endobj - -2081 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [2082 0 R] ->> -endobj - -2082 0 obj -<< - /Type /StructElem - /S /Span - /P 2081 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [16] - /Pg 4905 0 R ->> -endobj - -2083 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [2085 0 R 2084 0 R] ->> -endobj - -2084 0 obj -<< - /Type /StructElem - /S /Span - /P 2083 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [15] - /Pg 4905 0 R ->> -endobj - -2085 0 obj -<< - /Type /StructElem - /S /Strong - /P 2083 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [14] - /Pg 4905 0 R ->> -endobj - -2086 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [] ->> -endobj - -2087 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [] ->> -endobj - -2088 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [2090 0 R 2089 0 R] ->> -endobj - -2089 0 obj -<< - /Type /StructElem - /S /Span - /P 2088 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [13] - /Pg 4905 0 R ->> -endobj - -2090 0 obj -<< - /Type /StructElem - /S /Div - /P 2088 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [] ->> -endobj - -2091 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [2093 0 R 2092 0 R] ->> -endobj - -2092 0 obj -<< - /Type /StructElem - /S /Span - /P 2091 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [12] - /Pg 4905 0 R ->> -endobj - -2093 0 obj -<< - /Type /StructElem - /S /Strong - /P 2091 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [11] - /Pg 4905 0 R ->> -endobj - -2094 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [2095 0 R] ->> -endobj - -2095 0 obj -<< - /Type /StructElem - /S /Span - /P 2094 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [10] - /Pg 4905 0 R ->> -endobj - -2096 0 obj -<< - /Type /StructElem - /S /Div - /P 2011 0 R - /K [] ->> -endobj - -2097 0 obj -<< - /Type /StructElem - /S /P - /P 2010 0 R - /K [2098 0 R 9] - /Pg 4905 0 R ->> -endobj - -2098 0 obj -<< - /Type /StructElem - /S /Strong - /P 2097 0 R - /K [8] - /Pg 4905 0 R ->> -endobj - -2099 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [2116 0 R 173 2115 0 R 175 2114 0 R 177 2113 0 R 179 2112 0 R 181 182 2111 0 R 184 2110 0 R 186 2109 0 R 188 2108 0 R 190 191 2107 0 R 193 2106 0 R 195 2105 0 R 197 198 2104 0 R 200 2103 0 R 202 << - /Type /MCR - /MCID 0 - /Pg 4905 0 R - >> 2102 0 R << - /Type /MCR - /MCID 2 - /Pg 4905 0 R - >> 2101 0 R << - /Type /MCR - /MCID 4 - /Pg 4905 0 R - >> << - /Type /MCR - /MCID 5 - /Pg 4905 0 R - >> 2100 0 R << - /Type /MCR - /MCID 7 - /Pg 4905 0 R - >>] - /Pg 4899 0 R ->> -endobj - -2100 0 obj -<< - /Type /StructElem - /S /Formula - /P 2099 0 R - /K [6] - /Pg 4905 0 R ->> -endobj - -2101 0 obj -<< - /Type /StructElem - /S /Code - /P 2099 0 R - /K [3] - /Pg 4905 0 R ->> -endobj - -2102 0 obj -<< - /Type /StructElem - /S /Formula - /P 2099 0 R - /K [1] - /Pg 4905 0 R ->> -endobj - -2103 0 obj -<< - /Type /StructElem - /S /Link - /P 2099 0 R - /K [201 << - /Type /OBJR - /Pg 4899 0 R - /Obj 4898 0 R - >>] - /Pg 4899 0 R ->> -endobj - -2104 0 obj -<< - /Type /StructElem - /S /Code - /P 2099 0 R - /K [199] - /Pg 4899 0 R ->> -endobj - -2105 0 obj -<< - /Type /StructElem - /S /Em - /P 2099 0 R - /K [196] - /Pg 4899 0 R ->> -endobj - -2106 0 obj -<< - /Type /StructElem - /S /Link - /P 2099 0 R - /K [194 << - /Type /OBJR - /Pg 4899 0 R - /Obj 4897 0 R - >>] - /Pg 4899 0 R ->> -endobj - -2107 0 obj -<< - /Type /StructElem - /S /Code - /P 2099 0 R - /K [192] - /Pg 4899 0 R ->> -endobj - -2108 0 obj -<< - /Type /StructElem - /S /Formula - /P 2099 0 R - /K [189] - /Pg 4899 0 R ->> -endobj - -2109 0 obj -<< - /Type /StructElem - /S /Link - /P 2099 0 R - /K [187 << - /Type /OBJR - /Pg 4899 0 R - /Obj 4896 0 R - >>] - /Pg 4899 0 R ->> -endobj - -2110 0 obj -<< - /Type /StructElem - /S /Code - /P 2099 0 R - /K [185] - /Pg 4899 0 R ->> -endobj - -2111 0 obj -<< - /Type /StructElem - /S /Code - /P 2099 0 R - /K [183] - /Pg 4899 0 R ->> -endobj - -2112 0 obj -<< - /Type /StructElem - /S /Code - /P 2099 0 R - /K [180] - /Pg 4899 0 R ->> -endobj - -2113 0 obj -<< - /Type /StructElem - /S /Formula - /P 2099 0 R - /K [178] - /Pg 4899 0 R ->> -endobj - -2114 0 obj -<< - /Type /StructElem - /S /Code - /P 2099 0 R - /K [176] - /Pg 4899 0 R ->> -endobj - -2115 0 obj -<< - /Type /StructElem - /S /Em - /P 2099 0 R - /K [174] - /Pg 4899 0 R ->> -endobj - -2116 0 obj -<< - /Type /StructElem - /S /Link - /P 2099 0 R - /K [172 << - /Type /OBJR - /Pg 4899 0 R - /Obj 4895 0 R - >>] - /Pg 4899 0 R ->> -endobj - -2117 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [149 2126 0 R 151 2125 0 R 153 2124 0 R 155 2123 0 R 157 158 2122 0 R 160 2121 0 R 162 163 2120 0 R 166 2119 0 R 168 2118 0 R 170 171] - /Pg 4899 0 R ->> -endobj - -2118 0 obj -<< - /Type /StructElem - /S /Code - /P 2117 0 R - /K [169] - /Pg 4899 0 R ->> -endobj - -2119 0 obj -<< - /Type /StructElem - /S /Link - /P 2117 0 R - /K [167 << - /Type /OBJR - /Pg 4899 0 R - /Obj 4894 0 R - >>] - /Pg 4899 0 R ->> -endobj - -2120 0 obj -<< - /Type /StructElem - /S /Formula - /P 2117 0 R - /K [164 165] - /Pg 4899 0 R ->> -endobj - -2121 0 obj -<< - /Type /StructElem - /S /Code - /P 2117 0 R - /K [161] - /Pg 4899 0 R ->> -endobj - -2122 0 obj -<< - /Type /StructElem - /S /Code - /P 2117 0 R - /K [159] - /Pg 4899 0 R ->> -endobj - -2123 0 obj -<< - /Type /StructElem - /S /Link - /P 2117 0 R - /K [156 << - /Type /OBJR - /Pg 4899 0 R - /Obj 4893 0 R - >>] - /Pg 4899 0 R ->> -endobj - -2124 0 obj -<< - /Type /StructElem - /S /Link - /P 2117 0 R - /K [154 << - /Type /OBJR - /Pg 4899 0 R - /Obj 4892 0 R - >>] - /Pg 4899 0 R ->> -endobj - -2125 0 obj -<< - /Type /StructElem - /S /Code - /P 2117 0 R - /K [152] - /Pg 4899 0 R ->> -endobj - -2126 0 obj -<< - /Type /StructElem - /S /Em - /P 2117 0 R - /K [150] - /Pg 4899 0 R ->> -endobj - -2127 0 obj -<< - /Type /StructElem - /S /H3 - /P 103 0 R - /T (Component Lifecycle) - /K [147 148] - /Pg 4899 0 R ->> -endobj - -2128 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [2141 0 R 115 116 2140 0 R 118 119 2139 0 R 121 2138 0 R 123 2137 0 R 125 126 2136 0 R 128 2135 0 R 130 131 2134 0 R 133 134 2133 0 R 136 2132 0 R 138 2131 0 R 140 2130 0 R 142 143 2129 0 R 145 146] - /Pg 4899 0 R ->> -endobj - -2129 0 obj -<< - /Type /StructElem - /S /Code - /P 2128 0 R - /K [144] - /Pg 4899 0 R ->> -endobj - -2130 0 obj -<< - /Type /StructElem - /S /Link - /P 2128 0 R - /K [141 << - /Type /OBJR - /Pg 4899 0 R - /Obj 4891 0 R - >>] - /Pg 4899 0 R ->> -endobj - -2131 0 obj -<< - /Type /StructElem - /S /Formula - /P 2128 0 R - /K [139] - /Pg 4899 0 R ->> -endobj - -2132 0 obj -<< - /Type /StructElem - /S /Formula - /P 2128 0 R - /K [137] - /Pg 4899 0 R ->> -endobj - -2133 0 obj -<< - /Type /StructElem - /S /Code - /P 2128 0 R - /K [135] - /Pg 4899 0 R ->> -endobj - -2134 0 obj -<< - /Type /StructElem - /S /Code - /P 2128 0 R - /K [132] - /Pg 4899 0 R ->> -endobj - -2135 0 obj -<< - /Type /StructElem - /S /Link - /P 2128 0 R - /K [129 << - /Type /OBJR - /Pg 4899 0 R - /Obj 4890 0 R - >>] - /Pg 4899 0 R ->> -endobj - -2136 0 obj -<< - /Type /StructElem - /S /Formula - /P 2128 0 R - /K [127] - /Pg 4899 0 R ->> -endobj - -2137 0 obj -<< - /Type /StructElem - /S /Code - /P 2128 0 R - /K [124] - /Pg 4899 0 R ->> -endobj - -2138 0 obj -<< - /Type /StructElem - /S /Formula - /P 2128 0 R - /K [122] - /Pg 4899 0 R ->> -endobj - -2139 0 obj -<< - /Type /StructElem - /S /Code - /P 2128 0 R - /K [120] - /Pg 4899 0 R ->> -endobj - -2140 0 obj -<< - /Type /StructElem - /S /Code - /P 2128 0 R - /K [117] - /Pg 4899 0 R ->> -endobj - -2141 0 obj -<< - /Type /StructElem - /S /Strong - /P 2128 0 R - /K [114] - /Pg 4899 0 R ->> -endobj - -2142 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [2206 0 R 2143 0 R] ->> -endobj - -2143 0 obj -<< - /Type /StructElem - /S /Div - /P 2142 0 R - /K [2205 0 R 2203 0 R 2200 0 R 2198 0 R 2197 0 R 2196 0 R 2191 0 R 2189 0 R 2188 0 R 2187 0 R 2186 0 R 2181 0 R 2179 0 R 2178 0 R 2177 0 R 2176 0 R 2175 0 R 2162 0 R 2160 0 R 2159 0 R 2158 0 R 2157 0 R 2156 0 R 2155 0 R 2153 0 R 2151 0 R 2150 0 R 2149 0 R 2148 0 R 2147 0 R 2145 0 R 2144 0 R] ->> -endobj - -2144 0 obj -<< - /Type /StructElem - /S /Div - /P 2143 0 R - /K [] ->> -endobj - -2145 0 obj -<< - /Type /StructElem - /S /Div - /P 2143 0 R - /K [2146 0 R] ->> -endobj - -2146 0 obj -<< - /Type /StructElem - /S /Strong - /P 2145 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [113] - /Pg 4899 0 R ->> -endobj - -2147 0 obj -<< - /Type /StructElem - /S /Div - /P 2143 0 R - /K [] ->> -endobj - -2148 0 obj -<< - /Type /StructElem - /S /Div - /P 2143 0 R - /K [] ->> -endobj - -2149 0 obj -<< - /Type /StructElem - /S /Div - /P 2143 0 R - /K [] ->> -endobj - -2150 0 obj -<< - /Type /StructElem - /S /Div - /P 2143 0 R - /K [] ->> -endobj - -2151 0 obj -<< - /Type /StructElem - /S /Div - /P 2143 0 R - /K [2152 0 R] ->> -endobj - -2152 0 obj -<< - /Type /StructElem - /S /Span - /P 2151 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [112] - /Pg 4899 0 R ->> -endobj - -2153 0 obj -<< - /Type /StructElem - /S /Div - /P 2143 0 R - /K [2154 0 R] ->> -endobj - -2154 0 obj -<< - /Type /StructElem - /S /Span - /P 2153 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [111] - /Pg 4899 0 R ->> -endobj - -2155 0 obj -<< - /Type /StructElem - /S /Div - /P 2143 0 R - /K [] ->> -endobj - -2156 0 obj -<< - /Type /StructElem - /S /Div - /P 2143 0 R - /K [] ->> -endobj - -2157 0 obj -<< - /Type /StructElem - /S /Div - /P 2143 0 R - /K [] ->> -endobj - -2158 0 obj -<< - /Type /StructElem - /S /Div - /P 2143 0 R - /K [] ->> -endobj - -2159 0 obj -<< - /Type /StructElem - /S /Div - /P 2143 0 R - /K [] ->> -endobj - -2160 0 obj -<< - /Type /StructElem - /S /Div - /P 2143 0 R - /K [2161 0 R] ->> -endobj - -2161 0 obj -<< - /Type /StructElem - /S /Span - /P 2160 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [110] - /Pg 4899 0 R ->> -endobj - -2162 0 obj -<< - /Type /StructElem - /S /Div - /P 2143 0 R - /K [2174 0 R 2173 0 R 2172 0 R 2171 0 R 2170 0 R 2169 0 R 2168 0 R 2167 0 R 2166 0 R 2165 0 R 2164 0 R 2163 0 R] ->> -endobj - -2163 0 obj -<< - /Type /StructElem - /S /Span - /P 2162 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [108] - /Pg 4899 0 R ->> -endobj - -2164 0 obj -<< - /Type /StructElem - /S /Strong - /P 2162 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [109] - /Pg 4899 0 R ->> -endobj - -2165 0 obj -<< - /Type /StructElem - /S /Code - /P 2162 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [107] - /Pg 4899 0 R ->> -endobj - -2166 0 obj -<< - /Type /StructElem - /S /Span - /P 2162 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [106] - /Pg 4899 0 R ->> -endobj - -2167 0 obj -<< - /Type /StructElem - /S /Formula - /P 2162 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [105] - /Pg 4899 0 R ->> -endobj - -2168 0 obj -<< - /Type /StructElem - /S /Span - /P 2162 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [104] - /Pg 4899 0 R ->> -endobj - -2169 0 obj -<< - /Type /StructElem - /S /Code - /P 2162 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [103] - /Pg 4899 0 R ->> -endobj - -2170 0 obj -<< - /Type /StructElem - /S /Span - /P 2162 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [100 102] - /Pg 4899 0 R ->> -endobj - -2171 0 obj -<< - /Type /StructElem - /S /Strong - /P 2162 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [101] - /Pg 4899 0 R ->> -endobj - -2172 0 obj -<< - /Type /StructElem - /S /Formula - /P 2162 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [99] - /Pg 4899 0 R ->> -endobj - -2173 0 obj -<< - /Type /StructElem - /S /Span - /P 2162 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [98] - /Pg 4899 0 R ->> -endobj - -2174 0 obj -<< - /Type /StructElem - /S /Strong - /P 2162 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [97] - /Pg 4899 0 R ->> -endobj - -2175 0 obj -<< - /Type /StructElem - /S /Div - /P 2143 0 R - /K [] ->> -endobj - -2176 0 obj -<< - /Type /StructElem - /S /Div - /P 2143 0 R - /K [] ->> -endobj - -2177 0 obj -<< - /Type /StructElem - /S /Div - /P 2143 0 R - /K [] ->> -endobj - -2178 0 obj -<< - /Type /StructElem - /S /Div - /P 2143 0 R - /K [] ->> -endobj - -2179 0 obj -<< - /Type /StructElem - /S /Div - /P 2143 0 R - /K [2180 0 R] ->> -endobj - -2180 0 obj -<< - /Type /StructElem - /S /Span - /P 2179 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [96] - /Pg 4899 0 R ->> -endobj - -2181 0 obj -<< - /Type /StructElem - /S /Div - /P 2143 0 R - /K [2185 0 R 2184 0 R 2183 0 R 2182 0 R] ->> -endobj - -2182 0 obj -<< - /Type /StructElem - /S /Span - /P 2181 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [92 94] - /Pg 4899 0 R ->> -endobj - -2183 0 obj -<< - /Type /StructElem - /S /Strong - /P 2181 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [95] - /Pg 4899 0 R ->> -endobj - -2184 0 obj -<< - /Type /StructElem - /S /Strong - /P 2181 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [93] - /Pg 4899 0 R ->> -endobj - -2185 0 obj -<< - /Type /StructElem - /S /Strong - /P 2181 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [91] - /Pg 4899 0 R ->> -endobj - -2186 0 obj -<< - /Type /StructElem - /S /Div - /P 2143 0 R - /K [] ->> -endobj - -2187 0 obj -<< - /Type /StructElem - /S /Div - /P 2143 0 R - /K [] ->> -endobj - -2188 0 obj -<< - /Type /StructElem - /S /Div - /P 2143 0 R - /K [] ->> -endobj - -2189 0 obj -<< - /Type /StructElem - /S /Div - /P 2143 0 R - /K [2190 0 R] ->> -endobj - -2190 0 obj -<< - /Type /StructElem - /S /Span - /P 2189 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [90] - /Pg 4899 0 R ->> -endobj - -2191 0 obj -<< - /Type /StructElem - /S /Div - /P 2143 0 R - /K [2195 0 R 2194 0 R 2193 0 R 2192 0 R] ->> -endobj - -2192 0 obj -<< - /Type /StructElem - /S /Span - /P 2191 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [86 88] - /Pg 4899 0 R ->> -endobj - -2193 0 obj -<< - /Type /StructElem - /S /Strong - /P 2191 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [89] - /Pg 4899 0 R ->> -endobj - -2194 0 obj -<< - /Type /StructElem - /S /Strong - /P 2191 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [87] - /Pg 4899 0 R ->> -endobj - -2195 0 obj -<< - /Type /StructElem - /S /Strong - /P 2191 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [85] - /Pg 4899 0 R ->> -endobj - -2196 0 obj -<< - /Type /StructElem - /S /Div - /P 2143 0 R - /K [] ->> -endobj - -2197 0 obj -<< - /Type /StructElem - /S /Div - /P 2143 0 R - /K [] ->> -endobj - -2198 0 obj -<< - /Type /StructElem - /S /Div - /P 2143 0 R - /K [2199 0 R] ->> -endobj - -2199 0 obj -<< - /Type /StructElem - /S /Span - /P 2198 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [84] - /Pg 4899 0 R ->> -endobj - -2200 0 obj -<< - /Type /StructElem - /S /Div - /P 2143 0 R - /K [2202 0 R 2201 0 R] ->> -endobj - -2201 0 obj -<< - /Type /StructElem - /S /Span - /P 2200 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [83] - /Pg 4899 0 R ->> -endobj - -2202 0 obj -<< - /Type /StructElem - /S /Strong - /P 2200 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [82] - /Pg 4899 0 R ->> -endobj - -2203 0 obj -<< - /Type /StructElem - /S /Div - /P 2143 0 R - /K [2204 0 R] ->> -endobj - -2204 0 obj -<< - /Type /StructElem - /S /Span - /P 2203 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [81] - /Pg 4899 0 R ->> -endobj - -2205 0 obj -<< - /Type /StructElem - /S /Div - /P 2143 0 R - /K [] ->> -endobj - -2206 0 obj -<< - /Type /StructElem - /S /P - /P 2142 0 R - /K [2207 0 R 80] - /Pg 4899 0 R ->> -endobj - -2207 0 obj -<< - /Type /StructElem - /S /Strong - /P 2206 0 R - /K [79] - /Pg 4899 0 R ->> -endobj - -2208 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [2216 0 R 58 59 2215 0 R 61 62 2214 0 R 64 2213 0 R 66 67 2212 0 R 69 2211 0 R 73 2210 0 R 75 76 2209 0 R 78] - /Pg 4899 0 R ->> -endobj - -2209 0 obj -<< - /Type /StructElem - /S /Link - /P 2208 0 R - /K [77 << - /Type /OBJR - /Pg 4899 0 R - /Obj 4889 0 R - >>] - /Pg 4899 0 R ->> -endobj - -2210 0 obj -<< - /Type /StructElem - /S /Code - /P 2208 0 R - /K [74] - /Pg 4899 0 R ->> -endobj - -2211 0 obj -<< - /Type /StructElem - /S /Formula - /P 2208 0 R - /K [70 71 72] - /Pg 4899 0 R ->> -endobj - -2212 0 obj -<< - /Type /StructElem - /S /Link - /P 2208 0 R - /K [68 << - /Type /OBJR - /Pg 4899 0 R - /Obj 4888 0 R - >>] - /Pg 4899 0 R ->> -endobj - -2213 0 obj -<< - /Type /StructElem - /S /Link - /P 2208 0 R - /K [65 << - /Type /OBJR - /Pg 4899 0 R - /Obj 4887 0 R - >>] - /Pg 4899 0 R ->> -endobj - -2214 0 obj -<< - /Type /StructElem - /S /Code - /P 2208 0 R - /K [63] - /Pg 4899 0 R ->> -endobj - -2215 0 obj -<< - /Type /StructElem - /S /Code - /P 2208 0 R - /K [60] - /Pg 4899 0 R ->> -endobj - -2216 0 obj -<< - /Type /StructElem - /S /Link - /P 2208 0 R - /K [57 << - /Type /OBJR - /Pg 4899 0 R - /Obj 4886 0 R - >>] - /Pg 4899 0 R ->> -endobj - -2217 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [2320 0 R 2218 0 R] ->> -endobj - -2218 0 obj -<< - /Type /StructElem - /S /Div - /P 2217 0 R - /K [2319 0 R 2317 0 R 2314 0 R 2312 0 R 2311 0 R 2310 0 R 2303 0 R 2301 0 R 2300 0 R 2294 0 R 2292 0 R 2289 0 R 2287 0 R 2286 0 R 2285 0 R 2282 0 R 2280 0 R 2279 0 R 2278 0 R 2277 0 R 2270 0 R 2268 0 R 2267 0 R 2266 0 R 2259 0 R 2257 0 R 2256 0 R 2255 0 R 2253 0 R 2251 0 R 2250 0 R 2249 0 R 2245 0 R 2243 0 R 2242 0 R 2241 0 R 2240 0 R 2239 0 R 2233 0 R 2231 0 R 2230 0 R 2229 0 R 2228 0 R 2226 0 R 2224 0 R 2223 0 R 2220 0 R 2219 0 R] ->> -endobj - -2219 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [] ->> -endobj - -2220 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [2222 0 R 2221 0 R] ->> -endobj - -2221 0 obj -<< - /Type /StructElem - /S /Span - /P 2220 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [56] - /Pg 4899 0 R ->> -endobj - -2222 0 obj -<< - /Type /StructElem - /S /Strong - /P 2220 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [55] - /Pg 4899 0 R ->> -endobj - -2223 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [] ->> -endobj - -2224 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [2225 0 R] ->> -endobj - -2225 0 obj -<< - /Type /StructElem - /S /Span - /P 2224 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [54] - /Pg 4899 0 R ->> -endobj - -2226 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [2227 0 R] ->> -endobj - -2227 0 obj -<< - /Type /StructElem - /S /Span - /P 2226 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [53] - /Pg 4899 0 R ->> -endobj - -2228 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [] ->> -endobj - -2229 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [] ->> -endobj - -2230 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [] ->> -endobj - -2231 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [2232 0 R] ->> -endobj - -2232 0 obj -<< - /Type /StructElem - /S /Span - /P 2231 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [52] - /Pg 4899 0 R ->> -endobj - -2233 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [2238 0 R 2237 0 R 2236 0 R 2235 0 R 2234 0 R] ->> -endobj - -2234 0 obj -<< - /Type /StructElem - /S /Formula - /P 2233 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [46 47 48 49 50 51] - /Pg 4899 0 R ->> -endobj - -2235 0 obj -<< - /Type /StructElem - /S /Span - /P 2233 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [44 45] - /Pg 4899 0 R ->> -endobj - -2236 0 obj -<< - /Type /StructElem - /S /Code - /P 2233 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [43] - /Pg 4899 0 R ->> -endobj - -2237 0 obj -<< - /Type /StructElem - /S /Span - /P 2233 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [42] - /Pg 4899 0 R ->> -endobj - -2238 0 obj -<< - /Type /StructElem - /S /Strong - /P 2233 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [41] - /Pg 4899 0 R ->> -endobj - -2239 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [] ->> -endobj - -2240 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [] ->> -endobj - -2241 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [] ->> -endobj - -2242 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [] ->> -endobj - -2243 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [2244 0 R] ->> -endobj - -2244 0 obj -<< - /Type /StructElem - /S /Span - /P 2243 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [40] - /Pg 4899 0 R ->> -endobj - -2245 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [2248 0 R 2247 0 R 2246 0 R] ->> -endobj - -2246 0 obj -<< - /Type /StructElem - /S /Span - /P 2245 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [37 39] - /Pg 4899 0 R ->> -endobj - -2247 0 obj -<< - /Type /StructElem - /S /Strong - /P 2245 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [38] - /Pg 4899 0 R ->> -endobj - -2248 0 obj -<< - /Type /StructElem - /S /Strong - /P 2245 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [36] - /Pg 4899 0 R ->> -endobj - -2249 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [] ->> -endobj - -2250 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [] ->> -endobj - -2251 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [2252 0 R] ->> -endobj - -2252 0 obj -<< - /Type /StructElem - /S /Span - /P 2251 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [35] - /Pg 4899 0 R ->> -endobj - -2253 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [2254 0 R] ->> -endobj - -2254 0 obj -<< - /Type /StructElem - /S /Span - /P 2253 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [34] - /Pg 4899 0 R ->> -endobj - -2255 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [] ->> -endobj - -2256 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [] ->> -endobj - -2257 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [2258 0 R] ->> -endobj - -2258 0 obj -<< - /Type /StructElem - /S /Span - /P 2257 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [33] - /Pg 4899 0 R ->> -endobj - -2259 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [2265 0 R 2264 0 R 2263 0 R 2262 0 R 2261 0 R 2260 0 R] ->> -endobj - -2260 0 obj -<< - /Type /StructElem - /S /Formula - /P 2259 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [24 25 26 27 28 29 30 31 32] - /Pg 4899 0 R ->> -endobj - -2261 0 obj -<< - /Type /StructElem - /S /Span - /P 2259 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [22 23] - /Pg 4899 0 R ->> -endobj - -2262 0 obj -<< - /Type /StructElem - /S /Formula - /P 2259 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [21] - /Pg 4899 0 R ->> -endobj - -2263 0 obj -<< - /Type /StructElem - /S /Span - /P 2259 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [20] - /Pg 4899 0 R ->> -endobj - -2264 0 obj -<< - /Type /StructElem - /S /Code - /P 2259 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [19] - /Pg 4899 0 R ->> -endobj - -2265 0 obj -<< - /Type /StructElem - /S /Span - /P 2259 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [18] - /Pg 4899 0 R ->> -endobj - -2266 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [] ->> -endobj - -2267 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [] ->> -endobj - -2268 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [2269 0 R] ->> -endobj - -2269 0 obj -<< - /Type /StructElem - /S /Span - /P 2268 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [17] - /Pg 4899 0 R ->> -endobj - -2270 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [2276 0 R 2275 0 R 2274 0 R 2273 0 R 2272 0 R 2271 0 R] ->> -endobj - -2271 0 obj -<< - /Type /StructElem - /S /Formula - /P 2270 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [13 14 15 16] - /Pg 4899 0 R ->> -endobj - -2272 0 obj -<< - /Type /StructElem - /S /Span - /P 2270 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [11 12] - /Pg 4899 0 R ->> -endobj - -2273 0 obj -<< - /Type /StructElem - /S /Code - /P 2270 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [10] - /Pg 4899 0 R ->> -endobj - -2274 0 obj -<< - /Type /StructElem - /S /Span - /P 2270 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [9] - /Pg 4899 0 R ->> -endobj - -2275 0 obj -<< - /Type /StructElem - /S /Formula - /P 2270 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [8] - /Pg 4899 0 R ->> -endobj - -2276 0 obj -<< - /Type /StructElem - /S /Span - /P 2270 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [7] - /Pg 4899 0 R ->> -endobj - -2277 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [] ->> -endobj - -2278 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [] ->> -endobj - -2279 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [] ->> -endobj - -2280 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [2281 0 R] ->> -endobj - -2281 0 obj -<< - /Type /StructElem - /S /Span - /P 2280 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [6] - /Pg 4899 0 R ->> -endobj - -2282 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [2284 0 R 2283 0 R] ->> -endobj - -2283 0 obj -<< - /Type /StructElem - /S /Span - /P 2282 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [5] - /Pg 4899 0 R ->> -endobj - -2284 0 obj -<< - /Type /StructElem - /S /Strong - /P 2282 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4] - /Pg 4899 0 R ->> -endobj - -2285 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [] ->> -endobj - -2286 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [] ->> -endobj - -2287 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [2288 0 R] ->> -endobj - -2288 0 obj -<< - /Type /StructElem - /S /Span - /P 2287 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [3] - /Pg 4899 0 R ->> -endobj - -2289 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [2291 0 R 2290 0 R] ->> -endobj - -2290 0 obj -<< - /Type /StructElem - /S /Span - /P 2289 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [2] - /Pg 4899 0 R ->> -endobj - -2291 0 obj -<< - /Type /StructElem - /S /Strong - /P 2289 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [1] - /Pg 4899 0 R ->> -endobj - -2292 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [2293 0 R] ->> -endobj - -2293 0 obj -<< - /Type /StructElem - /S /Span - /P 2292 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [0] - /Pg 4899 0 R ->> -endobj - -2294 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [2299 0 R 2298 0 R 2297 0 R 2296 0 R 2295 0 R] ->> -endobj - -2295 0 obj -<< - /Type /StructElem - /S /Formula - /P 2294 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [248 249 250 251 252 253 254] - /Pg 4884 0 R ->> -endobj - -2296 0 obj -<< - /Type /StructElem - /S /Span - /P 2294 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [246 247] - /Pg 4884 0 R ->> -endobj - -2297 0 obj -<< - /Type /StructElem - /S /Code - /P 2294 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [245] - /Pg 4884 0 R ->> -endobj - -2298 0 obj -<< - /Type /StructElem - /S /Span - /P 2294 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [244] - /Pg 4884 0 R ->> -endobj - -2299 0 obj -<< - /Type /StructElem - /S /Strong - /P 2294 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [243] - /Pg 4884 0 R ->> -endobj - -2300 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [] ->> -endobj - -2301 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [2302 0 R] ->> -endobj - -2302 0 obj -<< - /Type /StructElem - /S /Span - /P 2301 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [242] - /Pg 4884 0 R ->> -endobj - -2303 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [2309 0 R 2308 0 R 2307 0 R 2306 0 R 2305 0 R 2304 0 R] ->> -endobj - -2304 0 obj -<< - /Type /StructElem - /S /Formula - /P 2303 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [238 239 240 241] - /Pg 4884 0 R ->> -endobj - -2305 0 obj -<< - /Type /StructElem - /S /Span - /P 2303 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [236 237] - /Pg 4884 0 R ->> -endobj - -2306 0 obj -<< - /Type /StructElem - /S /Code - /P 2303 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [235] - /Pg 4884 0 R ->> -endobj - -2307 0 obj -<< - /Type /StructElem - /S /Span - /P 2303 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [234] - /Pg 4884 0 R ->> -endobj - -2308 0 obj -<< - /Type /StructElem - /S /Formula - /P 2303 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [233] - /Pg 4884 0 R ->> -endobj - -2309 0 obj -<< - /Type /StructElem - /S /Span - /P 2303 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [232] - /Pg 4884 0 R ->> -endobj - -2310 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [] ->> -endobj - -2311 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [] ->> -endobj - -2312 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [2313 0 R] ->> -endobj - -2313 0 obj -<< - /Type /StructElem - /S /Span - /P 2312 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [231] - /Pg 4884 0 R ->> -endobj - -2314 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [2316 0 R 2315 0 R] ->> -endobj - -2315 0 obj -<< - /Type /StructElem - /S /Span - /P 2314 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [230] - /Pg 4884 0 R ->> -endobj - -2316 0 obj -<< - /Type /StructElem - /S /Strong - /P 2314 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [229] - /Pg 4884 0 R ->> -endobj - -2317 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [2318 0 R] ->> -endobj - -2318 0 obj -<< - /Type /StructElem - /S /Span - /P 2317 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [228] - /Pg 4884 0 R ->> -endobj - -2319 0 obj -<< - /Type /StructElem - /S /Div - /P 2218 0 R - /K [] ->> -endobj - -2320 0 obj -<< - /Type /StructElem - /S /P - /P 2217 0 R - /K [2321 0 R 227] - /Pg 4884 0 R ->> -endobj - -2321 0 obj -<< - /Type /StructElem - /S /Strong - /P 2320 0 R - /K [226] - /Pg 4884 0 R ->> -endobj - -2322 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [2332 0 R 190 2331 0 R 197 2330 0 R 200 2329 0 R 202 203 2328 0 R 205 2327 0 R 207 2326 0 R 209 2325 0 R 216 217 2324 0 R 222 223 2323 0 R 225] - /Pg 4884 0 R ->> -endobj - -2323 0 obj -<< - /Type /StructElem - /S /Code - /P 2322 0 R - /K [224] - /Pg 4884 0 R ->> -endobj - -2324 0 obj -<< - /Type /StructElem - /S /Formula - /P 2322 0 R - /K [218 219 220 221] - /Pg 4884 0 R ->> -endobj - -2325 0 obj -<< - /Type /StructElem - /S /Formula - /P 2322 0 R - /K [210 211 212 213 214 215] - /Pg 4884 0 R ->> -endobj - -2326 0 obj -<< - /Type /StructElem - /S /Code - /P 2322 0 R - /K [208] - /Pg 4884 0 R ->> -endobj - -2327 0 obj -<< - /Type /StructElem - /S /Link - /P 2322 0 R - /K [206 << - /Type /OBJR - /Pg 4884 0 R - /Obj 4883 0 R - >>] - /Pg 4884 0 R ->> -endobj - -2328 0 obj -<< - /Type /StructElem - /S /Code - /P 2322 0 R - /K [204] - /Pg 4884 0 R ->> -endobj - -2329 0 obj -<< - /Type /StructElem - /S /Link - /P 2322 0 R - /K [201 << - /Type /OBJR - /Pg 4884 0 R - /Obj 4882 0 R - >>] - /Pg 4884 0 R ->> -endobj - -2330 0 obj -<< - /Type /StructElem - /S /Formula - /P 2322 0 R - /K [198 199] - /Pg 4884 0 R ->> -endobj - -2331 0 obj -<< - /Type /StructElem - /S /Formula - /P 2322 0 R - /K [191 192 193 194 195 196] - /Pg 4884 0 R ->> -endobj - -2332 0 obj -<< - /Type /StructElem - /S /Strong - /P 2322 0 R - /K [189] - /Pg 4884 0 R ->> -endobj - -2333 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [140 2344 0 R 155 2343 0 R 157 158 2342 0 R 160 2341 0 R 165 2340 0 R 167 2339 0 R 175 2338 0 R 177 2337 0 R 179 2336 0 R 181 182 2335 0 R 184 185 2334 0 R 188] - /Pg 4884 0 R ->> -endobj - -2334 0 obj -<< - /Type /StructElem - /S /Em - /P 2333 0 R - /K [186 187] - /Pg 4884 0 R ->> -endobj - -2335 0 obj -<< - /Type /StructElem - /S /Em - /P 2333 0 R - /K [183] - /Pg 4884 0 R ->> -endobj - -2336 0 obj -<< - /Type /StructElem - /S /Code - /P 2333 0 R - /K [180] - /Pg 4884 0 R ->> -endobj - -2337 0 obj -<< - /Type /StructElem - /S /Formula - /P 2333 0 R - /K [178] - /Pg 4884 0 R ->> -endobj - -2338 0 obj -<< - /Type /StructElem - /S /Code - /P 2333 0 R - /K [176] - /Pg 4884 0 R ->> -endobj - -2339 0 obj -<< - /Type /StructElem - /S /Formula - /P 2333 0 R - /K [168 169 170 171 172 173 174] - /Pg 4884 0 R ->> -endobj - -2340 0 obj -<< - /Type /StructElem - /S /Code - /P 2333 0 R - /K [166] - /Pg 4884 0 R ->> -endobj - -2341 0 obj -<< - /Type /StructElem - /S /Formula - /P 2333 0 R - /K [161 162 163 164] - /Pg 4884 0 R ->> -endobj - -2342 0 obj -<< - /Type /StructElem - /S /Link - /P 2333 0 R - /K [159 << - /Type /OBJR - /Pg 4884 0 R - /Obj 4881 0 R - >>] - /Pg 4884 0 R ->> -endobj - -2343 0 obj -<< - /Type /StructElem - /S /Code - /P 2333 0 R - /K [156] - /Pg 4884 0 R ->> -endobj - -2344 0 obj -<< - /Type /StructElem - /S /Formula - /P 2333 0 R - /K [141 142 143 144 145 146 147 148 149 150 151 152 153 154] - /Pg 4884 0 R ->> -endobj - -2345 0 obj -<< - /Type /StructElem - /S /L - /P 103 0 R - /A [<< - /O /List - /ListNumbering /Circle - >>] - /K [2356 0 R 2351 0 R 2346 0 R] ->> -endobj - -2346 0 obj -<< - /Type /StructElem - /S /LI - /P 2345 0 R - /K [2350 0 R 2347 0 R] ->> -endobj - -2347 0 obj -<< - /Type /StructElem - /S /LBody - /P 2346 0 R - /K [2349 0 R 128 2348 0 R 139] - /Pg 4884 0 R ->> -endobj - -2348 0 obj -<< - /Type /StructElem - /S /Formula - /P 2347 0 R - /K [129 130 131 132 133 134 135 136 137 138] - /Pg 4884 0 R ->> -endobj - -2349 0 obj -<< - /Type /StructElem - /S /Code - /P 2347 0 R - /K [127] - /Pg 4884 0 R ->> -endobj - -2350 0 obj -<< - /Type /StructElem - /S /Lbl - /P 2346 0 R - /K [126] - /Pg 4884 0 R ->> -endobj - -2351 0 obj -<< - /Type /StructElem - /S /LI - /P 2345 0 R - /K [2355 0 R 2352 0 R] ->> -endobj - -2352 0 obj -<< - /Type /StructElem - /S /LBody - /P 2351 0 R - /K [2354 0 R 116 2353 0 R 125] - /Pg 4884 0 R ->> -endobj - -2353 0 obj -<< - /Type /StructElem - /S /Formula - /P 2352 0 R - /K [117 118 119 120 121 122 123 124] - /Pg 4884 0 R ->> -endobj - -2354 0 obj -<< - /Type /StructElem - /S /Code - /P 2352 0 R - /K [115] - /Pg 4884 0 R ->> -endobj - -2355 0 obj -<< - /Type /StructElem - /S /Lbl - /P 2351 0 R - /K [114] - /Pg 4884 0 R ->> -endobj - -2356 0 obj -<< - /Type /StructElem - /S /LI - /P 2345 0 R - /K [2360 0 R 2357 0 R] ->> -endobj - -2357 0 obj -<< - /Type /StructElem - /S /LBody - /P 2356 0 R - /K [2359 0 R 102 2358 0 R 113] - /Pg 4884 0 R ->> -endobj - -2358 0 obj -<< - /Type /StructElem - /S /Formula - /P 2357 0 R - /K [103 104 105 106 107 108 109 110 111 112] - /Pg 4884 0 R ->> -endobj - -2359 0 obj -<< - /Type /StructElem - /S /Code - /P 2357 0 R - /K [101] - /Pg 4884 0 R ->> -endobj - -2360 0 obj -<< - /Type /StructElem - /S /Lbl - /P 2356 0 R - /K [100] - /Pg 4884 0 R ->> -endobj - -2361 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [96 2362 0 R 98 99] - /Pg 4884 0 R ->> -endobj - -2362 0 obj -<< - /Type /StructElem - /S /Link - /P 2361 0 R - /K [97 << - /Type /OBJR - /Pg 4884 0 R - /Obj 4880 0 R - >>] - /Pg 4884 0 R ->> -endobj - -2363 0 obj -<< - /Type /StructElem - /S /H3 - /P 103 0 R - /T (Coeffect Operations) - /K [94 95] - /Pg 4884 0 R ->> -endobj - -2364 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [2377 0 R 62 2376 0 R 64 65 2375 0 R 67 2374 0 R 69 2373 0 R 71 2372 0 R 73 2371 0 R 75 76 2370 0 R 78 79 2369 0 R 81 82 2368 0 R 86 2367 0 R 88 89 2366 0 R 91 2365 0 R 93] - /Pg 4884 0 R ->> -endobj - -2365 0 obj -<< - /Type /StructElem - /S /Code - /P 2364 0 R - /K [92] - /Pg 4884 0 R ->> -endobj - -2366 0 obj -<< - /Type /StructElem - /S /Code - /P 2364 0 R - /K [90] - /Pg 4884 0 R ->> -endobj - -2367 0 obj -<< - /Type /StructElem - /S /Link - /P 2364 0 R - /K [87 << - /Type /OBJR - /Pg 4884 0 R - /Obj 4879 0 R - >>] - /Pg 4884 0 R ->> -endobj - -2368 0 obj -<< - /Type /StructElem - /S /Formula - /P 2364 0 R - /K [83 84 85] - /Pg 4884 0 R ->> -endobj - -2369 0 obj -<< - /Type /StructElem - /S /Code - /P 2364 0 R - /K [80] - /Pg 4884 0 R ->> -endobj - -2370 0 obj -<< - /Type /StructElem - /S /Code - /P 2364 0 R - /K [77] - /Pg 4884 0 R ->> -endobj - -2371 0 obj -<< - /Type /StructElem - /S /Code - /P 2364 0 R - /K [74] - /Pg 4884 0 R ->> -endobj - -2372 0 obj -<< - /Type /StructElem - /S /Code - /P 2364 0 R - /K [72] - /Pg 4884 0 R ->> -endobj - -2373 0 obj -<< - /Type /StructElem - /S /Code - /P 2364 0 R - /K [70] - /Pg 4884 0 R ->> -endobj - -2374 0 obj -<< - /Type /StructElem - /S /Link - /P 2364 0 R - /K [68 << - /Type /OBJR - /Pg 4884 0 R - /Obj 4878 0 R - >>] - /Pg 4884 0 R ->> -endobj - -2375 0 obj -<< - /Type /StructElem - /S /Formula - /P 2364 0 R - /K [66] - /Pg 4884 0 R ->> -endobj - -2376 0 obj -<< - /Type /StructElem - /S /Code - /P 2364 0 R - /K [63] - /Pg 4884 0 R ->> -endobj - -2377 0 obj -<< - /Type /StructElem - /S /Code - /P 2364 0 R - /K [61] - /Pg 4884 0 R ->> -endobj - -2378 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [34 2387 0 R 36 2386 0 R 40 2385 0 R 42 43 44 2384 0 R 46 47 2383 0 R 49 2382 0 R 2381 0 R 55 56 2380 0 R 58 2379 0 R 60] - /Pg 4884 0 R ->> -endobj - -2379 0 obj -<< - /Type /StructElem - /S /Code - /P 2378 0 R - /K [59] - /Pg 4884 0 R ->> -endobj - -2380 0 obj -<< - /Type /StructElem - /S /Code - /P 2378 0 R - /K [57] - /Pg 4884 0 R ->> -endobj - -2381 0 obj -<< - /Type /StructElem - /S /Formula - /P 2378 0 R - /K [51 52 53 54] - /Pg 4884 0 R ->> -endobj - -2382 0 obj -<< - /Type /StructElem - /S /Code - /P 2378 0 R - /K [50] - /Pg 4884 0 R ->> -endobj - -2383 0 obj -<< - /Type /StructElem - /S /Link - /P 2378 0 R - /K [48 << - /Type /OBJR - /Pg 4884 0 R - /Obj 4877 0 R - >>] - /Pg 4884 0 R ->> -endobj - -2384 0 obj -<< - /Type /StructElem - /S /Code - /P 2378 0 R - /K [45] - /Pg 4884 0 R ->> -endobj - -2385 0 obj -<< - /Type /StructElem - /S /Link - /P 2378 0 R - /K [41 << - /Type /OBJR - /Pg 4884 0 R - /Obj 4876 0 R - >>] - /Pg 4884 0 R ->> -endobj - -2386 0 obj -<< - /Type /StructElem - /S /Formula - /P 2378 0 R - /K [37 38 39] - /Pg 4884 0 R ->> -endobj - -2387 0 obj -<< - /Type /StructElem - /S /Code - /P 2378 0 R - /K [35] - /Pg 4884 0 R ->> -endobj - -2388 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [2527 0 R 2389 0 R] ->> -endobj - -2389 0 obj -<< - /Type /StructElem - /S /Div - /P 2388 0 R - /K [2526 0 R 2524 0 R 2521 0 R 2519 0 R 2518 0 R 2517 0 R 2513 0 R 2511 0 R 2510 0 R 2506 0 R 2504 0 R 2503 0 R 2500 0 R 2498 0 R 2497 0 R 2496 0 R 2495 0 R 2490 0 R 2488 0 R 2487 0 R 2486 0 R 2480 0 R 2478 0 R 2477 0 R 2476 0 R 2471 0 R 2469 0 R 2468 0 R 2465 0 R 2463 0 R 2460 0 R 2458 0 R 2457 0 R 2456 0 R 2452 0 R 2450 0 R 2449 0 R 2443 0 R 2441 0 R 2440 0 R 2437 0 R 2435 0 R 2434 0 R 2433 0 R 2432 0 R 2427 0 R 2425 0 R 2424 0 R 2423 0 R 2419 0 R 2417 0 R 2416 0 R 2415 0 R 2410 0 R 2408 0 R 2407 0 R 2406 0 R 2404 0 R 2402 0 R 2401 0 R 2397 0 R 2395 0 R 2394 0 R 2391 0 R 2390 0 R] ->> -endobj - -2390 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [] ->> -endobj - -2391 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2393 0 R 2392 0 R] ->> -endobj - -2392 0 obj -<< - /Type /StructElem - /S /Span - /P 2391 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [33] - /Pg 4884 0 R ->> -endobj - -2393 0 obj -<< - /Type /StructElem - /S /Strong - /P 2391 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [32] - /Pg 4884 0 R ->> -endobj - -2394 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [] ->> -endobj - -2395 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2396 0 R] ->> -endobj - -2396 0 obj -<< - /Type /StructElem - /S /Span - /P 2395 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [31] - /Pg 4884 0 R ->> -endobj - -2397 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2400 0 R 2399 0 R 2398 0 R] ->> -endobj - -2398 0 obj -<< - /Type /StructElem - /S /Span - /P 2397 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [30] - /Pg 4884 0 R ->> -endobj - -2399 0 obj -<< - /Type /StructElem - /S /Formula - /P 2397 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [29] - /Pg 4884 0 R ->> -endobj - -2400 0 obj -<< - /Type /StructElem - /S /Span - /P 2397 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [28] - /Pg 4884 0 R ->> -endobj - -2401 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [] ->> -endobj - -2402 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2403 0 R] ->> -endobj - -2403 0 obj -<< - /Type /StructElem - /S /Span - /P 2402 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [27] - /Pg 4884 0 R ->> -endobj - -2404 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2405 0 R] ->> -endobj - -2405 0 obj -<< - /Type /StructElem - /S /Span - /P 2404 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [26] - /Pg 4884 0 R ->> -endobj - -2406 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [] ->> -endobj - -2407 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [] ->> -endobj - -2408 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2409 0 R] ->> -endobj - -2409 0 obj -<< - /Type /StructElem - /S /Span - /P 2408 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [25] - /Pg 4884 0 R ->> -endobj - -2410 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2414 0 R 2413 0 R 2412 0 R 2411 0 R] ->> -endobj - -2411 0 obj -<< - /Type /StructElem - /S /Span - /P 2410 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [22 24] - /Pg 4884 0 R ->> -endobj - -2412 0 obj -<< - /Type /StructElem - /S /Strong - /P 2410 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [23] - /Pg 4884 0 R ->> -endobj - -2413 0 obj -<< - /Type /StructElem - /S /Formula - /P 2410 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [21] - /Pg 4884 0 R ->> -endobj - -2414 0 obj -<< - /Type /StructElem - /S /Span - /P 2410 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [20] - /Pg 4884 0 R ->> -endobj - -2415 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [] ->> -endobj - -2416 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [] ->> -endobj - -2417 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2418 0 R] ->> -endobj - -2418 0 obj -<< - /Type /StructElem - /S /Span - /P 2417 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [19] - /Pg 4884 0 R ->> -endobj - -2419 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2422 0 R 2421 0 R 2420 0 R] ->> -endobj - -2420 0 obj -<< - /Type /StructElem - /S /Span - /P 2419 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [18] - /Pg 4884 0 R ->> -endobj - -2421 0 obj -<< - /Type /StructElem - /S /Formula - /P 2419 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [17] - /Pg 4884 0 R ->> -endobj - -2422 0 obj -<< - /Type /StructElem - /S /Span - /P 2419 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [16] - /Pg 4884 0 R ->> -endobj - -2423 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [] ->> -endobj - -2424 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [] ->> -endobj - -2425 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2426 0 R] ->> -endobj - -2426 0 obj -<< - /Type /StructElem - /S /Span - /P 2425 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [15] - /Pg 4884 0 R ->> -endobj - -2427 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2431 0 R 2430 0 R 2429 0 R 2428 0 R] ->> -endobj - -2428 0 obj -<< - /Type /StructElem - /S /Span - /P 2427 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [11 13] - /Pg 4884 0 R ->> -endobj - -2429 0 obj -<< - /Type /StructElem - /S /Strong - /P 2427 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [14] - /Pg 4884 0 R ->> -endobj - -2430 0 obj -<< - /Type /StructElem - /S /Strong - /P 2427 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [12] - /Pg 4884 0 R ->> -endobj - -2431 0 obj -<< - /Type /StructElem - /S /Strong - /P 2427 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [10] - /Pg 4884 0 R ->> -endobj - -2432 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [] ->> -endobj - -2433 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [] ->> -endobj - -2434 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [] ->> -endobj - -2435 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2436 0 R] ->> -endobj - -2436 0 obj -<< - /Type /StructElem - /S /Span - /P 2435 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [9] - /Pg 4884 0 R ->> -endobj - -2437 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2439 0 R 2438 0 R] ->> -endobj - -2438 0 obj -<< - /Type /StructElem - /S /Span - /P 2437 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [8] - /Pg 4884 0 R ->> -endobj - -2439 0 obj -<< - /Type /StructElem - /S /Strong - /P 2437 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [7] - /Pg 4884 0 R ->> -endobj - -2440 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [] ->> -endobj - -2441 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2442 0 R] ->> -endobj - -2442 0 obj -<< - /Type /StructElem - /S /Span - /P 2441 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [6] - /Pg 4884 0 R ->> -endobj - -2443 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2448 0 R 2447 0 R 2446 0 R 2445 0 R 2444 0 R] ->> -endobj - -2444 0 obj -<< - /Type /StructElem - /S /Span - /P 2443 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [5] - /Pg 4884 0 R ->> -endobj - -2445 0 obj -<< - /Type /StructElem - /S /Formula - /P 2443 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4] - /Pg 4884 0 R ->> -endobj - -2446 0 obj -<< - /Type /StructElem - /S /Span - /P 2443 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [3] - /Pg 4884 0 R ->> -endobj - -2447 0 obj -<< - /Type /StructElem - /S /Formula - /P 2443 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [2] - /Pg 4884 0 R ->> -endobj - -2448 0 obj -<< - /Type /StructElem - /S /Span - /P 2443 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [1] - /Pg 4884 0 R ->> -endobj - -2449 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [] ->> -endobj - -2450 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2451 0 R] ->> -endobj - -2451 0 obj -<< - /Type /StructElem - /S /Span - /P 2450 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [0] - /Pg 4884 0 R ->> -endobj - -2452 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2455 0 R 2454 0 R 2453 0 R] ->> -endobj - -2453 0 obj -<< - /Type /StructElem - /S /Span - /P 2452 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [195] - /Pg 4874 0 R ->> -endobj - -2454 0 obj -<< - /Type /StructElem - /S /Formula - /P 2452 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [194] - /Pg 4874 0 R ->> -endobj - -2455 0 obj -<< - /Type /StructElem - /S /Span - /P 2452 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [193] - /Pg 4874 0 R ->> -endobj - -2456 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [] ->> -endobj - -2457 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [] ->> -endobj - -2458 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2459 0 R] ->> -endobj - -2459 0 obj -<< - /Type /StructElem - /S /Span - /P 2458 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [192] - /Pg 4874 0 R ->> -endobj - -2460 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2462 0 R 2461 0 R] ->> -endobj - -2461 0 obj -<< - /Type /StructElem - /S /Span - /P 2460 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [191] - /Pg 4874 0 R ->> -endobj - -2462 0 obj -<< - /Type /StructElem - /S /Strong - /P 2460 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [190] - /Pg 4874 0 R ->> -endobj - -2463 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2464 0 R] ->> -endobj - -2464 0 obj -<< - /Type /StructElem - /S /Span - /P 2463 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [189] - /Pg 4874 0 R ->> -endobj - -2465 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2467 0 R 2466 0 R] ->> -endobj - -2466 0 obj -<< - /Type /StructElem - /S /Span - /P 2465 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [188] - /Pg 4874 0 R ->> -endobj - -2467 0 obj -<< - /Type /StructElem - /S /Strong - /P 2465 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [187] - /Pg 4874 0 R ->> -endobj - -2468 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [] ->> -endobj - -2469 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2470 0 R] ->> -endobj - -2470 0 obj -<< - /Type /StructElem - /S /Span - /P 2469 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [186] - /Pg 4874 0 R ->> -endobj - -2471 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2475 0 R 2474 0 R 2473 0 R 2472 0 R] ->> -endobj - -2472 0 obj -<< - /Type /StructElem - /S /Span - /P 2471 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [182 184] - /Pg 4874 0 R ->> -endobj - -2473 0 obj -<< - /Type /StructElem - /S /Strong - /P 2471 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [185] - /Pg 4874 0 R ->> -endobj - -2474 0 obj -<< - /Type /StructElem - /S /Strong - /P 2471 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [183] - /Pg 4874 0 R ->> -endobj - -2475 0 obj -<< - /Type /StructElem - /S /Strong - /P 2471 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [181] - /Pg 4874 0 R ->> -endobj - -2476 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [] ->> -endobj - -2477 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [] ->> -endobj - -2478 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2479 0 R] ->> -endobj - -2479 0 obj -<< - /Type /StructElem - /S /Span - /P 2478 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [180] - /Pg 4874 0 R ->> -endobj - -2480 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2485 0 R 2484 0 R 2483 0 R 2482 0 R 2481 0 R] ->> -endobj - -2481 0 obj -<< - /Type /StructElem - /S /Span - /P 2480 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [179] - /Pg 4874 0 R ->> -endobj - -2482 0 obj -<< - /Type /StructElem - /S /Formula - /P 2480 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [178] - /Pg 4874 0 R ->> -endobj - -2483 0 obj -<< - /Type /StructElem - /S /Span - /P 2480 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [175 177] - /Pg 4874 0 R ->> -endobj - -2484 0 obj -<< - /Type /StructElem - /S /Strong - /P 2480 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [176] - /Pg 4874 0 R ->> -endobj - -2485 0 obj -<< - /Type /StructElem - /S /Strong - /P 2480 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [174] - /Pg 4874 0 R ->> -endobj - -2486 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [] ->> -endobj - -2487 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [] ->> -endobj - -2488 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2489 0 R] ->> -endobj - -2489 0 obj -<< - /Type /StructElem - /S /Span - /P 2488 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [173] - /Pg 4874 0 R ->> -endobj - -2490 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2494 0 R 2493 0 R 2492 0 R 2491 0 R] ->> -endobj - -2491 0 obj -<< - /Type /StructElem - /S /Span - /P 2490 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [170 172] - /Pg 4874 0 R ->> -endobj - -2492 0 obj -<< - /Type /StructElem - /S /Strong - /P 2490 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [171] - /Pg 4874 0 R ->> -endobj - -2493 0 obj -<< - /Type /StructElem - /S /Formula - /P 2490 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [169] - /Pg 4874 0 R ->> -endobj - -2494 0 obj -<< - /Type /StructElem - /S /Span - /P 2490 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [168] - /Pg 4874 0 R ->> -endobj - -2495 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [] ->> -endobj - -2496 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [] ->> -endobj - -2497 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [] ->> -endobj - -2498 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2499 0 R] ->> -endobj - -2499 0 obj -<< - /Type /StructElem - /S /Span - /P 2498 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [167] - /Pg 4874 0 R ->> -endobj - -2500 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2502 0 R 2501 0 R] ->> -endobj - -2501 0 obj -<< - /Type /StructElem - /S /Span - /P 2500 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [166] - /Pg 4874 0 R ->> -endobj - -2502 0 obj -<< - /Type /StructElem - /S /Strong - /P 2500 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [165] - /Pg 4874 0 R ->> -endobj - -2503 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [] ->> -endobj - -2504 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2505 0 R] ->> -endobj - -2505 0 obj -<< - /Type /StructElem - /S /Span - /P 2504 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [164] - /Pg 4874 0 R ->> -endobj - -2506 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2509 0 R 2508 0 R 2507 0 R] ->> -endobj - -2507 0 obj -<< - /Type /StructElem - /S /Span - /P 2506 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [163] - /Pg 4874 0 R ->> -endobj - -2508 0 obj -<< - /Type /StructElem - /S /Formula - /P 2506 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [162] - /Pg 4874 0 R ->> -endobj - -2509 0 obj -<< - /Type /StructElem - /S /Span - /P 2506 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [161] - /Pg 4874 0 R ->> -endobj - -2510 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [] ->> -endobj - -2511 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2512 0 R] ->> -endobj - -2512 0 obj -<< - /Type /StructElem - /S /Span - /P 2511 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [160] - /Pg 4874 0 R ->> -endobj - -2513 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2516 0 R 2515 0 R 2514 0 R] ->> -endobj - -2514 0 obj -<< - /Type /StructElem - /S /Span - /P 2513 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [159] - /Pg 4874 0 R ->> -endobj - -2515 0 obj -<< - /Type /StructElem - /S /Formula - /P 2513 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [158] - /Pg 4874 0 R ->> -endobj - -2516 0 obj -<< - /Type /StructElem - /S /Span - /P 2513 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [157] - /Pg 4874 0 R ->> -endobj - -2517 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [] ->> -endobj - -2518 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [] ->> -endobj - -2519 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2520 0 R] ->> -endobj - -2520 0 obj -<< - /Type /StructElem - /S /Span - /P 2519 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [156] - /Pg 4874 0 R ->> -endobj - -2521 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2523 0 R 2522 0 R] ->> -endobj - -2522 0 obj -<< - /Type /StructElem - /S /Span - /P 2521 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [155] - /Pg 4874 0 R ->> -endobj - -2523 0 obj -<< - /Type /StructElem - /S /Strong - /P 2521 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [154] - /Pg 4874 0 R ->> -endobj - -2524 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [2525 0 R] ->> -endobj - -2525 0 obj -<< - /Type /StructElem - /S /Span - /P 2524 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [153] - /Pg 4874 0 R ->> -endobj - -2526 0 obj -<< - /Type /StructElem - /S /Div - /P 2389 0 R - /K [] ->> -endobj - -2527 0 obj -<< - /Type /StructElem - /S /P - /P 2388 0 R - /K [2528 0 R 152] - /Pg 4874 0 R ->> -endobj - -2528 0 obj -<< - /Type /StructElem - /S /Strong - /P 2527 0 R - /K [151] - /Pg 4874 0 R ->> -endobj - -2529 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [2535 0 R 138 2534 0 R 140 2533 0 R 144 2532 0 R 146 2531 0 R 148 2530 0 R 150] - /Pg 4874 0 R ->> -endobj - -2530 0 obj -<< - /Type /StructElem - /S /Code - /P 2529 0 R - /K [149] - /Pg 4874 0 R ->> -endobj - -2531 0 obj -<< - /Type /StructElem - /S /Formula - /P 2529 0 R - /K [147] - /Pg 4874 0 R ->> -endobj - -2532 0 obj -<< - /Type /StructElem - /S /Formula - /P 2529 0 R - /K [145] - /Pg 4874 0 R ->> -endobj - -2533 0 obj -<< - /Type /StructElem - /S /Formula - /P 2529 0 R - /K [141 142 143] - /Pg 4874 0 R ->> -endobj - -2534 0 obj -<< - /Type /StructElem - /S /Code - /P 2529 0 R - /K [139] - /Pg 4874 0 R ->> -endobj - -2535 0 obj -<< - /Type /StructElem - /S /Link - /P 2529 0 R - /K [137 << - /Type /OBJR - /Pg 4874 0 R - /Obj 4873 0 R - >>] - /Pg 4874 0 R ->> -endobj - -2536 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [98 2546 0 R 100 101 2545 0 R 103 104 2544 0 R 106 107 108 2543 0 R 110 2542 0 R 114 2541 0 R 116 117 2540 0 R 121 2539 0 R 126 127 2538 0 R 130 2537 0 R 134 135 136] - /Pg 4874 0 R ->> -endobj - -2537 0 obj -<< - /Type /StructElem - /S /Formula - /P 2536 0 R - /K [131 132 133] - /Pg 4874 0 R ->> -endobj - -2538 0 obj -<< - /Type /StructElem - /S /Formula - /P 2536 0 R - /K [128 129] - /Pg 4874 0 R ->> -endobj - -2539 0 obj -<< - /Type /StructElem - /S /Formula - /P 2536 0 R - /K [122 123 124 125] - /Pg 4874 0 R ->> -endobj - -2540 0 obj -<< - /Type /StructElem - /S /Formula - /P 2536 0 R - /K [118 119 120] - /Pg 4874 0 R ->> -endobj - -2541 0 obj -<< - /Type /StructElem - /S /Link - /P 2536 0 R - /K [115 << - /Type /OBJR - /Pg 4874 0 R - /Obj 4872 0 R - >>] - /Pg 4874 0 R ->> -endobj - -2542 0 obj -<< - /Type /StructElem - /S /Formula - /P 2536 0 R - /K [111 112 113] - /Pg 4874 0 R ->> -endobj - -2543 0 obj -<< - /Type /StructElem - /S /Code - /P 2536 0 R - /K [109] - /Pg 4874 0 R ->> -endobj - -2544 0 obj -<< - /Type /StructElem - /S /Code - /P 2536 0 R - /K [105] - /Pg 4874 0 R ->> -endobj - -2545 0 obj -<< - /Type /StructElem - /S /Code - /P 2536 0 R - /K [102] - /Pg 4874 0 R ->> -endobj - -2546 0 obj -<< - /Type /StructElem - /S /Link - /P 2536 0 R - /K [99 << - /Type /OBJR - /Pg 4874 0 R - /Obj 4871 0 R - >>] - /Pg 4874 0 R ->> -endobj - -2547 0 obj -<< - /Type /StructElem - /S /H3 - /P 103 0 R - /T (Effect Tracking) - /K [96 97] - /Pg 4874 0 R ->> -endobj - -2548 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [85 2552 0 R 87 88 2551 0 R 90 91 2550 0 R 93 2549 0 R 95] - /Pg 4874 0 R ->> -endobj - -2549 0 obj -<< - /Type /StructElem - /S /Link - /P 2548 0 R - /K [94 << - /Type /OBJR - /Pg 4874 0 R - /Obj 4870 0 R - >>] - /Pg 4874 0 R ->> -endobj - -2550 0 obj -<< - /Type /StructElem - /S /Link - /P 2548 0 R - /K [92 << - /Type /OBJR - /Pg 4874 0 R - /Obj 4869 0 R - >>] - /Pg 4874 0 R ->> -endobj - -2551 0 obj -<< - /Type /StructElem - /S /Link - /P 2548 0 R - /K [89 << - /Type /OBJR - /Pg 4874 0 R - /Obj 4868 0 R - >>] - /Pg 4874 0 R ->> -endobj - -2552 0 obj -<< - /Type /StructElem - /S /Link - /P 2548 0 R - /K [86 << - /Type /OBJR - /Pg 4874 0 R - /Obj 4867 0 R - >>] - /Pg 4874 0 R ->> -endobj - -2553 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /K [2641 0 R 2554 0 R] ->> -endobj - -2554 0 obj -<< - /Type /StructElem - /S /Div - /P 2553 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [2555 0 R] ->> -endobj - -2555 0 obj -<< - /Type /StructElem - /S /Table - /P 2554 0 R - /K [2638 0 R 2629 0 R 2556 0 R] ->> -endobj - -2556 0 obj -<< - /Type /StructElem - /S /TBody - /P 2555 0 R - /K [2627 0 R 2625 0 R 2620 0 R 2615 0 R 2610 0 R 2601 0 R 2594 0 R 2589 0 R 2584 0 R 2579 0 R 2574 0 R 2569 0 R 2564 0 R 2559 0 R 2557 0 R] ->> -endobj - -2557 0 obj -<< - /Type /StructElem - /S /TR - /P 2556 0 R - /K [2558 0 R] ->> -endobj - -2558 0 obj -<< - /Type /StructElem - /S /TD - /P 2557 0 R - /A [<< - /O /Table - /Headers [(U1x0y1) (U1x1y1)] - /ColSpan 2 - >> << - /O /Layout - /BorderColor [0 0 0] - /BorderStyle [/None /Solid /None /None] - /BorderThickness [0 0.8 0 0] - >>] - /K [] ->> -endobj - -2559 0 obj -<< - /Type /StructElem - /S /TR - /P 2556 0 R - /K [2562 0 R 2560 0 R] ->> -endobj - -2560 0 obj -<< - /Type /StructElem - /S /TD - /P 2559 0 R - /A [<< - /O /Table - /Headers [(U1x1y1)] - >>] - /K [2561 0 R 83] - /Pg 4874 0 R ->> -endobj - -2561 0 obj -<< - /Type /StructElem - /S /Code - /P 2560 0 R - /K [82] - /Pg 4874 0 R ->> -endobj - -2562 0 obj -<< - /Type /StructElem - /S /TD - /P 2559 0 R - /A [<< - /O /Table - /Headers [(U1x0y1)] - >>] - /K [2563 0 R] ->> -endobj - -2563 0 obj -<< - /Type /StructElem - /S /Formula - /P 2562 0 R - /K [81] - /Pg 4874 0 R ->> -endobj - -2564 0 obj -<< - /Type /StructElem - /S /TR - /P 2556 0 R - /K [2567 0 R 2565 0 R] ->> -endobj - -2565 0 obj -<< - /Type /StructElem - /S /TD - /P 2564 0 R - /A [<< - /O /Table - /Headers [(U1x1y1)] - >>] - /K [2566 0 R] ->> -endobj - -2566 0 obj -<< - /Type /StructElem - /S /Code - /P 2565 0 R - /K [80] - /Pg 4874 0 R ->> -endobj - -2567 0 obj -<< - /Type /StructElem - /S /TD - /P 2564 0 R - /A [<< - /O /Table - /Headers [(U1x0y1)] - >>] - /K [2568 0 R] ->> -endobj - -2568 0 obj -<< - /Type /StructElem - /S /Formula - /P 2567 0 R - /K [75 76 77 78 79] - /Pg 4874 0 R ->> -endobj - -2569 0 obj -<< - /Type /StructElem - /S /TR - /P 2556 0 R - /K [2572 0 R 2570 0 R] ->> -endobj - -2570 0 obj -<< - /Type /StructElem - /S /TD - /P 2569 0 R - /A [<< - /O /Table - /Headers [(U1x1y1)] - >>] - /K [2571 0 R] ->> -endobj - -2571 0 obj -<< - /Type /StructElem - /S /Code - /P 2570 0 R - /K [74] - /Pg 4874 0 R ->> -endobj - -2572 0 obj -<< - /Type /StructElem - /S /TD - /P 2569 0 R - /A [<< - /O /Table - /Headers [(U1x0y1)] - >>] - /K [2573 0 R] ->> -endobj - -2573 0 obj -<< - /Type /StructElem - /S /Formula - /P 2572 0 R - /K [70 71 72 73] - /Pg 4874 0 R ->> -endobj - -2574 0 obj -<< - /Type /StructElem - /S /TR - /P 2556 0 R - /K [2577 0 R 2575 0 R] ->> -endobj - -2575 0 obj -<< - /Type /StructElem - /S /TD - /P 2574 0 R - /A [<< - /O /Table - /Headers [(U1x1y1)] - >>] - /K [2576 0 R] ->> -endobj - -2576 0 obj -<< - /Type /StructElem - /S /Code - /P 2575 0 R - /K [69] - /Pg 4874 0 R ->> -endobj - -2577 0 obj -<< - /Type /StructElem - /S /TD - /P 2574 0 R - /A [<< - /O /Table - /Headers [(U1x0y1)] - >>] - /K [2578 0 R] ->> -endobj - -2578 0 obj -<< - /Type /StructElem - /S /Formula - /P 2577 0 R - /K [65 66 67 68] - /Pg 4874 0 R ->> -endobj - -2579 0 obj -<< - /Type /StructElem - /S /TR - /P 2556 0 R - /K [2582 0 R 2580 0 R] ->> -endobj - -2580 0 obj -<< - /Type /StructElem - /S /TD - /P 2579 0 R - /A [<< - /O /Table - /Headers [(U1x1y1)] - >>] - /K [2581 0 R 64] - /Pg 4874 0 R ->> -endobj - -2581 0 obj -<< - /Type /StructElem - /S /Code - /P 2580 0 R - /K [63] - /Pg 4874 0 R ->> -endobj - -2582 0 obj -<< - /Type /StructElem - /S /TD - /P 2579 0 R - /A [<< - /O /Table - /Headers [(U1x0y1)] - >>] - /K [2583 0 R] ->> -endobj - -2583 0 obj -<< - /Type /StructElem - /S /Formula - /P 2582 0 R - /K [61 62] - /Pg 4874 0 R ->> -endobj - -2584 0 obj -<< - /Type /StructElem - /S /TR - /P 2556 0 R - /K [2587 0 R 2585 0 R] ->> -endobj - -2585 0 obj -<< - /Type /StructElem - /S /TD - /P 2584 0 R - /A [<< - /O /Table - /Headers [(U1x1y1)] - >>] - /K [2586 0 R] ->> -endobj - -2586 0 obj -<< - /Type /StructElem - /S /Code - /P 2585 0 R - /K [60] - /Pg 4874 0 R ->> -endobj - -2587 0 obj -<< - /Type /StructElem - /S /TD - /P 2584 0 R - /A [<< - /O /Table - /Headers [(U1x0y1)] - >>] - /K [2588 0 R] ->> -endobj - -2588 0 obj -<< - /Type /StructElem - /S /Formula - /P 2587 0 R - /K [54 55 56 57 58 59] - /Pg 4874 0 R ->> -endobj - -2589 0 obj -<< - /Type /StructElem - /S /TR - /P 2556 0 R - /K [2592 0 R 2590 0 R] ->> -endobj - -2590 0 obj -<< - /Type /StructElem - /S /TD - /P 2589 0 R - /A [<< - /O /Table - /Headers [(U1x1y1)] - >>] - /K [2591 0 R] ->> -endobj - -2591 0 obj -<< - /Type /StructElem - /S /Code - /P 2590 0 R - /K [53] - /Pg 4874 0 R ->> -endobj - -2592 0 obj -<< - /Type /StructElem - /S /TD - /P 2589 0 R - /A [<< - /O /Table - /Headers [(U1x0y1)] - >>] - /K [2593 0 R] ->> -endobj - -2593 0 obj -<< - /Type /StructElem - /S /Formula - /P 2592 0 R - /K [47 48 49 50 51 52] - /Pg 4874 0 R ->> -endobj - -2594 0 obj -<< - /Type /StructElem - /S /TR - /P 2556 0 R - /K [2598 0 R 2595 0 R] ->> -endobj - -2595 0 obj -<< - /Type /StructElem - /S /TD - /P 2594 0 R - /A [<< - /O /Table - /Headers [(U1x1y1)] - >>] - /K [2597 0 R 45 2596 0 R] - /Pg 4874 0 R ->> -endobj - -2596 0 obj -<< - /Type /StructElem - /S /Code - /P 2595 0 R - /K [46] - /Pg 4874 0 R ->> -endobj - -2597 0 obj -<< - /Type /StructElem - /S /Code - /P 2595 0 R - /K [44] - /Pg 4874 0 R ->> -endobj - -2598 0 obj -<< - /Type /StructElem - /S /TD - /P 2594 0 R - /A [<< - /O /Table - /Headers [(U1x0y1)] - >>] - /K [2600 0 R 37 2599 0 R] - /Pg 4874 0 R ->> -endobj - -2599 0 obj -<< - /Type /StructElem - /S /Formula - /P 2598 0 R - /K [38 39 40 41 42 43] - /Pg 4874 0 R ->> -endobj - -2600 0 obj -<< - /Type /StructElem - /S /Formula - /P 2598 0 R - /K [33 34 35 36] - /Pg 4874 0 R ->> -endobj - -2601 0 obj -<< - /Type /StructElem - /S /TR - /P 2556 0 R - /K [2606 0 R 2602 0 R] ->> -endobj - -2602 0 obj -<< - /Type /StructElem - /S /TD - /P 2601 0 R - /A [<< - /O /Table - /Headers [(U1x1y1)] - >>] - /K [2605 0 R 29 2604 0 R 31 2603 0 R] - /Pg 4874 0 R ->> -endobj - -2603 0 obj -<< - /Type /StructElem - /S /Code - /P 2602 0 R - /K [32] - /Pg 4874 0 R ->> -endobj - -2604 0 obj -<< - /Type /StructElem - /S /Code - /P 2602 0 R - /K [30] - /Pg 4874 0 R ->> -endobj - -2605 0 obj -<< - /Type /StructElem - /S /Code - /P 2602 0 R - /K [28] - /Pg 4874 0 R ->> -endobj - -2606 0 obj -<< - /Type /StructElem - /S /TD - /P 2601 0 R - /A [<< - /O /Table - /Headers [(U1x0y1)] - >>] - /K [2609 0 R 22 2608 0 R 25 2607 0 R] - /Pg 4874 0 R ->> -endobj - -2607 0 obj -<< - /Type /StructElem - /S /Formula - /P 2606 0 R - /K [26 27] - /Pg 4874 0 R ->> -endobj - -2608 0 obj -<< - /Type /StructElem - /S /Formula - /P 2606 0 R - /K [23 24] - /Pg 4874 0 R ->> -endobj - -2609 0 obj -<< - /Type /StructElem - /S /Formula - /P 2606 0 R - /K [21] - /Pg 4874 0 R ->> -endobj - -2610 0 obj -<< - /Type /StructElem - /S /TR - /P 2556 0 R - /K [2613 0 R 2611 0 R] ->> -endobj - -2611 0 obj -<< - /Type /StructElem - /S /TD - /P 2610 0 R - /A [<< - /O /Table - /Headers [(U1x1y1)] - >>] - /K [2612 0 R] ->> -endobj - -2612 0 obj -<< - /Type /StructElem - /S /Code - /P 2611 0 R - /K [20] - /Pg 4874 0 R ->> -endobj - -2613 0 obj -<< - /Type /StructElem - /S /TD - /P 2610 0 R - /A [<< - /O /Table - /Headers [(U1x0y1)] - >>] - /K [2614 0 R] ->> -endobj - -2614 0 obj -<< - /Type /StructElem - /S /Formula - /P 2613 0 R - /K [15 16 17 18 19] - /Pg 4874 0 R ->> -endobj - -2615 0 obj -<< - /Type /StructElem - /S /TR - /P 2556 0 R - /K [2617 0 R 2616 0 R] ->> -endobj - -2616 0 obj -<< - /Type /StructElem - /S /TD - /P 2615 0 R - /A [<< - /O /Table - /Headers [(U1x1y1)] - >>] - /K [14] - /Pg 4874 0 R ->> -endobj - -2617 0 obj -<< - /Type /StructElem - /S /TD - /P 2615 0 R - /A [<< - /O /Table - /Headers [(U1x0y1)] - >>] - /K [2619 0 R 10 2618 0 R] - /Pg 4874 0 R ->> -endobj - -2618 0 obj -<< - /Type /StructElem - /S /Formula - /P 2617 0 R - /K [11 12 13] - /Pg 4874 0 R ->> -endobj - -2619 0 obj -<< - /Type /StructElem - /S /Formula - /P 2617 0 R - /K [8 9] - /Pg 4874 0 R ->> -endobj - -2620 0 obj -<< - /Type /StructElem - /S /TR - /P 2556 0 R - /K [2623 0 R 2621 0 R] ->> -endobj - -2621 0 obj -<< - /Type /StructElem - /S /TD - /P 2620 0 R - /A [<< - /O /Table - /Headers [(U1x1y1)] - >>] - /K [2622 0 R 7] - /Pg 4874 0 R ->> -endobj - -2622 0 obj -<< - /Type /StructElem - /S /Code - /P 2621 0 R - /K [6] - /Pg 4874 0 R ->> -endobj - -2623 0 obj -<< - /Type /StructElem - /S /TD - /P 2620 0 R - /A [<< - /O /Table - /Headers [(U1x0y1)] - >>] - /K [2624 0 R] ->> -endobj - -2624 0 obj -<< - /Type /StructElem - /S /Formula - /P 2623 0 R - /K [4 5] - /Pg 4874 0 R ->> -endobj - -2625 0 obj -<< - /Type /StructElem - /S /TR - /P 2556 0 R - /K [2626 0 R] ->> -endobj - -2626 0 obj -<< - /Type /StructElem - /S /TD - /P 2625 0 R - /A [<< - /O /Table - /Headers [(U1x0y1) (U1x1y1)] - /ColSpan 2 - >> << - /O /Layout - /BorderColor [0 0 0] - /BorderStyle [/Solid /None /None /None] - /BorderThickness [0.4 0 0 0] - >>] - /K [] ->> -endobj - -2627 0 obj -<< - /Type /StructElem - /S /TR - /P 2556 0 R - /K [2628 0 R] ->> -endobj - -2628 0 obj -<< - /Type /StructElem - /S /TD - /P 2627 0 R - /A [<< - /O /Table - /Headers [(U1x0y1) (U1x1y1)] - /ColSpan 2 - >> << - /O /Layout - /BorderColor [0 0 0] - /BorderStyle [/None /Solid /None /None] - /BorderThickness [0 0.4 0 0] - >>] - /K [] ->> -endobj - -2629 0 obj -<< - /Type /StructElem - /S /TBody - /P 2555 0 R - /K [2630 0 R] ->> -endobj - -2630 0 obj -<< - /Type /StructElem - /S /TR - /P 2629 0 R - /K [2633 0 R 2631 0 R] ->> -endobj - -2631 0 obj -<< - /Type /StructElem - /S /TH - /P 2630 0 R - /ID (U1x1y1) - /A [<< - /O /Table - /Scope /Column - /Headers [] - >>] - /K [2632 0 R] ->> -endobj - -2632 0 obj -<< - /Type /StructElem - /S /Strong - /P 2631 0 R - /K [3] - /Pg 4874 0 R ->> -endobj - -2633 0 obj -<< - /Type /StructElem - /S /TH - /P 2630 0 R - /ID (U1x0y1) - /A [<< - /O /Table - /Scope /Column - /Headers [] - >>] - /K [2637 0 R 2635 0 R 2634 0 R] ->> -endobj - -2634 0 obj -<< - /Type /StructElem - /S /Strong - /P 2633 0 R - /K [2] - /Pg 4874 0 R ->> -endobj - -2635 0 obj -<< - /Type /StructElem - /S /Link - /P 2633 0 R - /K [2636 0 R << - /Type /OBJR - /Pg 4874 0 R - /Obj 4866 0 R - >>] ->> -endobj - -2636 0 obj -<< - /Type /StructElem - /S /Strong - /P 2635 0 R - /K [1] - /Pg 4874 0 R ->> -endobj - -2637 0 obj -<< - /Type /StructElem - /S /Strong - /P 2633 0 R - /K [0] - /Pg 4874 0 R ->> -endobj - -2638 0 obj -<< - /Type /StructElem - /S /TBody - /P 2555 0 R - /K [2639 0 R] ->> -endobj - -2639 0 obj -<< - /Type /StructElem - /S /TR - /P 2638 0 R - /K [2640 0 R] ->> -endobj - -2640 0 obj -<< - /Type /StructElem - /S /TD - /P 2639 0 R - /A [<< - /O /Table - /Headers [] - /ColSpan 2 - >> << - /O /Layout - /BorderColor [0 0 0] - /BorderStyle [/Solid /None /None /None] - /BorderThickness [0.8 0 0 0] - >>] - /K [] ->> -endobj - -2641 0 obj -<< - /Type /StructElem - /S /Caption - /P 2553 0 R - /K [2642 0 R] ->> -endobj - -2642 0 obj -<< - /Type /StructElem - /S /Span - /P 2641 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [84] - /Pg 4874 0 R ->> -endobj - -2643 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [62 2660 0 R 64 65 2659 0 R 67 68 69 2658 0 R 71 2657 0 R 73 2656 0 R 75 2655 0 R 77 78 2654 0 R 80 2653 0 R 82 83 2652 0 R 85 86 87 2651 0 R 89 2650 0 R 91 2649 0 R 93 94 2648 0 R 100 2647 0 R 102 2646 0 R 104 2645 0 R 106 2644 0 R 108 109] - /Pg 4864 0 R ->> -endobj - -2644 0 obj -<< - /Type /StructElem - /S /Link - /P 2643 0 R - /K [107 << - /Type /OBJR - /Pg 4864 0 R - /Obj 4863 0 R - >>] - /Pg 4864 0 R ->> -endobj - -2645 0 obj -<< - /Type /StructElem - /S /Code - /P 2643 0 R - /K [105] - /Pg 4864 0 R ->> -endobj - -2646 0 obj -<< - /Type /StructElem - /S /Code - /P 2643 0 R - /K [103] - /Pg 4864 0 R ->> -endobj - -2647 0 obj -<< - /Type /StructElem - /S /Formula - /P 2643 0 R - /K [101] - /Pg 4864 0 R ->> -endobj - -2648 0 obj -<< - /Type /StructElem - /S /Formula - /P 2643 0 R - /K [95 96 97 98 99] - /Pg 4864 0 R ->> -endobj - -2649 0 obj -<< - /Type /StructElem - /S /Code - /P 2643 0 R - /K [92] - /Pg 4864 0 R ->> -endobj - -2650 0 obj -<< - /Type /StructElem - /S /Formula - /P 2643 0 R - /K [90] - /Pg 4864 0 R ->> -endobj - -2651 0 obj -<< - /Type /StructElem - /S /Code - /P 2643 0 R - /K [88] - /Pg 4864 0 R ->> -endobj - -2652 0 obj -<< - /Type /StructElem - /S /Link - /P 2643 0 R - /K [84 << - /Type /OBJR - /Pg 4864 0 R - /Obj 4862 0 R - >>] - /Pg 4864 0 R ->> -endobj - -2653 0 obj -<< - /Type /StructElem - /S /Code - /P 2643 0 R - /K [81] - /Pg 4864 0 R ->> -endobj - -2654 0 obj -<< - /Type /StructElem - /S /Code - /P 2643 0 R - /K [79] - /Pg 4864 0 R ->> -endobj - -2655 0 obj -<< - /Type /StructElem - /S /Formula - /P 2643 0 R - /K [76] - /Pg 4864 0 R ->> -endobj - -2656 0 obj -<< - /Type /StructElem - /S /Code - /P 2643 0 R - /K [74] - /Pg 4864 0 R ->> -endobj - -2657 0 obj -<< - /Type /StructElem - /S /Formula - /P 2643 0 R - /K [72] - /Pg 4864 0 R ->> -endobj - -2658 0 obj -<< - /Type /StructElem - /S /Code - /P 2643 0 R - /K [70] - /Pg 4864 0 R ->> -endobj - -2659 0 obj -<< - /Type /StructElem - /S /Link - /P 2643 0 R - /K [66 << - /Type /OBJR - /Pg 4864 0 R - /Obj 4861 0 R - >>] - /Pg 4864 0 R ->> -endobj - -2660 0 obj -<< - /Type /StructElem - /S /Em - /P 2643 0 R - /K [63] - /Pg 4864 0 R ->> -endobj - -2661 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [2664 0 R 53 54 55 2663 0 R 57 58 2662 0 R 60 61] - /Pg 4864 0 R ->> -endobj - -2662 0 obj -<< - /Type /StructElem - /S /Code - /P 2661 0 R - /K [59] - /Pg 4864 0 R ->> -endobj - -2663 0 obj -<< - /Type /StructElem - /S /Code - /P 2661 0 R - /K [56] - /Pg 4864 0 R ->> -endobj - -2664 0 obj -<< - /Type /StructElem - /S /Link - /P 2661 0 R - /K [52 << - /Type /OBJR - /Pg 4864 0 R - /Obj 4860 0 R - >>] - /Pg 4864 0 R ->> -endobj - -2665 0 obj -<< - /Type /StructElem - /S /H2 - /P 103 0 R - /T (Core Library) - /K [50 51] - /Pg 4864 0 R ->> -endobj - -2666 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [22 2675 0 R 24 2674 0 R 26 27 2673 0 R 29 30 31 32 33 2672 0 R 35 2671 0 R 37 38 2670 0 R 40 2669 0 R 42 43 44 2668 0 R 46 2667 0 R 48 49] - /Pg 4864 0 R ->> -endobj - -2667 0 obj -<< - /Type /StructElem - /S /Link - /P 2666 0 R - /K [47 << - /Type /OBJR - /Pg 4864 0 R - /Obj 4859 0 R - >>] - /Pg 4864 0 R ->> -endobj - -2668 0 obj -<< - /Type /StructElem - /S /Em - /P 2666 0 R - /K [45] - /Pg 4864 0 R ->> -endobj - -2669 0 obj -<< - /Type /StructElem - /S /Link - /P 2666 0 R - /K [41 << - /Type /OBJR - /Pg 4864 0 R - /Obj 4858 0 R - >>] - /Pg 4864 0 R ->> -endobj - -2670 0 obj -<< - /Type /StructElem - /S /Em - /P 2666 0 R - /K [39] - /Pg 4864 0 R ->> -endobj - -2671 0 obj -<< - /Type /StructElem - /S /Link - /P 2666 0 R - /K [36 << - /Type /OBJR - /Pg 4864 0 R - /Obj 4857 0 R - >>] - /Pg 4864 0 R ->> -endobj - -2672 0 obj -<< - /Type /StructElem - /S /Em - /P 2666 0 R - /K [34] - /Pg 4864 0 R ->> -endobj - -2673 0 obj -<< - /Type /StructElem - /S /Em - /P 2666 0 R - /K [28] - /Pg 4864 0 R ->> -endobj - -2674 0 obj -<< - /Type /StructElem - /S /Link - /P 2666 0 R - /K [25 << - /Type /OBJR - /Pg 4864 0 R - /Obj 4856 0 R - >>] - /Pg 4864 0 R ->> -endobj - -2675 0 obj -<< - /Type /StructElem - /S /Em - /P 2666 0 R - /K [23] - /Pg 4864 0 R ->> -endobj - -2676 0 obj -<< - /Type /StructElem - /S /H1 - /P 103 0 R - /T (Implementation and Case Study) - /K [20 21] - /Pg 4864 0 R ->> -endobj - -2677 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [6 7 8 9 10 2679 0 R 12 13 14 2678 0 R 16 17 18 19] - /Pg 4864 0 R ->> -endobj - -2678 0 obj -<< - /Type /StructElem - /S /Link - /P 2677 0 R - /K [15 << - /Type /OBJR - /Pg 4864 0 R - /Obj 4855 0 R - >>] - /Pg 4864 0 R ->> -endobj - -2679 0 obj -<< - /Type /StructElem - /S /Link - /P 2677 0 R - /K [11 << - /Type /OBJR - /Pg 4864 0 R - /Obj 4854 0 R - >>] - /Pg 4864 0 R ->> -endobj - -2680 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [2 3 4 5] - /Pg 4864 0 R ->> -endobj - -2681 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [2685 0 R 89 90 91 92 2684 0 R 94 95 96 97 98 2683 0 R 100 101 102 2682 0 R 104 << - /Type /MCR - /MCID 0 - /Pg 4864 0 R - >> << - /Type /MCR - /MCID 1 - /Pg 4864 0 R - >>] - /Pg 4852 0 R ->> -endobj - -2682 0 obj -<< - /Type /StructElem - /S /Code - /P 2681 0 R - /K [103] - /Pg 4852 0 R ->> -endobj - -2683 0 obj -<< - /Type /StructElem - /S /Code - /P 2681 0 R - /K [99] - /Pg 4852 0 R ->> -endobj - -2684 0 obj -<< - /Type /StructElem - /S /Code - /P 2681 0 R - /K [93] - /Pg 4852 0 R ->> -endobj - -2685 0 obj -<< - /Type /StructElem - /S /Strong - /P 2681 0 R - /K [88] - /Pg 4852 0 R ->> -endobj - -2686 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [2690 0 R 66 67 68 2689 0 R 70 2688 0 R 78 79 2687 0 R 81 82 83 84 85 86 87] - /Pg 4852 0 R ->> -endobj - -2687 0 obj -<< - /Type /StructElem - /S /Link - /P 2686 0 R - /K [80 << - /Type /OBJR - /Pg 4852 0 R - /Obj 4851 0 R - >>] - /Pg 4852 0 R ->> -endobj - -2688 0 obj -<< - /Type /StructElem - /S /Formula - /P 2686 0 R - /K [71 72 73 74 75 76 77] - /Pg 4852 0 R ->> -endobj - -2689 0 obj -<< - /Type /StructElem - /S /Code - /P 2686 0 R - /K [69] - /Pg 4852 0 R ->> -endobj - -2690 0 obj -<< - /Type /StructElem - /S /Strong - /P 2686 0 R - /K [65] - /Pg 4852 0 R ->> -endobj - -2691 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [63 64] - /Pg 4852 0 R ->> -endobj - -2692 0 obj -<< - /Type /StructElem - /S /H3 - /P 103 0 R - /T (Situating the Context Paradigm) - /K [61 62] - /Pg 4852 0 R ->> -endobj - -2693 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [57 58 2694 0 R 60] - /Pg 4852 0 R ->> -endobj - -2694 0 obj -<< - /Type /StructElem - /S /Link - /P 2693 0 R - /K [59 << - /Type /OBJR - /Pg 4852 0 R - /Obj 4850 0 R - >>] - /Pg 4852 0 R ->> -endobj - -2695 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [2706 0 R 2696 0 R] ->> -endobj - -2696 0 obj -<< - /Type /StructElem - /S /L - /P 2695 0 R - /A [<< - /O /List - /ListNumbering /Circle - >>] - /K [2702 0 R 2697 0 R] ->> -endobj - -2697 0 obj -<< - /Type /StructElem - /S /LI - /P 2696 0 R - /K [2701 0 R 2698 0 R] ->> -endobj - -2698 0 obj -<< - /Type /StructElem - /S /LBody - /P 2697 0 R - /K [2700 0 R 52 53 2699 0 R 56] - /Pg 4852 0 R ->> -endobj - -2699 0 obj -<< - /Type /StructElem - /S /Formula - /P 2698 0 R - /K [54 55] - /Pg 4852 0 R ->> -endobj - -2700 0 obj -<< - /Type /StructElem - /S /Em - /P 2698 0 R - /K [51] - /Pg 4852 0 R ->> -endobj - -2701 0 obj -<< - /Type /StructElem - /S /Lbl - /P 2697 0 R - /K [50] - /Pg 4852 0 R ->> -endobj - -2702 0 obj -<< - /Type /StructElem - /S /LI - /P 2696 0 R - /K [2705 0 R 2703 0 R] ->> -endobj - -2703 0 obj -<< - /Type /StructElem - /S /LBody - /P 2702 0 R - /K [2704 0 R 48 49] - /Pg 4852 0 R ->> -endobj - -2704 0 obj -<< - /Type /StructElem - /S /Em - /P 2703 0 R - /K [47] - /Pg 4852 0 R ->> -endobj - -2705 0 obj -<< - /Type /StructElem - /S /Lbl - /P 2702 0 R - /K [46] - /Pg 4852 0 R ->> -endobj - -2706 0 obj -<< - /Type /StructElem - /S /P - /P 2695 0 R - /K [2709 0 R 37 2708 0 R 43 2707 0 R 45] - /Pg 4852 0 R ->> -endobj - -2707 0 obj -<< - /Type /StructElem - /S /Em - /P 2706 0 R - /K [44] - /Pg 4852 0 R ->> -endobj - -2708 0 obj -<< - /Type /StructElem - /S /Formula - /P 2706 0 R - /K [38 39 40 41 42] - /Pg 4852 0 R ->> -endobj - -2709 0 obj -<< - /Type /StructElem - /S /Strong - /P 2706 0 R - /K [34 35 36] - /Pg 4852 0 R ->> -endobj - -2710 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [2714 0 R 24 2713 0 R 27 2712 0 R 29 30 2711 0 R 32 33] - /Pg 4852 0 R ->> -endobj - -2711 0 obj -<< - /Type /StructElem - /S /Em - /P 2710 0 R - /K [31] - /Pg 4852 0 R ->> -endobj - -2712 0 obj -<< - /Type /StructElem - /S /Em - /P 2710 0 R - /K [28] - /Pg 4852 0 R ->> -endobj - -2713 0 obj -<< - /Type /StructElem - /S /Formula - /P 2710 0 R - /K [25 26] - /Pg 4852 0 R ->> -endobj - -2714 0 obj -<< - /Type /StructElem - /S /Strong - /P 2710 0 R - /K [23] - /Pg 4852 0 R ->> -endobj - -2715 0 obj -<< - /Type /StructElem - /S /L - /P 103 0 R - /A [<< - /O /List - /ListNumbering /Circle - >>] - /K [2722 0 R 2719 0 R 2716 0 R] ->> -endobj - -2716 0 obj -<< - /Type /StructElem - /S /LI - /P 2715 0 R - /K [2718 0 R 2717 0 R] ->> -endobj - -2717 0 obj -<< - /Type /StructElem - /S /LBody - /P 2716 0 R - /K [19 20 21 22] - /Pg 4852 0 R ->> -endobj - -2718 0 obj -<< - /Type /StructElem - /S /Lbl - /P 2716 0 R - /K [18] - /Pg 4852 0 R ->> -endobj - -2719 0 obj -<< - /Type /StructElem - /S /LI - /P 2715 0 R - /K [2721 0 R 2720 0 R] ->> -endobj - -2720 0 obj -<< - /Type /StructElem - /S /LBody - /P 2719 0 R - /K [16 17] - /Pg 4852 0 R ->> -endobj - -2721 0 obj -<< - /Type /StructElem - /S /Lbl - /P 2719 0 R - /K [15] - /Pg 4852 0 R ->> -endobj - -2722 0 obj -<< - /Type /StructElem - /S /LI - /P 2715 0 R - /K [2724 0 R 2723 0 R] ->> -endobj - -2723 0 obj -<< - /Type /StructElem - /S /LBody - /P 2722 0 R - /K [14] - /Pg 4852 0 R ->> -endobj - -2724 0 obj -<< - /Type /StructElem - /S /Lbl - /P 2722 0 R - /K [13] - /Pg 4852 0 R ->> -endobj - -2725 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [2728 0 R 3 2727 0 R 6 7 8 2726 0 R 10 11 12] - /Pg 4852 0 R ->> -endobj - -2726 0 obj -<< - /Type /StructElem - /S /Formula - /P 2725 0 R - /K [9] - /Pg 4852 0 R ->> -endobj - -2727 0 obj -<< - /Type /StructElem - /S /Formula - /P 2725 0 R - /K [4 5] - /Pg 4852 0 R ->> -endobj - -2728 0 obj -<< - /Type /StructElem - /S /Strong - /P 2725 0 R - /K [2] - /Pg 4852 0 R ->> -endobj - -2729 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [107 2739 0 R 109 2738 0 R 112 2737 0 R 114 115 2736 0 R 117 118 119 2735 0 R 121 2734 0 R 123 2733 0 R 125 126 2732 0 R 128 2731 0 R 130 131 132 2730 0 R 134 << - /Type /MCR - /MCID 0 - /Pg 4852 0 R - >> << - /Type /MCR - /MCID 1 - /Pg 4852 0 R - >>] - /Pg 4848 0 R ->> -endobj - -2730 0 obj -<< - /Type /StructElem - /S /Formula - /P 2729 0 R - /K [133] - /Pg 4848 0 R ->> -endobj - -2731 0 obj -<< - /Type /StructElem - /S /Formula - /P 2729 0 R - /K [129] - /Pg 4848 0 R ->> -endobj - -2732 0 obj -<< - /Type /StructElem - /S /Formula - /P 2729 0 R - /K [127] - /Pg 4848 0 R ->> -endobj - -2733 0 obj -<< - /Type /StructElem - /S /Formula - /P 2729 0 R - /K [124] - /Pg 4848 0 R ->> -endobj - -2734 0 obj -<< - /Type /StructElem - /S /Formula - /P 2729 0 R - /K [122] - /Pg 4848 0 R ->> -endobj - -2735 0 obj -<< - /Type /StructElem - /S /Formula - /P 2729 0 R - /K [120] - /Pg 4848 0 R ->> -endobj - -2736 0 obj -<< - /Type /StructElem - /S /Formula - /P 2729 0 R - /K [116] - /Pg 4848 0 R ->> -endobj - -2737 0 obj -<< - /Type /StructElem - /S /Formula - /P 2729 0 R - /K [113] - /Pg 4848 0 R ->> -endobj - -2738 0 obj -<< - /Type /StructElem - /S /Formula - /P 2729 0 R - /K [110 111] - /Pg 4848 0 R ->> -endobj - -2739 0 obj -<< - /Type /StructElem - /S /Formula - /P 2729 0 R - /K [108] - /Pg 4848 0 R ->> -endobj - -2740 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [2756 0 R 2755 0 R 2754 0 R 2741 0 R] ->> -endobj - -2741 0 obj -<< - /Type /StructElem - /S /L - /P 2740 0 R - /A [<< - /O /List - /ListNumbering /Circle - >>] - /K [2750 0 R 2746 0 R 2742 0 R] ->> -endobj - -2742 0 obj -<< - /Type /StructElem - /S /LI - /P 2741 0 R - /K [2745 0 R 2743 0 R] ->> -endobj - -2743 0 obj -<< - /Type /StructElem - /S /LBody - /P 2742 0 R - /K [2744 0 R 106] - /Pg 4848 0 R ->> -endobj - -2744 0 obj -<< - /Type /StructElem - /S /Formula - /P 2743 0 R - /K [105] - /Pg 4848 0 R ->> -endobj - -2745 0 obj -<< - /Type /StructElem - /S /Lbl - /P 2742 0 R - /K [104] - /Pg 4848 0 R ->> -endobj - -2746 0 obj -<< - /Type /StructElem - /S /LI - /P 2741 0 R - /K [2749 0 R 2747 0 R] ->> -endobj - -2747 0 obj -<< - /Type /StructElem - /S /LBody - /P 2746 0 R - /K [2748 0 R 103] - /Pg 4848 0 R ->> -endobj - -2748 0 obj -<< - /Type /StructElem - /S /Formula - /P 2747 0 R - /K [100 101 102] - /Pg 4848 0 R ->> -endobj - -2749 0 obj -<< - /Type /StructElem - /S /Lbl - /P 2746 0 R - /K [99] - /Pg 4848 0 R ->> -endobj - -2750 0 obj -<< - /Type /StructElem - /S /LI - /P 2741 0 R - /K [2753 0 R 2751 0 R] ->> -endobj - -2751 0 obj -<< - /Type /StructElem - /S /LBody - /P 2750 0 R - /K [2752 0 R 98] - /Pg 4848 0 R ->> -endobj - -2752 0 obj -<< - /Type /StructElem - /S /Formula - /P 2751 0 R - /K [97] - /Pg 4848 0 R ->> -endobj - -2753 0 obj -<< - /Type /StructElem - /S /Lbl - /P 2750 0 R - /K [96] - /Pg 4848 0 R ->> -endobj - -2754 0 obj -<< - /Type /StructElem - /S /P - /P 2740 0 R - /K [95] - /Pg 4848 0 R ->> -endobj - -2755 0 obj -<< - /Type /StructElem - /S /Formula - /P 2740 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94] - /Pg 4848 0 R ->> -endobj - -2756 0 obj -<< - /Type /StructElem - /S /P - /P 2740 0 R - /K [2758 0 R 75 2757 0 R 78] - /Pg 4848 0 R ->> -endobj - -2757 0 obj -<< - /Type /StructElem - /S /Formula - /P 2756 0 R - /K [76 77] - /Pg 4848 0 R ->> -endobj - -2758 0 obj -<< - /Type /StructElem - /S /Strong - /P 2756 0 R - /K [72 73 74] - /Pg 4848 0 R ->> -endobj - -2759 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [60 2763 0 R 62 2762 0 R 65 2761 0 R 67 68 69 2760 0 R 71] - /Pg 4848 0 R ->> -endobj - -2760 0 obj -<< - /Type /StructElem - /S /Formula - /P 2759 0 R - /K [70] - /Pg 4848 0 R ->> -endobj - -2761 0 obj -<< - /Type /StructElem - /S /Link - /P 2759 0 R - /K [66 << - /Type /OBJR - /Pg 4848 0 R - /Obj 4847 0 R - >>] - /Pg 4848 0 R ->> -endobj - -2762 0 obj -<< - /Type /StructElem - /S /Formula - /P 2759 0 R - /K [63 64] - /Pg 4848 0 R ->> -endobj - -2763 0 obj -<< - /Type /StructElem - /S /Formula - /P 2759 0 R - /K [61] - /Pg 4848 0 R ->> -endobj - -2764 0 obj -<< - /Type /StructElem - /S /H3 - /P 103 0 R - /T (Unified Context) - /K [58 59] - /Pg 4848 0 R ->> -endobj - -2765 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [50 2767 0 R 52 2766 0 R 54 55 56 57] - /Pg 4848 0 R ->> -endobj - -2766 0 obj -<< - /Type /StructElem - /S /Formula - /P 2765 0 R - /K [53] - /Pg 4848 0 R ->> -endobj - -2767 0 obj -<< - /Type /StructElem - /S /Link - /P 2765 0 R - /K [51 << - /Type /OBJR - /Pg 4848 0 R - /Obj 4846 0 R - >>] - /Pg 4848 0 R ->> -endobj - -2768 0 obj -<< - /Type /StructElem - /S /H2 - /P 103 0 R - /T (The Context Paradigm) - /K [48 49] - /Pg 4848 0 R ->> -endobj - -2769 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [44 45 46 47] - /Pg 4848 0 R ->> -endobj - -2770 0 obj -<< - /Type /StructElem - /S /L - /P 103 0 R - /A [<< - /O /List - /ListNumbering /Circle - >>] - /K [2783 0 R 2774 0 R 2771 0 R] ->> -endobj - -2771 0 obj -<< - /Type /StructElem - /S /LI - /P 2770 0 R - /K [2773 0 R 2772 0 R] ->> -endobj - -2772 0 obj -<< - /Type /StructElem - /S /LBody - /P 2771 0 R - /K [42 43] - /Pg 4848 0 R ->> -endobj - -2773 0 obj -<< - /Type /StructElem - /S /Lbl - /P 2771 0 R - /K [41] - /Pg 4848 0 R ->> -endobj - -2774 0 obj -<< - /Type /StructElem - /S /LI - /P 2770 0 R - /K [2782 0 R 2775 0 R] ->> -endobj - -2775 0 obj -<< - /Type /StructElem - /S /LBody - /P 2774 0 R - /K [25 2781 0 R 27 2780 0 R 29 2779 0 R 31 32 33 2778 0 R 35 2777 0 R 37 38 2776 0 R 40] - /Pg 4848 0 R ->> -endobj - -2776 0 obj -<< - /Type /StructElem - /S /Code - /P 2775 0 R - /K [39] - /Pg 4848 0 R ->> -endobj - -2777 0 obj -<< - /Type /StructElem - /S /Code - /P 2775 0 R - /K [36] - /Pg 4848 0 R ->> -endobj - -2778 0 obj -<< - /Type /StructElem - /S /Code - /P 2775 0 R - /K [34] - /Pg 4848 0 R ->> -endobj - -2779 0 obj -<< - /Type /StructElem - /S /Code - /P 2775 0 R - /K [30] - /Pg 4848 0 R ->> -endobj - -2780 0 obj -<< - /Type /StructElem - /S /Code - /P 2775 0 R - /K [28] - /Pg 4848 0 R ->> -endobj - -2781 0 obj -<< - /Type /StructElem - /S /Code - /P 2775 0 R - /K [26] - /Pg 4848 0 R ->> -endobj - -2782 0 obj -<< - /Type /StructElem - /S /Lbl - /P 2774 0 R - /K [24] - /Pg 4848 0 R ->> -endobj - -2783 0 obj -<< - /Type /StructElem - /S /LI - /P 2770 0 R - /K [2792 0 R 2784 0 R] ->> -endobj - -2784 0 obj -<< - /Type /StructElem - /S /LBody - /P 2783 0 R - /K [7 2791 0 R 9 2790 0 R 11 2789 0 R 13 14 2788 0 R 16 2787 0 R 18 2786 0 R 20 21 2785 0 R 23] - /Pg 4848 0 R ->> -endobj - -2785 0 obj -<< - /Type /StructElem - /S /Code - /P 2784 0 R - /K [22] - /Pg 4848 0 R ->> -endobj - -2786 0 obj -<< - /Type /StructElem - /S /Code - /P 2784 0 R - /K [19] - /Pg 4848 0 R ->> -endobj - -2787 0 obj -<< - /Type /StructElem - /S /Code - /P 2784 0 R - /K [17] - /Pg 4848 0 R ->> -endobj - -2788 0 obj -<< - /Type /StructElem - /S /Code - /P 2784 0 R - /K [15] - /Pg 4848 0 R ->> -endobj - -2789 0 obj -<< - /Type /StructElem - /S /Code - /P 2784 0 R - /K [12] - /Pg 4848 0 R ->> -endobj - -2790 0 obj -<< - /Type /StructElem - /S /Code - /P 2784 0 R - /K [10] - /Pg 4848 0 R ->> -endobj - -2791 0 obj -<< - /Type /StructElem - /S /Code - /P 2784 0 R - /K [8] - /Pg 4848 0 R ->> -endobj - -2792 0 obj -<< - /Type /StructElem - /S /Lbl - /P 2783 0 R - /K [6] - /Pg 4848 0 R ->> -endobj - -2793 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [5] - /Pg 4848 0 R ->> -endobj - -2794 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /K [2801 0 R 2795 0 R] ->> -endobj - -2795 0 obj -<< - /Type /StructElem - /S /Div - /P 2794 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [2796 0 R] ->> -endobj - -2796 0 obj -<< - /Type /StructElem - /S /P - /P 2795 0 R - /K [2800 0 R 2799 0 R 2798 0 R 2797 0 R] ->> -endobj - -2797 0 obj -<< - /Type /StructElem - /S /Code - /P 2796 0 R - /K [3] - /Pg 4848 0 R ->> -endobj - -2798 0 obj -<< - /Type /StructElem - /S /Code - /P 2796 0 R - /K [2] - /Pg 4848 0 R ->> -endobj - -2799 0 obj -<< - /Type /StructElem - /S /Code - /P 2796 0 R - /K [1] - /Pg 4848 0 R ->> -endobj - -2800 0 obj -<< - /Type /StructElem - /S /Code - /P 2796 0 R - /K [0] - /Pg 4848 0 R ->> -endobj - -2801 0 obj -<< - /Type /StructElem - /S /Caption - /P 2794 0 R - /K [2802 0 R] ->> -endobj - -2802 0 obj -<< - /Type /StructElem - /S /Span - /P 2801 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4] - /Pg 4848 0 R ->> -endobj - -2803 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [172 2810 0 R 174 2809 0 R 176 177 2808 0 R 179 180 181 2807 0 R 183 2806 0 R 185 186 187 2805 0 R 189 190 2804 0 R 192] - /Pg 4844 0 R ->> -endobj - -2804 0 obj -<< - /Type /StructElem - /S /Link - /P 2803 0 R - /K [191 << - /Type /OBJR - /Pg 4844 0 R - /Obj 4843 0 R - >>] - /Pg 4844 0 R ->> -endobj - -2805 0 obj -<< - /Type /StructElem - /S /Em - /P 2803 0 R - /K [188] - /Pg 4844 0 R ->> -endobj - -2806 0 obj -<< - /Type /StructElem - /S /Code - /P 2803 0 R - /K [184] - /Pg 4844 0 R ->> -endobj - -2807 0 obj -<< - /Type /StructElem - /S /Code - /P 2803 0 R - /K [182] - /Pg 4844 0 R ->> -endobj - -2808 0 obj -<< - /Type /StructElem - /S /Code - /P 2803 0 R - /K [178] - /Pg 4844 0 R ->> -endobj - -2809 0 obj -<< - /Type /StructElem - /S /Code - /P 2803 0 R - /K [175] - /Pg 4844 0 R ->> -endobj - -2810 0 obj -<< - /Type /StructElem - /S /Code - /P 2803 0 R - /K [173] - /Pg 4844 0 R ->> -endobj - -2811 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [159 160 161 2813 0 R 166 167 2812 0 R 169 170 171] - /Pg 4844 0 R ->> -endobj - -2812 0 obj -<< - /Type /StructElem - /S /Formula - /P 2811 0 R - /K [168] - /Pg 4844 0 R ->> -endobj - -2813 0 obj -<< - /Type /StructElem - /S /Formula - /P 2811 0 R - /K [162 163 164 165] - /Pg 4844 0 R ->> -endobj - -2814 0 obj -<< - /Type /StructElem - /S /H3 - /P 103 0 R - /T (Asynchrony) - /K [157 158] - /Pg 4844 0 R ->> -endobj - -2815 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /K [2832 0 R 2816 0 R] ->> -endobj - -2816 0 obj -<< - /Type /StructElem - /S /Div - /P 2815 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [2817 0 R] ->> -endobj - -2817 0 obj -<< - /Type /StructElem - /S /P - /P 2816 0 R - /K [2831 0 R 2830 0 R 2829 0 R 2828 0 R 2827 0 R 2826 0 R 2825 0 R 2824 0 R 2823 0 R 2822 0 R 2821 0 R 2820 0 R 2819 0 R 2818 0 R] ->> -endobj - -2818 0 obj -<< - /Type /StructElem - /S /Formula - /P 2817 0 R - /K [147 148 149 150 151 152 153 154 155] - /Pg 4844 0 R ->> -endobj - -2819 0 obj -<< - /Type /StructElem - /S /Code - /P 2817 0 R - /K [146] - /Pg 4844 0 R ->> -endobj - -2820 0 obj -<< - /Type /StructElem - /S /Formula - /P 2817 0 R - /K [137 138 139 140 141 142 143 144 145] - /Pg 4844 0 R ->> -endobj - -2821 0 obj -<< - /Type /StructElem - /S /Code - /P 2817 0 R - /K [136] - /Pg 4844 0 R ->> -endobj - -2822 0 obj -<< - /Type /StructElem - /S /Formula - /P 2817 0 R - /K [127 128 129 130 131 132 133 134 135] - /Pg 4844 0 R ->> -endobj - -2823 0 obj -<< - /Type /StructElem - /S /Code - /P 2817 0 R - /K [126] - /Pg 4844 0 R ->> -endobj - -2824 0 obj -<< - /Type /StructElem - /S /Formula - /P 2817 0 R - /K [117 118 119 120 121 122 123 124 125] - /Pg 4844 0 R ->> -endobj - -2825 0 obj -<< - /Type /StructElem - /S /Code - /P 2817 0 R - /K [116] - /Pg 4844 0 R ->> -endobj - -2826 0 obj -<< - /Type /StructElem - /S /Formula - /P 2817 0 R - /K [107 108 109 110 111 112 113 114 115] - /Pg 4844 0 R ->> -endobj - -2827 0 obj -<< - /Type /StructElem - /S /Code - /P 2817 0 R - /K [106] - /Pg 4844 0 R ->> -endobj - -2828 0 obj -<< - /Type /StructElem - /S /Formula - /P 2817 0 R - /K [97 98 99 100 101 102 103 104 105] - /Pg 4844 0 R ->> -endobj - -2829 0 obj -<< - /Type /StructElem - /S /Code - /P 2817 0 R - /K [96] - /Pg 4844 0 R ->> -endobj - -2830 0 obj -<< - /Type /StructElem - /S /Formula - /P 2817 0 R - /K [95] - /Pg 4844 0 R ->> -endobj - -2831 0 obj -<< - /Type /StructElem - /S /Code - /P 2817 0 R - /K [94] - /Pg 4844 0 R ->> -endobj - -2832 0 obj -<< - /Type /StructElem - /S /Caption - /P 2815 0 R - /K [2833 0 R] ->> -endobj - -2833 0 obj -<< - /Type /StructElem - /S /Span - /P 2832 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [156] - /Pg 4844 0 R ->> -endobj - -2834 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [81 2839 0 R 83 2838 0 R 85 86 87 2837 0 R 89 2836 0 R 91 2835 0 R 93] - /Pg 4844 0 R ->> -endobj - -2835 0 obj -<< - /Type /StructElem - /S /Link - /P 2834 0 R - /K [92 << - /Type /OBJR - /Pg 4844 0 R - /Obj 4842 0 R - >>] - /Pg 4844 0 R ->> -endobj - -2836 0 obj -<< - /Type /StructElem - /S /Code - /P 2834 0 R - /K [90] - /Pg 4844 0 R ->> -endobj - -2837 0 obj -<< - /Type /StructElem - /S /Code - /P 2834 0 R - /K [88] - /Pg 4844 0 R ->> -endobj - -2838 0 obj -<< - /Type /StructElem - /S /Code - /P 2834 0 R - /K [84] - /Pg 4844 0 R ->> -endobj - -2839 0 obj -<< - /Type /StructElem - /S /Code - /P 2834 0 R - /K [82] - /Pg 4844 0 R ->> -endobj - -2840 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [65 2844 0 R 68 2843 0 R 71 72 2842 0 R 75 2841 0 R 78 79 80] - /Pg 4844 0 R ->> -endobj - -2841 0 obj -<< - /Type /StructElem - /S /Formula - /P 2840 0 R - /K [76 77] - /Pg 4844 0 R ->> -endobj - -2842 0 obj -<< - /Type /StructElem - /S /Formula - /P 2840 0 R - /K [73 74] - /Pg 4844 0 R ->> -endobj - -2843 0 obj -<< - /Type /StructElem - /S /Formula - /P 2840 0 R - /K [69 70] - /Pg 4844 0 R ->> -endobj - -2844 0 obj -<< - /Type /StructElem - /S /Formula - /P 2840 0 R - /K [66 67] - /Pg 4844 0 R ->> -endobj - -2845 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [30 2848 0 R 59 2847 0 R 61 2846 0 R 64] - /Pg 4844 0 R ->> -endobj - -2846 0 obj -<< - /Type /StructElem - /S /Formula - /P 2845 0 R - /K [62 63] - /Pg 4844 0 R ->> -endobj - -2847 0 obj -<< - /Type /StructElem - /S /Code - /P 2845 0 R - /K [60] - /Pg 4844 0 R ->> -endobj - -2848 0 obj -<< - /Type /StructElem - /S /Formula - /P 2845 0 R - /K [31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58] - /Pg 4844 0 R ->> -endobj - -2849 0 obj -<< - /Type /StructElem - /S /Formula - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29] - /Pg 4844 0 R ->> -endobj - -2850 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [0 2853 0 R 2 3 2852 0 R 10 2851 0 R 12] - /Pg 4844 0 R ->> -endobj - -2851 0 obj -<< - /Type /StructElem - /S /Formula - /P 2850 0 R - /K [11] - /Pg 4844 0 R ->> -endobj - -2852 0 obj -<< - /Type /StructElem - /S /Formula - /P 2850 0 R - /K [4 5 6 7 8 9] - /Pg 4844 0 R ->> -endobj - -2853 0 obj -<< - /Type /StructElem - /S /Em - /P 2850 0 R - /K [1] - /Pg 4844 0 R ->> -endobj - -2854 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [226 2866 0 R 228 2865 0 R 230 2864 0 R 232 2863 0 R 234 2862 0 R 236 2861 0 R 238 2860 0 R 240 241 2859 0 R 243 2858 0 R 245 2857 0 R 247 2856 0 R 249 2855 0 R 251] - /Pg 4840 0 R ->> -endobj - -2855 0 obj -<< - /Type /StructElem - /S /Code - /P 2854 0 R - /K [250] - /Pg 4840 0 R ->> -endobj - -2856 0 obj -<< - /Type /StructElem - /S /Code - /P 2854 0 R - /K [248] - /Pg 4840 0 R ->> -endobj - -2857 0 obj -<< - /Type /StructElem - /S /Formula - /P 2854 0 R - /K [246] - /Pg 4840 0 R ->> -endobj - -2858 0 obj -<< - /Type /StructElem - /S /Code - /P 2854 0 R - /K [244] - /Pg 4840 0 R ->> -endobj - -2859 0 obj -<< - /Type /StructElem - /S /Code - /P 2854 0 R - /K [242] - /Pg 4840 0 R ->> -endobj - -2860 0 obj -<< - /Type /StructElem - /S /Code - /P 2854 0 R - /K [239] - /Pg 4840 0 R ->> -endobj - -2861 0 obj -<< - /Type /StructElem - /S /Code - /P 2854 0 R - /K [237] - /Pg 4840 0 R ->> -endobj - -2862 0 obj -<< - /Type /StructElem - /S /Code - /P 2854 0 R - /K [235] - /Pg 4840 0 R ->> -endobj - -2863 0 obj -<< - /Type /StructElem - /S /Formula - /P 2854 0 R - /K [233] - /Pg 4840 0 R ->> -endobj - -2864 0 obj -<< - /Type /StructElem - /S /Code - /P 2854 0 R - /K [231] - /Pg 4840 0 R ->> -endobj - -2865 0 obj -<< - /Type /StructElem - /S /Formula - /P 2854 0 R - /K [229] - /Pg 4840 0 R ->> -endobj - -2866 0 obj -<< - /Type /StructElem - /S /Code - /P 2854 0 R - /K [227] - /Pg 4840 0 R ->> -endobj - -2867 0 obj -<< - /Type /StructElem - /S /H3 - /P 103 0 R - /T (Coherence) - /K [224 225] - /Pg 4840 0 R ->> -endobj - -2868 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [178 2876 0 R 182 183 2875 0 R 185 2874 0 R 203 204 2873 0 R 212 2872 0 R 214 2871 0 R 216 2870 0 R 218 2869 0 R 220 221 222 223] - /Pg 4840 0 R ->> -endobj - -2869 0 obj -<< - /Type /StructElem - /S /Code - /P 2868 0 R - /K [219] - /Pg 4840 0 R ->> -endobj - -2870 0 obj -<< - /Type /StructElem - /S /Code - /P 2868 0 R - /K [217] - /Pg 4840 0 R ->> -endobj - -2871 0 obj -<< - /Type /StructElem - /S /Formula - /P 2868 0 R - /K [215] - /Pg 4840 0 R ->> -endobj - -2872 0 obj -<< - /Type /StructElem - /S /Formula - /P 2868 0 R - /K [213] - /Pg 4840 0 R ->> -endobj - -2873 0 obj -<< - /Type /StructElem - /S /Formula - /P 2868 0 R - /K [205 206 207 208 209 210 211] - /Pg 4840 0 R ->> -endobj - -2874 0 obj -<< - /Type /StructElem - /S /Formula - /P 2868 0 R - /K [186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202] - /Pg 4840 0 R ->> -endobj - -2875 0 obj -<< - /Type /StructElem - /S /Em - /P 2868 0 R - /K [184] - /Pg 4840 0 R ->> -endobj - -2876 0 obj -<< - /Type /StructElem - /S /Formula - /P 2868 0 R - /K [179 180 181] - /Pg 4840 0 R ->> -endobj - -2877 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [170 2879 0 R 173 2878 0 R 175 176 177] - /Pg 4840 0 R ->> -endobj - -2878 0 obj -<< - /Type /StructElem - /S /Code - /P 2877 0 R - /K [174] - /Pg 4840 0 R ->> -endobj - -2879 0 obj -<< - /Type /StructElem - /S /Formula - /P 2877 0 R - /K [171 172] - /Pg 4840 0 R ->> -endobj - -2880 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /K [2887 0 R 2881 0 R] ->> -endobj - -2881 0 obj -<< - /Type /StructElem - /S /Div - /P 2880 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [2882 0 R] ->> -endobj - -2882 0 obj -<< - /Type /StructElem - /S /P - /P 2881 0 R - /K [2886 0 R 2885 0 R 2884 0 R 2883 0 R] ->> -endobj - -2883 0 obj -<< - /Type /StructElem - /S /Code - /P 2882 0 R - /K [168] - /Pg 4840 0 R ->> -endobj - -2884 0 obj -<< - /Type /StructElem - /S /Code - /P 2882 0 R - /K [167] - /Pg 4840 0 R ->> -endobj - -2885 0 obj -<< - /Type /StructElem - /S /Code - /P 2882 0 R - /K [166] - /Pg 4840 0 R ->> -endobj - -2886 0 obj -<< - /Type /StructElem - /S /Code - /P 2882 0 R - /K [165] - /Pg 4840 0 R ->> -endobj - -2887 0 obj -<< - /Type /StructElem - /S /Caption - /P 2880 0 R - /K [2888 0 R] ->> -endobj - -2888 0 obj -<< - /Type /StructElem - /S /Span - /P 2887 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [169] - /Pg 4840 0 R ->> -endobj - -2889 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [141 2895 0 R 143 144 145 2894 0 R 2893 0 R 151 152 2892 0 R 154 155 156 2891 0 R 158 159 2890 0 R 161 162 163 164] - /Pg 4840 0 R ->> -endobj - -2890 0 obj -<< - /Type /StructElem - /S /Link - /P 2889 0 R - /K [160 << - /Type /OBJR - /Pg 4840 0 R - /Obj 4839 0 R - >>] - /Pg 4840 0 R ->> -endobj - -2891 0 obj -<< - /Type /StructElem - /S /Code - /P 2889 0 R - /K [157] - /Pg 4840 0 R ->> -endobj - -2892 0 obj -<< - /Type /StructElem - /S /Link - /P 2889 0 R - /K [153 << - /Type /OBJR - /Pg 4840 0 R - /Obj 4838 0 R - >>] - /Pg 4840 0 R ->> -endobj - -2893 0 obj -<< - /Type /StructElem - /S /Formula - /P 2889 0 R - /K [147 148 149 150] - /Pg 4840 0 R ->> -endobj - -2894 0 obj -<< - /Type /StructElem - /S /Code - /P 2889 0 R - /K [146] - /Pg 4840 0 R ->> -endobj - -2895 0 obj -<< - /Type /StructElem - /S /Em - /P 2889 0 R - /K [142] - /Pg 4840 0 R ->> -endobj - -2896 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [124 2899 0 R 126 2898 0 R 128 129 130 2897 0 R 140] - /Pg 4840 0 R ->> -endobj - -2897 0 obj -<< - /Type /StructElem - /S /Formula - /P 2896 0 R - /K [131 132 133 134 135 136 137 138 139] - /Pg 4840 0 R ->> -endobj - -2898 0 obj -<< - /Type /StructElem - /S /Formula - /P 2896 0 R - /K [127] - /Pg 4840 0 R ->> -endobj - -2899 0 obj -<< - /Type /StructElem - /S /Formula - /P 2896 0 R - /K [125] - /Pg 4840 0 R ->> -endobj - -2900 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [2934 0 R 2901 0 R] ->> -endobj - -2901 0 obj -<< - /Type /StructElem - /S /Div - /P 2900 0 R - /K [2932 0 R 2930 0 R 2928 0 R 2926 0 R 2924 0 R 2922 0 R 2920 0 R 2918 0 R 2916 0 R 2914 0 R 2912 0 R 2910 0 R 2908 0 R 2902 0 R] ->> -endobj - -2902 0 obj -<< - /Type /StructElem - /S /Div - /P 2901 0 R - /K [2907 0 R 2906 0 R 2905 0 R 2904 0 R 2903 0 R] ->> -endobj - -2903 0 obj -<< - /Type /StructElem - /S /Formula - /P 2902 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [113 114 115 116 117 118 119 120 121 122 123] - /Pg 4840 0 R ->> -endobj - -2904 0 obj -<< - /Type /StructElem - /S /Formula - /P 2902 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112] - /Pg 4840 0 R ->> -endobj - -2905 0 obj -<< - /Type /StructElem - /S /Formula - /P 2902 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85] - /Pg 4840 0 R ->> -endobj - -2906 0 obj -<< - /Type /StructElem - /S /Formula - /P 2902 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [66 67] - /Pg 4840 0 R ->> -endobj - -2907 0 obj -<< - /Type /StructElem - /S /Formula - /P 2902 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [52 53 54 55 56 57 58 59 60 61 62 63 64 65] - /Pg 4840 0 R ->> -endobj - -2908 0 obj -<< - /Type /StructElem - /S /Div - /P 2901 0 R - /K [2909 0 R] ->> -endobj - -2909 0 obj -<< - /Type /StructElem - /S /Formula - /P 2908 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [51] - /Pg 4840 0 R ->> -endobj - -2910 0 obj -<< - /Type /StructElem - /S /Div - /P 2901 0 R - /K [2911 0 R] ->> -endobj - -2911 0 obj -<< - /Type /StructElem - /S /Formula - /P 2910 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [46 47 48 49 50] - /Pg 4840 0 R ->> -endobj - -2912 0 obj -<< - /Type /StructElem - /S /Div - /P 2901 0 R - /K [2913 0 R] ->> -endobj - -2913 0 obj -<< - /Type /StructElem - /S /Formula - /P 2912 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [45] - /Pg 4840 0 R ->> -endobj - -2914 0 obj -<< - /Type /StructElem - /S /Div - /P 2901 0 R - /K [2915 0 R] ->> -endobj - -2915 0 obj -<< - /Type /StructElem - /S /Formula - /P 2914 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [44] - /Pg 4840 0 R ->> -endobj - -2916 0 obj -<< - /Type /StructElem - /S /Div - /P 2901 0 R - /K [2917 0 R] ->> -endobj - -2917 0 obj -<< - /Type /StructElem - /S /Formula - /P 2916 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [43] - /Pg 4840 0 R ->> -endobj - -2918 0 obj -<< - /Type /StructElem - /S /Div - /P 2901 0 R - /K [2919 0 R] ->> -endobj - -2919 0 obj -<< - /Type /StructElem - /S /Formula - /P 2918 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [40 41 42] - /Pg 4840 0 R ->> -endobj - -2920 0 obj -<< - /Type /StructElem - /S /Div - /P 2901 0 R - /K [2921 0 R] ->> -endobj - -2921 0 obj -<< - /Type /StructElem - /S /Formula - /P 2920 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [37 38 39] - /Pg 4840 0 R ->> -endobj - -2922 0 obj -<< - /Type /StructElem - /S /Div - /P 2901 0 R - /K [2923 0 R] ->> -endobj - -2923 0 obj -<< - /Type /StructElem - /S /Formula - /P 2922 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [36] - /Pg 4840 0 R ->> -endobj - -2924 0 obj -<< - /Type /StructElem - /S /Div - /P 2901 0 R - /K [2925 0 R] ->> -endobj - -2925 0 obj -<< - /Type /StructElem - /S /Formula - /P 2924 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [34 35] - /Pg 4840 0 R ->> -endobj - -2926 0 obj -<< - /Type /StructElem - /S /Div - /P 2901 0 R - /K [2927 0 R] ->> -endobj - -2927 0 obj -<< - /Type /StructElem - /S /Formula - /P 2926 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [33] - /Pg 4840 0 R ->> -endobj - -2928 0 obj -<< - /Type /StructElem - /S /Div - /P 2901 0 R - /K [2929 0 R] ->> -endobj - -2929 0 obj -<< - /Type /StructElem - /S /Formula - /P 2928 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [30 31 32] - /Pg 4840 0 R ->> -endobj - -2930 0 obj -<< - /Type /StructElem - /S /Div - /P 2901 0 R - /K [2931 0 R] ->> -endobj - -2931 0 obj -<< - /Type /StructElem - /S /Formula - /P 2930 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [29] - /Pg 4840 0 R ->> -endobj - -2932 0 obj -<< - /Type /StructElem - /S /Div - /P 2901 0 R - /K [2933 0 R] ->> -endobj - -2933 0 obj -<< - /Type /StructElem - /S /Formula - /P 2932 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [26 27 28] - /Pg 4840 0 R ->> -endobj - -2934 0 obj -<< - /Type /StructElem - /S /P - /P 2900 0 R - /K [2936 0 R 21 2935 0 R 25] - /Pg 4840 0 R ->> -endobj - -2935 0 obj -<< - /Type /StructElem - /S /Formula - /P 2934 0 R - /K [22 23 24] - /Pg 4840 0 R ->> -endobj - -2936 0 obj -<< - /Type /StructElem - /S /Strong - /P 2934 0 R - /K [18 19 20] - /Pg 4840 0 R ->> -endobj - -2937 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [9 2939 0 R 13 2938 0 R 16 17] - /Pg 4840 0 R ->> -endobj - -2938 0 obj -<< - /Type /StructElem - /S /Formula - /P 2937 0 R - /K [14 15] - /Pg 4840 0 R ->> -endobj - -2939 0 obj -<< - /Type /StructElem - /S /Formula - /P 2937 0 R - /K [10 11 12] - /Pg 4840 0 R ->> -endobj - -2940 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [2968 0 R 2967 0 R 2964 0 R 2941 0 R] ->> -endobj - -2941 0 obj -<< - /Type /StructElem - /S /L - /P 2940 0 R - /A [<< - /O /List - /ListNumbering /Circle - >>] - /K [2960 0 R 2956 0 R 2951 0 R 2942 0 R] ->> -endobj - -2942 0 obj -<< - /Type /StructElem - /S /L - /P 2941 0 R - /A [<< - /O /List - /ListNumbering /Circle - >>] - /K [2947 0 R 2943 0 R] ->> -endobj - -2943 0 obj -<< - /Type /StructElem - /S /LI - /P 2942 0 R - /K [2946 0 R 2944 0 R] ->> -endobj - -2944 0 obj -<< - /Type /StructElem - /S /LBody - /P 2943 0 R - /K [2945 0 R 8] - /Pg 4840 0 R ->> -endobj - -2945 0 obj -<< - /Type /StructElem - /S /Formula - /P 2944 0 R - /K [4 5 6 7] - /Pg 4840 0 R ->> -endobj - -2946 0 obj -<< - /Type /StructElem - /S /Lbl - /P 2943 0 R - /K [3] - /Pg 4840 0 R ->> -endobj - -2947 0 obj -<< - /Type /StructElem - /S /LI - /P 2942 0 R - /K [2950 0 R 2948 0 R] ->> -endobj - -2948 0 obj -<< - /Type /StructElem - /S /LBody - /P 2947 0 R - /K [2949 0 R 2] - /Pg 4840 0 R ->> -endobj - -2949 0 obj -<< - /Type /StructElem - /S /Formula - /P 2948 0 R - /K [1] - /Pg 4840 0 R ->> -endobj - -2950 0 obj -<< - /Type /StructElem - /S /Lbl - /P 2947 0 R - /K [0] - /Pg 4840 0 R ->> -endobj - -2951 0 obj -<< - /Type /StructElem - /S /LI - /P 2941 0 R - /K [2955 0 R 2952 0 R] ->> -endobj - -2952 0 obj -<< - /Type /StructElem - /S /LBody - /P 2951 0 R - /K [2953 0 R] ->> -endobj - -2953 0 obj -<< - /Type /StructElem - /S /P - /P 2952 0 R - /K [2954 0 R 341] - /Pg 4836 0 R ->> -endobj - -2954 0 obj -<< - /Type /StructElem - /S /Formula - /P 2953 0 R - /K [340] - /Pg 4836 0 R ->> -endobj - -2955 0 obj -<< - /Type /StructElem - /S /Lbl - /P 2951 0 R - /K [339] - /Pg 4836 0 R ->> -endobj - -2956 0 obj -<< - /Type /StructElem - /S /LI - /P 2941 0 R - /K [2959 0 R 2957 0 R] ->> -endobj - -2957 0 obj -<< - /Type /StructElem - /S /LBody - /P 2956 0 R - /K [2958 0 R 338] - /Pg 4836 0 R ->> -endobj - -2958 0 obj -<< - /Type /StructElem - /S /Formula - /P 2957 0 R - /K [337] - /Pg 4836 0 R ->> -endobj - -2959 0 obj -<< - /Type /StructElem - /S /Lbl - /P 2956 0 R - /K [336] - /Pg 4836 0 R ->> -endobj - -2960 0 obj -<< - /Type /StructElem - /S /LI - /P 2941 0 R - /K [2963 0 R 2961 0 R] ->> -endobj - -2961 0 obj -<< - /Type /StructElem - /S /LBody - /P 2960 0 R - /K [2962 0 R 335] - /Pg 4836 0 R ->> -endobj - -2962 0 obj -<< - /Type /StructElem - /S /Formula - /P 2961 0 R - /K [334] - /Pg 4836 0 R ->> -endobj - -2963 0 obj -<< - /Type /StructElem - /S /Lbl - /P 2960 0 R - /K [333] - /Pg 4836 0 R ->> -endobj - -2964 0 obj -<< - /Type /StructElem - /S /P - /P 2940 0 R - /K [319 2966 0 R 324 2965 0 R 332] - /Pg 4836 0 R ->> -endobj - -2965 0 obj -<< - /Type /StructElem - /S /Formula - /P 2964 0 R - /K [325 326 327 328 329 330 331] - /Pg 4836 0 R ->> -endobj - -2966 0 obj -<< - /Type /StructElem - /S /Formula - /P 2964 0 R - /K [320 321 322 323] - /Pg 4836 0 R ->> -endobj - -2967 0 obj -<< - /Type /StructElem - /S /Formula - /P 2940 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318] - /Pg 4836 0 R ->> -endobj - -2968 0 obj -<< - /Type /StructElem - /S /P - /P 2940 0 R - /K [2971 0 R 229 2970 0 R 233 2969 0 R 238 239] - /Pg 4836 0 R ->> -endobj - -2969 0 obj -<< - /Type /StructElem - /S /Formula - /P 2968 0 R - /K [234 235 236 237] - /Pg 4836 0 R ->> -endobj - -2970 0 obj -<< - /Type /StructElem - /S /Formula - /P 2968 0 R - /K [230 231 232] - /Pg 4836 0 R ->> -endobj - -2971 0 obj -<< - /Type /StructElem - /S /Strong - /P 2968 0 R - /K [226 227 228] - /Pg 4836 0 R ->> -endobj - -2972 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [217 2975 0 R 219 2974 0 R 221 222 2973 0 R 224 225] - /Pg 4836 0 R ->> -endobj - -2973 0 obj -<< - /Type /StructElem - /S /Em - /P 2972 0 R - /K [223] - /Pg 4836 0 R ->> -endobj - -2974 0 obj -<< - /Type /StructElem - /S /Code - /P 2972 0 R - /K [220] - /Pg 4836 0 R ->> -endobj - -2975 0 obj -<< - /Type /StructElem - /S /Code - /P 2972 0 R - /K [218] - /Pg 4836 0 R ->> -endobj - -2976 0 obj -<< - /Type /StructElem - /S /H3 - /P 103 0 R - /T (Iteration) - /K [215 216] - /Pg 4836 0 R ->> -endobj - -2977 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [209 2979 0 R 211 212 2978 0 R 214] - /Pg 4836 0 R ->> -endobj - -2978 0 obj -<< - /Type /StructElem - /S /Link - /P 2977 0 R - /K [213 << - /Type /OBJR - /Pg 4836 0 R - /Obj 4835 0 R - >>] - /Pg 4836 0 R ->> -endobj - -2979 0 obj -<< - /Type /StructElem - /S /Formula - /P 2977 0 R - /K [210] - /Pg 4836 0 R ->> -endobj - -2980 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /K [3008 0 R 3006 0 R 3004 0 R 3002 0 R 3000 0 R 2998 0 R 2996 0 R 2994 0 R 2992 0 R 2990 0 R 2988 0 R 2986 0 R 2984 0 R 2981 0 R] ->> -endobj - -2981 0 obj -<< - /Type /StructElem - /S /Div - /P 2980 0 R - /K [2983 0 R 2982 0 R] ->> -endobj - -2982 0 obj -<< - /Type /StructElem - /S /Formula - /P 2981 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208] - /Pg 4836 0 R ->> -endobj - -2983 0 obj -<< - /Type /StructElem - /S /Formula - /P 2981 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [179 180 181 182 183 184 185 186 187 188 189 190] - /Pg 4836 0 R ->> -endobj - -2984 0 obj -<< - /Type /StructElem - /S /Div - /P 2980 0 R - /K [2985 0 R] ->> -endobj - -2985 0 obj -<< - /Type /StructElem - /S /Formula - /P 2984 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [178] - /Pg 4836 0 R ->> -endobj - -2986 0 obj -<< - /Type /StructElem - /S /Div - /P 2980 0 R - /K [2987 0 R] ->> -endobj - -2987 0 obj -<< - /Type /StructElem - /S /Formula - /P 2986 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [173 174 175 176 177] - /Pg 4836 0 R ->> -endobj - -2988 0 obj -<< - /Type /StructElem - /S /Div - /P 2980 0 R - /K [2989 0 R] ->> -endobj - -2989 0 obj -<< - /Type /StructElem - /S /Formula - /P 2988 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [172] - /Pg 4836 0 R ->> -endobj - -2990 0 obj -<< - /Type /StructElem - /S /Div - /P 2980 0 R - /K [2991 0 R] ->> -endobj - -2991 0 obj -<< - /Type /StructElem - /S /Formula - /P 2990 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [171] - /Pg 4836 0 R ->> -endobj - -2992 0 obj -<< - /Type /StructElem - /S /Div - /P 2980 0 R - /K [2993 0 R] ->> -endobj - -2993 0 obj -<< - /Type /StructElem - /S /Formula - /P 2992 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [170] - /Pg 4836 0 R ->> -endobj - -2994 0 obj -<< - /Type /StructElem - /S /Div - /P 2980 0 R - /K [2995 0 R] ->> -endobj - -2995 0 obj -<< - /Type /StructElem - /S /Formula - /P 2994 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [167 168 169] - /Pg 4836 0 R ->> -endobj - -2996 0 obj -<< - /Type /StructElem - /S /Div - /P 2980 0 R - /K [2997 0 R] ->> -endobj - -2997 0 obj -<< - /Type /StructElem - /S /Formula - /P 2996 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [164 165 166] - /Pg 4836 0 R ->> -endobj - -2998 0 obj -<< - /Type /StructElem - /S /Div - /P 2980 0 R - /K [2999 0 R] ->> -endobj - -2999 0 obj -<< - /Type /StructElem - /S /Formula - /P 2998 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [163] - /Pg 4836 0 R ->> -endobj - -3000 0 obj -<< - /Type /StructElem - /S /Div - /P 2980 0 R - /K [3001 0 R] ->> -endobj - -3001 0 obj -<< - /Type /StructElem - /S /Formula - /P 3000 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [161 162] - /Pg 4836 0 R ->> -endobj - -3002 0 obj -<< - /Type /StructElem - /S /Div - /P 2980 0 R - /K [3003 0 R] ->> -endobj - -3003 0 obj -<< - /Type /StructElem - /S /Formula - /P 3002 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [160] - /Pg 4836 0 R ->> -endobj - -3004 0 obj -<< - /Type /StructElem - /S /Div - /P 2980 0 R - /K [3005 0 R] ->> -endobj - -3005 0 obj -<< - /Type /StructElem - /S /Formula - /P 3004 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [158 159] - /Pg 4836 0 R ->> -endobj - -3006 0 obj -<< - /Type /StructElem - /S /Div - /P 2980 0 R - /K [3007 0 R] ->> -endobj - -3007 0 obj -<< - /Type /StructElem - /S /Formula - /P 3006 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [157] - /Pg 4836 0 R ->> -endobj - -3008 0 obj -<< - /Type /StructElem - /S /Div - /P 2980 0 R - /K [3009 0 R] ->> -endobj - -3009 0 obj -<< - /Type /StructElem - /S /Formula - /P 3008 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [154 155 156] - /Pg 4836 0 R ->> -endobj - -3010 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [132 3016 0 R 135 3015 0 R 137 138 3014 0 R 144 3013 0 R 146 147 3012 0 R 151 3011 0 R 153] - /Pg 4836 0 R ->> -endobj - -3011 0 obj -<< - /Type /StructElem - /S /Formula - /P 3010 0 R - /K [152] - /Pg 4836 0 R ->> -endobj - -3012 0 obj -<< - /Type /StructElem - /S /Formula - /P 3010 0 R - /K [148 149 150] - /Pg 4836 0 R ->> -endobj - -3013 0 obj -<< - /Type /StructElem - /S /Formula - /P 3010 0 R - /K [145] - /Pg 4836 0 R ->> -endobj - -3014 0 obj -<< - /Type /StructElem - /S /Formula - /P 3010 0 R - /K [139 140 141 142 143] - /Pg 4836 0 R ->> -endobj - -3015 0 obj -<< - /Type /StructElem - /S /Link - /P 3010 0 R - /K [136 << - /Type /OBJR - /Pg 4836 0 R - /Obj 4834 0 R - >>] - /Pg 4836 0 R ->> -endobj - -3016 0 obj -<< - /Type /StructElem - /S /Formula - /P 3010 0 R - /K [133 134] - /Pg 4836 0 R ->> -endobj - -3017 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [3024 0 R 3023 0 R 3018 0 R] ->> -endobj - -3018 0 obj -<< - /Type /StructElem - /S /P - /P 3017 0 R - /K [118 3022 0 R 120 121 3021 0 R 124 3020 0 R 128 3019 0 R 131] - /Pg 4836 0 R ->> -endobj - -3019 0 obj -<< - /Type /StructElem - /S /Formula - /P 3018 0 R - /K [129 130] - /Pg 4836 0 R ->> -endobj - -3020 0 obj -<< - /Type /StructElem - /S /Formula - /P 3018 0 R - /K [125 126 127] - /Pg 4836 0 R ->> -endobj - -3021 0 obj -<< - /Type /StructElem - /S /Formula - /P 3018 0 R - /K [122 123] - /Pg 4836 0 R ->> -endobj - -3022 0 obj -<< - /Type /StructElem - /S /Formula - /P 3018 0 R - /K [119] - /Pg 4836 0 R ->> -endobj - -3023 0 obj -<< - /Type /StructElem - /S /Formula - /P 3017 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117] - /Pg 4836 0 R ->> -endobj - -3024 0 obj -<< - /Type /StructElem - /S /P - /P 3017 0 R - /K [3031 0 R 51 3030 0 R 53 3029 0 R 67 3028 0 R 70 71 72 3027 0 R 74 3026 0 R 76 77 3025 0 R 79] - /Pg 4836 0 R ->> -endobj - -3025 0 obj -<< - /Type /StructElem - /S /Formula - /P 3024 0 R - /K [78] - /Pg 4836 0 R ->> -endobj - -3026 0 obj -<< - /Type /StructElem - /S /Formula - /P 3024 0 R - /K [75] - /Pg 4836 0 R ->> -endobj - -3027 0 obj -<< - /Type /StructElem - /S /Formula - /P 3024 0 R - /K [73] - /Pg 4836 0 R ->> -endobj - -3028 0 obj -<< - /Type /StructElem - /S /Formula - /P 3024 0 R - /K [68 69] - /Pg 4836 0 R ->> -endobj - -3029 0 obj -<< - /Type /StructElem - /S /Formula - /P 3024 0 R - /K [54 55 56 57 58 59 60 61 62 63 64 65 66] - /Pg 4836 0 R ->> -endobj - -3030 0 obj -<< - /Type /StructElem - /S /Em - /P 3024 0 R - /K [52] - /Pg 4836 0 R ->> -endobj - -3031 0 obj -<< - /Type /StructElem - /S /Strong - /P 3024 0 R - /K [48 49 50] - /Pg 4836 0 R ->> -endobj - -3032 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [29 3038 0 R 31 32 3037 0 R 34 35 3036 0 R 37 38 3035 0 R 40 41 42 43 3034 0 R 45 3033 0 R 47] - /Pg 4836 0 R ->> -endobj - -3033 0 obj -<< - /Type /StructElem - /S /Code - /P 3032 0 R - /K [46] - /Pg 4836 0 R ->> -endobj - -3034 0 obj -<< - /Type /StructElem - /S /Code - /P 3032 0 R - /K [44] - /Pg 4836 0 R ->> -endobj - -3035 0 obj -<< - /Type /StructElem - /S /Link - /P 3032 0 R - /K [39 << - /Type /OBJR - /Pg 4836 0 R - /Obj 4833 0 R - >>] - /Pg 4836 0 R ->> -endobj - -3036 0 obj -<< - /Type /StructElem - /S /Em - /P 3032 0 R - /K [36] - /Pg 4836 0 R ->> -endobj - -3037 0 obj -<< - /Type /StructElem - /S /Formula - /P 3032 0 R - /K [33] - /Pg 4836 0 R ->> -endobj - -3038 0 obj -<< - /Type /StructElem - /S /Em - /P 3032 0 R - /K [30] - /Pg 4836 0 R ->> -endobj - -3039 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [323 3051 0 R 325 326 3050 0 R 328 3049 0 R << - /Type /MCR - /MCID 1 - /Pg 4836 0 R - >> 3048 0 R << - /Type /MCR - /MCID 3 - /Pg 4836 0 R - >> 3047 0 R << - /Type /MCR - /MCID 6 - /Pg 4836 0 R - >> 3046 0 R << - /Type /MCR - /MCID 8 - /Pg 4836 0 R - >> 3045 0 R << - /Type /MCR - /MCID 10 - /Pg 4836 0 R - >> << - /Type /MCR - /MCID 11 - /Pg 4836 0 R - >> 3044 0 R << - /Type /MCR - /MCID 13 - /Pg 4836 0 R - >> 3043 0 R << - /Type /MCR - /MCID 20 - /Pg 4836 0 R - >> 3042 0 R << - /Type /MCR - /MCID 22 - /Pg 4836 0 R - >> << - /Type /MCR - /MCID 23 - /Pg 4836 0 R - >> 3041 0 R << - /Type /MCR - /MCID 25 - /Pg 4836 0 R - >> << - /Type /MCR - /MCID 26 - /Pg 4836 0 R - >> 3040 0 R << - /Type /MCR - /MCID 28 - /Pg 4836 0 R - >>] - /Pg 4829 0 R ->> -endobj - -3040 0 obj -<< - /Type /StructElem - /S /Em - /P 3039 0 R - /K [27] - /Pg 4836 0 R ->> -endobj - -3041 0 obj -<< - /Type /StructElem - /S /Formula - /P 3039 0 R - /K [24] - /Pg 4836 0 R ->> -endobj - -3042 0 obj -<< - /Type /StructElem - /S /Link - /P 3039 0 R - /K [21 << - /Type /OBJR - /Pg 4836 0 R - /Obj 4832 0 R - >>] - /Pg 4836 0 R ->> -endobj - -3043 0 obj -<< - /Type /StructElem - /S /Formula - /P 3039 0 R - /K [14 15 16 17 18 19] - /Pg 4836 0 R ->> -endobj - -3044 0 obj -<< - /Type /StructElem - /S /Formula - /P 3039 0 R - /K [12] - /Pg 4836 0 R ->> -endobj - -3045 0 obj -<< - /Type /StructElem - /S /Em - /P 3039 0 R - /K [9] - /Pg 4836 0 R ->> -endobj - -3046 0 obj -<< - /Type /StructElem - /S /Formula - /P 3039 0 R - /K [7] - /Pg 4836 0 R ->> -endobj - -3047 0 obj -<< - /Type /StructElem - /S /Formula - /P 3039 0 R - /K [4 5] - /Pg 4836 0 R ->> -endobj - -3048 0 obj -<< - /Type /StructElem - /S /Formula - /P 3039 0 R - /K [2] - /Pg 4836 0 R ->> -endobj - -3049 0 obj -<< - /Type /StructElem - /S /Link - /P 3039 0 R - /K [329 << - /Type /OBJR - /Pg 4829 0 R - /Obj 4827 0 R - >> 330 << - /Type /OBJR - /Pg 4829 0 R - /Obj 4828 0 R - >> << - /Type /MCR - /MCID 0 - /Pg 4836 0 R - >> << - /Type /OBJR - /Pg 4836 0 R - /Obj 4831 0 R - >>] - /Pg 4829 0 R ->> -endobj - -3050 0 obj -<< - /Type /StructElem - /S /Formula - /P 3039 0 R - /K [327] - /Pg 4829 0 R ->> -endobj - -3051 0 obj -<< - /Type /StructElem - /S /Code - /P 3039 0 R - /K [324] - /Pg 4829 0 R ->> -endobj - -3052 0 obj -<< - /Type /StructElem - /S /H3 - /P 103 0 R - /T (Idempotent Recovery) - /K [321 322] - /Pg 4829 0 R ->> -endobj - -3053 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /K [3060 0 R 3054 0 R] ->> -endobj - -3054 0 obj -<< - /Type /StructElem - /S /Div - /P 3053 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [3055 0 R] ->> -endobj - -3055 0 obj -<< - /Type /StructElem - /S /P - /P 3054 0 R - /K [3059 0 R 3058 0 R 3057 0 R 3056 0 R] ->> -endobj - -3056 0 obj -<< - /Type /StructElem - /S /Code - /P 3055 0 R - /K [319] - /Pg 4829 0 R ->> -endobj - -3057 0 obj -<< - /Type /StructElem - /S /Code - /P 3055 0 R - /K [318] - /Pg 4829 0 R ->> -endobj - -3058 0 obj -<< - /Type /StructElem - /S /Code - /P 3055 0 R - /K [317] - /Pg 4829 0 R ->> -endobj - -3059 0 obj -<< - /Type /StructElem - /S /Code - /P 3055 0 R - /K [316] - /Pg 4829 0 R ->> -endobj - -3060 0 obj -<< - /Type /StructElem - /S /Caption - /P 3053 0 R - /K [3061 0 R] ->> -endobj - -3061 0 obj -<< - /Type /StructElem - /S /Span - /P 3060 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [320] - /Pg 4829 0 R ->> -endobj - -3062 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [284 3072 0 R 286 287 288 3071 0 R 290 291 292 3070 0 R 296 3069 0 R 298 3068 0 R 300 301 3067 0 R 303 3066 0 R 305 306 3065 0 R 308 3064 0 R 310 311 312 3063 0 R 314 315] - /Pg 4829 0 R ->> -endobj - -3063 0 obj -<< - /Type /StructElem - /S /Link - /P 3062 0 R - /K [313 << - /Type /OBJR - /Pg 4829 0 R - /Obj 4826 0 R - >>] - /Pg 4829 0 R ->> -endobj - -3064 0 obj -<< - /Type /StructElem - /S /Code - /P 3062 0 R - /K [309] - /Pg 4829 0 R ->> -endobj - -3065 0 obj -<< - /Type /StructElem - /S /Formula - /P 3062 0 R - /K [307] - /Pg 4829 0 R ->> -endobj - -3066 0 obj -<< - /Type /StructElem - /S /Code - /P 3062 0 R - /K [304] - /Pg 4829 0 R ->> -endobj - -3067 0 obj -<< - /Type /StructElem - /S /Em - /P 3062 0 R - /K [302] - /Pg 4829 0 R ->> -endobj - -3068 0 obj -<< - /Type /StructElem - /S /Code - /P 3062 0 R - /K [299] - /Pg 4829 0 R ->> -endobj - -3069 0 obj -<< - /Type /StructElem - /S /Code - /P 3062 0 R - /K [297] - /Pg 4829 0 R ->> -endobj - -3070 0 obj -<< - /Type /StructElem - /S /Formula - /P 3062 0 R - /K [293 294 295] - /Pg 4829 0 R ->> -endobj - -3071 0 obj -<< - /Type /StructElem - /S /Em - /P 3062 0 R - /K [289] - /Pg 4829 0 R ->> -endobj - -3072 0 obj -<< - /Type /StructElem - /S /Em - /P 3062 0 R - /K [285] - /Pg 4829 0 R ->> -endobj - -3073 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [3086 0 R 3085 0 R 3083 0 R 3074 0 R] ->> -endobj - -3074 0 obj -<< - /Type /StructElem - /S /L - /P 3073 0 R - /A [<< - /O /List - /ListNumbering /Circle - >>] - /K [3079 0 R 3075 0 R] ->> -endobj - -3075 0 obj -<< - /Type /StructElem - /S /LI - /P 3074 0 R - /K [3078 0 R 3076 0 R] ->> -endobj - -3076 0 obj -<< - /Type /StructElem - /S /LBody - /P 3075 0 R - /K [3077 0 R 283] - /Pg 4829 0 R ->> -endobj - -3077 0 obj -<< - /Type /StructElem - /S /Formula - /P 3076 0 R - /K [279 280 281 282] - /Pg 4829 0 R ->> -endobj - -3078 0 obj -<< - /Type /StructElem - /S /Lbl - /P 3075 0 R - /K [278] - /Pg 4829 0 R ->> -endobj - -3079 0 obj -<< - /Type /StructElem - /S /LI - /P 3074 0 R - /K [3082 0 R 3080 0 R] ->> -endobj - -3080 0 obj -<< - /Type /StructElem - /S /LBody - /P 3079 0 R - /K [3081 0 R 275 276 277] - /Pg 4829 0 R ->> -endobj - -3081 0 obj -<< - /Type /StructElem - /S /Formula - /P 3080 0 R - /K [271 272 273 274] - /Pg 4829 0 R ->> -endobj - -3082 0 obj -<< - /Type /StructElem - /S /Lbl - /P 3079 0 R - /K [270] - /Pg 4829 0 R ->> -endobj - -3083 0 obj -<< - /Type /StructElem - /S /P - /P 3073 0 R - /K [263 3084 0 R 269] - /Pg 4829 0 R ->> -endobj - -3084 0 obj -<< - /Type /StructElem - /S /Formula - /P 3083 0 R - /K [264 265 266 267 268] - /Pg 4829 0 R ->> -endobj - -3085 0 obj -<< - /Type /StructElem - /S /Formula - /P 3073 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [254 255 256 257 258 259 260 261 262] - /Pg 4829 0 R ->> -endobj - -3086 0 obj -<< - /Type /StructElem - /S /P - /P 3073 0 R - /K [3089 0 R 249 3088 0 R 251 3087 0 R 253] - /Pg 4829 0 R ->> -endobj - -3087 0 obj -<< - /Type /StructElem - /S /Formula - /P 3086 0 R - /K [252] - /Pg 4829 0 R ->> -endobj - -3088 0 obj -<< - /Type /StructElem - /S /Em - /P 3086 0 R - /K [250] - /Pg 4829 0 R ->> -endobj - -3089 0 obj -<< - /Type /StructElem - /S /Strong - /P 3086 0 R - /K [246 247 248] - /Pg 4829 0 R ->> -endobj - -3090 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [236 237 238 3093 0 R 240 3092 0 R 242 243 3091 0 R 245] - /Pg 4829 0 R ->> -endobj - -3091 0 obj -<< - /Type /StructElem - /S /Link - /P 3090 0 R - /K [244 << - /Type /OBJR - /Pg 4829 0 R - /Obj 4825 0 R - >>] - /Pg 4829 0 R ->> -endobj - -3092 0 obj -<< - /Type /StructElem - /S /Formula - /P 3090 0 R - /K [241] - /Pg 4829 0 R ->> -endobj - -3093 0 obj -<< - /Type /StructElem - /S /Em - /P 3090 0 R - /K [239] - /Pg 4829 0 R ->> -endobj - -3094 0 obj -<< - /Type /StructElem - /S /H2 - /P 103 0 R - /T (Component Lifecycle) - /K [234 235] - /Pg 4829 0 R ->> -endobj - -3095 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [198 3101 0 R 200 3100 0 R 202 3099 0 R 219 3098 0 R 221 222 223 3097 0 R 228 229 230 231 3096 0 R 233] - /Pg 4829 0 R ->> -endobj - -3096 0 obj -<< - /Type /StructElem - /S /Link - /P 3095 0 R - /K [232 << - /Type /OBJR - /Pg 4829 0 R - /Obj 4824 0 R - >>] - /Pg 4829 0 R ->> -endobj - -3097 0 obj -<< - /Type /StructElem - /S /Formula - /P 3095 0 R - /K [224 225 226 227] - /Pg 4829 0 R ->> -endobj - -3098 0 obj -<< - /Type /StructElem - /S /Formula - /P 3095 0 R - /K [220] - /Pg 4829 0 R ->> -endobj - -3099 0 obj -<< - /Type /StructElem - /S /Formula - /P 3095 0 R - /K [203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218] - /Pg 4829 0 R ->> -endobj - -3100 0 obj -<< - /Type /StructElem - /S /Formula - /P 3095 0 R - /K [201] - /Pg 4829 0 R ->> -endobj - -3101 0 obj -<< - /Type /StructElem - /S /Formula - /P 3095 0 R - /K [199] - /Pg 4829 0 R ->> -endobj - -3102 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [3188 0 R 3103 0 R] ->> -endobj - -3103 0 obj -<< - /Type /StructElem - /S /Div - /P 3102 0 R - /K [3186 0 R 3184 0 R 3182 0 R 3180 0 R 3178 0 R 3176 0 R 3174 0 R 3172 0 R 3170 0 R 3168 0 R 3166 0 R 3164 0 R 3162 0 R 3160 0 R 3158 0 R 3156 0 R 3154 0 R 3152 0 R 3150 0 R 3148 0 R 3146 0 R 3144 0 R 3142 0 R 3140 0 R 3138 0 R 3136 0 R 3134 0 R 3132 0 R 3130 0 R 3128 0 R 3126 0 R 3124 0 R 3122 0 R 3120 0 R 3118 0 R 3116 0 R 3114 0 R 3112 0 R 3110 0 R 3108 0 R 3106 0 R 3104 0 R] ->> -endobj - -3104 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3105 0 R] ->> -endobj - -3105 0 obj -<< - /Type /StructElem - /S /Formula - /P 3104 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197] - /Pg 4829 0 R ->> -endobj - -3106 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3107 0 R] ->> -endobj - -3107 0 obj -<< - /Type /StructElem - /S /Formula - /P 3106 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [154] - /Pg 4829 0 R ->> -endobj - -3108 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3109 0 R] ->> -endobj - -3109 0 obj -<< - /Type /StructElem - /S /Formula - /P 3108 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [149 150 151 152 153] - /Pg 4829 0 R ->> -endobj - -3110 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3111 0 R] ->> -endobj - -3111 0 obj -<< - /Type /StructElem - /S /Formula - /P 3110 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [148] - /Pg 4829 0 R ->> -endobj - -3112 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3113 0 R] ->> -endobj - -3113 0 obj -<< - /Type /StructElem - /S /Formula - /P 3112 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [143 144 145 146 147] - /Pg 4829 0 R ->> -endobj - -3114 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3115 0 R] ->> -endobj - -3115 0 obj -<< - /Type /StructElem - /S /Formula - /P 3114 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [142] - /Pg 4829 0 R ->> -endobj - -3116 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3117 0 R] ->> -endobj - -3117 0 obj -<< - /Type /StructElem - /S /Formula - /P 3116 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [141] - /Pg 4829 0 R ->> -endobj - -3118 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3119 0 R] ->> -endobj - -3119 0 obj -<< - /Type /StructElem - /S /Formula - /P 3118 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [131 132 133 134 135 136 137 138 139 140] - /Pg 4829 0 R ->> -endobj - -3120 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3121 0 R] ->> -endobj - -3121 0 obj -<< - /Type /StructElem - /S /Formula - /P 3120 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [130] - /Pg 4829 0 R ->> -endobj - -3122 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3123 0 R] ->> -endobj - -3123 0 obj -<< - /Type /StructElem - /S /Formula - /P 3122 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [128 129] - /Pg 4829 0 R ->> -endobj - -3124 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3125 0 R] ->> -endobj - -3125 0 obj -<< - /Type /StructElem - /S /Formula - /P 3124 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [127] - /Pg 4829 0 R ->> -endobj - -3126 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3127 0 R] ->> -endobj - -3127 0 obj -<< - /Type /StructElem - /S /Formula - /P 3126 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [119 120 121 122 123 124 125 126] - /Pg 4829 0 R ->> -endobj - -3128 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3129 0 R] ->> -endobj - -3129 0 obj -<< - /Type /StructElem - /S /Formula - /P 3128 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [118] - /Pg 4829 0 R ->> -endobj - -3130 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3131 0 R] ->> -endobj - -3131 0 obj -<< - /Type /StructElem - /S /Formula - /P 3130 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [117] - /Pg 4829 0 R ->> -endobj - -3132 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3133 0 R] ->> -endobj - -3133 0 obj -<< - /Type /StructElem - /S /Formula - /P 3132 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116] - /Pg 4829 0 R ->> -endobj - -3134 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3135 0 R] ->> -endobj - -3135 0 obj -<< - /Type /StructElem - /S /Formula - /P 3134 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [85] - /Pg 4829 0 R ->> -endobj - -3136 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3137 0 R] ->> -endobj - -3137 0 obj -<< - /Type /StructElem - /S /Formula - /P 3136 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [80 81 82 83 84] - /Pg 4829 0 R ->> -endobj - -3138 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3139 0 R] ->> -endobj - -3139 0 obj -<< - /Type /StructElem - /S /Formula - /P 3138 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [79] - /Pg 4829 0 R ->> -endobj - -3140 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3141 0 R] ->> -endobj - -3141 0 obj -<< - /Type /StructElem - /S /Formula - /P 3140 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [74 75 76 77 78] - /Pg 4829 0 R ->> -endobj - -3142 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3143 0 R] ->> -endobj - -3143 0 obj -<< - /Type /StructElem - /S /Formula - /P 3142 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [73] - /Pg 4829 0 R ->> -endobj - -3144 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3145 0 R] ->> -endobj - -3145 0 obj -<< - /Type /StructElem - /S /Formula - /P 3144 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [72] - /Pg 4829 0 R ->> -endobj - -3146 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3147 0 R] ->> -endobj - -3147 0 obj -<< - /Type /StructElem - /S /Formula - /P 3146 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [62 63 64 65 66 67 68 69 70 71] - /Pg 4829 0 R ->> -endobj - -3148 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3149 0 R] ->> -endobj - -3149 0 obj -<< - /Type /StructElem - /S /Formula - /P 3148 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [61] - /Pg 4829 0 R ->> -endobj - -3150 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3151 0 R] ->> -endobj - -3151 0 obj -<< - /Type /StructElem - /S /Formula - /P 3150 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [59 60] - /Pg 4829 0 R ->> -endobj - -3152 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3153 0 R] ->> -endobj - -3153 0 obj -<< - /Type /StructElem - /S /Formula - /P 3152 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [58] - /Pg 4829 0 R ->> -endobj - -3154 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3155 0 R] ->> -endobj - -3155 0 obj -<< - /Type /StructElem - /S /Formula - /P 3154 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [45 46 47 48 49 50 51 52 53 54 55 56 57] - /Pg 4829 0 R ->> -endobj - -3156 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3157 0 R] ->> -endobj - -3157 0 obj -<< - /Type /StructElem - /S /Formula - /P 3156 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [44] - /Pg 4829 0 R ->> -endobj - -3158 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3159 0 R] ->> -endobj - -3159 0 obj -<< - /Type /StructElem - /S /Formula - /P 3158 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [43] - /Pg 4829 0 R ->> -endobj - -3160 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3161 0 R] ->> -endobj - -3161 0 obj -<< - /Type /StructElem - /S /Formula - /P 3160 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [30 31 32 33 34 35 36 37 38 39 40 41 42] - /Pg 4829 0 R ->> -endobj - -3162 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3163 0 R] ->> -endobj - -3163 0 obj -<< - /Type /StructElem - /S /Formula - /P 3162 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [29] - /Pg 4829 0 R ->> -endobj - -3164 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3165 0 R] ->> -endobj - -3165 0 obj -<< - /Type /StructElem - /S /Formula - /P 3164 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [24 25 26 27 28] - /Pg 4829 0 R ->> -endobj - -3166 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3167 0 R] ->> -endobj - -3167 0 obj -<< - /Type /StructElem - /S /Formula - /P 3166 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [23] - /Pg 4829 0 R ->> -endobj - -3168 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3169 0 R] ->> -endobj - -3169 0 obj -<< - /Type /StructElem - /S /Formula - /P 3168 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [18 19 20 21 22] - /Pg 4829 0 R ->> -endobj - -3170 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3171 0 R] ->> -endobj - -3171 0 obj -<< - /Type /StructElem - /S /Formula - /P 3170 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [17] - /Pg 4829 0 R ->> -endobj - -3172 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3173 0 R] ->> -endobj - -3173 0 obj -<< - /Type /StructElem - /S /Formula - /P 3172 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [16] - /Pg 4829 0 R ->> -endobj - -3174 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3175 0 R] ->> -endobj - -3175 0 obj -<< - /Type /StructElem - /S /Formula - /P 3174 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [14 15] - /Pg 4829 0 R ->> -endobj - -3176 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3177 0 R] ->> -endobj - -3177 0 obj -<< - /Type /StructElem - /S /Formula - /P 3176 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [13] - /Pg 4829 0 R ->> -endobj - -3178 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3179 0 R] ->> -endobj - -3179 0 obj -<< - /Type /StructElem - /S /Formula - /P 3178 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [11 12] - /Pg 4829 0 R ->> -endobj - -3180 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3181 0 R] ->> -endobj - -3181 0 obj -<< - /Type /StructElem - /S /Formula - /P 3180 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [10] - /Pg 4829 0 R ->> -endobj - -3182 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3183 0 R] ->> -endobj - -3183 0 obj -<< - /Type /StructElem - /S /Formula - /P 3182 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [2 3 4 5 6 7 8 9] - /Pg 4829 0 R ->> -endobj - -3184 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3185 0 R] ->> -endobj - -3185 0 obj -<< - /Type /StructElem - /S /Formula - /P 3184 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [1] - /Pg 4829 0 R ->> -endobj - -3186 0 obj -<< - /Type /StructElem - /S /Div - /P 3103 0 R - /K [3187 0 R] ->> -endobj - -3187 0 obj -<< - /Type /StructElem - /S /Formula - /P 3186 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [0] - /Pg 4829 0 R ->> -endobj - -3188 0 obj -<< - /Type /StructElem - /S /P - /P 3102 0 R - /K [3193 0 R 400 3192 0 R 402 3191 0 R 404 3190 0 R 406 3189 0 R 409] - /Pg 4822 0 R ->> -endobj - -3189 0 obj -<< - /Type /StructElem - /S /Formula - /P 3188 0 R - /K [407 408] - /Pg 4822 0 R ->> -endobj - -3190 0 obj -<< - /Type /StructElem - /S /Formula - /P 3188 0 R - /K [405] - /Pg 4822 0 R ->> -endobj - -3191 0 obj -<< - /Type /StructElem - /S /Formula - /P 3188 0 R - /K [403] - /Pg 4822 0 R ->> -endobj - -3192 0 obj -<< - /Type /StructElem - /S /Formula - /P 3188 0 R - /K [401] - /Pg 4822 0 R ->> -endobj - -3193 0 obj -<< - /Type /StructElem - /S /Strong - /P 3188 0 R - /K [397 398 399] - /Pg 4822 0 R ->> -endobj - -3194 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [3214 0 R 3213 0 R 3195 0 R] ->> -endobj - -3195 0 obj -<< - /Type /StructElem - /S /P - /P 3194 0 R - /K [331 3212 0 R 334 3211 0 R 340 3210 0 R 342 3209 0 R 344 345 3208 0 R 348 3207 0 R 350 3206 0 R 352 3205 0 R 354 3204 0 R 357 3203 0 R 360 3202 0 R 365 3201 0 R 367 368 3200 0 R 373 3199 0 R 378 379 3198 0 R 390 3197 0 R 393 3196 0 R 396] - /Pg 4822 0 R ->> -endobj - -3196 0 obj -<< - /Type /StructElem - /S /Formula - /P 3195 0 R - /K [394 395] - /Pg 4822 0 R ->> -endobj - -3197 0 obj -<< - /Type /StructElem - /S /Formula - /P 3195 0 R - /K [391 392] - /Pg 4822 0 R ->> -endobj - -3198 0 obj -<< - /Type /StructElem - /S /Formula - /P 3195 0 R - /K [380 381 382 383 384 385 386 387 388 389] - /Pg 4822 0 R ->> -endobj - -3199 0 obj -<< - /Type /StructElem - /S /Formula - /P 3195 0 R - /K [374 375 376 377] - /Pg 4822 0 R ->> -endobj - -3200 0 obj -<< - /Type /StructElem - /S /Formula - /P 3195 0 R - /K [369 370 371 372] - /Pg 4822 0 R ->> -endobj - -3201 0 obj -<< - /Type /StructElem - /S /Em - /P 3195 0 R - /K [366] - /Pg 4822 0 R ->> -endobj - -3202 0 obj -<< - /Type /StructElem - /S /Formula - /P 3195 0 R - /K [361 362 363 364] - /Pg 4822 0 R ->> -endobj - -3203 0 obj -<< - /Type /StructElem - /S /Formula - /P 3195 0 R - /K [358 359] - /Pg 4822 0 R ->> -endobj - -3204 0 obj -<< - /Type /StructElem - /S /Formula - /P 3195 0 R - /K [355 356] - /Pg 4822 0 R ->> -endobj - -3205 0 obj -<< - /Type /StructElem - /S /Em - /P 3195 0 R - /K [353] - /Pg 4822 0 R ->> -endobj - -3206 0 obj -<< - /Type /StructElem - /S /Formula - /P 3195 0 R - /K [351] - /Pg 4822 0 R ->> -endobj - -3207 0 obj -<< - /Type /StructElem - /S /Formula - /P 3195 0 R - /K [349] - /Pg 4822 0 R ->> -endobj - -3208 0 obj -<< - /Type /StructElem - /S /Formula - /P 3195 0 R - /K [346 347] - /Pg 4822 0 R ->> -endobj - -3209 0 obj -<< - /Type /StructElem - /S /Em - /P 3195 0 R - /K [343] - /Pg 4822 0 R ->> -endobj - -3210 0 obj -<< - /Type /StructElem - /S /Formula - /P 3195 0 R - /K [341] - /Pg 4822 0 R ->> -endobj - -3211 0 obj -<< - /Type /StructElem - /S /Formula - /P 3195 0 R - /K [335 336 337 338 339] - /Pg 4822 0 R ->> -endobj - -3212 0 obj -<< - /Type /StructElem - /S /Formula - /P 3195 0 R - /K [332 333] - /Pg 4822 0 R ->> -endobj - -3213 0 obj -<< - /Type /StructElem - /S /Formula - /P 3194 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330] - /Pg 4822 0 R ->> -endobj - -3214 0 obj -<< - /Type /StructElem - /S /P - /P 3194 0 R - /K [3215 0 R 289] - /Pg 4822 0 R ->> -endobj - -3215 0 obj -<< - /Type /StructElem - /S /Strong - /P 3214 0 R - /K [286 287 288] - /Pg 4822 0 R ->> -endobj - -3216 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [3218 0 R 280 3217 0 R 282 283 284 285] - /Pg 4822 0 R ->> -endobj - -3217 0 obj -<< - /Type /StructElem - /S /Em - /P 3216 0 R - /K [281] - /Pg 4822 0 R ->> -endobj - -3218 0 obj -<< - /Type /StructElem - /S /Strong - /P 3216 0 R - /K [279] - /Pg 4822 0 R ->> -endobj - -3219 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [269 270 271 272 273 274 3220 0 R 278] - /Pg 4822 0 R ->> -endobj - -3220 0 obj -<< - /Type /StructElem - /S /Formula - /P 3219 0 R - /K [275 276 277] - /Pg 4822 0 R ->> -endobj - -3221 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [3307 0 R 3222 0 R] ->> -endobj - -3222 0 obj -<< - /Type /StructElem - /S /Div - /P 3221 0 R - /K [3305 0 R 3303 0 R 3301 0 R 3299 0 R 3297 0 R 3295 0 R 3293 0 R 3291 0 R 3289 0 R 3287 0 R 3285 0 R 3283 0 R 3281 0 R 3279 0 R 3277 0 R 3275 0 R 3273 0 R 3271 0 R 3269 0 R 3267 0 R 3265 0 R 3263 0 R 3261 0 R 3259 0 R 3257 0 R 3255 0 R 3253 0 R 3251 0 R 3249 0 R 3247 0 R 3245 0 R 3243 0 R 3241 0 R 3239 0 R 3237 0 R 3235 0 R 3233 0 R 3231 0 R 3229 0 R 3227 0 R 3225 0 R 3223 0 R] ->> -endobj - -3223 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3224 0 R] ->> -endobj - -3224 0 obj -<< - /Type /StructElem - /S /Formula - /P 3223 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268] - /Pg 4822 0 R ->> -endobj - -3225 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3226 0 R] ->> -endobj - -3226 0 obj -<< - /Type /StructElem - /S /Formula - /P 3225 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [237] - /Pg 4822 0 R ->> -endobj - -3227 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3228 0 R] ->> -endobj - -3228 0 obj -<< - /Type /StructElem - /S /Formula - /P 3227 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [232 233 234 235 236] - /Pg 4822 0 R ->> -endobj - -3229 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3230 0 R] ->> -endobj - -3230 0 obj -<< - /Type /StructElem - /S /Formula - /P 3229 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [231] - /Pg 4822 0 R ->> -endobj - -3231 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3232 0 R] ->> -endobj - -3232 0 obj -<< - /Type /StructElem - /S /Formula - /P 3231 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [226 227 228 229 230] - /Pg 4822 0 R ->> -endobj - -3233 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3234 0 R] ->> -endobj - -3234 0 obj -<< - /Type /StructElem - /S /Formula - /P 3233 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [225] - /Pg 4822 0 R ->> -endobj - -3235 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3236 0 R] ->> -endobj - -3236 0 obj -<< - /Type /StructElem - /S /Formula - /P 3235 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [224] - /Pg 4822 0 R ->> -endobj - -3237 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3238 0 R] ->> -endobj - -3238 0 obj -<< - /Type /StructElem - /S /Formula - /P 3237 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [214 215 216 217 218 219 220 221 222 223] - /Pg 4822 0 R ->> -endobj - -3239 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3240 0 R] ->> -endobj - -3240 0 obj -<< - /Type /StructElem - /S /Formula - /P 3239 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [213] - /Pg 4822 0 R ->> -endobj - -3241 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3242 0 R] ->> -endobj - -3242 0 obj -<< - /Type /StructElem - /S /Formula - /P 3241 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [211 212] - /Pg 4822 0 R ->> -endobj - -3243 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3244 0 R] ->> -endobj - -3244 0 obj -<< - /Type /StructElem - /S /Formula - /P 3243 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [210] - /Pg 4822 0 R ->> -endobj - -3245 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3246 0 R] ->> -endobj - -3246 0 obj -<< - /Type /StructElem - /S /Formula - /P 3245 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [207 208 209] - /Pg 4822 0 R ->> -endobj - -3247 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3248 0 R] ->> -endobj - -3248 0 obj -<< - /Type /StructElem - /S /Formula - /P 3247 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [206] - /Pg 4822 0 R ->> -endobj - -3249 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3250 0 R] ->> -endobj - -3250 0 obj -<< - /Type /StructElem - /S /Formula - /P 3249 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [205] - /Pg 4822 0 R ->> -endobj - -3251 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3252 0 R] ->> -endobj - -3252 0 obj -<< - /Type /StructElem - /S /Formula - /P 3251 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204] - /Pg 4822 0 R ->> -endobj - -3253 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3254 0 R] ->> -endobj - -3254 0 obj -<< - /Type /StructElem - /S /Formula - /P 3253 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [166] - /Pg 4822 0 R ->> -endobj - -3255 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3256 0 R] ->> -endobj - -3256 0 obj -<< - /Type /StructElem - /S /Formula - /P 3255 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [161 162 163 164 165] - /Pg 4822 0 R ->> -endobj - -3257 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3258 0 R] ->> -endobj - -3258 0 obj -<< - /Type /StructElem - /S /Formula - /P 3257 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [160] - /Pg 4822 0 R ->> -endobj - -3259 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3260 0 R] ->> -endobj - -3260 0 obj -<< - /Type /StructElem - /S /Formula - /P 3259 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [155 156 157 158 159] - /Pg 4822 0 R ->> -endobj - -3261 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3262 0 R] ->> -endobj - -3262 0 obj -<< - /Type /StructElem - /S /Formula - /P 3261 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [154] - /Pg 4822 0 R ->> -endobj - -3263 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3264 0 R] ->> -endobj - -3264 0 obj -<< - /Type /StructElem - /S /Formula - /P 3263 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [153] - /Pg 4822 0 R ->> -endobj - -3265 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3266 0 R] ->> -endobj - -3266 0 obj -<< - /Type /StructElem - /S /Formula - /P 3265 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [143 144 145 146 147 148 149 150 151 152] - /Pg 4822 0 R ->> -endobj - -3267 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3268 0 R] ->> -endobj - -3268 0 obj -<< - /Type /StructElem - /S /Formula - /P 3267 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [142] - /Pg 4822 0 R ->> -endobj - -3269 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3270 0 R] ->> -endobj - -3270 0 obj -<< - /Type /StructElem - /S /Formula - /P 3269 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [140 141] - /Pg 4822 0 R ->> -endobj - -3271 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3272 0 R] ->> -endobj - -3272 0 obj -<< - /Type /StructElem - /S /Formula - /P 3271 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [139] - /Pg 4822 0 R ->> -endobj - -3273 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3274 0 R] ->> -endobj - -3274 0 obj -<< - /Type /StructElem - /S /Formula - /P 3273 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [128 129 130 131 132 133 134 135 136 137 138] - /Pg 4822 0 R ->> -endobj - -3275 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3276 0 R] ->> -endobj - -3276 0 obj -<< - /Type /StructElem - /S /Formula - /P 3275 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [127] - /Pg 4822 0 R ->> -endobj - -3277 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3278 0 R] ->> -endobj - -3278 0 obj -<< - /Type /StructElem - /S /Formula - /P 3277 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [126] - /Pg 4822 0 R ->> -endobj - -3279 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3280 0 R] ->> -endobj - -3280 0 obj -<< - /Type /StructElem - /S /Formula - /P 3279 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [119 120 121 122 123 124 125] - /Pg 4822 0 R ->> -endobj - -3281 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3282 0 R] ->> -endobj - -3282 0 obj -<< - /Type /StructElem - /S /Formula - /P 3281 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [118] - /Pg 4822 0 R ->> -endobj - -3283 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3284 0 R] ->> -endobj - -3284 0 obj -<< - /Type /StructElem - /S /Formula - /P 3283 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [113 114 115 116 117] - /Pg 4822 0 R ->> -endobj - -3285 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3286 0 R] ->> -endobj - -3286 0 obj -<< - /Type /StructElem - /S /Formula - /P 3285 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [112] - /Pg 4822 0 R ->> -endobj - -3287 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3288 0 R] ->> -endobj - -3288 0 obj -<< - /Type /StructElem - /S /Formula - /P 3287 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [111] - /Pg 4822 0 R ->> -endobj - -3289 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3290 0 R] ->> -endobj - -3290 0 obj -<< - /Type /StructElem - /S /Formula - /P 3289 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [110] - /Pg 4822 0 R ->> -endobj - -3291 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3292 0 R] ->> -endobj - -3292 0 obj -<< - /Type /StructElem - /S /Formula - /P 3291 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [109] - /Pg 4822 0 R ->> -endobj - -3293 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3294 0 R] ->> -endobj - -3294 0 obj -<< - /Type /StructElem - /S /Formula - /P 3293 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [104 105 106 107 108] - /Pg 4822 0 R ->> -endobj - -3295 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3296 0 R] ->> -endobj - -3296 0 obj -<< - /Type /StructElem - /S /Formula - /P 3295 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [103] - /Pg 4822 0 R ->> -endobj - -3297 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3298 0 R] ->> -endobj - -3298 0 obj -<< - /Type /StructElem - /S /Formula - /P 3297 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [101 102] - /Pg 4822 0 R ->> -endobj - -3299 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3300 0 R] ->> -endobj - -3300 0 obj -<< - /Type /StructElem - /S /Formula - /P 3299 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [100] - /Pg 4822 0 R ->> -endobj - -3301 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3302 0 R] ->> -endobj - -3302 0 obj -<< - /Type /StructElem - /S /Formula - /P 3301 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [95 96 97 98 99] - /Pg 4822 0 R ->> -endobj - -3303 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3304 0 R] ->> -endobj - -3304 0 obj -<< - /Type /StructElem - /S /Formula - /P 3303 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [94] - /Pg 4822 0 R ->> -endobj - -3305 0 obj -<< - /Type /StructElem - /S /Div - /P 3222 0 R - /K [3306 0 R] ->> -endobj - -3306 0 obj -<< - /Type /StructElem - /S /Formula - /P 3305 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [93] - /Pg 4822 0 R ->> -endobj - -3307 0 obj -<< - /Type /StructElem - /S /P - /P 3221 0 R - /K [3312 0 R 83 3311 0 R 85 3310 0 R 87 3309 0 R 89 3308 0 R 92] - /Pg 4822 0 R ->> -endobj - -3308 0 obj -<< - /Type /StructElem - /S /Formula - /P 3307 0 R - /K [90 91] - /Pg 4822 0 R ->> -endobj - -3309 0 obj -<< - /Type /StructElem - /S /Formula - /P 3307 0 R - /K [88] - /Pg 4822 0 R ->> -endobj - -3310 0 obj -<< - /Type /StructElem - /S /Formula - /P 3307 0 R - /K [86] - /Pg 4822 0 R ->> -endobj - -3311 0 obj -<< - /Type /StructElem - /S /Formula - /P 3307 0 R - /K [84] - /Pg 4822 0 R ->> -endobj - -3312 0 obj -<< - /Type /StructElem - /S /Strong - /P 3307 0 R - /K [80 81 82] - /Pg 4822 0 R ->> -endobj - -3313 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [63 64 3317 0 R 66 3316 0 R 71 72 3315 0 R 74 3314 0 R 79] - /Pg 4822 0 R ->> -endobj - -3314 0 obj -<< - /Type /StructElem - /S /Formula - /P 3313 0 R - /K [75 76 77 78] - /Pg 4822 0 R ->> -endobj - -3315 0 obj -<< - /Type /StructElem - /S /Formula - /P 3313 0 R - /K [73] - /Pg 4822 0 R ->> -endobj - -3316 0 obj -<< - /Type /StructElem - /S /Formula - /P 3313 0 R - /K [67 68 69 70] - /Pg 4822 0 R ->> -endobj - -3317 0 obj -<< - /Type /StructElem - /S /Formula - /P 3313 0 R - /K [65] - /Pg 4822 0 R ->> -endobj - -3318 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [3331 0 R 3330 0 R 3328 0 R 3319 0 R] ->> -endobj - -3319 0 obj -<< - /Type /StructElem - /S /L - /P 3318 0 R - /A [<< - /O /List - /ListNumbering /Circle - >>] - /K [3324 0 R 3320 0 R] ->> -endobj - -3320 0 obj -<< - /Type /StructElem - /S /LI - /P 3319 0 R - /K [3323 0 R 3321 0 R] ->> -endobj - -3321 0 obj -<< - /Type /StructElem - /S /LBody - /P 3320 0 R - /K [3322 0 R 60 61 62] - /Pg 4822 0 R ->> -endobj - -3322 0 obj -<< - /Type /StructElem - /S /Formula - /P 3321 0 R - /K [50 51 52 53 54 55 56 57 58 59] - /Pg 4822 0 R ->> -endobj - -3323 0 obj -<< - /Type /StructElem - /S /Lbl - /P 3320 0 R - /K [49] - /Pg 4822 0 R ->> -endobj - -3324 0 obj -<< - /Type /StructElem - /S /LI - /P 3319 0 R - /K [3327 0 R 3325 0 R] ->> -endobj - -3325 0 obj -<< - /Type /StructElem - /S /LBody - /P 3324 0 R - /K [3326 0 R 48] - /Pg 4822 0 R ->> -endobj - -3326 0 obj -<< - /Type /StructElem - /S /Formula - /P 3325 0 R - /K [40 41 42 43 44 45 46 47] - /Pg 4822 0 R ->> -endobj - -3327 0 obj -<< - /Type /StructElem - /S /Lbl - /P 3324 0 R - /K [39] - /Pg 4822 0 R ->> -endobj - -3328 0 obj -<< - /Type /StructElem - /S /P - /P 3318 0 R - /K [32 3329 0 R 38] - /Pg 4822 0 R ->> -endobj - -3329 0 obj -<< - /Type /StructElem - /S /Formula - /P 3328 0 R - /K [33 34 35 36 37] - /Pg 4822 0 R ->> -endobj - -3330 0 obj -<< - /Type /StructElem - /S /Formula - /P 3318 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31] - /Pg 4822 0 R ->> -endobj - -3331 0 obj -<< - /Type /StructElem - /S /P - /P 3318 0 R - /K [3332 0 R 10] - /Pg 4822 0 R ->> -endobj - -3332 0 obj -<< - /Type /StructElem - /S /Strong - /P 3331 0 R - /K [7 8 9] - /Pg 4822 0 R ->> -endobj - -3333 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [3335 0 R 1 3334 0 R 3 4 5 6] - /Pg 4822 0 R ->> -endobj - -3334 0 obj -<< - /Type /StructElem - /S /Em - /P 3333 0 R - /K [2] - /Pg 4822 0 R ->> -endobj - -3335 0 obj -<< - /Type /StructElem - /S /Strong - /P 3333 0 R - /K [0] - /Pg 4822 0 R ->> -endobj - -3336 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [193 3339 0 R 195 196 197 3338 0 R 199 200 3337 0 R 202 203] - /Pg 4820 0 R ->> -endobj - -3337 0 obj -<< - /Type /StructElem - /S /Em - /P 3336 0 R - /K [201] - /Pg 4820 0 R ->> -endobj - -3338 0 obj -<< - /Type /StructElem - /S /Em - /P 3336 0 R - /K [198] - /Pg 4820 0 R ->> -endobj - -3339 0 obj -<< - /Type /StructElem - /S /Formula - /P 3336 0 R - /K [194] - /Pg 4820 0 R ->> -endobj - -3340 0 obj -<< - /Type /StructElem - /S /H3 - /P 103 0 R - /T (Isolation and Interception) - /K [191 192] - /Pg 4820 0 R ->> -endobj - -3341 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [131 3359 0 R 133 3358 0 R 135 3357 0 R 137 138 3356 0 R 140 3355 0 R 147 3354 0 R 149 3353 0 R 154 3352 0 R 156 3351 0 R 158 3350 0 R 160 3349 0 R 165 3348 0 R 172 3347 0 R 174 3346 0 R 176 3345 0 R 181 3344 0 R 183 3343 0 R 185 186 3342 0 R 188 189 190] - /Pg 4820 0 R ->> -endobj - -3342 0 obj -<< - /Type /StructElem - /S /Formula - /P 3341 0 R - /K [187] - /Pg 4820 0 R ->> -endobj - -3343 0 obj -<< - /Type /StructElem - /S /Formula - /P 3341 0 R - /K [184] - /Pg 4820 0 R ->> -endobj - -3344 0 obj -<< - /Type /StructElem - /S /Formula - /P 3341 0 R - /K [182] - /Pg 4820 0 R ->> -endobj - -3345 0 obj -<< - /Type /StructElem - /S /Formula - /P 3341 0 R - /K [177 178 179 180] - /Pg 4820 0 R ->> -endobj - -3346 0 obj -<< - /Type /StructElem - /S /Formula - /P 3341 0 R - /K [175] - /Pg 4820 0 R ->> -endobj - -3347 0 obj -<< - /Type /StructElem - /S /Formula - /P 3341 0 R - /K [173] - /Pg 4820 0 R ->> -endobj - -3348 0 obj -<< - /Type /StructElem - /S /Formula - /P 3341 0 R - /K [166 167 168 169 170 171] - /Pg 4820 0 R ->> -endobj - -3349 0 obj -<< - /Type /StructElem - /S /Formula - /P 3341 0 R - /K [161 162 163 164] - /Pg 4820 0 R ->> -endobj - -3350 0 obj -<< - /Type /StructElem - /S /Formula - /P 3341 0 R - /K [159] - /Pg 4820 0 R ->> -endobj - -3351 0 obj -<< - /Type /StructElem - /S /Formula - /P 3341 0 R - /K [157] - /Pg 4820 0 R ->> -endobj - -3352 0 obj -<< - /Type /StructElem - /S /Formula - /P 3341 0 R - /K [155] - /Pg 4820 0 R ->> -endobj - -3353 0 obj -<< - /Type /StructElem - /S /Formula - /P 3341 0 R - /K [150 151 152 153] - /Pg 4820 0 R ->> -endobj - -3354 0 obj -<< - /Type /StructElem - /S /Formula - /P 3341 0 R - /K [148] - /Pg 4820 0 R ->> -endobj - -3355 0 obj -<< - /Type /StructElem - /S /Formula - /P 3341 0 R - /K [141 142 143 144 145 146] - /Pg 4820 0 R ->> -endobj - -3356 0 obj -<< - /Type /StructElem - /S /Formula - /P 3341 0 R - /K [139] - /Pg 4820 0 R ->> -endobj - -3357 0 obj -<< - /Type /StructElem - /S /Formula - /P 3341 0 R - /K [136] - /Pg 4820 0 R ->> -endobj - -3358 0 obj -<< - /Type /StructElem - /S /Formula - /P 3341 0 R - /K [134] - /Pg 4820 0 R ->> -endobj - -3359 0 obj -<< - /Type /StructElem - /S /Formula - /P 3341 0 R - /K [132] - /Pg 4820 0 R ->> -endobj - -3360 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [120 3362 0 R 124 125 126 127 128 3361 0 R 130] - /Pg 4820 0 R ->> -endobj - -3361 0 obj -<< - /Type /StructElem - /S /Link - /P 3360 0 R - /K [129 << - /Type /OBJR - /Pg 4820 0 R - /Obj 4819 0 R - >>] - /Pg 4820 0 R ->> -endobj - -3362 0 obj -<< - /Type /StructElem - /S /Formula - /P 3360 0 R - /K [121 122 123] - /Pg 4820 0 R ->> -endobj - -3363 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [3365 0 R 3364 0 R] ->> -endobj - -3364 0 obj -<< - /Type /StructElem - /S /Formula - /P 3363 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119] - /Pg 4820 0 R ->> -endobj - -3365 0 obj -<< - /Type /StructElem - /S /P - /P 3363 0 R - /K [3368 0 R 75 3367 0 R 79 3366 0 R 86] - /Pg 4820 0 R ->> -endobj - -3366 0 obj -<< - /Type /StructElem - /S /Formula - /P 3365 0 R - /K [80 81 82 83 84 85] - /Pg 4820 0 R ->> -endobj - -3367 0 obj -<< - /Type /StructElem - /S /Formula - /P 3365 0 R - /K [76 77 78] - /Pg 4820 0 R ->> -endobj - -3368 0 obj -<< - /Type /StructElem - /S /Strong - /P 3365 0 R - /K [72 73 74] - /Pg 4820 0 R ->> -endobj - -3369 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [56 57 3373 0 R 59 3372 0 R 62 3371 0 R 67 3370 0 R 69 70 71] - /Pg 4820 0 R ->> -endobj - -3370 0 obj -<< - /Type /StructElem - /S /Formula - /P 3369 0 R - /K [68] - /Pg 4820 0 R ->> -endobj - -3371 0 obj -<< - /Type /StructElem - /S /Formula - /P 3369 0 R - /K [63 64 65 66] - /Pg 4820 0 R ->> -endobj - -3372 0 obj -<< - /Type /StructElem - /S /Formula - /P 3369 0 R - /K [60 61] - /Pg 4820 0 R ->> -endobj - -3373 0 obj -<< - /Type /StructElem - /S /Formula - /P 3369 0 R - /K [58] - /Pg 4820 0 R ->> -endobj - -3374 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [3377 0 R 3376 0 R 3375 0 R] ->> -endobj - -3375 0 obj -<< - /Type /StructElem - /S /P - /P 3374 0 R - /K [55] - /Pg 4820 0 R ->> -endobj - -3376 0 obj -<< - /Type /StructElem - /S /Formula - /P 3374 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [47 48 49 50 51 52 53 54] - /Pg 4820 0 R ->> -endobj - -3377 0 obj -<< - /Type /StructElem - /S /P - /P 3374 0 R - /K [3379 0 R 44 3378 0 R 46] - /Pg 4820 0 R ->> -endobj - -3378 0 obj -<< - /Type /StructElem - /S /Em - /P 3377 0 R - /K [45] - /Pg 4820 0 R ->> -endobj - -3379 0 obj -<< - /Type /StructElem - /S /Strong - /P 3377 0 R - /K [41 42 43] - /Pg 4820 0 R ->> -endobj - -3380 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [30 3382 0 R 35 3381 0 R 37 38 39 40] - /Pg 4820 0 R ->> -endobj - -3381 0 obj -<< - /Type /StructElem - /S /Formula - /P 3380 0 R - /K [36] - /Pg 4820 0 R ->> -endobj - -3382 0 obj -<< - /Type /StructElem - /S /Formula - /P 3380 0 R - /K [31 32 33 34] - /Pg 4820 0 R ->> -endobj - -3383 0 obj -<< - /Type /StructElem - /S /Formula - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29] - /Pg 4820 0 R ->> -endobj - -3384 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [265 266 << - /Type /MCR - /MCID 0 - /Pg 4820 0 R - >> << - /Type /MCR - /MCID 1 - /Pg 4820 0 R - >> << - /Type /MCR - /MCID 2 - /Pg 4820 0 R - >> << - /Type /MCR - /MCID 3 - /Pg 4820 0 R - >> << - /Type /MCR - /MCID 4 - /Pg 4820 0 R - >> 3387 0 R << - /Type /MCR - /MCID 6 - /Pg 4820 0 R - >> << - /Type /MCR - /MCID 7 - /Pg 4820 0 R - >> 3386 0 R << - /Type /MCR - /MCID 11 - /Pg 4820 0 R - >> 3385 0 R << - /Type /MCR - /MCID 13 - /Pg 4820 0 R - >>] - /Pg 4817 0 R ->> -endobj - -3385 0 obj -<< - /Type /StructElem - /S /Em - /P 3384 0 R - /K [12] - /Pg 4820 0 R ->> -endobj - -3386 0 obj -<< - /Type /StructElem - /S /Formula - /P 3384 0 R - /K [8 9 10] - /Pg 4820 0 R ->> -endobj - -3387 0 obj -<< - /Type /StructElem - /S /Formula - /P 3384 0 R - /K [5] - /Pg 4820 0 R ->> -endobj - -3388 0 obj -<< - /Type /StructElem - /S /H3 - /P 103 0 R - /T (Specification and Notification) - /K [263 264] - /Pg 4817 0 R ->> -endobj - -3389 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [243 3393 0 R 250 3392 0 R 253 254 3391 0 R 256 3390 0 R 259 260 261 262] - /Pg 4817 0 R ->> -endobj - -3390 0 obj -<< - /Type /StructElem - /S /Formula - /P 3389 0 R - /K [257 258] - /Pg 4817 0 R ->> -endobj - -3391 0 obj -<< - /Type /StructElem - /S /Link - /P 3389 0 R - /K [255 << - /Type /OBJR - /Pg 4817 0 R - /Obj 4816 0 R - >>] - /Pg 4817 0 R ->> -endobj - -3392 0 obj -<< - /Type /StructElem - /S /Formula - /P 3389 0 R - /K [251 252] - /Pg 4817 0 R ->> -endobj - -3393 0 obj -<< - /Type /StructElem - /S /Formula - /P 3389 0 R - /K [244 245 246 247 248 249] - /Pg 4817 0 R ->> -endobj - -3394 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [3457 0 R 3400 0 R 3395 0 R] ->> -endobj - -3395 0 obj -<< - /Type /StructElem - /S /P - /P 3394 0 R - /K [216 3399 0 R 221 3398 0 R 228 3397 0 R 235 3396 0 R 242] - /Pg 4817 0 R ->> -endobj - -3396 0 obj -<< - /Type /StructElem - /S /Formula - /P 3395 0 R - /K [236 237 238 239 240 241] - /Pg 4817 0 R ->> -endobj - -3397 0 obj -<< - /Type /StructElem - /S /Formula - /P 3395 0 R - /K [229 230 231 232 233 234] - /Pg 4817 0 R ->> -endobj - -3398 0 obj -<< - /Type /StructElem - /S /Formula - /P 3395 0 R - /K [222 223 224 225 226 227] - /Pg 4817 0 R ->> -endobj - -3399 0 obj -<< - /Type /StructElem - /S /Formula - /P 3395 0 R - /K [217 218 219 220] - /Pg 4817 0 R ->> -endobj - -3400 0 obj -<< - /Type /StructElem - /S /Div - /P 3394 0 R - /K [3455 0 R 3453 0 R 3451 0 R 3449 0 R 3447 0 R 3445 0 R 3443 0 R 3441 0 R 3439 0 R 3437 0 R 3435 0 R 3433 0 R 3431 0 R 3429 0 R 3427 0 R 3425 0 R 3423 0 R 3421 0 R 3419 0 R 3417 0 R 3415 0 R 3413 0 R 3411 0 R 3409 0 R 3407 0 R 3405 0 R 3403 0 R 3401 0 R] ->> -endobj - -3401 0 obj -<< - /Type /StructElem - /S /Div - /P 3400 0 R - /K [3402 0 R] ->> -endobj - -3402 0 obj -<< - /Type /StructElem - /S /Formula - /P 3401 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215] - /Pg 4817 0 R ->> -endobj - -3403 0 obj -<< - /Type /StructElem - /S /Div - /P 3400 0 R - /K [3404 0 R] ->> -endobj - -3404 0 obj -<< - /Type /StructElem - /S /Formula - /P 3403 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [198] - /Pg 4817 0 R ->> -endobj - -3405 0 obj -<< - /Type /StructElem - /S /Div - /P 3400 0 R - /K [3406 0 R] ->> -endobj - -3406 0 obj -<< - /Type /StructElem - /S /Formula - /P 3405 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [197] - /Pg 4817 0 R ->> -endobj - -3407 0 obj -<< - /Type /StructElem - /S /Div - /P 3400 0 R - /K [3408 0 R] ->> -endobj - -3408 0 obj -<< - /Type /StructElem - /S /Formula - /P 3407 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [196] - /Pg 4817 0 R ->> -endobj - -3409 0 obj -<< - /Type /StructElem - /S /Div - /P 3400 0 R - /K [3410 0 R] ->> -endobj - -3410 0 obj -<< - /Type /StructElem - /S /Formula - /P 3409 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [191 192 193 194 195] - /Pg 4817 0 R ->> -endobj - -3411 0 obj -<< - /Type /StructElem - /S /Div - /P 3400 0 R - /K [3412 0 R] ->> -endobj - -3412 0 obj -<< - /Type /StructElem - /S /Formula - /P 3411 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [190] - /Pg 4817 0 R ->> -endobj - -3413 0 obj -<< - /Type /StructElem - /S /Div - /P 3400 0 R - /K [3414 0 R] ->> -endobj - -3414 0 obj -<< - /Type /StructElem - /S /Formula - /P 3413 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [189] - /Pg 4817 0 R ->> -endobj - -3415 0 obj -<< - /Type /StructElem - /S /Div - /P 3400 0 R - /K [3416 0 R] ->> -endobj - -3416 0 obj -<< - /Type /StructElem - /S /Formula - /P 3415 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [182 183 184 185 186 187 188] - /Pg 4817 0 R ->> -endobj - -3417 0 obj -<< - /Type /StructElem - /S /Div - /P 3400 0 R - /K [3418 0 R] ->> -endobj - -3418 0 obj -<< - /Type /StructElem - /S /Formula - /P 3417 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [181] - /Pg 4817 0 R ->> -endobj - -3419 0 obj -<< - /Type /StructElem - /S /Div - /P 3400 0 R - /K [3420 0 R] ->> -endobj - -3420 0 obj -<< - /Type /StructElem - /S /Formula - /P 3419 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [180] - /Pg 4817 0 R ->> -endobj - -3421 0 obj -<< - /Type /StructElem - /S /Div - /P 3400 0 R - /K [3422 0 R] ->> -endobj - -3422 0 obj -<< - /Type /StructElem - /S /Formula - /P 3421 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [179] - /Pg 4817 0 R ->> -endobj - -3423 0 obj -<< - /Type /StructElem - /S /Div - /P 3400 0 R - /K [3424 0 R] ->> -endobj - -3424 0 obj -<< - /Type /StructElem - /S /Formula - /P 3423 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [171 172 173 174 175 176 177 178] - /Pg 4817 0 R ->> -endobj - -3425 0 obj -<< - /Type /StructElem - /S /Div - /P 3400 0 R - /K [3426 0 R] ->> -endobj - -3426 0 obj -<< - /Type /StructElem - /S /Formula - /P 3425 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [170] - /Pg 4817 0 R ->> -endobj - -3427 0 obj -<< - /Type /StructElem - /S /Div - /P 3400 0 R - /K [3428 0 R] ->> -endobj - -3428 0 obj -<< - /Type /StructElem - /S /Formula - /P 3427 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [169] - /Pg 4817 0 R ->> -endobj - -3429 0 obj -<< - /Type /StructElem - /S /Div - /P 3400 0 R - /K [3430 0 R] ->> -endobj - -3430 0 obj -<< - /Type /StructElem - /S /Formula - /P 3429 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [165 166 167 168] - /Pg 4817 0 R ->> -endobj - -3431 0 obj -<< - /Type /StructElem - /S /Div - /P 3400 0 R - /K [3432 0 R] ->> -endobj - -3432 0 obj -<< - /Type /StructElem - /S /Formula - /P 3431 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [164] - /Pg 4817 0 R ->> -endobj - -3433 0 obj -<< - /Type /StructElem - /S /Div - /P 3400 0 R - /K [3434 0 R] ->> -endobj - -3434 0 obj -<< - /Type /StructElem - /S /Formula - /P 3433 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [163] - /Pg 4817 0 R ->> -endobj - -3435 0 obj -<< - /Type /StructElem - /S /Div - /P 3400 0 R - /K [3436 0 R] ->> -endobj - -3436 0 obj -<< - /Type /StructElem - /S /Formula - /P 3435 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [162] - /Pg 4817 0 R ->> -endobj - -3437 0 obj -<< - /Type /StructElem - /S /Div - /P 3400 0 R - /K [3438 0 R] ->> -endobj - -3438 0 obj -<< - /Type /StructElem - /S /Formula - /P 3437 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [161] - /Pg 4817 0 R ->> -endobj - -3439 0 obj -<< - /Type /StructElem - /S /Div - /P 3400 0 R - /K [3440 0 R] ->> -endobj - -3440 0 obj -<< - /Type /StructElem - /S /Formula - /P 3439 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [160] - /Pg 4817 0 R ->> -endobj - -3441 0 obj -<< - /Type /StructElem - /S /Div - /P 3400 0 R - /K [3442 0 R] ->> -endobj - -3442 0 obj -<< - /Type /StructElem - /S /Formula - /P 3441 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [159] - /Pg 4817 0 R ->> -endobj - -3443 0 obj -<< - /Type /StructElem - /S /Div - /P 3400 0 R - /K [3444 0 R] ->> -endobj - -3444 0 obj -<< - /Type /StructElem - /S /Formula - /P 3443 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [157 158] - /Pg 4817 0 R ->> -endobj - -3445 0 obj -<< - /Type /StructElem - /S /Div - /P 3400 0 R - /K [3446 0 R] ->> -endobj - -3446 0 obj -<< - /Type /StructElem - /S /Formula - /P 3445 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [156] - /Pg 4817 0 R ->> -endobj - -3447 0 obj -<< - /Type /StructElem - /S /Div - /P 3400 0 R - /K [3448 0 R] ->> -endobj - -3448 0 obj -<< - /Type /StructElem - /S /Formula - /P 3447 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [155] - /Pg 4817 0 R ->> -endobj - -3449 0 obj -<< - /Type /StructElem - /S /Div - /P 3400 0 R - /K [3450 0 R] ->> -endobj - -3450 0 obj -<< - /Type /StructElem - /S /Formula - /P 3449 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [154] - /Pg 4817 0 R ->> -endobj - -3451 0 obj -<< - /Type /StructElem - /S /Div - /P 3400 0 R - /K [3452 0 R] ->> -endobj - -3452 0 obj -<< - /Type /StructElem - /S /Formula - /P 3451 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [149 150 151 152 153] - /Pg 4817 0 R ->> -endobj - -3453 0 obj -<< - /Type /StructElem - /S /Div - /P 3400 0 R - /K [3454 0 R] ->> -endobj - -3454 0 obj -<< - /Type /StructElem - /S /Formula - /P 3453 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [148] - /Pg 4817 0 R ->> -endobj - -3455 0 obj -<< - /Type /StructElem - /S /Div - /P 3400 0 R - /K [3456 0 R] ->> -endobj - -3456 0 obj -<< - /Type /StructElem - /S /Formula - /P 3455 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [147] - /Pg 4817 0 R ->> -endobj - -3457 0 obj -<< - /Type /StructElem - /S /P - /P 3394 0 R - /K [3461 0 R 140 3460 0 R 142 3459 0 R 144 3458 0 R 146] - /Pg 4817 0 R ->> -endobj - -3458 0 obj -<< - /Type /StructElem - /S /Formula - /P 3457 0 R - /K [145] - /Pg 4817 0 R ->> -endobj - -3459 0 obj -<< - /Type /StructElem - /S /Formula - /P 3457 0 R - /K [143] - /Pg 4817 0 R ->> -endobj - -3460 0 obj -<< - /Type /StructElem - /S /Formula - /P 3457 0 R - /K [141] - /Pg 4817 0 R ->> -endobj - -3461 0 obj -<< - /Type /StructElem - /S /Strong - /P 3457 0 R - /K [137 138 139] - /Pg 4817 0 R ->> -endobj - -3462 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [112 3467 0 R 114 3466 0 R 116 117 3465 0 R 120 121 122 3464 0 R 129 3463 0 R 136] - /Pg 4817 0 R ->> -endobj - -3463 0 obj -<< - /Type /StructElem - /S /Formula - /P 3462 0 R - /K [130 131 132 133 134 135] - /Pg 4817 0 R ->> -endobj - -3464 0 obj -<< - /Type /StructElem - /S /Formula - /P 3462 0 R - /K [123 124 125 126 127 128] - /Pg 4817 0 R ->> -endobj - -3465 0 obj -<< - /Type /StructElem - /S /Formula - /P 3462 0 R - /K [118 119] - /Pg 4817 0 R ->> -endobj - -3466 0 obj -<< - /Type /StructElem - /S /Formula - /P 3462 0 R - /K [115] - /Pg 4817 0 R ->> -endobj - -3467 0 obj -<< - /Type /StructElem - /S /Formula - /P 3462 0 R - /K [113] - /Pg 4817 0 R ->> -endobj - -3468 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [3494 0 R 3493 0 R 3489 0 R 3469 0 R] ->> -endobj - -3469 0 obj -<< - /Type /StructElem - /S /L - /P 3468 0 R - /A [<< - /O /List - /ListNumbering /Circle - >>] - /K [3484 0 R 3479 0 R 3474 0 R 3470 0 R] ->> -endobj - -3470 0 obj -<< - /Type /StructElem - /S /LI - /P 3469 0 R - /K [3473 0 R 3471 0 R] ->> -endobj - -3471 0 obj -<< - /Type /StructElem - /S /LBody - /P 3470 0 R - /K [3472 0 R 111] - /Pg 4817 0 R ->> -endobj - -3472 0 obj -<< - /Type /StructElem - /S /Formula - /P 3471 0 R - /K [105 106 107 108 109 110] - /Pg 4817 0 R ->> -endobj - -3473 0 obj -<< - /Type /StructElem - /S /Lbl - /P 3470 0 R - /K [104] - /Pg 4817 0 R ->> -endobj - -3474 0 obj -<< - /Type /StructElem - /S /LI - /P 3469 0 R - /K [3478 0 R 3475 0 R] ->> -endobj - -3475 0 obj -<< - /Type /StructElem - /S /LBody - /P 3474 0 R - /K [3477 0 R 96 3476 0 R 103] - /Pg 4817 0 R ->> -endobj - -3476 0 obj -<< - /Type /StructElem - /S /Formula - /P 3475 0 R - /K [97 98 99 100 101 102] - /Pg 4817 0 R ->> -endobj - -3477 0 obj -<< - /Type /StructElem - /S /Formula - /P 3475 0 R - /K [93 94 95] - /Pg 4817 0 R ->> -endobj - -3478 0 obj -<< - /Type /StructElem - /S /Lbl - /P 3474 0 R - /K [92] - /Pg 4817 0 R ->> -endobj - -3479 0 obj -<< - /Type /StructElem - /S /LI - /P 3469 0 R - /K [3483 0 R 3480 0 R] ->> -endobj - -3480 0 obj -<< - /Type /StructElem - /S /LBody - /P 3479 0 R - /K [3482 0 R 84 3481 0 R 91] - /Pg 4817 0 R ->> -endobj - -3481 0 obj -<< - /Type /StructElem - /S /Formula - /P 3480 0 R - /K [85 86 87 88 89 90] - /Pg 4817 0 R ->> -endobj - -3482 0 obj -<< - /Type /StructElem - /S /Formula - /P 3480 0 R - /K [78 79 80 81 82 83] - /Pg 4817 0 R ->> -endobj - -3483 0 obj -<< - /Type /StructElem - /S /Lbl - /P 3479 0 R - /K [77] - /Pg 4817 0 R ->> -endobj - -3484 0 obj -<< - /Type /StructElem - /S /LI - /P 3469 0 R - /K [3488 0 R 3485 0 R] ->> -endobj - -3485 0 obj -<< - /Type /StructElem - /S /LBody - /P 3484 0 R - /K [3487 0 R 69 3486 0 R 76] - /Pg 4817 0 R ->> -endobj - -3486 0 obj -<< - /Type /StructElem - /S /Formula - /P 3485 0 R - /K [70 71 72 73 74 75] - /Pg 4817 0 R ->> -endobj - -3487 0 obj -<< - /Type /StructElem - /S /Formula - /P 3485 0 R - /K [65 66 67 68] - /Pg 4817 0 R ->> -endobj - -3488 0 obj -<< - /Type /StructElem - /S /Lbl - /P 3484 0 R - /K [64] - /Pg 4817 0 R ->> -endobj - -3489 0 obj -<< - /Type /StructElem - /S /P - /P 3468 0 R - /K [46 3492 0 R 50 3491 0 R 59 3490 0 R 62 63] - /Pg 4817 0 R ->> -endobj - -3490 0 obj -<< - /Type /StructElem - /S /Formula - /P 3489 0 R - /K [60 61] - /Pg 4817 0 R ->> -endobj - -3491 0 obj -<< - /Type /StructElem - /S /Formula - /P 3489 0 R - /K [51 52 53 54 55 56 57 58] - /Pg 4817 0 R ->> -endobj - -3492 0 obj -<< - /Type /StructElem - /S /Formula - /P 3489 0 R - /K [47 48 49] - /Pg 4817 0 R ->> -endobj - -3493 0 obj -<< - /Type /StructElem - /S /Formula - /P 3468 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [35 36 37 38 39 40 41 42 43 44 45] - /Pg 4817 0 R ->> -endobj - -3494 0 obj -<< - /Type /StructElem - /S /P - /P 3468 0 R - /K [3497 0 R 25 3496 0 R 31 3495 0 R 33 34] - /Pg 4817 0 R ->> -endobj - -3495 0 obj -<< - /Type /StructElem - /S /Em - /P 3494 0 R - /K [32] - /Pg 4817 0 R ->> -endobj - -3496 0 obj -<< - /Type /StructElem - /S /Formula - /P 3494 0 R - /K [26 27 28 29 30] - /Pg 4817 0 R ->> -endobj - -3497 0 obj -<< - /Type /StructElem - /S /Strong - /P 3494 0 R - /K [22 23 24] - /Pg 4817 0 R ->> -endobj - -3498 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [13 14 3500 0 R 16 3499 0 R 18 19 20 21] - /Pg 4817 0 R ->> -endobj - -3499 0 obj -<< - /Type /StructElem - /S /Link - /P 3498 0 R - /K [17 << - /Type /OBJR - /Pg 4817 0 R - /Obj 4815 0 R - >>] - /Pg 4817 0 R ->> -endobj - -3500 0 obj -<< - /Type /StructElem - /S /Link - /P 3498 0 R - /K [15 << - /Type /OBJR - /Pg 4817 0 R - /Obj 4814 0 R - >>] - /Pg 4817 0 R ->> -endobj - -3501 0 obj -<< - /Type /StructElem - /S /H3 - /P 103 0 R - /T (Coeffect Context) - /K [11 12] - /Pg 4817 0 R ->> -endobj - -3502 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [3504 0 R 239 240 241 << - /Type /MCR - /MCID 0 - /Pg 4817 0 R - >> << - /Type /MCR - /MCID 1 - /Pg 4817 0 R - >> << - /Type /MCR - /MCID 2 - /Pg 4817 0 R - >> << - /Type /MCR - /MCID 3 - /Pg 4817 0 R - >> << - /Type /MCR - /MCID 4 - /Pg 4817 0 R - >> << - /Type /MCR - /MCID 5 - /Pg 4817 0 R - >> 3503 0 R << - /Type /MCR - /MCID 7 - /Pg 4817 0 R - >> << - /Type /MCR - /MCID 8 - /Pg 4817 0 R - >> << - /Type /MCR - /MCID 9 - /Pg 4817 0 R - >> << - /Type /MCR - /MCID 10 - /Pg 4817 0 R - >>] - /Pg 4812 0 R ->> -endobj - -3503 0 obj -<< - /Type /StructElem - /S /Em - /P 3502 0 R - /K [6] - /Pg 4817 0 R ->> -endobj - -3504 0 obj -<< - /Type /StructElem - /S /Em - /P 3502 0 R - /K [238] - /Pg 4812 0 R ->> -endobj - -3505 0 obj -<< - /Type /StructElem - /S /H2 - /P 103 0 R - /T (Reactive Coeffects) - /K [236 237] - /Pg 4812 0 R ->> -endobj - -3506 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [213 3512 0 R 215 3511 0 R 223 3510 0 R 225 3509 0 R 227 228 229 230 3508 0 R 232 233 3507 0 R 235] - /Pg 4812 0 R ->> -endobj - -3507 0 obj -<< - /Type /StructElem - /S /Link - /P 3506 0 R - /K [234 << - /Type /OBJR - /Pg 4812 0 R - /Obj 4811 0 R - >>] - /Pg 4812 0 R ->> -endobj - -3508 0 obj -<< - /Type /StructElem - /S /Link - /P 3506 0 R - /K [231 << - /Type /OBJR - /Pg 4812 0 R - /Obj 4810 0 R - >>] - /Pg 4812 0 R ->> -endobj - -3509 0 obj -<< - /Type /StructElem - /S /Formula - /P 3506 0 R - /K [226] - /Pg 4812 0 R ->> -endobj - -3510 0 obj -<< - /Type /StructElem - /S /Formula - /P 3506 0 R - /K [224] - /Pg 4812 0 R ->> -endobj - -3511 0 obj -<< - /Type /StructElem - /S /Formula - /P 3506 0 R - /K [216 217 218 219 220 221 222] - /Pg 4812 0 R ->> -endobj - -3512 0 obj -<< - /Type /StructElem - /S /Formula - /P 3506 0 R - /K [214] - /Pg 4812 0 R ->> -endobj - -3513 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [190 3520 0 R 192 3519 0 R 196 197 3518 0 R 199 3517 0 R 202 3516 0 R 204 205 206 207 3515 0 R 209 3514 0 R 211 212] - /Pg 4812 0 R ->> -endobj - -3514 0 obj -<< - /Type /StructElem - /S /Formula - /P 3513 0 R - /K [210] - /Pg 4812 0 R ->> -endobj - -3515 0 obj -<< - /Type /StructElem - /S /Formula - /P 3513 0 R - /K [208] - /Pg 4812 0 R ->> -endobj - -3516 0 obj -<< - /Type /StructElem - /S /Formula - /P 3513 0 R - /K [203] - /Pg 4812 0 R ->> -endobj - -3517 0 obj -<< - /Type /StructElem - /S /Formula - /P 3513 0 R - /K [200 201] - /Pg 4812 0 R ->> -endobj - -3518 0 obj -<< - /Type /StructElem - /S /Formula - /P 3513 0 R - /K [198] - /Pg 4812 0 R ->> -endobj - -3519 0 obj -<< - /Type /StructElem - /S /Formula - /P 3513 0 R - /K [193 194 195] - /Pg 4812 0 R ->> -endobj - -3520 0 obj -<< - /Type /StructElem - /S /Em - /P 3513 0 R - /K [191] - /Pg 4812 0 R ->> -endobj - -3521 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [3523 0 R 3522 0 R] ->> -endobj - -3522 0 obj -<< - /Type /StructElem - /S /Formula - /P 3521 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189] - /Pg 4812 0 R ->> -endobj - -3523 0 obj -<< - /Type /StructElem - /S /P - /P 3521 0 R - /K [3527 0 R 157 3526 0 R 159 3525 0 R 161 3524 0 R 169] - /Pg 4812 0 R ->> -endobj - -3524 0 obj -<< - /Type /StructElem - /S /Formula - /P 3523 0 R - /K [162 163 164 165 166 167 168] - /Pg 4812 0 R ->> -endobj - -3525 0 obj -<< - /Type /StructElem - /S /Formula - /P 3523 0 R - /K [160] - /Pg 4812 0 R ->> -endobj - -3526 0 obj -<< - /Type /StructElem - /S /Formula - /P 3523 0 R - /K [158] - /Pg 4812 0 R ->> -endobj - -3527 0 obj -<< - /Type /StructElem - /S /Strong - /P 3523 0 R - /K [154 155 156] - /Pg 4812 0 R ->> -endobj - -3528 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [151 3529 0 R 153] - /Pg 4812 0 R ->> -endobj - -3529 0 obj -<< - /Type /StructElem - /S /Formula - /P 3528 0 R - /K [152] - /Pg 4812 0 R ->> -endobj - -3530 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [3538 0 R 3537 0 R 3536 0 R 3535 0 R 3534 0 R 3533 0 R 3532 0 R 3531 0 R] ->> -endobj - -3531 0 obj -<< - /Type /StructElem - /S /Span - /P 3530 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [150] - /Pg 4812 0 R ->> -endobj - -3532 0 obj -<< - /Type /StructElem - /S /Formula - /P 3530 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149] - /Pg 4812 0 R ->> -endobj - -3533 0 obj -<< - /Type /StructElem - /S /Span - /P 3530 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [133] - /Pg 4812 0 R ->> -endobj - -3534 0 obj -<< - /Type /StructElem - /S /Formula - /P 3530 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [131 132] - /Pg 4812 0 R ->> -endobj - -3535 0 obj -<< - /Type /StructElem - /S /Span - /P 3530 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [130] - /Pg 4812 0 R ->> -endobj - -3536 0 obj -<< - /Type /StructElem - /S /Formula - /P 3530 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [129] - /Pg 4812 0 R ->> -endobj - -3537 0 obj -<< - /Type /StructElem - /S /Span - /P 3530 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [128] - /Pg 4812 0 R ->> -endobj - -3538 0 obj -<< - /Type /StructElem - /S /Strong - /P 3530 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [125 126 127] - /Pg 4812 0 R ->> -endobj - -3539 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [3563 0 R 3540 0 R] ->> -endobj - -3540 0 obj -<< - /Type /StructElem - /S /Div - /P 3539 0 R - /K [3561 0 R 3559 0 R 3557 0 R 3555 0 R 3553 0 R 3551 0 R 3549 0 R 3547 0 R 3545 0 R 3541 0 R] ->> -endobj - -3541 0 obj -<< - /Type /StructElem - /S /Div - /P 3540 0 R - /K [3544 0 R 3543 0 R 3542 0 R] ->> -endobj - -3542 0 obj -<< - /Type /StructElem - /S /Formula - /P 3541 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [118 119 120 121 122 123 124] - /Pg 4812 0 R ->> -endobj - -3543 0 obj -<< - /Type /StructElem - /S /Formula - /P 3541 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [106 107 108 109 110 111 112 113 114 115 116 117] - /Pg 4812 0 R ->> -endobj - -3544 0 obj -<< - /Type /StructElem - /S /Formula - /P 3541 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [94 95 96 97 98 99 100 101 102 103 104 105] - /Pg 4812 0 R ->> -endobj - -3545 0 obj -<< - /Type /StructElem - /S /Div - /P 3540 0 R - /K [3546 0 R] ->> -endobj - -3546 0 obj -<< - /Type /StructElem - /S /Formula - /P 3545 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [93] - /Pg 4812 0 R ->> -endobj - -3547 0 obj -<< - /Type /StructElem - /S /Div - /P 3540 0 R - /K [3548 0 R] ->> -endobj - -3548 0 obj -<< - /Type /StructElem - /S /Formula - /P 3547 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [92] - /Pg 4812 0 R ->> -endobj - -3549 0 obj -<< - /Type /StructElem - /S /Div - /P 3540 0 R - /K [3550 0 R] ->> -endobj - -3550 0 obj -<< - /Type /StructElem - /S /Formula - /P 3549 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [91] - /Pg 4812 0 R ->> -endobj - -3551 0 obj -<< - /Type /StructElem - /S /Div - /P 3540 0 R - /K [3552 0 R] ->> -endobj - -3552 0 obj -<< - /Type /StructElem - /S /Formula - /P 3551 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [88 89 90] - /Pg 4812 0 R ->> -endobj - -3553 0 obj -<< - /Type /StructElem - /S /Div - /P 3540 0 R - /K [3554 0 R] ->> -endobj - -3554 0 obj -<< - /Type /StructElem - /S /Formula - /P 3553 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [86 87] - /Pg 4812 0 R ->> -endobj - -3555 0 obj -<< - /Type /StructElem - /S /Div - /P 3540 0 R - /K [3556 0 R] ->> -endobj - -3556 0 obj -<< - /Type /StructElem - /S /Formula - /P 3555 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [85] - /Pg 4812 0 R ->> -endobj - -3557 0 obj -<< - /Type /StructElem - /S /Div - /P 3540 0 R - /K [3558 0 R] ->> -endobj - -3558 0 obj -<< - /Type /StructElem - /S /Formula - /P 3557 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [84] - /Pg 4812 0 R ->> -endobj - -3559 0 obj -<< - /Type /StructElem - /S /Div - /P 3540 0 R - /K [3560 0 R] ->> -endobj - -3560 0 obj -<< - /Type /StructElem - /S /Formula - /P 3559 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [83] - /Pg 4812 0 R ->> -endobj - -3561 0 obj -<< - /Type /StructElem - /S /Div - /P 3540 0 R - /K [3562 0 R] ->> -endobj - -3562 0 obj -<< - /Type /StructElem - /S /Formula - /P 3561 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [80 81 82] - /Pg 4812 0 R ->> -endobj - -3563 0 obj -<< - /Type /StructElem - /S /P - /P 3539 0 R - /K [3566 0 R 68 3565 0 R 75 3564 0 R 79] - /Pg 4812 0 R ->> -endobj - -3564 0 obj -<< - /Type /StructElem - /S /Formula - /P 3563 0 R - /K [76 77 78] - /Pg 4812 0 R ->> -endobj - -3565 0 obj -<< - /Type /StructElem - /S /Formula - /P 3563 0 R - /K [69 70 71 72 73 74] - /Pg 4812 0 R ->> -endobj - -3566 0 obj -<< - /Type /StructElem - /S /Strong - /P 3563 0 R - /K [65 66 67] - /Pg 4812 0 R ->> -endobj - -3567 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [60 3568 0 R 63 64] - /Pg 4812 0 R ->> -endobj - -3568 0 obj -<< - /Type /StructElem - /S /Formula - /P 3567 0 R - /K [61 62] - /Pg 4812 0 R ->> -endobj - -3569 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [3577 0 R 3576 0 R 3575 0 R 3574 0 R 3573 0 R 3572 0 R 3571 0 R 3570 0 R] ->> -endobj - -3570 0 obj -<< - /Type /StructElem - /S /Span - /P 3569 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [59] - /Pg 4812 0 R ->> -endobj - -3571 0 obj -<< - /Type /StructElem - /S /Formula - /P 3569 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58] - /Pg 4812 0 R ->> -endobj - -3572 0 obj -<< - /Type /StructElem - /S /Span - /P 3569 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [41] - /Pg 4812 0 R ->> -endobj - -3573 0 obj -<< - /Type /StructElem - /S /Formula - /P 3569 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [39 40] - /Pg 4812 0 R ->> -endobj - -3574 0 obj -<< - /Type /StructElem - /S /Span - /P 3569 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [38] - /Pg 4812 0 R ->> -endobj - -3575 0 obj -<< - /Type /StructElem - /S /Formula - /P 3569 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [37] - /Pg 4812 0 R ->> -endobj - -3576 0 obj -<< - /Type /StructElem - /S /Span - /P 3569 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [36] - /Pg 4812 0 R ->> -endobj - -3577 0 obj -<< - /Type /StructElem - /S /Strong - /P 3569 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [33 34 35] - /Pg 4812 0 R ->> -endobj - -3578 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [3594 0 R 3593 0 R 3592 0 R 3591 0 R 3590 0 R 3589 0 R 3588 0 R 3587 0 R 3586 0 R 3585 0 R 3584 0 R 23 3583 0 R 3582 0 R 3581 0 R 3580 0 R 3579 0 R] - /Pg 4812 0 R ->> -endobj - -3579 0 obj -<< - /Type /StructElem - /S /Formula - /P 3578 0 R - /K [30 31 32] - /Pg 4812 0 R ->> -endobj - -3580 0 obj -<< - /Type /StructElem - /S /Formula - /P 3578 0 R - /K [28 29] - /Pg 4812 0 R ->> -endobj - -3581 0 obj -<< - /Type /StructElem - /S /Formula - /P 3578 0 R - /K [26 27] - /Pg 4812 0 R ->> -endobj - -3582 0 obj -<< - /Type /StructElem - /S /Formula - /P 3578 0 R - /K [25] - /Pg 4812 0 R ->> -endobj - -3583 0 obj -<< - /Type /StructElem - /S /Formula - /P 3578 0 R - /K [24] - /Pg 4812 0 R ->> -endobj - -3584 0 obj -<< - /Type /StructElem - /S /Formula - /P 3578 0 R - /K [21 22] - /Pg 4812 0 R ->> -endobj - -3585 0 obj -<< - /Type /StructElem - /S /Formula - /P 3578 0 R - /K [19 20] - /Pg 4812 0 R ->> -endobj - -3586 0 obj -<< - /Type /StructElem - /S /Formula - /P 3578 0 R - /K [17 18] - /Pg 4812 0 R ->> -endobj - -3587 0 obj -<< - /Type /StructElem - /S /Formula - /P 3578 0 R - /K [15 16] - /Pg 4812 0 R ->> -endobj - -3588 0 obj -<< - /Type /StructElem - /S /Formula - /P 3578 0 R - /K [13 14] - /Pg 4812 0 R ->> -endobj - -3589 0 obj -<< - /Type /StructElem - /S /Formula - /P 3578 0 R - /K [11 12] - /Pg 4812 0 R ->> -endobj - -3590 0 obj -<< - /Type /StructElem - /S /Formula - /P 3578 0 R - /K [10] - /Pg 4812 0 R ->> -endobj - -3591 0 obj -<< - /Type /StructElem - /S /Formula - /P 3578 0 R - /K [6 7 8 9] - /Pg 4812 0 R ->> -endobj - -3592 0 obj -<< - /Type /StructElem - /S /Formula - /P 3578 0 R - /K [3 4 5] - /Pg 4812 0 R ->> -endobj - -3593 0 obj -<< - /Type /StructElem - /S /Formula - /P 3578 0 R - /K [1 2] - /Pg 4812 0 R ->> -endobj - -3594 0 obj -<< - /Type /StructElem - /S /Formula - /P 3578 0 R - /K [0] - /Pg 4812 0 R ->> -endobj - -3595 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [263 3597 0 R 266 3596 0 R 270 271] - /Pg 4808 0 R ->> -endobj - -3596 0 obj -<< - /Type /StructElem - /S /Formula - /P 3595 0 R - /K [267 268 269] - /Pg 4808 0 R ->> -endobj - -3597 0 obj -<< - /Type /StructElem - /S /Formula - /P 3595 0 R - /K [264 265] - /Pg 4808 0 R ->> -endobj - -3598 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [3629 0 R 3599 0 R] ->> -endobj - -3599 0 obj -<< - /Type /StructElem - /S /Div - /P 3598 0 R - /K [3627 0 R 3625 0 R 3623 0 R 3621 0 R 3619 0 R 3617 0 R 3615 0 R 3613 0 R 3611 0 R 3609 0 R 3607 0 R 3605 0 R 3603 0 R 3600 0 R] ->> -endobj - -3600 0 obj -<< - /Type /StructElem - /S /Div - /P 3599 0 R - /K [3602 0 R 3601 0 R] ->> -endobj - -3601 0 obj -<< - /Type /StructElem - /S /Formula - /P 3600 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [248 249 250 251 252 253 254 255 256 257 258 259 260 261 262] - /Pg 4808 0 R ->> -endobj - -3602 0 obj -<< - /Type /StructElem - /S /Formula - /P 3600 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [236 237 238 239 240 241 242 243 244 245 246 247] - /Pg 4808 0 R ->> -endobj - -3603 0 obj -<< - /Type /StructElem - /S /Div - /P 3599 0 R - /K [3604 0 R] ->> -endobj - -3604 0 obj -<< - /Type /StructElem - /S /Formula - /P 3603 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [235] - /Pg 4808 0 R ->> -endobj - -3605 0 obj -<< - /Type /StructElem - /S /Div - /P 3599 0 R - /K [3606 0 R] ->> -endobj - -3606 0 obj -<< - /Type /StructElem - /S /Formula - /P 3605 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [230 231 232 233 234] - /Pg 4808 0 R ->> -endobj - -3607 0 obj -<< - /Type /StructElem - /S /Div - /P 3599 0 R - /K [3608 0 R] ->> -endobj - -3608 0 obj -<< - /Type /StructElem - /S /Formula - /P 3607 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [229] - /Pg 4808 0 R ->> -endobj - -3609 0 obj -<< - /Type /StructElem - /S /Div - /P 3599 0 R - /K [3610 0 R] ->> -endobj - -3610 0 obj -<< - /Type /StructElem - /S /Formula - /P 3609 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [228] - /Pg 4808 0 R ->> -endobj - -3611 0 obj -<< - /Type /StructElem - /S /Div - /P 3599 0 R - /K [3612 0 R] ->> -endobj - -3612 0 obj -<< - /Type /StructElem - /S /Formula - /P 3611 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [227] - /Pg 4808 0 R ->> -endobj - -3613 0 obj -<< - /Type /StructElem - /S /Div - /P 3599 0 R - /K [3614 0 R] ->> -endobj - -3614 0 obj -<< - /Type /StructElem - /S /Formula - /P 3613 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [225 226] - /Pg 4808 0 R ->> -endobj - -3615 0 obj -<< - /Type /StructElem - /S /Div - /P 3599 0 R - /K [3616 0 R] ->> -endobj - -3616 0 obj -<< - /Type /StructElem - /S /Formula - /P 3615 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [222 223 224] - /Pg 4808 0 R ->> -endobj - -3617 0 obj -<< - /Type /StructElem - /S /Div - /P 3599 0 R - /K [3618 0 R] ->> -endobj - -3618 0 obj -<< - /Type /StructElem - /S /Formula - /P 3617 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [221] - /Pg 4808 0 R ->> -endobj - -3619 0 obj -<< - /Type /StructElem - /S /Div - /P 3599 0 R - /K [3620 0 R] ->> -endobj - -3620 0 obj -<< - /Type /StructElem - /S /Formula - /P 3619 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [219 220] - /Pg 4808 0 R ->> -endobj - -3621 0 obj -<< - /Type /StructElem - /S /Div - /P 3599 0 R - /K [3622 0 R] ->> -endobj - -3622 0 obj -<< - /Type /StructElem - /S /Formula - /P 3621 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [218] - /Pg 4808 0 R ->> -endobj - -3623 0 obj -<< - /Type /StructElem - /S /Div - /P 3599 0 R - /K [3624 0 R] ->> -endobj - -3624 0 obj -<< - /Type /StructElem - /S /Formula - /P 3623 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [216 217] - /Pg 4808 0 R ->> -endobj - -3625 0 obj -<< - /Type /StructElem - /S /Div - /P 3599 0 R - /K [3626 0 R] ->> -endobj - -3626 0 obj -<< - /Type /StructElem - /S /Formula - /P 3625 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [215] - /Pg 4808 0 R ->> -endobj - -3627 0 obj -<< - /Type /StructElem - /S /Div - /P 3599 0 R - /K [3628 0 R] ->> -endobj - -3628 0 obj -<< - /Type /StructElem - /S /Formula - /P 3627 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [213 214] - /Pg 4808 0 R ->> -endobj - -3629 0 obj -<< - /Type /StructElem - /S /P - /P 3598 0 R - /K [3631 0 R 209 3630 0 R 212] - /Pg 4808 0 R ->> -endobj - -3630 0 obj -<< - /Type /StructElem - /S /Formula - /P 3629 0 R - /K [210 211] - /Pg 4808 0 R ->> -endobj - -3631 0 obj -<< - /Type /StructElem - /S /Strong - /P 3629 0 R - /K [206 207 208] - /Pg 4808 0 R ->> -endobj - -3632 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [191 3636 0 R 194 3635 0 R 198 3634 0 R 201 3633 0 R 205] - /Pg 4808 0 R ->> -endobj - -3633 0 obj -<< - /Type /StructElem - /S /Formula - /P 3632 0 R - /K [202 203 204] - /Pg 4808 0 R ->> -endobj - -3634 0 obj -<< - /Type /StructElem - /S /Formula - /P 3632 0 R - /K [199 200] - /Pg 4808 0 R ->> -endobj - -3635 0 obj -<< - /Type /StructElem - /S /Formula - /P 3632 0 R - /K [195 196 197] - /Pg 4808 0 R ->> -endobj - -3636 0 obj -<< - /Type /StructElem - /S /Formula - /P 3632 0 R - /K [192 193] - /Pg 4808 0 R ->> -endobj - -3637 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [3645 0 R 3644 0 R 3643 0 R 3642 0 R 3641 0 R 3640 0 R 3639 0 R 3638 0 R] ->> -endobj - -3638 0 obj -<< - /Type /StructElem - /S /Formula - /P 3637 0 R - /K [189 190] - /Pg 4808 0 R ->> -endobj - -3639 0 obj -<< - /Type /StructElem - /S /Formula - /P 3637 0 R - /K [188] - /Pg 4808 0 R ->> -endobj - -3640 0 obj -<< - /Type /StructElem - /S /Formula - /P 3637 0 R - /K [187] - /Pg 4808 0 R ->> -endobj - -3641 0 obj -<< - /Type /StructElem - /S /Formula - /P 3637 0 R - /K [185 186] - /Pg 4808 0 R ->> -endobj - -3642 0 obj -<< - /Type /StructElem - /S /Formula - /P 3637 0 R - /K [183 184] - /Pg 4808 0 R ->> -endobj - -3643 0 obj -<< - /Type /StructElem - /S /Formula - /P 3637 0 R - /K [182] - /Pg 4808 0 R ->> -endobj - -3644 0 obj -<< - /Type /StructElem - /S /Formula - /P 3637 0 R - /K [179 180 181] - /Pg 4808 0 R ->> -endobj - -3645 0 obj -<< - /Type /StructElem - /S /Formula - /P 3637 0 R - /K [178] - /Pg 4808 0 R ->> -endobj - -3646 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [167 3647 0 R 174 175 176 177] - /Pg 4808 0 R ->> -endobj - -3647 0 obj -<< - /Type /StructElem - /S /Formula - /P 3646 0 R - /K [168 169 170 171 172 173] - /Pg 4808 0 R ->> -endobj - -3648 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [3662 0 R 3661 0 R 3658 0 R 3649 0 R] ->> -endobj - -3649 0 obj -<< - /Type /StructElem - /S /L - /P 3648 0 R - /A [<< - /O /List - /ListNumbering /Circle - >>] - /K [3654 0 R 3650 0 R] ->> -endobj - -3650 0 obj -<< - /Type /StructElem - /S /LI - /P 3649 0 R - /K [3653 0 R 3651 0 R] ->> -endobj - -3651 0 obj -<< - /Type /StructElem - /S /LBody - /P 3650 0 R - /K [3652 0 R 166] - /Pg 4808 0 R ->> -endobj - -3652 0 obj -<< - /Type /StructElem - /S /Formula - /P 3651 0 R - /K [161 162 163 164 165] - /Pg 4808 0 R ->> -endobj - -3653 0 obj -<< - /Type /StructElem - /S /Lbl - /P 3650 0 R - /K [160] - /Pg 4808 0 R ->> -endobj - -3654 0 obj -<< - /Type /StructElem - /S /LI - /P 3649 0 R - /K [3657 0 R 3655 0 R] ->> -endobj - -3655 0 obj -<< - /Type /StructElem - /S /LBody - /P 3654 0 R - /K [3656 0 R 159] - /Pg 4808 0 R ->> -endobj - -3656 0 obj -<< - /Type /StructElem - /S /Formula - /P 3655 0 R - /K [156 157 158] - /Pg 4808 0 R ->> -endobj - -3657 0 obj -<< - /Type /StructElem - /S /Lbl - /P 3654 0 R - /K [155] - /Pg 4808 0 R ->> -endobj - -3658 0 obj -<< - /Type /StructElem - /S /P - /P 3648 0 R - /K [143 3660 0 R 148 3659 0 R 154] - /Pg 4808 0 R ->> -endobj - -3659 0 obj -<< - /Type /StructElem - /S /Formula - /P 3658 0 R - /K [149 150 151 152 153] - /Pg 4808 0 R ->> -endobj - -3660 0 obj -<< - /Type /StructElem - /S /Formula - /P 3658 0 R - /K [144 145 146 147] - /Pg 4808 0 R ->> -endobj - -3661 0 obj -<< - /Type /StructElem - /S /Formula - /P 3648 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142] - /Pg 4808 0 R ->> -endobj - -3662 0 obj -<< - /Type /StructElem - /S /P - /P 3648 0 R - /K [3665 0 R 76 3664 0 R 79 3663 0 R 83] - /Pg 4808 0 R ->> -endobj - -3663 0 obj -<< - /Type /StructElem - /S /Formula - /P 3662 0 R - /K [80 81 82] - /Pg 4808 0 R ->> -endobj - -3664 0 obj -<< - /Type /StructElem - /S /Formula - /P 3662 0 R - /K [77 78] - /Pg 4808 0 R ->> -endobj - -3665 0 obj -<< - /Type /StructElem - /S /Strong - /P 3662 0 R - /K [73 74 75] - /Pg 4808 0 R ->> -endobj - -3666 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [60 61 62 3669 0 R 65 3668 0 R 68 3667 0 R 72] - /Pg 4808 0 R ->> -endobj - -3667 0 obj -<< - /Type /StructElem - /S /Formula - /P 3666 0 R - /K [69 70 71] - /Pg 4808 0 R ->> -endobj - -3668 0 obj -<< - /Type /StructElem - /S /Formula - /P 3666 0 R - /K [66 67] - /Pg 4808 0 R ->> -endobj - -3669 0 obj -<< - /Type /StructElem - /S /Formula - /P 3666 0 R - /K [63 64] - /Pg 4808 0 R ->> -endobj - -3670 0 obj -<< - /Type /StructElem - /S /L - /P 103 0 R - /A [<< - /O /List - /ListNumbering /Decimal - >>] - /K [3677 0 R 3671 0 R] ->> -endobj - -3671 0 obj -<< - /Type /StructElem - /S /LI - /P 3670 0 R - /K [3676 0 R 3672 0 R] ->> -endobj - -3672 0 obj -<< - /Type /StructElem - /S /LBody - /P 3671 0 R - /K [34 3675 0 R 37 38 3674 0 R 52 3673 0 R 59] - /Pg 4808 0 R ->> -endobj - -3673 0 obj -<< - /Type /StructElem - /S /Formula - /P 3672 0 R - /K [53 54 55 56 57 58] - /Pg 4808 0 R ->> -endobj - -3674 0 obj -<< - /Type /StructElem - /S /Formula - /P 3672 0 R - /K [39 40 41 42 43 44 45 46 47 48 49 50 51] - /Pg 4808 0 R ->> -endobj - -3675 0 obj -<< - /Type /StructElem - /S /Formula - /P 3672 0 R - /K [35 36] - /Pg 4808 0 R ->> -endobj - -3676 0 obj -<< - /Type /StructElem - /S /Lbl - /P 3671 0 R - /K [33] - /Pg 4808 0 R ->> -endobj - -3677 0 obj -<< - /Type /StructElem - /S /LI - /P 3670 0 R - /K [3682 0 R 3678 0 R] ->> -endobj - -3678 0 obj -<< - /Type /StructElem - /S /LBody - /P 3677 0 R - /K [14 3681 0 R 16 17 3680 0 R 27 3679 0 R 32] - /Pg 4808 0 R ->> -endobj - -3679 0 obj -<< - /Type /StructElem - /S /Formula - /P 3678 0 R - /K [28 29 30 31] - /Pg 4808 0 R ->> -endobj - -3680 0 obj -<< - /Type /StructElem - /S /Formula - /P 3678 0 R - /K [18 19 20 21 22 23 24 25 26] - /Pg 4808 0 R ->> -endobj - -3681 0 obj -<< - /Type /StructElem - /S /Formula - /P 3678 0 R - /K [15] - /Pg 4808 0 R ->> -endobj - -3682 0 obj -<< - /Type /StructElem - /S /Lbl - /P 3677 0 R - /K [13] - /Pg 4808 0 R ->> -endobj - -3683 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [2 3686 0 R 4 3685 0 R 6 7 8 3684 0 R 10 11 12] - /Pg 4808 0 R ->> -endobj - -3684 0 obj -<< - /Type /StructElem - /S /Formula - /P 3683 0 R - /K [9] - /Pg 4808 0 R ->> -endobj - -3685 0 obj -<< - /Type /StructElem - /S /Formula - /P 3683 0 R - /K [5] - /Pg 4808 0 R ->> -endobj - -3686 0 obj -<< - /Type /StructElem - /S /Formula - /P 3683 0 R - /K [3] - /Pg 4808 0 R ->> -endobj - -3687 0 obj -<< - /Type /StructElem - /S /H3 - /P 103 0 R - /T (Revertible Effect Functions) - /K [0 1] - /Pg 4808 0 R ->> -endobj - -3688 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [3704 0 R 3703 0 R 3702 0 R 3701 0 R 3700 0 R 3699 0 R 3698 0 R 3697 0 R 3696 0 R 3695 0 R 3694 0 R 3693 0 R 3692 0 R 3691 0 R 3690 0 R 3689 0 R] ->> -endobj - -3689 0 obj -<< - /Type /StructElem - /S /Formula - /P 3688 0 R - /K [342 343] - /Pg 4806 0 R ->> -endobj - -3690 0 obj -<< - /Type /StructElem - /S /Formula - /P 3688 0 R - /K [340 341] - /Pg 4806 0 R ->> -endobj - -3691 0 obj -<< - /Type /StructElem - /S /Formula - /P 3688 0 R - /K [338 339] - /Pg 4806 0 R ->> -endobj - -3692 0 obj -<< - /Type /StructElem - /S /Formula - /P 3688 0 R - /K [336 337] - /Pg 4806 0 R ->> -endobj - -3693 0 obj -<< - /Type /StructElem - /S /Formula - /P 3688 0 R - /K [335] - /Pg 4806 0 R ->> -endobj - -3694 0 obj -<< - /Type /StructElem - /S /Formula - /P 3688 0 R - /K [334] - /Pg 4806 0 R ->> -endobj - -3695 0 obj -<< - /Type /StructElem - /S /Formula - /P 3688 0 R - /K [333] - /Pg 4806 0 R ->> -endobj - -3696 0 obj -<< - /Type /StructElem - /S /Formula - /P 3688 0 R - /K [332] - /Pg 4806 0 R ->> -endobj - -3697 0 obj -<< - /Type /StructElem - /S /Formula - /P 3688 0 R - /K [331] - /Pg 4806 0 R ->> -endobj - -3698 0 obj -<< - /Type /StructElem - /S /Formula - /P 3688 0 R - /K [330] - /Pg 4806 0 R ->> -endobj - -3699 0 obj -<< - /Type /StructElem - /S /Formula - /P 3688 0 R - /K [329] - /Pg 4806 0 R ->> -endobj - -3700 0 obj -<< - /Type /StructElem - /S /Formula - /P 3688 0 R - /K [328] - /Pg 4806 0 R ->> -endobj - -3701 0 obj -<< - /Type /StructElem - /S /Formula - /P 3688 0 R - /K [325 326 327] - /Pg 4806 0 R ->> -endobj - -3702 0 obj -<< - /Type /StructElem - /S /Formula - /P 3688 0 R - /K [322 323 324] - /Pg 4806 0 R ->> -endobj - -3703 0 obj -<< - /Type /StructElem - /S /Formula - /P 3688 0 R - /K [320 321] - /Pg 4806 0 R ->> -endobj - -3704 0 obj -<< - /Type /StructElem - /S /Formula - /P 3688 0 R - /K [318 319] - /Pg 4806 0 R ->> -endobj - -3705 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [287 3712 0 R 289 3711 0 R 291 3710 0 R 293 294 3709 0 R 296 3708 0 R 298 299 3707 0 R 313 314 3706 0 R 317] - /Pg 4806 0 R ->> -endobj - -3706 0 obj -<< - /Type /StructElem - /S /Formula - /P 3705 0 R - /K [315 316] - /Pg 4806 0 R ->> -endobj - -3707 0 obj -<< - /Type /StructElem - /S /Formula - /P 3705 0 R - /K [300 301 302 303 304 305 306 307 308 309 310 311 312] - /Pg 4806 0 R ->> -endobj - -3708 0 obj -<< - /Type /StructElem - /S /Formula - /P 3705 0 R - /K [297] - /Pg 4806 0 R ->> -endobj - -3709 0 obj -<< - /Type /StructElem - /S /Formula - /P 3705 0 R - /K [295] - /Pg 4806 0 R ->> -endobj - -3710 0 obj -<< - /Type /StructElem - /S /Formula - /P 3705 0 R - /K [292] - /Pg 4806 0 R ->> -endobj - -3711 0 obj -<< - /Type /StructElem - /S /Formula - /P 3705 0 R - /K [290] - /Pg 4806 0 R ->> -endobj - -3712 0 obj -<< - /Type /StructElem - /S /Formula - /P 3705 0 R - /K [288] - /Pg 4806 0 R ->> -endobj - -3713 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [3735 0 R 3714 0 R] ->> -endobj - -3714 0 obj -<< - /Type /StructElem - /S /Div - /P 3713 0 R - /K [3733 0 R 3731 0 R 3729 0 R 3727 0 R 3725 0 R 3723 0 R 3721 0 R 3719 0 R 3717 0 R 3715 0 R] ->> -endobj - -3715 0 obj -<< - /Type /StructElem - /S /Div - /P 3714 0 R - /K [3716 0 R] ->> -endobj - -3716 0 obj -<< - /Type /StructElem - /S /Formula - /P 3715 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [278 279 280 281 282 283 284 285 286] - /Pg 4806 0 R ->> -endobj - -3717 0 obj -<< - /Type /StructElem - /S /Div - /P 3714 0 R - /K [3718 0 R] ->> -endobj - -3718 0 obj -<< - /Type /StructElem - /S /Formula - /P 3717 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [277] - /Pg 4806 0 R ->> -endobj - -3719 0 obj -<< - /Type /StructElem - /S /Div - /P 3714 0 R - /K [3720 0 R] ->> -endobj - -3720 0 obj -<< - /Type /StructElem - /S /Formula - /P 3719 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [272 273 274 275 276] - /Pg 4806 0 R ->> -endobj - -3721 0 obj -<< - /Type /StructElem - /S /Div - /P 3714 0 R - /K [3722 0 R] ->> -endobj - -3722 0 obj -<< - /Type /StructElem - /S /Formula - /P 3721 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [271] - /Pg 4806 0 R ->> -endobj - -3723 0 obj -<< - /Type /StructElem - /S /Div - /P 3714 0 R - /K [3724 0 R] ->> -endobj - -3724 0 obj -<< - /Type /StructElem - /S /Formula - /P 3723 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [269 270] - /Pg 4806 0 R ->> -endobj - -3725 0 obj -<< - /Type /StructElem - /S /Div - /P 3714 0 R - /K [3726 0 R] ->> -endobj - -3726 0 obj -<< - /Type /StructElem - /S /Formula - /P 3725 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [267 268] - /Pg 4806 0 R ->> -endobj - -3727 0 obj -<< - /Type /StructElem - /S /Div - /P 3714 0 R - /K [3728 0 R] ->> -endobj - -3728 0 obj -<< - /Type /StructElem - /S /Formula - /P 3727 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [266] - /Pg 4806 0 R ->> -endobj - -3729 0 obj -<< - /Type /StructElem - /S /Div - /P 3714 0 R - /K [3730 0 R] ->> -endobj - -3730 0 obj -<< - /Type /StructElem - /S /Formula - /P 3729 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [264 265] - /Pg 4806 0 R ->> -endobj - -3731 0 obj -<< - /Type /StructElem - /S /Div - /P 3714 0 R - /K [3732 0 R] ->> -endobj - -3732 0 obj -<< - /Type /StructElem - /S /Formula - /P 3731 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [263] - /Pg 4806 0 R ->> -endobj - -3733 0 obj -<< - /Type /StructElem - /S /Div - /P 3714 0 R - /K [3734 0 R] ->> -endobj - -3734 0 obj -<< - /Type /StructElem - /S /Formula - /P 3733 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [261 262] - /Pg 4806 0 R ->> -endobj - -3735 0 obj -<< - /Type /StructElem - /S /P - /P 3713 0 R - /K [3738 0 R 254 3737 0 R 257 3736 0 R 260] - /Pg 4806 0 R ->> -endobj - -3736 0 obj -<< - /Type /StructElem - /S /Formula - /P 3735 0 R - /K [258 259] - /Pg 4806 0 R ->> -endobj - -3737 0 obj -<< - /Type /StructElem - /S /Formula - /P 3735 0 R - /K [255 256] - /Pg 4806 0 R ->> -endobj - -3738 0 obj -<< - /Type /StructElem - /S /Strong - /P 3735 0 R - /K [251 252 253] - /Pg 4806 0 R ->> -endobj - -3739 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [241 3742 0 R 244 3741 0 R 246 247 3740 0 R 250] - /Pg 4806 0 R ->> -endobj - -3740 0 obj -<< - /Type /StructElem - /S /Formula - /P 3739 0 R - /K [248 249] - /Pg 4806 0 R ->> -endobj - -3741 0 obj -<< - /Type /StructElem - /S /Formula - /P 3739 0 R - /K [245] - /Pg 4806 0 R ->> -endobj - -3742 0 obj -<< - /Type /StructElem - /S /Formula - /P 3739 0 R - /K [242 243] - /Pg 4806 0 R ->> -endobj - -3743 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [3745 0 R 3744 0 R] ->> -endobj - -3744 0 obj -<< - /Type /StructElem - /S /Formula - /P 3743 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240] - /Pg 4806 0 R ->> -endobj - -3745 0 obj -<< - /Type /StructElem - /S /P - /P 3743 0 R - /K [3749 0 R 208 3748 0 R 210 3747 0 R 212 3746 0 R 220] - /Pg 4806 0 R ->> -endobj - -3746 0 obj -<< - /Type /StructElem - /S /Formula - /P 3745 0 R - /K [213 214 215 216 217 218 219] - /Pg 4806 0 R ->> -endobj - -3747 0 obj -<< - /Type /StructElem - /S /Formula - /P 3745 0 R - /K [211] - /Pg 4806 0 R ->> -endobj - -3748 0 obj -<< - /Type /StructElem - /S /Formula - /P 3745 0 R - /K [209] - /Pg 4806 0 R ->> -endobj - -3749 0 obj -<< - /Type /StructElem - /S /Strong - /P 3745 0 R - /K [205 206 207] - /Pg 4806 0 R ->> -endobj - -3750 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [3759 0 R 3758 0 R 3757 0 R 3756 0 R 3755 0 R 3754 0 R 3753 0 R 3752 0 R 3751 0 R] ->> -endobj - -3751 0 obj -<< - /Type /StructElem - /S /Formula - /P 3750 0 R - /K [203 204] - /Pg 4806 0 R ->> -endobj - -3752 0 obj -<< - /Type /StructElem - /S /Formula - /P 3750 0 R - /K [201 202] - /Pg 4806 0 R ->> -endobj - -3753 0 obj -<< - /Type /StructElem - /S /Formula - /P 3750 0 R - /K [200] - /Pg 4806 0 R ->> -endobj - -3754 0 obj -<< - /Type /StructElem - /S /Formula - /P 3750 0 R - /K [199] - /Pg 4806 0 R ->> -endobj - -3755 0 obj -<< - /Type /StructElem - /S /Formula - /P 3750 0 R - /K [198] - /Pg 4806 0 R ->> -endobj - -3756 0 obj -<< - /Type /StructElem - /S /Formula - /P 3750 0 R - /K [196 197] - /Pg 4806 0 R ->> -endobj - -3757 0 obj -<< - /Type /StructElem - /S /Formula - /P 3750 0 R - /K [194 195] - /Pg 4806 0 R ->> -endobj - -3758 0 obj -<< - /Type /StructElem - /S /Formula - /P 3750 0 R - /K [192 193] - /Pg 4806 0 R ->> -endobj - -3759 0 obj -<< - /Type /StructElem - /S /Formula - /P 3750 0 R - /K [191] - /Pg 4806 0 R ->> -endobj - -3760 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [3764 0 R 3763 0 R 3762 0 R 3761 0 R] ->> -endobj - -3761 0 obj -<< - /Type /StructElem - /S /Span - /P 3760 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [190] - /Pg 4806 0 R ->> -endobj - -3762 0 obj -<< - /Type /StructElem - /S /Formula - /P 3760 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189] - /Pg 4806 0 R ->> -endobj - -3763 0 obj -<< - /Type /StructElem - /S /Span - /P 3760 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [170] - /Pg 4806 0 R ->> -endobj - -3764 0 obj -<< - /Type /StructElem - /S /Strong - /P 3760 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [167 168 169] - /Pg 4806 0 R ->> -endobj - -3765 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [78 3781 0 R 83 3780 0 R 85 86 3779 0 R 89 3778 0 R 95 3777 0 R 101 3776 0 R 103 3775 0 R 105 3774 0 R 107 3773 0 R 113 3772 0 R 116 117 3771 0 R 140 3770 0 R 143 144 3769 0 R 155 3768 0 R 157 3767 0 R 163 3766 0 R 166] - /Pg 4806 0 R ->> -endobj - -3766 0 obj -<< - /Type /StructElem - /S /Formula - /P 3765 0 R - /K [164 165] - /Pg 4806 0 R ->> -endobj - -3767 0 obj -<< - /Type /StructElem - /S /Formula - /P 3765 0 R - /K [158 159 160 161 162] - /Pg 4806 0 R ->> -endobj - -3768 0 obj -<< - /Type /StructElem - /S /Link - /P 3765 0 R - /K [156 << - /Type /OBJR - /Pg 4806 0 R - /Obj 4805 0 R - >>] - /Pg 4806 0 R ->> -endobj - -3769 0 obj -<< - /Type /StructElem - /S /Formula - /P 3765 0 R - /K [145 146 147 148 149 150 151 152 153 154] - /Pg 4806 0 R ->> -endobj - -3770 0 obj -<< - /Type /StructElem - /S /Formula - /P 3765 0 R - /K [141 142] - /Pg 4806 0 R ->> -endobj - -3771 0 obj -<< - /Type /StructElem - /S /Formula - /P 3765 0 R - /K [118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139] - /Pg 4806 0 R ->> -endobj - -3772 0 obj -<< - /Type /StructElem - /S /Formula - /P 3765 0 R - /K [114 115] - /Pg 4806 0 R ->> -endobj - -3773 0 obj -<< - /Type /StructElem - /S /Formula - /P 3765 0 R - /K [108 109 110 111 112] - /Pg 4806 0 R ->> -endobj - -3774 0 obj -<< - /Type /StructElem - /S /Formula - /P 3765 0 R - /K [106] - /Pg 4806 0 R ->> -endobj - -3775 0 obj -<< - /Type /StructElem - /S /Formula - /P 3765 0 R - /K [104] - /Pg 4806 0 R ->> -endobj - -3776 0 obj -<< - /Type /StructElem - /S /Formula - /P 3765 0 R - /K [102] - /Pg 4806 0 R ->> -endobj - -3777 0 obj -<< - /Type /StructElem - /S /Formula - /P 3765 0 R - /K [96 97 98 99 100] - /Pg 4806 0 R ->> -endobj - -3778 0 obj -<< - /Type /StructElem - /S /Formula - /P 3765 0 R - /K [90 91 92 93 94] - /Pg 4806 0 R ->> -endobj - -3779 0 obj -<< - /Type /StructElem - /S /Formula - /P 3765 0 R - /K [87 88] - /Pg 4806 0 R ->> -endobj - -3780 0 obj -<< - /Type /StructElem - /S /Formula - /P 3765 0 R - /K [84] - /Pg 4806 0 R ->> -endobj - -3781 0 obj -<< - /Type /StructElem - /S /Formula - /P 3765 0 R - /K [79 80 81 82] - /Pg 4806 0 R ->> -endobj - -3782 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [3812 0 R 3783 0 R] ->> -endobj - -3783 0 obj -<< - /Type /StructElem - /S /Div - /P 3782 0 R - /K [3810 0 R 3808 0 R 3806 0 R 3804 0 R 3802 0 R 3800 0 R 3798 0 R 3796 0 R 3794 0 R 3792 0 R 3790 0 R 3788 0 R 3786 0 R 3784 0 R] ->> -endobj - -3784 0 obj -<< - /Type /StructElem - /S /Div - /P 3783 0 R - /K [3785 0 R] ->> -endobj - -3785 0 obj -<< - /Type /StructElem - /S /Formula - /P 3784 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [66 67 68 69 70 71 72 73 74 75 76 77] - /Pg 4806 0 R ->> -endobj - -3786 0 obj -<< - /Type /StructElem - /S /Div - /P 3783 0 R - /K [3787 0 R] ->> -endobj - -3787 0 obj -<< - /Type /StructElem - /S /Formula - /P 3786 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [65] - /Pg 4806 0 R ->> -endobj - -3788 0 obj -<< - /Type /StructElem - /S /Div - /P 3783 0 R - /K [3789 0 R] ->> -endobj - -3789 0 obj -<< - /Type /StructElem - /S /Formula - /P 3788 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [60 61 62 63 64] - /Pg 4806 0 R ->> -endobj - -3790 0 obj -<< - /Type /StructElem - /S /Div - /P 3783 0 R - /K [3791 0 R] ->> -endobj - -3791 0 obj -<< - /Type /StructElem - /S /Formula - /P 3790 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [59] - /Pg 4806 0 R ->> -endobj - -3792 0 obj -<< - /Type /StructElem - /S /Div - /P 3783 0 R - /K [3793 0 R] ->> -endobj - -3793 0 obj -<< - /Type /StructElem - /S /Formula - /P 3792 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [58] - /Pg 4806 0 R ->> -endobj - -3794 0 obj -<< - /Type /StructElem - /S /Div - /P 3783 0 R - /K [3795 0 R] ->> -endobj - -3795 0 obj -<< - /Type /StructElem - /S /Formula - /P 3794 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [57] - /Pg 4806 0 R ->> -endobj - -3796 0 obj -<< - /Type /StructElem - /S /Div - /P 3783 0 R - /K [3797 0 R] ->> -endobj - -3797 0 obj -<< - /Type /StructElem - /S /Formula - /P 3796 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [55 56] - /Pg 4806 0 R ->> -endobj - -3798 0 obj -<< - /Type /StructElem - /S /Div - /P 3783 0 R - /K [3799 0 R] ->> -endobj - -3799 0 obj -<< - /Type /StructElem - /S /Formula - /P 3798 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [53 54] - /Pg 4806 0 R ->> -endobj - -3800 0 obj -<< - /Type /StructElem - /S /Div - /P 3783 0 R - /K [3801 0 R] ->> -endobj - -3801 0 obj -<< - /Type /StructElem - /S /Formula - /P 3800 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [52] - /Pg 4806 0 R ->> -endobj - -3802 0 obj -<< - /Type /StructElem - /S /Div - /P 3783 0 R - /K [3803 0 R] ->> -endobj - -3803 0 obj -<< - /Type /StructElem - /S /Formula - /P 3802 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [50 51] - /Pg 4806 0 R ->> -endobj - -3804 0 obj -<< - /Type /StructElem - /S /Div - /P 3783 0 R - /K [3805 0 R] ->> -endobj - -3805 0 obj -<< - /Type /StructElem - /S /Formula - /P 3804 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [49] - /Pg 4806 0 R ->> -endobj - -3806 0 obj -<< - /Type /StructElem - /S /Div - /P 3783 0 R - /K [3807 0 R] ->> -endobj - -3807 0 obj -<< - /Type /StructElem - /S /Formula - /P 3806 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [44 45 46 47 48] - /Pg 4806 0 R ->> -endobj - -3808 0 obj -<< - /Type /StructElem - /S /Div - /P 3783 0 R - /K [3809 0 R] ->> -endobj - -3809 0 obj -<< - /Type /StructElem - /S /Formula - /P 3808 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [43] - /Pg 4806 0 R ->> -endobj - -3810 0 obj -<< - /Type /StructElem - /S /Div - /P 3783 0 R - /K [3811 0 R] ->> -endobj - -3811 0 obj -<< - /Type /StructElem - /S /Formula - /P 3810 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [41 42] - /Pg 4806 0 R ->> -endobj - -3812 0 obj -<< - /Type /StructElem - /S /P - /P 3782 0 R - /K [3816 0 R 30 3815 0 R 33 3814 0 R 36 3813 0 R 40] - /Pg 4806 0 R ->> -endobj - -3813 0 obj -<< - /Type /StructElem - /S /Formula - /P 3812 0 R - /K [37 38 39] - /Pg 4806 0 R ->> -endobj - -3814 0 obj -<< - /Type /StructElem - /S /Formula - /P 3812 0 R - /K [34 35] - /Pg 4806 0 R ->> -endobj - -3815 0 obj -<< - /Type /StructElem - /S /Formula - /P 3812 0 R - /K [31 32] - /Pg 4806 0 R ->> -endobj - -3816 0 obj -<< - /Type /StructElem - /S /Strong - /P 3812 0 R - /K [27 28 29] - /Pg 4806 0 R ->> -endobj - -3817 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [20 3819 0 R 22 3818 0 R 25 26] - /Pg 4806 0 R ->> -endobj - -3818 0 obj -<< - /Type /StructElem - /S /Formula - /P 3817 0 R - /K [23 24] - /Pg 4806 0 R ->> -endobj - -3819 0 obj -<< - /Type /StructElem - /S /Formula - /P 3817 0 R - /K [21] - /Pg 4806 0 R ->> -endobj - -3820 0 obj -<< - /Type /StructElem - /S /Div - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [3835 0 R 3834 0 R 3832 0 R 3823 0 R 3821 0 R] ->> -endobj - -3821 0 obj -<< - /Type /StructElem - /S /P - /P 3820 0 R - /K [11 3822 0 R 19] - /Pg 4806 0 R ->> -endobj - -3822 0 obj -<< - /Type /StructElem - /S /Formula - /P 3821 0 R - /K [12 13 14 15 16 17 18] - /Pg 4806 0 R ->> -endobj - -3823 0 obj -<< - /Type /StructElem - /S /L - /P 3820 0 R - /A [<< - /O /List - /ListNumbering /Circle - >>] - /K [3828 0 R 3824 0 R] ->> -endobj - -3824 0 obj -<< - /Type /StructElem - /S /LI - /P 3823 0 R - /K [3827 0 R 3825 0 R] ->> -endobj - -3825 0 obj -<< - /Type /StructElem - /S /LBody - /P 3824 0 R - /K [3826 0 R 10] - /Pg 4806 0 R ->> -endobj - -3826 0 obj -<< - /Type /StructElem - /S /Formula - /P 3825 0 R - /K [6 7 8 9] - /Pg 4806 0 R ->> -endobj - -3827 0 obj -<< - /Type /StructElem - /S /Lbl - /P 3824 0 R - /K [5] - /Pg 4806 0 R ->> -endobj - -3828 0 obj -<< - /Type /StructElem - /S /LI - /P 3823 0 R - /K [3831 0 R 3829 0 R] ->> -endobj - -3829 0 obj -<< - /Type /StructElem - /S /LBody - /P 3828 0 R - /K [3830 0 R 4] - /Pg 4806 0 R ->> -endobj - -3830 0 obj -<< - /Type /StructElem - /S /Formula - /P 3829 0 R - /K [1 2 3] - /Pg 4806 0 R ->> -endobj - -3831 0 obj -<< - /Type /StructElem - /S /Lbl - /P 3828 0 R - /K [0] - /Pg 4806 0 R ->> -endobj - -3832 0 obj -<< - /Type /StructElem - /S /P - /P 3820 0 R - /K [164 3833 0 R 170] - /Pg 4803 0 R ->> -endobj - -3833 0 obj -<< - /Type /StructElem - /S /Formula - /P 3832 0 R - /K [165 166 167 168 169] - /Pg 4803 0 R ->> -endobj - -3834 0 obj -<< - /Type /StructElem - /S /Formula - /P 3820 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [156 157 158 159 160 161 162 163] - /Pg 4803 0 R ->> -endobj - -3835 0 obj -<< - /Type /StructElem - /S /P - /P 3820 0 R - /K [3838 0 R 151 3837 0 R 153 3836 0 R 155] - /Pg 4803 0 R ->> -endobj - -3836 0 obj -<< - /Type /StructElem - /S /Em - /P 3835 0 R - /K [154] - /Pg 4803 0 R ->> -endobj - -3837 0 obj -<< - /Type /StructElem - /S /Formula - /P 3835 0 R - /K [152] - /Pg 4803 0 R ->> -endobj - -3838 0 obj -<< - /Type /StructElem - /S /Strong - /P 3835 0 R - /K [148 149 150] - /Pg 4803 0 R ->> -endobj - -3839 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [147] - /Pg 4803 0 R ->> -endobj - -3840 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [128 3845 0 R 130 131 132 133 3844 0 R 135 3843 0 R 138 3842 0 R 141 142 143 3841 0 R 145 146] - /Pg 4803 0 R ->> -endobj - -3841 0 obj -<< - /Type /StructElem - /S /Link - /P 3840 0 R - /K [144 << - /Type /OBJR - /Pg 4803 0 R - /Obj 4802 0 R - >>] - /Pg 4803 0 R ->> -endobj - -3842 0 obj -<< - /Type /StructElem - /S /Formula - /P 3840 0 R - /K [139 140] - /Pg 4803 0 R ->> -endobj - -3843 0 obj -<< - /Type /StructElem - /S /Formula - /P 3840 0 R - /K [136 137] - /Pg 4803 0 R ->> -endobj - -3844 0 obj -<< - /Type /StructElem - /S /Formula - /P 3840 0 R - /K [134] - /Pg 4803 0 R ->> -endobj - -3845 0 obj -<< - /Type /StructElem - /S /Formula - /P 3840 0 R - /K [129] - /Pg 4803 0 R ->> -endobj - -3846 0 obj -<< - /Type /StructElem - /S /L - /P 103 0 R - /A [<< - /O /List - /ListNumbering /Circle - >>] - /K [3859 0 R 3853 0 R 3847 0 R] ->> -endobj - -3847 0 obj -<< - /Type /StructElem - /S /LI - /P 3846 0 R - /K [3852 0 R 3848 0 R] ->> -endobj - -3848 0 obj -<< - /Type /StructElem - /S /LBody - /P 3847 0 R - /K [3851 0 R 113 3850 0 R 118 3849 0 R 125 126 127] - /Pg 4803 0 R ->> -endobj - -3849 0 obj -<< - /Type /StructElem - /S /Formula - /P 3848 0 R - /K [119 120 121 122 123 124] - /Pg 4803 0 R ->> -endobj - -3850 0 obj -<< - /Type /StructElem - /S /Formula - /P 3848 0 R - /K [114 115 116 117] - /Pg 4803 0 R ->> -endobj - -3851 0 obj -<< - /Type /StructElem - /S /Em - /P 3848 0 R - /K [112] - /Pg 4803 0 R ->> -endobj - -3852 0 obj -<< - /Type /StructElem - /S /Lbl - /P 3847 0 R - /K [111] - /Pg 4803 0 R ->> -endobj - -3853 0 obj -<< - /Type /StructElem - /S /LI - /P 3846 0 R - /K [3858 0 R 3854 0 R] ->> -endobj - -3854 0 obj -<< - /Type /StructElem - /S /LBody - /P 3853 0 R - /K [3857 0 R 105 3856 0 R 108 3855 0 R 110] - /Pg 4803 0 R ->> -endobj - -3855 0 obj -<< - /Type /StructElem - /S /Formula - /P 3854 0 R - /K [109] - /Pg 4803 0 R ->> -endobj - -3856 0 obj -<< - /Type /StructElem - /S /Formula - /P 3854 0 R - /K [106 107] - /Pg 4803 0 R ->> -endobj - -3857 0 obj -<< - /Type /StructElem - /S /Em - /P 3854 0 R - /K [104] - /Pg 4803 0 R ->> -endobj - -3858 0 obj -<< - /Type /StructElem - /S /Lbl - /P 3853 0 R - /K [103] - /Pg 4803 0 R ->> -endobj - -3859 0 obj -<< - /Type /StructElem - /S /LI - /P 3846 0 R - /K [3862 0 R 3860 0 R] ->> -endobj - -3860 0 obj -<< - /Type /StructElem - /S /LBody - /P 3859 0 R - /K [3861 0 R 102] - /Pg 4803 0 R ->> -endobj - -3861 0 obj -<< - /Type /StructElem - /S /Em - /P 3860 0 R - /K [101] - /Pg 4803 0 R ->> -endobj - -3862 0 obj -<< - /Type /StructElem - /S /Lbl - /P 3859 0 R - /K [100] - /Pg 4803 0 R ->> -endobj - -3863 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [44 3873 0 R 51 3872 0 R 61 3871 0 R 63 64 3870 0 R 66 3869 0 R 70 3868 0 R 83 3867 0 R 85 86 3866 0 R 88 3865 0 R 96 97 3864 0 R 99] - /Pg 4803 0 R ->> -endobj - -3864 0 obj -<< - /Type /StructElem - /S /Formula - /P 3863 0 R - /K [98] - /Pg 4803 0 R ->> -endobj - -3865 0 obj -<< - /Type /StructElem - /S /Formula - /P 3863 0 R - /K [89 90 91 92 93 94 95] - /Pg 4803 0 R ->> -endobj - -3866 0 obj -<< - /Type /StructElem - /S /Formula - /P 3863 0 R - /K [87] - /Pg 4803 0 R ->> -endobj - -3867 0 obj -<< - /Type /StructElem - /S /Formula - /P 3863 0 R - /K [84] - /Pg 4803 0 R ->> -endobj - -3868 0 obj -<< - /Type /StructElem - /S /Formula - /P 3863 0 R - /K [71 72 73 74 75 76 77 78 79 80 81 82] - /Pg 4803 0 R ->> -endobj - -3869 0 obj -<< - /Type /StructElem - /S /Formula - /P 3863 0 R - /K [67 68 69] - /Pg 4803 0 R ->> -endobj - -3870 0 obj -<< - /Type /StructElem - /S /Formula - /P 3863 0 R - /K [65] - /Pg 4803 0 R ->> -endobj - -3871 0 obj -<< - /Type /StructElem - /S /Formula - /P 3863 0 R - /K [62] - /Pg 4803 0 R ->> -endobj - -3872 0 obj -<< - /Type /StructElem - /S /Formula - /P 3863 0 R - /K [52 53 54 55 56 57 58 59 60] - /Pg 4803 0 R ->> -endobj - -3873 0 obj -<< - /Type /StructElem - /S /Formula - /P 3863 0 R - /K [45 46 47 48 49 50] - /Pg 4803 0 R ->> -endobj - -3874 0 obj -<< - /Type /StructElem - /S /H3 - /P 103 0 R - /T (Effect Context) - /K [42 43] - /Pg 4803 0 R ->> -endobj - -3875 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [3878 0 R 22 23 24 25 3877 0 R 35 36 37 38 3876 0 R 40 41] - /Pg 4803 0 R ->> -endobj - -3876 0 obj -<< - /Type /StructElem - /S /Em - /P 3875 0 R - /K [39] - /Pg 4803 0 R ->> -endobj - -3877 0 obj -<< - /Type /StructElem - /S /Formula - /P 3875 0 R - /K [26 27 28 29 30 31 32 33 34] - /Pg 4803 0 R ->> -endobj - -3878 0 obj -<< - /Type /StructElem - /S /Em - /P 3875 0 R - /K [21] - /Pg 4803 0 R ->> -endobj - -3879 0 obj -<< - /Type /StructElem - /S /H2 - /P 103 0 R - /T (Revertible Effects) - /K [19 20] - /Pg 4803 0 R ->> -endobj - -3880 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [2 3883 0 R 4 5 6 3882 0 R 8 9 3881 0 R 11 12 13 14 15 16 17 18] - /Pg 4803 0 R ->> -endobj - -3881 0 obj -<< - /Type /StructElem - /S /Em - /P 3880 0 R - /K [10] - /Pg 4803 0 R ->> -endobj - -3882 0 obj -<< - /Type /StructElem - /S /Em - /P 3880 0 R - /K [7] - /Pg 4803 0 R ->> -endobj - -3883 0 obj -<< - /Type /StructElem - /S /Link - /P 3880 0 R - /K [3 << - /Type /OBJR - /Pg 4803 0 R - /Obj 4801 0 R - >>] - /Pg 4803 0 R ->> -endobj - -3884 0 obj -<< - /Type /StructElem - /S /H1 - /P 103 0 R - /T (Revertible Effects and Reactive Coeffects) - /K [0 1] - /Pg 4803 0 R ->> -endobj - -3885 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [167 168 169 170 171 3886 0 R 173] - /Pg 4799 0 R ->> -endobj - -3886 0 obj -<< - /Type /StructElem - /S /Link - /P 3885 0 R - /K [172 << - /Type /OBJR - /Pg 4799 0 R - /Obj 4798 0 R - >>] - /Pg 4799 0 R ->> -endobj - -3887 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [160 161 162 163 164 165 166] - /Pg 4799 0 R ->> -endobj - -3888 0 obj -<< - /Type /StructElem - /S /L - /P 103 0 R - /A [<< - /O /List - /ListNumbering /Circle - >>] - /K [3893 0 R 3889 0 R] ->> -endobj - -3889 0 obj -<< - /Type /StructElem - /S /LI - /P 3888 0 R - /K [3892 0 R 3890 0 R] ->> -endobj - -3890 0 obj -<< - /Type /StructElem - /S /LBody - /P 3889 0 R - /K [3891 0 R 156 157 158 159] - /Pg 4799 0 R ->> -endobj - -3891 0 obj -<< - /Type /StructElem - /S /Strong - /P 3890 0 R - /K [155] - /Pg 4799 0 R ->> -endobj - -3892 0 obj -<< - /Type /StructElem - /S /Lbl - /P 3889 0 R - /K [154] - /Pg 4799 0 R ->> -endobj - -3893 0 obj -<< - /Type /StructElem - /S /LI - /P 3888 0 R - /K [3896 0 R 3894 0 R] ->> -endobj - -3894 0 obj -<< - /Type /StructElem - /S /LBody - /P 3893 0 R - /K [3895 0 R 149 150 151 152 153] - /Pg 4799 0 R ->> -endobj - -3895 0 obj -<< - /Type /StructElem - /S /Strong - /P 3894 0 R - /K [148] - /Pg 4799 0 R ->> -endobj - -3896 0 obj -<< - /Type /StructElem - /S /Lbl - /P 3893 0 R - /K [147] - /Pg 4799 0 R ->> -endobj - -3897 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [136 137 3900 0 R 139 140 3899 0 R 142 143 144 3898 0 R 146] - /Pg 4799 0 R ->> -endobj - -3898 0 obj -<< - /Type /StructElem - /S /Link - /P 3897 0 R - /K [145 << - /Type /OBJR - /Pg 4799 0 R - /Obj 4797 0 R - >>] - /Pg 4799 0 R ->> -endobj - -3899 0 obj -<< - /Type /StructElem - /S /Em - /P 3897 0 R - /K [141] - /Pg 4799 0 R ->> -endobj - -3900 0 obj -<< - /Type /StructElem - /S /Em - /P 3897 0 R - /K [138] - /Pg 4799 0 R ->> -endobj - -3901 0 obj -<< - /Type /StructElem - /S /H2 - /P 103 0 R - /T (Relationship to Dynamic Composability) - /K [134 135] - /Pg 4799 0 R ->> -endobj - -3902 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [3918 0 R 72 3917 0 R 74 75 3916 0 R 91 92 3915 0 R 94 95 96 97 3914 0 R 99 100 3913 0 R 102 103 3912 0 R 105 3911 0 R 107 3910 0 R 109 3909 0 R 111 112 3908 0 R 114 3907 0 R 116 117 118 3906 0 R 120 121 122 3905 0 R 124 3904 0 R 126 127 128 129 130 3903 0 R 132 133] - /Pg 4799 0 R ->> -endobj - -3903 0 obj -<< - /Type /StructElem - /S /Link - /P 3902 0 R - /K [131 << - /Type /OBJR - /Pg 4799 0 R - /Obj 4796 0 R - >>] - /Pg 4799 0 R ->> -endobj - -3904 0 obj -<< - /Type /StructElem - /S /Link - /P 3902 0 R - /K [125 << - /Type /OBJR - /Pg 4799 0 R - /Obj 4795 0 R - >>] - /Pg 4799 0 R ->> -endobj - -3905 0 obj -<< - /Type /StructElem - /S /Link - /P 3902 0 R - /K [123 << - /Type /OBJR - /Pg 4799 0 R - /Obj 4794 0 R - >>] - /Pg 4799 0 R ->> -endobj - -3906 0 obj -<< - /Type /StructElem - /S /Link - /P 3902 0 R - /K [119 << - /Type /OBJR - /Pg 4799 0 R - /Obj 4793 0 R - >>] - /Pg 4799 0 R ->> -endobj - -3907 0 obj -<< - /Type /StructElem - /S /Formula - /P 3902 0 R - /K [115] - /Pg 4799 0 R ->> -endobj - -3908 0 obj -<< - /Type /StructElem - /S /Formula - /P 3902 0 R - /K [113] - /Pg 4799 0 R ->> -endobj - -3909 0 obj -<< - /Type /StructElem - /S /Formula - /P 3902 0 R - /K [110] - /Pg 4799 0 R ->> -endobj - -3910 0 obj -<< - /Type /StructElem - /S /Formula - /P 3902 0 R - /K [108] - /Pg 4799 0 R ->> -endobj - -3911 0 obj -<< - /Type /StructElem - /S /Formula - /P 3902 0 R - /K [106] - /Pg 4799 0 R ->> -endobj - -3912 0 obj -<< - /Type /StructElem - /S /Formula - /P 3902 0 R - /K [104] - /Pg 4799 0 R ->> -endobj - -3913 0 obj -<< - /Type /StructElem - /S /Formula - /P 3902 0 R - /K [101] - /Pg 4799 0 R ->> -endobj - -3914 0 obj -<< - /Type /StructElem - /S /Link - /P 3902 0 R - /K [98 << - /Type /OBJR - /Pg 4799 0 R - /Obj 4792 0 R - >>] - /Pg 4799 0 R ->> -endobj - -3915 0 obj -<< - /Type /StructElem - /S /Link - /P 3902 0 R - /K [93 << - /Type /OBJR - /Pg 4799 0 R - /Obj 4791 0 R - >>] - /Pg 4799 0 R ->> -endobj - -3916 0 obj -<< - /Type /StructElem - /S /Formula - /P 3902 0 R - /K [76 77 78 79 80 81 82 83 84 85 86 87 88 89 90] - /Pg 4799 0 R ->> -endobj - -3917 0 obj -<< - /Type /StructElem - /S /Em - /P 3902 0 R - /K [73] - /Pg 4799 0 R ->> -endobj - -3918 0 obj -<< - /Type /StructElem - /S /Strong - /P 3902 0 R - /K [71] - /Pg 4799 0 R ->> -endobj - -3919 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [3928 0 R 3 4 5 3927 0 R 7 8 9 10 11 3926 0 R 13 14 15 3925 0 R 23 24 3924 0 R 33 34 35 3923 0 R 50 3922 0 R 59 3921 0 R 61 3920 0 R 70] - /Pg 4799 0 R ->> -endobj - -3920 0 obj -<< - /Type /StructElem - /S /Formula - /P 3919 0 R - /K [62 63 64 65 66 67 68 69] - /Pg 4799 0 R ->> -endobj - -3921 0 obj -<< - /Type /StructElem - /S /Formula - /P 3919 0 R - /K [60] - /Pg 4799 0 R ->> -endobj - -3922 0 obj -<< - /Type /StructElem - /S /Formula - /P 3919 0 R - /K [51 52 53 54 55 56 57 58] - /Pg 4799 0 R ->> -endobj - -3923 0 obj -<< - /Type /StructElem - /S /Formula - /P 3919 0 R - /K [36 37 38 39 40 41 42 43 44 45 46 47 48 49] - /Pg 4799 0 R ->> -endobj - -3924 0 obj -<< - /Type /StructElem - /S /Formula - /P 3919 0 R - /K [25 26 27 28 29 30 31 32] - /Pg 4799 0 R ->> -endobj - -3925 0 obj -<< - /Type /StructElem - /S /Formula - /P 3919 0 R - /K [16 17 18 19 20 21 22] - /Pg 4799 0 R ->> -endobj - -3926 0 obj -<< - /Type /StructElem - /S /Link - /P 3919 0 R - /K [12 << - /Type /OBJR - /Pg 4799 0 R - /Obj 4790 0 R - >>] - /Pg 4799 0 R ->> -endobj - -3927 0 obj -<< - /Type /StructElem - /S /Link - /P 3919 0 R - /K [6 << - /Type /OBJR - /Pg 4799 0 R - /Obj 4789 0 R - >>] - /Pg 4799 0 R ->> -endobj - -3928 0 obj -<< - /Type /StructElem - /S /Strong - /P 3919 0 R - /K [2] - /Pg 4799 0 R ->> -endobj - -3929 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [198 199 << - /Type /MCR - /MCID 0 - /Pg 4799 0 R - >> << - /Type /MCR - /MCID 1 - /Pg 4799 0 R - >>] - /Pg 4787 0 R ->> -endobj - -3930 0 obj -<< - /Type /StructElem - /S /Formula - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [191 192 193 194 195 196 197] - /Pg 4787 0 R ->> -endobj - -3931 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [181 3934 0 R 183 184 3933 0 R 186 3932 0 R 188 189 190] - /Pg 4787 0 R ->> -endobj - -3932 0 obj -<< - /Type /StructElem - /S /Link - /P 3931 0 R - /K [187 << - /Type /OBJR - /Pg 4787 0 R - /Obj 4786 0 R - >>] - /Pg 4787 0 R ->> -endobj - -3933 0 obj -<< - /Type /StructElem - /S /Link - /P 3931 0 R - /K [185 << - /Type /OBJR - /Pg 4787 0 R - /Obj 4785 0 R - >>] - /Pg 4787 0 R ->> -endobj - -3934 0 obj -<< - /Type /StructElem - /S /Em - /P 3931 0 R - /K [182] - /Pg 4787 0 R ->> -endobj - -3935 0 obj -<< - /Type /StructElem - /S /H2 - /P 103 0 R - /T (Coeffects) - /K [179 180] - /Pg 4787 0 R ->> -endobj - -3936 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [153 3943 0 R 155 3942 0 R 157 158 159 160 3941 0 R 162 163 164 3940 0 R 166 3939 0 R 168 169 170 3938 0 R 172 173 174 3937 0 R 176 177 178] - /Pg 4787 0 R ->> -endobj - -3937 0 obj -<< - /Type /StructElem - /S /Link - /P 3936 0 R - /K [175 << - /Type /OBJR - /Pg 4787 0 R - /Obj 4784 0 R - >>] - /Pg 4787 0 R ->> -endobj - -3938 0 obj -<< - /Type /StructElem - /S /Link - /P 3936 0 R - /K [171 << - /Type /OBJR - /Pg 4787 0 R - /Obj 4783 0 R - >>] - /Pg 4787 0 R ->> -endobj - -3939 0 obj -<< - /Type /StructElem - /S /Link - /P 3936 0 R - /K [167 << - /Type /OBJR - /Pg 4787 0 R - /Obj 4782 0 R - >>] - /Pg 4787 0 R ->> -endobj - -3940 0 obj -<< - /Type /StructElem - /S /Link - /P 3936 0 R - /K [165 << - /Type /OBJR - /Pg 4787 0 R - /Obj 4781 0 R - >>] - /Pg 4787 0 R ->> -endobj - -3941 0 obj -<< - /Type /StructElem - /S /Link - /P 3936 0 R - /K [161 << - /Type /OBJR - /Pg 4787 0 R - /Obj 4780 0 R - >>] - /Pg 4787 0 R ->> -endobj - -3942 0 obj -<< - /Type /StructElem - /S /Formula - /P 3936 0 R - /K [156] - /Pg 4787 0 R ->> -endobj - -3943 0 obj -<< - /Type /StructElem - /S /Formula - /P 3936 0 R - /K [154] - /Pg 4787 0 R ->> -endobj - -3944 0 obj -<< - /Type /StructElem - /S /Formula - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [139 140 141 142 143 144 145 146 147 148 149 150 151 152] - /Pg 4787 0 R ->> -endobj - -3945 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [3953 0 R 104 105 3952 0 R 107 3951 0 R 109 110 111 112 113 3950 0 R 115 3949 0 R 122 3948 0 R 129 130 131 132 3947 0 R 134 135 3946 0 R 137 138] - /Pg 4787 0 R ->> -endobj - -3946 0 obj -<< - /Type /StructElem - /S /Em - /P 3945 0 R - /K [136] - /Pg 4787 0 R ->> -endobj - -3947 0 obj -<< - /Type /StructElem - /S /Link - /P 3945 0 R - /K [133 << - /Type /OBJR - /Pg 4787 0 R - /Obj 4779 0 R - >>] - /Pg 4787 0 R ->> -endobj - -3948 0 obj -<< - /Type /StructElem - /S /Formula - /P 3945 0 R - /K [123 124 125 126 127 128] - /Pg 4787 0 R ->> -endobj - -3949 0 obj -<< - /Type /StructElem - /S /Formula - /P 3945 0 R - /K [116 117 118 119 120 121] - /Pg 4787 0 R ->> -endobj - -3950 0 obj -<< - /Type /StructElem - /S /Formula - /P 3945 0 R - /K [114] - /Pg 4787 0 R ->> -endobj - -3951 0 obj -<< - /Type /StructElem - /S /Link - /P 3945 0 R - /K [108 << - /Type /OBJR - /Pg 4787 0 R - /Obj 4778 0 R - >>] - /Pg 4787 0 R ->> -endobj - -3952 0 obj -<< - /Type /StructElem - /S /Link - /P 3945 0 R - /K [106 << - /Type /OBJR - /Pg 4787 0 R - /Obj 4777 0 R - >>] - /Pg 4787 0 R ->> -endobj - -3953 0 obj -<< - /Type /StructElem - /S /Strong - /P 3945 0 R - /K [103] - /Pg 4787 0 R ->> -endobj - -3954 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [3962 0 R 50 51 3961 0 R 53 54 55 56 3960 0 R 58 59 3959 0 R 67 3958 0 R 69 70 71 3957 0 R 76 3956 0 R 85 86 3955 0 R 101 102] - /Pg 4787 0 R ->> -endobj - -3955 0 obj -<< - /Type /StructElem - /S /Formula - /P 3954 0 R - /K [87 88 89 90 91 92 93 94 95 96 97 98 99 100] - /Pg 4787 0 R ->> -endobj - -3956 0 obj -<< - /Type /StructElem - /S /Formula - /P 3954 0 R - /K [77 78 79 80 81 82 83 84] - /Pg 4787 0 R ->> -endobj - -3957 0 obj -<< - /Type /StructElem - /S /Formula - /P 3954 0 R - /K [72 73 74 75] - /Pg 4787 0 R ->> -endobj - -3958 0 obj -<< - /Type /StructElem - /S /Formula - /P 3954 0 R - /K [68] - /Pg 4787 0 R ->> -endobj - -3959 0 obj -<< - /Type /StructElem - /S /Formula - /P 3954 0 R - /K [60 61 62 63 64 65 66] - /Pg 4787 0 R ->> -endobj - -3960 0 obj -<< - /Type /StructElem - /S /Link - /P 3954 0 R - /K [57 << - /Type /OBJR - /Pg 4787 0 R - /Obj 4776 0 R - >>] - /Pg 4787 0 R ->> -endobj - -3961 0 obj -<< - /Type /StructElem - /S /Link - /P 3954 0 R - /K [52 << - /Type /OBJR - /Pg 4787 0 R - /Obj 4775 0 R - >>] - /Pg 4787 0 R ->> -endobj - -3962 0 obj -<< - /Type /StructElem - /S /Strong - /P 3954 0 R - /K [49] - /Pg 4787 0 R ->> -endobj - -3963 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [40 41 42 43 3964 0 R 45 46 47 48] - /Pg 4787 0 R ->> -endobj - -3964 0 obj -<< - /Type /StructElem - /S /Link - /P 3963 0 R - /K [44 << - /Type /OBJR - /Pg 4787 0 R - /Obj 4774 0 R - >>] - /Pg 4787 0 R ->> -endobj - -3965 0 obj -<< - /Type /StructElem - /S /Formula - /P 103 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [33 34 35 36 37 38 39] - /Pg 4787 0 R ->> -endobj - -3966 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [10 11 3973 0 R 13 3972 0 R 15 16 3971 0 R 22 23 3970 0 R 25 3969 0 R 27 3968 0 R 29 3967 0 R 31 32] - /Pg 4787 0 R ->> -endobj - -3967 0 obj -<< - /Type /StructElem - /S /Em - /P 3966 0 R - /K [30] - /Pg 4787 0 R ->> -endobj - -3968 0 obj -<< - /Type /StructElem - /S /Formula - /P 3966 0 R - /K [28] - /Pg 4787 0 R ->> -endobj - -3969 0 obj -<< - /Type /StructElem - /S /Formula - /P 3966 0 R - /K [26] - /Pg 4787 0 R ->> -endobj - -3970 0 obj -<< - /Type /StructElem - /S /Formula - /P 3966 0 R - /K [24] - /Pg 4787 0 R ->> -endobj - -3971 0 obj -<< - /Type /StructElem - /S /Formula - /P 3966 0 R - /K [17 18 19 20 21] - /Pg 4787 0 R ->> -endobj - -3972 0 obj -<< - /Type /StructElem - /S /Link - /P 3966 0 R - /K [14 << - /Type /OBJR - /Pg 4787 0 R - /Obj 4773 0 R - >>] - /Pg 4787 0 R ->> -endobj - -3973 0 obj -<< - /Type /StructElem - /S /Link - /P 3966 0 R - /K [12 << - /Type /OBJR - /Pg 4787 0 R - /Obj 4772 0 R - >>] - /Pg 4787 0 R ->> -endobj - -3974 0 obj -<< - /Type /StructElem - /S /H2 - /P 103 0 R - /T (Effects) - /K [8 9] - /Pg 4787 0 R ->> -endobj - -3975 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [2 3 4 3976 0 R 6 7] - /Pg 4787 0 R ->> -endobj - -3976 0 obj -<< - /Type /StructElem - /S /Link - /P 3975 0 R - /K [5 << - /Type /OBJR - /Pg 4787 0 R - /Obj 4771 0 R - >>] - /Pg 4787 0 R ->> -endobj - -3977 0 obj -<< - /Type /StructElem - /S /H1 - /P 103 0 R - /T (Preliminaries) - /K [0 1] - /Pg 4787 0 R ->> -endobj - -3978 0 obj -<< - /Type /StructElem - /S /L - /P 103 0 R - /A [<< - /O /List - /ListNumbering /Decimal - >>] - /K [3996 0 R 3991 0 R 3984 0 R 3979 0 R] ->> -endobj - -3979 0 obj -<< - /Type /StructElem - /S /LI - /P 3978 0 R - /K [3983 0 R 3980 0 R] ->> -endobj - -3980 0 obj -<< - /Type /StructElem - /S /LBody - /P 3979 0 R - /K [95 3982 0 R 97 3981 0 R 99 100 101 102 103 104] - /Pg 4769 0 R ->> -endobj - -3981 0 obj -<< - /Type /StructElem - /S /Link - /P 3980 0 R - /K [98 << - /Type /OBJR - /Pg 4769 0 R - /Obj 4768 0 R - >>] - /Pg 4769 0 R ->> -endobj - -3982 0 obj -<< - /Type /StructElem - /S /Strong - /P 3980 0 R - /K [96] - /Pg 4769 0 R ->> -endobj - -3983 0 obj -<< - /Type /StructElem - /S /Lbl - /P 3979 0 R - /K [94] - /Pg 4769 0 R ->> -endobj - -3984 0 obj -<< - /Type /StructElem - /S /LI - /P 3978 0 R - /K [3990 0 R 3985 0 R] ->> -endobj - -3985 0 obj -<< - /Type /StructElem - /S /LBody - /P 3984 0 R - /K [81 3989 0 R 83 3988 0 R 85 86 87 88 3987 0 R 90 3986 0 R 92 93] - /Pg 4769 0 R ->> -endobj - -3986 0 obj -<< - /Type /StructElem - /S /Link - /P 3985 0 R - /K [91 << - /Type /OBJR - /Pg 4769 0 R - /Obj 4767 0 R - >>] - /Pg 4769 0 R ->> -endobj - -3987 0 obj -<< - /Type /StructElem - /S /Strong - /P 3985 0 R - /K [89] - /Pg 4769 0 R ->> -endobj - -3988 0 obj -<< - /Type /StructElem - /S /Link - /P 3985 0 R - /K [84 << - /Type /OBJR - /Pg 4769 0 R - /Obj 4766 0 R - >>] - /Pg 4769 0 R ->> -endobj - -3989 0 obj -<< - /Type /StructElem - /S /Strong - /P 3985 0 R - /K [82] - /Pg 4769 0 R ->> -endobj - -3990 0 obj -<< - /Type /StructElem - /S /Lbl - /P 3984 0 R - /K [80] - /Pg 4769 0 R ->> -endobj - -3991 0 obj -<< - /Type /StructElem - /S /LI - /P 3978 0 R - /K [3995 0 R 3992 0 R] ->> -endobj - -3992 0 obj -<< - /Type /StructElem - /S /LBody - /P 3991 0 R - /K [71 3994 0 R 73 3993 0 R 75 76 77 78 79] - /Pg 4769 0 R ->> -endobj - -3993 0 obj -<< - /Type /StructElem - /S /Link - /P 3992 0 R - /K [74 << - /Type /OBJR - /Pg 4769 0 R - /Obj 4765 0 R - >>] - /Pg 4769 0 R ->> -endobj - -3994 0 obj -<< - /Type /StructElem - /S /Strong - /P 3992 0 R - /K [72] - /Pg 4769 0 R ->> -endobj - -3995 0 obj -<< - /Type /StructElem - /S /Lbl - /P 3991 0 R - /K [70] - /Pg 4769 0 R ->> -endobj - -3996 0 obj -<< - /Type /StructElem - /S /LI - /P 3978 0 R - /K [4001 0 R 3997 0 R] ->> -endobj - -3997 0 obj -<< - /Type /StructElem - /S /LBody - /P 3996 0 R - /K [58 4000 0 R 60 3999 0 R 62 63 64 3998 0 R 66 67 68 69] - /Pg 4769 0 R ->> -endobj - -3998 0 obj -<< - /Type /StructElem - /S /Em - /P 3997 0 R - /K [65] - /Pg 4769 0 R ->> -endobj - -3999 0 obj -<< - /Type /StructElem - /S /Link - /P 3997 0 R - /K [61 << - /Type /OBJR - /Pg 4769 0 R - /Obj 4764 0 R - >>] - /Pg 4769 0 R ->> -endobj - -4000 0 obj -<< - /Type /StructElem - /S /Strong - /P 3997 0 R - /K [59] - /Pg 4769 0 R ->> -endobj - -4001 0 obj -<< - /Type /StructElem - /S /Lbl - /P 3996 0 R - /K [57] - /Pg 4769 0 R ->> -endobj - -4002 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [26 4010 0 R 28 29 4009 0 R 31 4008 0 R 34 35 4007 0 R 37 4006 0 R 39 40 4005 0 R 42 43 4004 0 R 45 4003 0 R 47 48 49 50 51 52 53 54 55 56] - /Pg 4769 0 R ->> -endobj - -4003 0 obj -<< - /Type /StructElem - /S /Link - /P 4002 0 R - /K [46 << - /Type /OBJR - /Pg 4769 0 R - /Obj 4763 0 R - >>] - /Pg 4769 0 R ->> -endobj - -4004 0 obj -<< - /Type /StructElem - /S /Link - /P 4002 0 R - /K [44 << - /Type /OBJR - /Pg 4769 0 R - /Obj 4762 0 R - >>] - /Pg 4769 0 R ->> -endobj - -4005 0 obj -<< - /Type /StructElem - /S /Em - /P 4002 0 R - /K [41] - /Pg 4769 0 R ->> -endobj - -4006 0 obj -<< - /Type /StructElem - /S /Link - /P 4002 0 R - /K [38 << - /Type /OBJR - /Pg 4769 0 R - /Obj 4761 0 R - >>] - /Pg 4769 0 R ->> -endobj - -4007 0 obj -<< - /Type /StructElem - /S /Link - /P 4002 0 R - /K [36 << - /Type /OBJR - /Pg 4769 0 R - /Obj 4760 0 R - >>] - /Pg 4769 0 R ->> -endobj - -4008 0 obj -<< - /Type /StructElem - /S /Em - /P 4002 0 R - /K [32 33] - /Pg 4769 0 R ->> -endobj - -4009 0 obj -<< - /Type /StructElem - /S /Em - /P 4002 0 R - /K [30] - /Pg 4769 0 R ->> -endobj - -4010 0 obj -<< - /Type /StructElem - /S /Em - /P 4002 0 R - /K [27] - /Pg 4769 0 R ->> -endobj - -4011 0 obj -<< - /Type /StructElem - /S /H2 - /P 103 0 R - /T (Contributions) - /K [24 25] - /Pg 4769 0 R ->> -endobj - -4012 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [8 9 10 11 12 4013 0 R 14 15 16 17 18 19 20 21 22 23] - /Pg 4769 0 R ->> -endobj - -4013 0 obj -<< - /Type /StructElem - /S /Link - /P 4012 0 R - /K [13 << - /Type /OBJR - /Pg 4769 0 R - /Obj 4759 0 R - >>] - /Pg 4769 0 R ->> -endobj - -4014 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [88 89 90 91 << - /Type /MCR - /MCID 0 - /Pg 4769 0 R - >> << - /Type /MCR - /MCID 1 - /Pg 4769 0 R - >> 4015 0 R << - /Type /MCR - /MCID 3 - /Pg 4769 0 R - >> << - /Type /MCR - /MCID 4 - /Pg 4769 0 R - >> << - /Type /MCR - /MCID 5 - /Pg 4769 0 R - >> << - /Type /MCR - /MCID 6 - /Pg 4769 0 R - >> << - /Type /MCR - /MCID 7 - /Pg 4769 0 R - >>] - /Pg 4756 0 R ->> -endobj - -4015 0 obj -<< - /Type /StructElem - /S /Link - /P 4014 0 R - /K [2 << - /Type /OBJR - /Pg 4769 0 R - /Obj 4758 0 R - >>] - /Pg 4769 0 R ->> -endobj - -4016 0 obj -<< - /Type /StructElem - /S /H3 - /P 103 0 R - /T (The Coarse-Grained Workaround) - /K [86 87] - /Pg 4756 0 R ->> -endobj - -4017 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [77 78 79 80 81 82 83 84 85] - /Pg 4756 0 R ->> -endobj - -4018 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [45 46 4024 0 R 48 4023 0 R 50 51 52 53 4022 0 R 55 56 57 58 4021 0 R 60 61 62 63 64 4020 0 R 66 67 68 69 70 71 72 4019 0 R 74 75 76] - /Pg 4756 0 R ->> -endobj - -4019 0 obj -<< - /Type /StructElem - /S /Link - /P 4018 0 R - /K [73 << - /Type /OBJR - /Pg 4756 0 R - /Obj 4754 0 R - >>] - /Pg 4756 0 R ->> -endobj - -4020 0 obj -<< - /Type /StructElem - /S /Link - /P 4018 0 R - /K [65 << - /Type /OBJR - /Pg 4756 0 R - /Obj 4753 0 R - >>] - /Pg 4756 0 R ->> -endobj - -4021 0 obj -<< - /Type /StructElem - /S /Link - /P 4018 0 R - /K [59 << - /Type /OBJR - /Pg 4756 0 R - /Obj 4752 0 R - >>] - /Pg 4756 0 R ->> -endobj - -4022 0 obj -<< - /Type /StructElem - /S /Link - /P 4018 0 R - /K [54 << - /Type /OBJR - /Pg 4756 0 R - /Obj 4751 0 R - >>] - /Pg 4756 0 R ->> -endobj - -4023 0 obj -<< - /Type /StructElem - /S /Link - /P 4018 0 R - /K [49 << - /Type /OBJR - /Pg 4756 0 R - /Obj 4750 0 R - >>] - /Pg 4756 0 R ->> -endobj - -4024 0 obj -<< - /Type /StructElem - /S /Link - /P 4018 0 R - /K [47 << - /Type /OBJR - /Pg 4756 0 R - /Obj 4749 0 R - >>] - /Pg 4756 0 R ->> -endobj - -4025 0 obj -<< - /Type /StructElem - /S /H3 - /P 103 0 R - /T (Self-Evolving Agent Harnesses) - /K [43 44] - /Pg 4756 0 R ->> -endobj - -4026 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [36 37 4028 0 R 39 4027 0 R 41 42] - /Pg 4756 0 R ->> -endobj - -4027 0 obj -<< - /Type /StructElem - /S /Link - /P 4026 0 R - /K [40 << - /Type /OBJR - /Pg 4756 0 R - /Obj 4748 0 R - >>] - /Pg 4756 0 R ->> -endobj - -4028 0 obj -<< - /Type /StructElem - /S /Link - /P 4026 0 R - /K [38 << - /Type /OBJR - /Pg 4756 0 R - /Obj 4747 0 R - >>] - /Pg 4756 0 R ->> -endobj - -4029 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [4037 0 R 13 4036 0 R 15 16 17 18 4035 0 R 20 4032 0 R 22 23 24 25 26 27 28 4031 0 R 30 31 4030 0 R 33 34 35] - /Pg 4756 0 R ->> -endobj - -4030 0 obj -<< - /Type /StructElem - /S /Code - /P 4029 0 R - /K [32] - /Pg 4756 0 R ->> -endobj - -4031 0 obj -<< - /Type /StructElem - /S /Code - /P 4029 0 R - /K [29] - /Pg 4756 0 R ->> -endobj - -4032 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4029 0 R - /K [4033 0 R] ->> -endobj - -4033 0 obj -<< - /Type /StructElem - /S /Link - /P 4032 0 R - /K [<< - /Type /OBJR - /Pg 4756 0 R - /Obj 4746 0 R - >> 4034 0 R] ->> -endobj - -4034 0 obj -<< - /Type /StructElem - /S /Span - /P 4033 0 R - /A [<< - /O /Layout - /BaselineShift 3.1614 - /LineHeight 3.96 - >>] - /K [21] - /Pg 4756 0 R ->> -endobj - -4035 0 obj -<< - /Type /StructElem - /S /Code - /P 4029 0 R - /K [19] - /Pg 4756 0 R ->> -endobj - -4036 0 obj -<< - /Type /StructElem - /S /Code - /P 4029 0 R - /K [14] - /Pg 4756 0 R ->> -endobj - -4037 0 obj -<< - /Type /StructElem - /S /Strong - /P 4029 0 R - /K [12] - /Pg 4756 0 R ->> -endobj - -4038 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [4049 0 R 72 73 74 4048 0 R 76 77 78 << - /Type /MCR - /MCID 0 - /Pg 4756 0 R - >> << - /Type /MCR - /MCID 1 - /Pg 4756 0 R - >> 4045 0 R 4041 0 R << - /Type /MCR - /MCID 3 - /Pg 4756 0 R - >> << - /Type /MCR - /MCID 4 - /Pg 4756 0 R - >> 4040 0 R << - /Type /MCR - /MCID 6 - /Pg 4756 0 R - >> << - /Type /MCR - /MCID 7 - /Pg 4756 0 R - >> << - /Type /MCR - /MCID 8 - /Pg 4756 0 R - >> 4039 0 R << - /Type /MCR - /MCID 10 - /Pg 4756 0 R - >> << - /Type /MCR - /MCID 11 - /Pg 4756 0 R - >>] - /Pg 4743 0 R ->> -endobj - -4039 0 obj -<< - /Type /StructElem - /S /Code - /P 4038 0 R - /K [9] - /Pg 4756 0 R ->> -endobj - -4040 0 obj -<< - /Type /StructElem - /S /Code - /P 4038 0 R - /K [5] - /Pg 4756 0 R ->> -endobj - -4041 0 obj -<< - /Type /StructElem - /S /Note - /P 4038 0 R - /ID (Note 1) - /K [4042 0 R 93] - /Pg 4756 0 R ->> -endobj - -4042 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4041 0 R - /K [4043 0 R] ->> -endobj - -4043 0 obj -<< - /Type /StructElem - /S /Link - /P 4042 0 R - /K [<< - /Type /OBJR - /Pg 4756 0 R - /Obj 4755 0 R - >> 4044 0 R] ->> -endobj - -4044 0 obj -<< - /Type /StructElem - /S /Span - /P 4043 0 R - /A [<< - /O /Layout - /BaselineShift 2.5866 - /LineHeight 3.24 - >>] - /K [92] - /Pg 4756 0 R ->> -endobj - -4045 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4038 0 R - /K [4046 0 R] ->> -endobj - -4046 0 obj -<< - /Type /StructElem - /S /Link - /P 4045 0 R - /K [<< - /Type /OBJR - /Pg 4756 0 R - /Obj 4745 0 R - >> 4047 0 R] ->> -endobj - -4047 0 obj -<< - /Type /StructElem - /S /Span - /P 4046 0 R - /A [<< - /O /Layout - /BaselineShift 3.1614 - /LineHeight 3.96 - >>] - /K [2] - /Pg 4756 0 R ->> -endobj - -4048 0 obj -<< - /Type /StructElem - /S /Code - /P 4038 0 R - /K [75] - /Pg 4743 0 R ->> -endobj - -4049 0 obj -<< - /Type /StructElem - /S /Strong - /P 4038 0 R - /K [71] - /Pg 4743 0 R ->> -endobj - -4050 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [69 70] - /Pg 4743 0 R ->> -endobj - -4051 0 obj -<< - /Type /StructElem - /S /H3 - /P 103 0 R - /T (Plugin Systems) - /K [67 68] - /Pg 4743 0 R ->> -endobj - -4052 0 obj -<< - /Type /StructElem - /S /H2 - /P 103 0 R - /T (Motivating Examples) - /K [65 66] - /Pg 4743 0 R ->> -endobj - -4053 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [51 52 4055 0 R 54 55 56 57 4054 0 R 59 60 61 62 63 64] - /Pg 4743 0 R ->> -endobj - -4054 0 obj -<< - /Type /StructElem - /S /Link - /P 4053 0 R - /K [58 << - /Type /OBJR - /Pg 4743 0 R - /Obj 4742 0 R - >>] - /Pg 4743 0 R ->> -endobj - -4055 0 obj -<< - /Type /StructElem - /S /Link - /P 4053 0 R - /K [53 << - /Type /OBJR - /Pg 4743 0 R - /Obj 4741 0 R - >>] - /Pg 4743 0 R ->> -endobj - -4056 0 obj -<< - /Type /StructElem - /S /L - /P 103 0 R - /A [<< - /O /List - /ListNumbering /Circle - >>] - /K [4062 0 R 4057 0 R] ->> -endobj - -4057 0 obj -<< - /Type /StructElem - /S /LI - /P 4056 0 R - /K [4061 0 R 4058 0 R] ->> -endobj - -4058 0 obj -<< - /Type /StructElem - /S /LBody - /P 4057 0 R - /K [4060 0 R 44 4059 0 R 46 47 48 49 50] - /Pg 4743 0 R ->> -endobj - -4059 0 obj -<< - /Type /StructElem - /S /Em - /P 4058 0 R - /K [45] - /Pg 4743 0 R ->> -endobj - -4060 0 obj -<< - /Type /StructElem - /S /Strong - /P 4058 0 R - /K [43] - /Pg 4743 0 R ->> -endobj - -4061 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4057 0 R - /K [42] - /Pg 4743 0 R ->> -endobj - -4062 0 obj -<< - /Type /StructElem - /S /LI - /P 4056 0 R - /K [4066 0 R 4063 0 R] ->> -endobj - -4063 0 obj -<< - /Type /StructElem - /S /LBody - /P 4062 0 R - /K [4065 0 R 35 4064 0 R 37 38 39 40 41] - /Pg 4743 0 R ->> -endobj - -4064 0 obj -<< - /Type /StructElem - /S /Em - /P 4063 0 R - /K [36] - /Pg 4743 0 R ->> -endobj - -4065 0 obj -<< - /Type /StructElem - /S /Strong - /P 4063 0 R - /K [34] - /Pg 4743 0 R ->> -endobj - -4066 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4062 0 R - /K [33] - /Pg 4743 0 R ->> -endobj - -4067 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [30 31 32] - /Pg 4743 0 R ->> -endobj - -4068 0 obj -<< - /Type /StructElem - /S /H2 - /P 103 0 R - /T (Dimensions of Composability) - /K [28 29] - /Pg 4743 0 R ->> -endobj - -4069 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [2 3 4 4074 0 R 6 7 4073 0 R 9 10 11 4072 0 R 13 14 15 4071 0 R 17 18 19 20 21 4070 0 R 23 24 25 26 27] - /Pg 4743 0 R ->> -endobj - -4070 0 obj -<< - /Type /StructElem - /S /Link - /P 4069 0 R - /K [22 << - /Type /OBJR - /Pg 4743 0 R - /Obj 4740 0 R - >>] - /Pg 4743 0 R ->> -endobj - -4071 0 obj -<< - /Type /StructElem - /S /Link - /P 4069 0 R - /K [16 << - /Type /OBJR - /Pg 4743 0 R - /Obj 4739 0 R - >>] - /Pg 4743 0 R ->> -endobj - -4072 0 obj -<< - /Type /StructElem - /S /Em - /P 4069 0 R - /K [12] - /Pg 4743 0 R ->> -endobj - -4073 0 obj -<< - /Type /StructElem - /S /Em - /P 4069 0 R - /K [8] - /Pg 4743 0 R ->> -endobj - -4074 0 obj -<< - /Type /StructElem - /S /Link - /P 4069 0 R - /K [5 << - /Type /OBJR - /Pg 4743 0 R - /Obj 4738 0 R - >>] - /Pg 4743 0 R ->> -endobj - -4075 0 obj -<< - /Type /StructElem - /S /H1 - /P 103 0 R - /T (Introduction) - /K [0 1] - /Pg 4743 0 R ->> -endobj - -4076 0 obj -<< - /Type /StructElem - /S /TOC - /P 103 0 R - /K [4285 0 R 4259 0 R 4255 0 R 4242 0 R 4238 0 R 4173 0 R 4169 0 R 4130 0 R 4126 0 R 4105 0 R 4101 0 R 4084 0 R 4080 0 R 4077 0 R] ->> -endobj - -4077 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4076 0 R - /K [4078 0 R] ->> -endobj - -4078 0 obj -<< - /Type /StructElem - /S /Reference - /P 4077 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4079 0 R] ->> -endobj - -4079 0 obj -<< - /Type /StructElem - /S /Link - /P 4078 0 R - /K [54 55 << - /Type /OBJR - /Pg 4736 0 R - /Obj 4735 0 R - >>] - /Pg 4736 0 R ->> -endobj - -4080 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4076 0 R - /K [4081 0 R] ->> -endobj - -4081 0 obj -<< - /Type /StructElem - /S /Reference - /P 4080 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4082 0 R] ->> -endobj - -4082 0 obj -<< - /Type /StructElem - /S /Link - /P 4081 0 R - /K [4083 0 R 52 53 << - /Type /OBJR - /Pg 4736 0 R - /Obj 4734 0 R - >>] - /Pg 4736 0 R ->> -endobj - -4083 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4082 0 R - /K [51] - /Pg 4736 0 R ->> -endobj - -4084 0 obj -<< - /Type /StructElem - /S /TOC - /P 4076 0 R - /K [4097 0 R 4093 0 R 4089 0 R 4085 0 R] ->> -endobj - -4085 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4084 0 R - /K [4086 0 R] ->> -endobj - -4086 0 obj -<< - /Type /StructElem - /S /Reference - /P 4085 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4087 0 R] ->> -endobj - -4087 0 obj -<< - /Type /StructElem - /S /Link - /P 4086 0 R - /K [4088 0 R 49 50 << - /Type /OBJR - /Pg 4736 0 R - /Obj 4733 0 R - >>] - /Pg 4736 0 R ->> -endobj - -4088 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4087 0 R - /K [48] - /Pg 4736 0 R ->> -endobj - -4089 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4084 0 R - /K [4090 0 R] ->> -endobj - -4090 0 obj -<< - /Type /StructElem - /S /Reference - /P 4089 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4091 0 R] ->> -endobj - -4091 0 obj -<< - /Type /StructElem - /S /Link - /P 4090 0 R - /K [4092 0 R 46 47 << - /Type /OBJR - /Pg 4736 0 R - /Obj 4732 0 R - >>] - /Pg 4736 0 R ->> -endobj - -4092 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4091 0 R - /K [45] - /Pg 4736 0 R ->> -endobj - -4093 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4084 0 R - /K [4094 0 R] ->> -endobj - -4094 0 obj -<< - /Type /StructElem - /S /Reference - /P 4093 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4095 0 R] ->> -endobj - -4095 0 obj -<< - /Type /StructElem - /S /Link - /P 4094 0 R - /K [4096 0 R 43 44 << - /Type /OBJR - /Pg 4736 0 R - /Obj 4731 0 R - >>] - /Pg 4736 0 R ->> -endobj - -4096 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4095 0 R - /K [42] - /Pg 4736 0 R ->> -endobj - -4097 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4084 0 R - /K [4098 0 R] ->> -endobj - -4098 0 obj -<< - /Type /StructElem - /S /Reference - /P 4097 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4099 0 R] ->> -endobj - -4099 0 obj -<< - /Type /StructElem - /S /Link - /P 4098 0 R - /K [4100 0 R 40 41 << - /Type /OBJR - /Pg 4736 0 R - /Obj 4730 0 R - >>] - /Pg 4736 0 R ->> -endobj - -4100 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4099 0 R - /K [39] - /Pg 4736 0 R ->> -endobj - -4101 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4076 0 R - /K [4102 0 R] ->> -endobj - -4102 0 obj -<< - /Type /StructElem - /S /Reference - /P 4101 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4103 0 R] ->> -endobj - -4103 0 obj -<< - /Type /StructElem - /S /Link - /P 4102 0 R - /K [4104 0 R 37 38 << - /Type /OBJR - /Pg 4736 0 R - /Obj 4729 0 R - >>] - /Pg 4736 0 R ->> -endobj - -4104 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4103 0 R - /K [36] - /Pg 4736 0 R ->> -endobj - -4105 0 obj -<< - /Type /StructElem - /S /TOC - /P 4076 0 R - /K [4122 0 R 4118 0 R 4114 0 R 4110 0 R 4106 0 R] ->> -endobj - -4106 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4105 0 R - /K [4107 0 R] ->> -endobj - -4107 0 obj -<< - /Type /StructElem - /S /Reference - /P 4106 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4108 0 R] ->> -endobj - -4108 0 obj -<< - /Type /StructElem - /S /Link - /P 4107 0 R - /K [4109 0 R 34 35 << - /Type /OBJR - /Pg 4736 0 R - /Obj 4728 0 R - >>] - /Pg 4736 0 R ->> -endobj - -4109 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4108 0 R - /K [33] - /Pg 4736 0 R ->> -endobj - -4110 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4105 0 R - /K [4111 0 R] ->> -endobj - -4111 0 obj -<< - /Type /StructElem - /S /Reference - /P 4110 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4112 0 R] ->> -endobj - -4112 0 obj -<< - /Type /StructElem - /S /Link - /P 4111 0 R - /K [4113 0 R 31 32 << - /Type /OBJR - /Pg 4736 0 R - /Obj 4727 0 R - >>] - /Pg 4736 0 R ->> -endobj - -4113 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4112 0 R - /K [30] - /Pg 4736 0 R ->> -endobj - -4114 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4105 0 R - /K [4115 0 R] ->> -endobj - -4115 0 obj -<< - /Type /StructElem - /S /Reference - /P 4114 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4116 0 R] ->> -endobj - -4116 0 obj -<< - /Type /StructElem - /S /Link - /P 4115 0 R - /K [4117 0 R 28 29 << - /Type /OBJR - /Pg 4736 0 R - /Obj 4726 0 R - >>] - /Pg 4736 0 R ->> -endobj - -4117 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4116 0 R - /K [27] - /Pg 4736 0 R ->> -endobj - -4118 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4105 0 R - /K [4119 0 R] ->> -endobj - -4119 0 obj -<< - /Type /StructElem - /S /Reference - /P 4118 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4120 0 R] ->> -endobj - -4120 0 obj -<< - /Type /StructElem - /S /Link - /P 4119 0 R - /K [4121 0 R 25 26 << - /Type /OBJR - /Pg 4736 0 R - /Obj 4725 0 R - >>] - /Pg 4736 0 R ->> -endobj - -4121 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4120 0 R - /K [24] - /Pg 4736 0 R ->> -endobj - -4122 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4105 0 R - /K [4123 0 R] ->> -endobj - -4123 0 obj -<< - /Type /StructElem - /S /Reference - /P 4122 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4124 0 R] ->> -endobj - -4124 0 obj -<< - /Type /StructElem - /S /Link - /P 4123 0 R - /K [4125 0 R 22 23 << - /Type /OBJR - /Pg 4736 0 R - /Obj 4724 0 R - >>] - /Pg 4736 0 R ->> -endobj - -4125 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4124 0 R - /K [21] - /Pg 4736 0 R ->> -endobj - -4126 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4076 0 R - /K [4127 0 R] ->> -endobj - -4127 0 obj -<< - /Type /StructElem - /S /Reference - /P 4126 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4128 0 R] ->> -endobj - -4128 0 obj -<< - /Type /StructElem - /S /Link - /P 4127 0 R - /K [4129 0 R 19 20 << - /Type /OBJR - /Pg 4736 0 R - /Obj 4723 0 R - >>] - /Pg 4736 0 R ->> -endobj - -4129 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4128 0 R - /K [18] - /Pg 4736 0 R ->> -endobj - -4130 0 obj -<< - /Type /StructElem - /S /TOC - /P 4076 0 R - /K [4165 0 R 4148 0 R 4144 0 R 4135 0 R 4131 0 R] ->> -endobj - -4131 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4130 0 R - /K [4132 0 R] ->> -endobj - -4132 0 obj -<< - /Type /StructElem - /S /Reference - /P 4131 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4133 0 R] ->> -endobj - -4133 0 obj -<< - /Type /StructElem - /S /Link - /P 4132 0 R - /K [4134 0 R 16 17 << - /Type /OBJR - /Pg 4736 0 R - /Obj 4722 0 R - >>] - /Pg 4736 0 R ->> -endobj - -4134 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4133 0 R - /K [15] - /Pg 4736 0 R ->> -endobj - -4135 0 obj -<< - /Type /StructElem - /S /TOC - /P 4130 0 R - /K [4140 0 R 4136 0 R] ->> -endobj - -4136 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4135 0 R - /K [4137 0 R] ->> -endobj - -4137 0 obj -<< - /Type /StructElem - /S /Reference - /P 4136 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4138 0 R] ->> -endobj - -4138 0 obj -<< - /Type /StructElem - /S /Link - /P 4137 0 R - /K [4139 0 R 13 14 << - /Type /OBJR - /Pg 4736 0 R - /Obj 4721 0 R - >>] - /Pg 4736 0 R ->> -endobj - -4139 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4138 0 R - /K [12] - /Pg 4736 0 R ->> -endobj - -4140 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4135 0 R - /K [4141 0 R] ->> -endobj - -4141 0 obj -<< - /Type /StructElem - /S /Reference - /P 4140 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4142 0 R] ->> -endobj - -4142 0 obj -<< - /Type /StructElem - /S /Link - /P 4141 0 R - /K [4143 0 R 10 11 << - /Type /OBJR - /Pg 4736 0 R - /Obj 4720 0 R - >>] - /Pg 4736 0 R ->> -endobj - -4143 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4142 0 R - /K [9] - /Pg 4736 0 R ->> -endobj - -4144 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4130 0 R - /K [4145 0 R] ->> -endobj - -4145 0 obj -<< - /Type /StructElem - /S /Reference - /P 4144 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4146 0 R] ->> -endobj - -4146 0 obj -<< - /Type /StructElem - /S /Link - /P 4145 0 R - /K [4147 0 R 7 8 << - /Type /OBJR - /Pg 4736 0 R - /Obj 4719 0 R - >>] - /Pg 4736 0 R ->> -endobj - -4147 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4146 0 R - /K [6] - /Pg 4736 0 R ->> -endobj - -4148 0 obj -<< - /Type /StructElem - /S /TOC - /P 4130 0 R - /K [4161 0 R 4157 0 R 4153 0 R 4149 0 R] ->> -endobj - -4149 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4148 0 R - /K [4150 0 R] ->> -endobj - -4150 0 obj -<< - /Type /StructElem - /S /Reference - /P 4149 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4151 0 R] ->> -endobj - -4151 0 obj -<< - /Type /StructElem - /S /Link - /P 4150 0 R - /K [4152 0 R 4 5 << - /Type /OBJR - /Pg 4736 0 R - /Obj 4718 0 R - >>] - /Pg 4736 0 R ->> -endobj - -4152 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4151 0 R - /K [3] - /Pg 4736 0 R ->> -endobj - -4153 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4148 0 R - /K [4154 0 R] ->> -endobj - -4154 0 obj -<< - /Type /StructElem - /S /Reference - /P 4153 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4155 0 R] ->> -endobj - -4155 0 obj -<< - /Type /StructElem - /S /Link - /P 4154 0 R - /K [<< - /Type /OBJR - /Pg 4715 0 R - /Obj 4714 0 R - >> 4156 0 R 1 2 << - /Type /OBJR - /Pg 4736 0 R - /Obj 4717 0 R - >>] - /Pg 4736 0 R ->> -endobj - -4156 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4155 0 R - /K [0] - /Pg 4736 0 R ->> -endobj - -4157 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4148 0 R - /K [4158 0 R] ->> -endobj - -4158 0 obj -<< - /Type /StructElem - /S /Reference - /P 4157 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4159 0 R] ->> -endobj - -4159 0 obj -<< - /Type /StructElem - /S /Link - /P 4158 0 R - /K [4160 0 R 92 93 << - /Type /OBJR - /Pg 4715 0 R - /Obj 4713 0 R - >>] - /Pg 4715 0 R ->> -endobj - -4160 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4159 0 R - /K [91] - /Pg 4715 0 R ->> -endobj - -4161 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4148 0 R - /K [4162 0 R] ->> -endobj - -4162 0 obj -<< - /Type /StructElem - /S /Reference - /P 4161 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4163 0 R] ->> -endobj - -4163 0 obj -<< - /Type /StructElem - /S /Link - /P 4162 0 R - /K [4164 0 R 89 90 << - /Type /OBJR - /Pg 4715 0 R - /Obj 4712 0 R - >>] - /Pg 4715 0 R ->> -endobj - -4164 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4163 0 R - /K [88] - /Pg 4715 0 R ->> -endobj - -4165 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4130 0 R - /K [4166 0 R] ->> -endobj - -4166 0 obj -<< - /Type /StructElem - /S /Reference - /P 4165 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4167 0 R] ->> -endobj - -4167 0 obj -<< - /Type /StructElem - /S /Link - /P 4166 0 R - /K [4168 0 R 86 87 << - /Type /OBJR - /Pg 4715 0 R - /Obj 4711 0 R - >>] - /Pg 4715 0 R ->> -endobj - -4168 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4167 0 R - /K [85] - /Pg 4715 0 R ->> -endobj - -4169 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4076 0 R - /K [4170 0 R] ->> -endobj - -4170 0 obj -<< - /Type /StructElem - /S /Reference - /P 4169 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4171 0 R] ->> -endobj - -4171 0 obj -<< - /Type /StructElem - /S /Link - /P 4170 0 R - /K [4172 0 R 83 84 << - /Type /OBJR - /Pg 4715 0 R - /Obj 4710 0 R - >>] - /Pg 4715 0 R ->> -endobj - -4172 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4171 0 R - /K [82] - /Pg 4715 0 R ->> -endobj - -4173 0 obj -<< - /Type /StructElem - /S /TOC - /P 4076 0 R - /K [4234 0 R 4225 0 R 4221 0 R 4208 0 R 4204 0 R 4187 0 R 4183 0 R 4174 0 R] ->> -endobj - -4174 0 obj -<< - /Type /StructElem - /S /TOC - /P 4173 0 R - /K [4179 0 R 4175 0 R] ->> -endobj - -4175 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4174 0 R - /K [4176 0 R] ->> -endobj - -4176 0 obj -<< - /Type /StructElem - /S /Reference - /P 4175 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4177 0 R] ->> -endobj - -4177 0 obj -<< - /Type /StructElem - /S /Link - /P 4176 0 R - /K [4178 0 R 80 81 << - /Type /OBJR - /Pg 4715 0 R - /Obj 4709 0 R - >>] - /Pg 4715 0 R ->> -endobj - -4178 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4177 0 R - /K [79] - /Pg 4715 0 R ->> -endobj - -4179 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4174 0 R - /K [4180 0 R] ->> -endobj - -4180 0 obj -<< - /Type /StructElem - /S /Reference - /P 4179 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4181 0 R] ->> -endobj - -4181 0 obj -<< - /Type /StructElem - /S /Link - /P 4180 0 R - /K [4182 0 R 77 78 << - /Type /OBJR - /Pg 4715 0 R - /Obj 4708 0 R - >>] - /Pg 4715 0 R ->> -endobj - -4182 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4181 0 R - /K [76] - /Pg 4715 0 R ->> -endobj - -4183 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4173 0 R - /K [4184 0 R] ->> -endobj - -4184 0 obj -<< - /Type /StructElem - /S /Reference - /P 4183 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4185 0 R] ->> -endobj - -4185 0 obj -<< - /Type /StructElem - /S /Link - /P 4184 0 R - /K [4186 0 R 74 75 << - /Type /OBJR - /Pg 4715 0 R - /Obj 4707 0 R - >>] - /Pg 4715 0 R ->> -endobj - -4186 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4185 0 R - /K [73] - /Pg 4715 0 R ->> -endobj - -4187 0 obj -<< - /Type /StructElem - /S /TOC - /P 4173 0 R - /K [4200 0 R 4196 0 R 4192 0 R 4188 0 R] ->> -endobj - -4188 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4187 0 R - /K [4189 0 R] ->> -endobj - -4189 0 obj -<< - /Type /StructElem - /S /Reference - /P 4188 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4190 0 R] ->> -endobj - -4190 0 obj -<< - /Type /StructElem - /S /Link - /P 4189 0 R - /K [4191 0 R 71 72 << - /Type /OBJR - /Pg 4715 0 R - /Obj 4706 0 R - >>] - /Pg 4715 0 R ->> -endobj - -4191 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4190 0 R - /K [70] - /Pg 4715 0 R ->> -endobj - -4192 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4187 0 R - /K [4193 0 R] ->> -endobj - -4193 0 obj -<< - /Type /StructElem - /S /Reference - /P 4192 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4194 0 R] ->> -endobj - -4194 0 obj -<< - /Type /StructElem - /S /Link - /P 4193 0 R - /K [4195 0 R 68 69 << - /Type /OBJR - /Pg 4715 0 R - /Obj 4705 0 R - >>] - /Pg 4715 0 R ->> -endobj - -4195 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4194 0 R - /K [67] - /Pg 4715 0 R ->> -endobj - -4196 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4187 0 R - /K [4197 0 R] ->> -endobj - -4197 0 obj -<< - /Type /StructElem - /S /Reference - /P 4196 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4198 0 R] ->> -endobj - -4198 0 obj -<< - /Type /StructElem - /S /Link - /P 4197 0 R - /K [4199 0 R 65 66 << - /Type /OBJR - /Pg 4715 0 R - /Obj 4704 0 R - >>] - /Pg 4715 0 R ->> -endobj - -4199 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4198 0 R - /K [64] - /Pg 4715 0 R ->> -endobj - -4200 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4187 0 R - /K [4201 0 R] ->> -endobj - -4201 0 obj -<< - /Type /StructElem - /S /Reference - /P 4200 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4202 0 R] ->> -endobj - -4202 0 obj -<< - /Type /StructElem - /S /Link - /P 4201 0 R - /K [4203 0 R 62 63 << - /Type /OBJR - /Pg 4715 0 R - /Obj 4703 0 R - >>] - /Pg 4715 0 R ->> -endobj - -4203 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4202 0 R - /K [61] - /Pg 4715 0 R ->> -endobj - -4204 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4173 0 R - /K [4205 0 R] ->> -endobj - -4205 0 obj -<< - /Type /StructElem - /S /Reference - /P 4204 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4206 0 R] ->> -endobj - -4206 0 obj -<< - /Type /StructElem - /S /Link - /P 4205 0 R - /K [4207 0 R 59 60 << - /Type /OBJR - /Pg 4715 0 R - /Obj 4702 0 R - >>] - /Pg 4715 0 R ->> -endobj - -4207 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4206 0 R - /K [58] - /Pg 4715 0 R ->> -endobj - -4208 0 obj -<< - /Type /StructElem - /S /TOC - /P 4173 0 R - /K [4217 0 R 4213 0 R 4209 0 R] ->> -endobj - -4209 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4208 0 R - /K [4210 0 R] ->> -endobj - -4210 0 obj -<< - /Type /StructElem - /S /Reference - /P 4209 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4211 0 R] ->> -endobj - -4211 0 obj -<< - /Type /StructElem - /S /Link - /P 4210 0 R - /K [4212 0 R 56 57 << - /Type /OBJR - /Pg 4715 0 R - /Obj 4701 0 R - >>] - /Pg 4715 0 R ->> -endobj - -4212 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4211 0 R - /K [55] - /Pg 4715 0 R ->> -endobj - -4213 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4208 0 R - /K [4214 0 R] ->> -endobj - -4214 0 obj -<< - /Type /StructElem - /S /Reference - /P 4213 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4215 0 R] ->> -endobj - -4215 0 obj -<< - /Type /StructElem - /S /Link - /P 4214 0 R - /K [4216 0 R 53 54 << - /Type /OBJR - /Pg 4715 0 R - /Obj 4700 0 R - >>] - /Pg 4715 0 R ->> -endobj - -4216 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4215 0 R - /K [52] - /Pg 4715 0 R ->> -endobj - -4217 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4208 0 R - /K [4218 0 R] ->> -endobj - -4218 0 obj -<< - /Type /StructElem - /S /Reference - /P 4217 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4219 0 R] ->> -endobj - -4219 0 obj -<< - /Type /StructElem - /S /Link - /P 4218 0 R - /K [4220 0 R 50 51 << - /Type /OBJR - /Pg 4715 0 R - /Obj 4699 0 R - >>] - /Pg 4715 0 R ->> -endobj - -4220 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4219 0 R - /K [49] - /Pg 4715 0 R ->> -endobj - -4221 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4173 0 R - /K [4222 0 R] ->> -endobj - -4222 0 obj -<< - /Type /StructElem - /S /Reference - /P 4221 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4223 0 R] ->> -endobj - -4223 0 obj -<< - /Type /StructElem - /S /Link - /P 4222 0 R - /K [4224 0 R 47 48 << - /Type /OBJR - /Pg 4715 0 R - /Obj 4698 0 R - >>] - /Pg 4715 0 R ->> -endobj - -4224 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4223 0 R - /K [46] - /Pg 4715 0 R ->> -endobj - -4225 0 obj -<< - /Type /StructElem - /S /TOC - /P 4173 0 R - /K [4230 0 R 4226 0 R] ->> -endobj - -4226 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4225 0 R - /K [4227 0 R] ->> -endobj - -4227 0 obj -<< - /Type /StructElem - /S /Reference - /P 4226 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4228 0 R] ->> -endobj - -4228 0 obj -<< - /Type /StructElem - /S /Link - /P 4227 0 R - /K [4229 0 R 44 45 << - /Type /OBJR - /Pg 4715 0 R - /Obj 4697 0 R - >>] - /Pg 4715 0 R ->> -endobj - -4229 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4228 0 R - /K [43] - /Pg 4715 0 R ->> -endobj - -4230 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4225 0 R - /K [4231 0 R] ->> -endobj - -4231 0 obj -<< - /Type /StructElem - /S /Reference - /P 4230 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4232 0 R] ->> -endobj - -4232 0 obj -<< - /Type /StructElem - /S /Link - /P 4231 0 R - /K [4233 0 R 41 42 << - /Type /OBJR - /Pg 4715 0 R - /Obj 4696 0 R - >>] - /Pg 4715 0 R ->> -endobj - -4233 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4232 0 R - /K [40] - /Pg 4715 0 R ->> -endobj - -4234 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4173 0 R - /K [4235 0 R] ->> -endobj - -4235 0 obj -<< - /Type /StructElem - /S /Reference - /P 4234 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4236 0 R] ->> -endobj - -4236 0 obj -<< - /Type /StructElem - /S /Link - /P 4235 0 R - /K [4237 0 R 38 39 << - /Type /OBJR - /Pg 4715 0 R - /Obj 4695 0 R - >>] - /Pg 4715 0 R ->> -endobj - -4237 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4236 0 R - /K [37] - /Pg 4715 0 R ->> -endobj - -4238 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4076 0 R - /K [4239 0 R] ->> -endobj - -4239 0 obj -<< - /Type /StructElem - /S /Reference - /P 4238 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4240 0 R] ->> -endobj - -4240 0 obj -<< - /Type /StructElem - /S /Link - /P 4239 0 R - /K [4241 0 R 35 36 << - /Type /OBJR - /Pg 4715 0 R - /Obj 4694 0 R - >>] - /Pg 4715 0 R ->> -endobj - -4241 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4240 0 R - /K [34] - /Pg 4715 0 R ->> -endobj - -4242 0 obj -<< - /Type /StructElem - /S /TOC - /P 4076 0 R - /K [4251 0 R 4247 0 R 4243 0 R] ->> -endobj - -4243 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4242 0 R - /K [4244 0 R] ->> -endobj - -4244 0 obj -<< - /Type /StructElem - /S /Reference - /P 4243 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4245 0 R] ->> -endobj - -4245 0 obj -<< - /Type /StructElem - /S /Link - /P 4244 0 R - /K [4246 0 R 32 33 << - /Type /OBJR - /Pg 4715 0 R - /Obj 4693 0 R - >>] - /Pg 4715 0 R ->> -endobj - -4246 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4245 0 R - /K [31] - /Pg 4715 0 R ->> -endobj - -4247 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4242 0 R - /K [4248 0 R] ->> -endobj - -4248 0 obj -<< - /Type /StructElem - /S /Reference - /P 4247 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4249 0 R] ->> -endobj - -4249 0 obj -<< - /Type /StructElem - /S /Link - /P 4248 0 R - /K [4250 0 R 29 30 << - /Type /OBJR - /Pg 4715 0 R - /Obj 4692 0 R - >>] - /Pg 4715 0 R ->> -endobj - -4250 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4249 0 R - /K [28] - /Pg 4715 0 R ->> -endobj - -4251 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4242 0 R - /K [4252 0 R] ->> -endobj - -4252 0 obj -<< - /Type /StructElem - /S /Reference - /P 4251 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4253 0 R] ->> -endobj - -4253 0 obj -<< - /Type /StructElem - /S /Link - /P 4252 0 R - /K [4254 0 R 26 27 << - /Type /OBJR - /Pg 4715 0 R - /Obj 4691 0 R - >>] - /Pg 4715 0 R ->> -endobj - -4254 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4253 0 R - /K [25] - /Pg 4715 0 R ->> -endobj - -4255 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4076 0 R - /K [4256 0 R] ->> -endobj - -4256 0 obj -<< - /Type /StructElem - /S /Reference - /P 4255 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4257 0 R] ->> -endobj - -4257 0 obj -<< - /Type /StructElem - /S /Link - /P 4256 0 R - /K [4258 0 R 23 24 << - /Type /OBJR - /Pg 4715 0 R - /Obj 4690 0 R - >>] - /Pg 4715 0 R ->> -endobj - -4258 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4257 0 R - /K [22] - /Pg 4715 0 R ->> -endobj - -4259 0 obj -<< - /Type /StructElem - /S /TOC - /P 4076 0 R - /K [4281 0 R 4277 0 R 4264 0 R 4260 0 R] ->> -endobj - -4260 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4259 0 R - /K [4261 0 R] ->> -endobj - -4261 0 obj -<< - /Type /StructElem - /S /Reference - /P 4260 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4262 0 R] ->> -endobj - -4262 0 obj -<< - /Type /StructElem - /S /Link - /P 4261 0 R - /K [4263 0 R 20 21 << - /Type /OBJR - /Pg 4715 0 R - /Obj 4689 0 R - >>] - /Pg 4715 0 R ->> -endobj - -4263 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4262 0 R - /K [19] - /Pg 4715 0 R ->> -endobj - -4264 0 obj -<< - /Type /StructElem - /S /TOC - /P 4259 0 R - /K [4273 0 R 4269 0 R 4265 0 R] ->> -endobj - -4265 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4264 0 R - /K [4266 0 R] ->> -endobj - -4266 0 obj -<< - /Type /StructElem - /S /Reference - /P 4265 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4267 0 R] ->> -endobj - -4267 0 obj -<< - /Type /StructElem - /S /Link - /P 4266 0 R - /K [4268 0 R 17 18 << - /Type /OBJR - /Pg 4715 0 R - /Obj 4688 0 R - >>] - /Pg 4715 0 R ->> -endobj - -4268 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4267 0 R - /K [16] - /Pg 4715 0 R ->> -endobj - -4269 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4264 0 R - /K [4270 0 R] ->> -endobj - -4270 0 obj -<< - /Type /StructElem - /S /Reference - /P 4269 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4271 0 R] ->> -endobj - -4271 0 obj -<< - /Type /StructElem - /S /Link - /P 4270 0 R - /K [4272 0 R 14 15 << - /Type /OBJR - /Pg 4715 0 R - /Obj 4687 0 R - >>] - /Pg 4715 0 R ->> -endobj - -4272 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4271 0 R - /K [13] - /Pg 4715 0 R ->> -endobj - -4273 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4264 0 R - /K [4274 0 R] ->> -endobj - -4274 0 obj -<< - /Type /StructElem - /S /Reference - /P 4273 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4275 0 R] ->> -endobj - -4275 0 obj -<< - /Type /StructElem - /S /Link - /P 4274 0 R - /K [4276 0 R 11 12 << - /Type /OBJR - /Pg 4715 0 R - /Obj 4686 0 R - >>] - /Pg 4715 0 R ->> -endobj - -4276 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4275 0 R - /K [10] - /Pg 4715 0 R ->> -endobj - -4277 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4259 0 R - /K [4278 0 R] ->> -endobj - -4278 0 obj -<< - /Type /StructElem - /S /Reference - /P 4277 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4279 0 R] ->> -endobj - -4279 0 obj -<< - /Type /StructElem - /S /Link - /P 4278 0 R - /K [4280 0 R 8 9 << - /Type /OBJR - /Pg 4715 0 R - /Obj 4685 0 R - >>] - /Pg 4715 0 R ->> -endobj - -4280 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4279 0 R - /K [7] - /Pg 4715 0 R ->> -endobj - -4281 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4259 0 R - /K [4282 0 R] ->> -endobj - -4282 0 obj -<< - /Type /StructElem - /S /Reference - /P 4281 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4283 0 R] ->> -endobj - -4283 0 obj -<< - /Type /StructElem - /S /Link - /P 4282 0 R - /K [4284 0 R 5 6 << - /Type /OBJR - /Pg 4715 0 R - /Obj 4684 0 R - >>] - /Pg 4715 0 R ->> -endobj - -4284 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4283 0 R - /K [4] - /Pg 4715 0 R ->> -endobj - -4285 0 obj -<< - /Type /StructElem - /S /TOCI - /P 4076 0 R - /K [4286 0 R] ->> -endobj - -4286 0 obj -<< - /Type /StructElem - /S /Reference - /P 4285 0 R - /A [<< - /O /Layout - /Placement /Block - >>] - /K [4287 0 R] ->> -endobj - -4287 0 obj -<< - /Type /StructElem - /S /Link - /P 4286 0 R - /K [4288 0 R 2 3 << - /Type /OBJR - /Pg 4715 0 R - /Obj 4683 0 R - >>] - /Pg 4715 0 R ->> -endobj - -4288 0 obj -<< - /Type /StructElem - /S /Lbl - /P 4287 0 R - /K [1] - /Pg 4715 0 R ->> -endobj - -4289 0 obj -<< - /Type /StructElem - /S /H1 - /P 103 0 R - /T (Contents) - /K [0] - /Pg 4715 0 R ->> -endobj - -4290 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [12 13 4296 0 R 15 16 4295 0 R 18 19 4294 0 R 21 22 23 4293 0 R 25 26 27 4292 0 R 29 30 31 32 33 34 35 4291 0 R 37 38 39] - /Pg 4681 0 R ->> -endobj - -4291 0 obj -<< - /Type /StructElem - /S /Em - /P 4290 0 R - /K [36] - /Pg 4681 0 R ->> -endobj - -4292 0 obj -<< - /Type /StructElem - /S /Em - /P 4290 0 R - /K [28] - /Pg 4681 0 R ->> -endobj - -4293 0 obj -<< - /Type /StructElem - /S /Em - /P 4290 0 R - /K [24] - /Pg 4681 0 R ->> -endobj - -4294 0 obj -<< - /Type /StructElem - /S /Em - /P 4290 0 R - /K [20] - /Pg 4681 0 R ->> -endobj - -4295 0 obj -<< - /Type /StructElem - /S /Em - /P 4290 0 R - /K [17] - /Pg 4681 0 R ->> -endobj - -4296 0 obj -<< - /Type /StructElem - /S /Em - /P 4290 0 R - /K [14] - /Pg 4681 0 R ->> -endobj - -4297 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [11] - /Pg 4681 0 R ->> -endobj - -4298 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [4300 0 R 8 4299 0 R 10] - /Pg 4681 0 R ->> -endobj - -4299 0 obj -<< - /Type /StructElem - /S /Span - /P 4298 0 R - /A [<< - /O /Layout - /BaselineShift 3.1614 - /LineHeight 3.96 - >>] - /K [9] - /Pg 4681 0 R ->> -endobj - -4300 0 obj -<< - /Type /StructElem - /S /Span - /P 4298 0 R - /A [<< - /O /Layout - /BaselineShift 3.1614 - /LineHeight 3.96 - >>] - /K [7] - /Pg 4681 0 R ->> -endobj - -4301 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [1 4304 0 R 3 4303 0 R 5 4302 0 R] - /Pg 4681 0 R ->> -endobj - -4302 0 obj -<< - /Type /StructElem - /S /Span - /P 4301 0 R - /A [<< - /O /Layout - /BaselineShift 3.1614 - /LineHeight 3.96 - >>] - /K [6] - /Pg 4681 0 R ->> -endobj - -4303 0 obj -<< - /Type /StructElem - /S /Span - /P 4301 0 R - /A [<< - /O /Layout - /BaselineShift 3.1614 - /LineHeight 3.96 - >>] - /K [4] - /Pg 4681 0 R ->> -endobj - -4304 0 obj -<< - /Type /StructElem - /S /Span - /P 4301 0 R - /A [<< - /O /Layout - /BaselineShift 3.1614 - /LineHeight 3.96 - >>] - /K [2] - /Pg 4681 0 R ->> -endobj - -4305 0 obj -<< - /Type /StructElem - /S /P - /P 103 0 R - /K [0] - /Pg 4681 0 R ->> -endobj - -4306 0 obj -<< - /Type /PageLabel - /S /D - /St 1 ->> -endobj - -4307 0 obj -<< - /Type /PageLabel - /S /D - /St 2 ->> -endobj - -4308 0 obj -<< - /Type /PageLabel - /S /D - /St 3 ->> -endobj - -4309 0 obj -<< - /Type /PageLabel - /S /D - /St 4 ->> -endobj - -4310 0 obj -<< - /Type /PageLabel - /S /D - /St 5 ->> -endobj - -4311 0 obj -<< - /Type /PageLabel - /S /D - /St 6 ->> -endobj - -4312 0 obj -<< - /Type /PageLabel - /S /D - /St 7 ->> -endobj - -4313 0 obj -<< - /Type /PageLabel - /S /D - /St 8 ->> -endobj - -4314 0 obj -<< - /Type /PageLabel - /S /D - /St 9 ->> -endobj - -4315 0 obj -<< - /Type /PageLabel - /S /D - /St 10 ->> -endobj - -4316 0 obj -<< - /Type /PageLabel - /S /D - /St 11 ->> -endobj - -4317 0 obj -<< - /Type /PageLabel - /S /D - /St 12 ->> -endobj - -4318 0 obj -<< - /Type /PageLabel - /S /D - /St 13 ->> -endobj - -4319 0 obj -<< - /Type /PageLabel - /S /D - /St 14 ->> -endobj - -4320 0 obj -<< - /Type /PageLabel - /S /D - /St 15 ->> -endobj - -4321 0 obj -<< - /Type /PageLabel - /S /D - /St 16 ->> -endobj - -4322 0 obj -<< - /Type /PageLabel - /S /D - /St 17 ->> -endobj - -4323 0 obj -<< - /Type /PageLabel - /S /D - /St 18 ->> -endobj - -4324 0 obj -<< - /Type /PageLabel - /S /D - /St 19 ->> -endobj - -4325 0 obj -<< - /Type /PageLabel - /S /D - /St 20 ->> -endobj - -4326 0 obj -<< - /Type /PageLabel - /S /D - /St 21 ->> -endobj - -4327 0 obj -<< - /Type /PageLabel - /S /D - /St 22 ->> -endobj - -4328 0 obj -<< - /Type /PageLabel - /S /D - /St 23 ->> -endobj - -4329 0 obj -<< - /Type /PageLabel - /S /D - /St 24 ->> -endobj - -4330 0 obj -<< - /Type /PageLabel - /S /D - /St 25 ->> -endobj - -4331 0 obj -<< - /Type /PageLabel - /S /D - /St 26 ->> -endobj - -4332 0 obj -<< - /Type /PageLabel - /S /D - /St 27 ->> -endobj - -4333 0 obj -<< - /Type /PageLabel - /S /D - /St 28 ->> -endobj - -4334 0 obj -<< - /Type /PageLabel - /S /D - /St 29 ->> -endobj - -4335 0 obj -<< - /Type /PageLabel - /S /D - /St 30 ->> -endobj - -4336 0 obj -<< - /Type /PageLabel - /S /D - /St 31 ->> -endobj - -4337 0 obj -<< - /Type /PageLabel - /S /D - /St 32 ->> -endobj - -4338 0 obj -<< - /Type /PageLabel - /S /D - /St 33 ->> -endobj - -4339 0 obj -<< - /Type /PageLabel - /S /D - /St 34 ->> -endobj - -4340 0 obj -<< - /Type /PageLabel - /S /D - /St 35 ->> -endobj - -4341 0 obj -<< - /Type /PageLabel - /S /D - /St 36 ->> -endobj - -4342 0 obj -<< - /Type /PageLabel - /S /D - /St 37 ->> -endobj - -4343 0 obj -<< - /Type /PageLabel - /S /D - /St 38 ->> -endobj - -4344 0 obj -<< - /Type /PageLabel - /S /D - /St 39 ->> -endobj - -4345 0 obj -<< - /Type /PageLabel - /S /D - /St 40 ->> -endobj - -4346 0 obj -<< - /Type /PageLabel - /S /D - /St 41 ->> -endobj - -4347 0 obj -<< - /Type /PageLabel - /S /D - /St 42 ->> -endobj - -4348 0 obj -<< - /Type /PageLabel - /S /D - /St 43 ->> -endobj - -4349 0 obj -<< - /Type /PageLabel - /S /D - /St 44 ->> -endobj - -4350 0 obj -<< - /Type /PageLabel - /S /D - /St 45 ->> -endobj - -4351 0 obj -<< - /Type /PageLabel - /S /D - /St 46 ->> -endobj - -4352 0 obj -<< - /Type /PageLabel - /S /D - /St 47 ->> -endobj - -4353 0 obj -<< - /Type /PageLabel - /S /D - /St 48 ->> -endobj - -4354 0 obj -<< - /Type /Font - /Subtype /Type0 - /BaseFont /PGOLQH+TeXGyrePagella-Bold-Identity-H - /Encoding /Identity-H - /DescendantFonts [4355 0 R] - /ToUnicode 4358 0 R ->> -endobj - -4355 0 obj -<< - /Type /Font - /Subtype /CIDFontType0 - /BaseFont /PGOLQH+TeXGyrePagella-Bold - /CIDSystemInfo << - /Registry (Adobe) - /Ordering (Identity) - /Supplement 0 - >> - /FontDescriptor 4357 0 R - /DW 0 - /W [0 0 500 1 1 778 2 2 250 3 3 611 4 4 389 5 6 556 7 7 500 8 8 889 9 9 333 10 11 611 12 12 389 13 14 611 15 15 333 16 16 500 17 17 333 18 18 722 19 19 444 20 20 611 21 21 556 22 22 500 23 23 611 24 24 778 25 25 556 26 26 500 27 27 833 28 28 333 29 29 389 30 30 444 31 31 250 32 32 611 33 35 500 36 36 722 37 37 611 38 38 709 39 41 500 42 42 1000 43 43 667 44 44 1000 45 45 500 46 46 833 47 48 611 49 50 500 51 51 611 52 52 833 53 53 500 54 55 490 56 56 510.99997 57 57 833 58 58 250 59 59 833 60 60 250 61 62 778] ->> -endobj - -4356 0 obj -<< - /Length 13 - /Filter /FlateDecode ->> -stream -x # -endstream -endobj - -4357 0 obj -<< - /Type /FontDescriptor - /FontName /PGOLQH+TeXGyrePagella-Bold - /Flags 131076 - /FontBBox [10 -266 988 747] - /ItalicAngle 0 - /Ascent 720 - /Descent -258 - /CapHeight 681 - /StemV 168.6 - /CIDSet 4356 0 R - /FontFile3 4359 0 R ->> -endobj - -4358 0 obj -<< - /Length 1482 - /Type /CMap - /WMode 0 ->> -stream -%!PS-Adobe-3.0 Resource-CMap -%%DocumentNeededResources: procset CIDInit -%%IncludeResource: procset CIDInit -%%BeginResource: CMap Custom -%%Title: (Custom Adobe Identity 0) -%%Version: 1 -%%EndComments -/CIDInit /ProcSet findresource begin -12 dict begin -begincmap -/CIDSystemInfo 3 dict dup begin - /Registry (Adobe) def - /Ordering (Identity) def - /Supplement 0 def -end def -/CMapName /Custom def -/CMapVersion 1 def -/CMapType 0 def -/WMode 0 def -1 begincodespacerange -<0000> -endcodespacerange -62 beginbfchar -<0001> <0041> -<0002> <0020> -<0003> <0050> -<0004> <0072> -<0005> <006F> -<0006> <0067> -<0007> <0061> -<0008> <006D> -<0009> <0069> -<000A> <006E> -<000B> <0064> -<000C> <0066> -<000D> <0053> -<000E> <0070> -<000F> <0074> -<0010> <0065> -<0011> <006C> -<0012> <0043> -<0013> <0073> -<0014> <0062> -<0015> <0079> -<0016> <0031> -<0017> <006B> -<0018> <0055> -<0019> <0076> -<001A> <0032> -<001B> <0044> -<001C> <002D> -<001D> <0049> -<001E> <0063> -<001F> <002E> -<0020> <0075> -<0021> <0034> -<0022> <0037> -<0023> <0033> -<0024> <0052> -<0025> <0045> -<0026> <00660066> -<0027> <0039> -<0028> <0035> -<0029> <0036> -<002A> <0057> -<002B> <0054> -<002C> <004D> -<002D> <0078> -<002E> <0047> -<002F> <0068> -<0030> <00660069> -<0031> <0038> -<0032> <0030> -<0033> <004C> -<0034> <0048> -<0035> <007A> -<0036> <0028> -<0037> <0029> -<0038> <002F> -<0039> <004F> -<003A> <00A0> -<003B> <0077> -<003C> <003A> -<003D> <004B> -<003E> <0056> -endbfchar -endcmap -CMapName currentdict /CMap defineresource pop -end -end -%%EndResource -%%EOF -endstream -endobj - -4359 0 obj -<< - /Length 6443 - /Filter /FlateDecode - /Subtype /CIDFontType0C ->> -stream -xY TS׺N74OQVm8kE<"3$0Ϩ FAԶõRZǷy}u>}_1cBpe]l|<0U!^0ZDf*X<)czT@h3幩-6KfJl"Lڶ+d|<8/2vuHhlod;C­.VB1VY7yYm4#<Y - + -qۭoqܺyVN~` y#3Ra-[yxyɽLy#Wn;O xJ ,5*&ǔ4 ֘Bl(ߒْq_3 $>}<^ΕysL7B~0KKD];vh܆q>%nl~y>ugӞ5wson3wj| ]M|o N/|5ysMqrt{SMyUg'Á>QƘf}#ky PpŐqIRh hEbZQ58}|w:)OLGhIHVB[l[?٧A -?l"q.TaSW+yqyi&CCwZeUPXA+tȓD^$G8C@rbc*.9ԦVBJ"eqǍS p -zQFlG ~y_Ź?f؂ Nړ4acu3dRfpݳݸ~0ϼUGj6_N86ɮ`33 ]R*>*8L*pp{{]]aA gΑ1} -]Mە` ޅa)Mt#$EA4)IaJ[+*p$Y ־lki]KNRюrQ%kBd]XJ>_Ն.8C6T|m0d]DTRSQU5-cDj2 -~[f+II`mmڡ>>]Av1]KyJQZC崫8FATB+vlI݃)ʇ`NUP dIAGKel3S4P cЩ:f!?iuyY2+?K;@6Sk!1|'\tt_tD06wFQ*j|xK]Хz<0 -cH<9VN+tƳ6`54ȃ|d҅rJʿ"]8k'cZMApJKؑ;!"kCچqw^7Ǟe͝h(Nt`Ϧ_cO3V(0g~>◾-πRe%V -LCBC)qt.b ^htⲬ)(NvXvLv]>XMvӐ0ul"O*JU8^:3QErnA(Ψ%pe%kCD&M3-쨻8,6:?Bu*iJw['?0?mëh>שUt~{V5efdeE@-K'{ntŶxS~q;8;{f7sY'6 hAᡸ@p^u6} VdM҅,߀_.i6ݣ,?qUG\f^&(*?tY?/eק';QKtɠ$գH ~$y'jh(m:ܽo֯*}CgTt(e+ :ͧgRITr"%8U9 \h{͝Q*a~+ضVƝ7~1$<ZEEo+2_ P5ܭm͐RUw2v# 7{\En;4|ao=@͸]d(o=(bK=ZO;;jrUv90 Àק=WNM3Lu-33&Lm&j)~ 뚳98&&uebM T[-SA h'Fs6ݧ{fNqEY&>/2 %×vꋁֵͬ!])叁FGk!pQpFT}}J̞F -\˰K _h]YԠ+*9K-\ t1L;;MXnš)=Ecs8+U .jgYE*%)UŖSF>RҕWUPCqCZZkZe*_`Z%)RA -$*l #UŐy9b5m7-]GnZz?45`N⺪ka - 554SG6U\8oomi,[lPOrj`K)c)Z(F\Wk 4 "I愺_/\^-~rNU1 % -;\#85k o|O WjKԇ^׮=,u5pUg)a >'74Ӕ<$7?я$B6pF/eM^[Kve4pZ3m>x'S{xЀѱYdX-p!ΐ!N#~ 2r'n<~βZ4{K39]C1VHvDeB"s u - t! {p43O8 M1-:[Lzf폲Ȯ(gI$ߘ >;wN tHR'hhJlK0=;VSzf&/e3d8;[ʷn#Ɲƚq< -(qܽ˗.9$8 E/g,!(>f }k}>Q@@Hwrg`맃:-Vڈ!J'#Mǀw|mekwJ3w 878KyX\~wPeS -h-kn W r WEKjj_&VêTHdU"5Ʒ&6FM6} 9UB)7aMG<m -kch¢Wv9mEm3ű#1fRx?+bO[DsM۔s t 3%6RT?8,N՛`A%nY -ܢ`|F"H=Ѭ;+p^JYHD/\Phdm2[xB<*OO r"AEi9PmιW79>D-4@YBzMaO1+~pI߰ZSjRUKlq64Źwь5 jj+f6SF.)+Ө-Щӯ=dރVh{< yl:&˾k(* 9QܡܡK*Jҡ,N0&]b݁Wy5_Y^ḓΔm\]"Pl ,P%=Y,)'b8ХDMf6 ]$u@jcv['UFqx>]'3ve"=ynŵ ~ez]$I)/7Z=~bOqe~GkpWh.}U{K)7|k/ZD2Xs])w5unN(_ tdNh ɖSvoG|7SNި ; -Mll'l@ :DԀ<8;gKHP' >pj{*X[omMX -LJQr|*DP8 -%~E6-&L7D| -p6x`!UzOZ^HLuN1퉗`%j7L ;0M4|BLf<$vي#1 f!"5m?V >` ^(MznmmNG2IDW5F Er11MB&ql -2/ǣ7l=2asuї.;YhAo-%@t]>]fs؜Ye`siD1?>;SOקҳpι/d,|9i飯L`%`N ,-7lPS.B(THlv<: Q}`qCƻCB!o٢g8q8 -0CDY`d+هyFWWkKY&AǺ9^d34Sǁ&w)Ep(4.*/9'<2:>|!Φ8}@vӑXH - -ԴZ)U~j?SaI -Le*Tԇr /퀅ٞ=*K:Z/zLӹ)Tnn&Ƴcho<::^LC5ƇϏv:0rI*> e* P$ C]Be;#?Kn -?aI|T)KbPLx HaC~cQ=E/c)/,<!D(('ʬOƉ$h r rԴ4Qr'pV;Il HK -endstream -endobj - -4360 0 obj -<< - /Type /Font - /Subtype /Type0 - /BaseFont /HRSIWM+TeXGyrePagella-Regular-Identity-H - /Encoding /Identity-H - /DescendantFonts [4361 0 R] - /ToUnicode 4364 0 R ->> -endobj - -4361 0 obj -<< - /Type /Font - /Subtype /CIDFontType0 - /BaseFont /HRSIWM+TeXGyrePagella-Regular - /CIDSystemInfo << - /Registry (Adobe) - /Ordering (Identity) - /Supplement 0 - >> - /FontDescriptor 4363 0 R - /DW 0 - /W [0 0 500 1 1 667 2 2 287 3 3 333 4 4 500 5 5 582 6 6 250 7 7 525 8 8 582 9 9 500 10 10 250 11 11 500 12 12 1000 13 13 479 14 14 667 15 15 556 16 16 613 17 17 556 18 18 709 19 19 603 20 20 946 21 21 546 22 22 611 23 23 395 24 24 424 25 25 326 26 26 834 27 27 1000 28 28 883 29 29 601 30 30 291 31 31 333 32 32 565 33 33 444 34 34 560 35 35 250 36 36 553 37 37 250 38 38 278 39 39 623 40 40 500 41 41 516 42 42 556 43 43 778 44 44 608 45 45 605 46 46 774 47 47 500 48 48 611 49 49 604 50 50 832 51 52 500 53 53 763 54 55 500 56 56 668 57 58 500 59 59 556 60 60 831 61 61 337 62 62 611 63 63 500 64 64 778 65 65 786 66 66 726 67 67 722 68 69 428 70 70 560 71 72 456 73 73 250 74 74 897 75 75 500 76 76 611 77 77 333 78 78 250 79 79 234 80 80 486 81 82 500 83 83 208 84 84 480 85 85 500 86 87 441 88 88 500 89 89 278 90 90 208 91 91 786 92 92 667 93 93 444 94 94 486 95 95 278 96 96 747 97 97 371 98 98 500 99 99 479 100 100 603] ->> -endobj - -4362 0 obj -<< - /Length 13 - /Filter /FlateDecode ->> -stream -x~Z -endstream -endobj - -4363 0 obj -<< - /Type /FontDescriptor - /FontName /HRSIWM+TeXGyrePagella-Regular - /Flags 131076 - /FontBBox [-40 -283 1000 750] - /ItalicAngle 0 - /Ascent 726 - /Descent -281 - /CapHeight 692 - /StemV 95.4 - /CIDSet 4362 0 R - /FontFile3 4365 0 R ->> -endobj - -4364 0 obj -<< - /Length 2027 - /Type /CMap - /WMode 0 ->> -stream -%!PS-Adobe-3.0 Resource-CMap -%%DocumentNeededResources: procset CIDInit -%%IncludeResource: procset CIDInit -%%BeginResource: CMap Custom -%%Title: (Custom Adobe Identity 0) -%%Version: 1 -%%EndComments -/CIDInit /ProcSet findresource begin -12 dict begin -begincmap -/CIDSystemInfo 3 dict dup begin - /Registry (Adobe) def - /Ordering (Identity) def - /Supplement 0 def -end def -/CMapName /Custom def -/CMapVersion 1 def -/CMapType 0 def -/WMode 0 def -1 begincodespacerange -<0000> -endcodespacerange -100 beginbfchar -<0001> <0059> -<0002> <0069> -<0003> <0066> -<0004> <0061> -<0005> <006E> -<0006> <0020> -<0007> <0053> -<0008> <0068> -<0009> <0031> -<000A> <002C> -<000B> <0032> -<000C> <0057> -<000D> <0065> -<000E> <005A> -<000F> <0067> -<0010> <0054> -<0011> <0079> -<0012> <0043> -<0013> <0075> -<0014> <004D> -<0015> <006F> -<0016> <0064> -<0017> <0072> -<0018> <0073> -<0019> <0074> -<001A> <0077> -<001B> <2014> -<001C> <006D> -<001D> <0070> -<001E> <006C> -<001F> <002D> -<0020> <0076> -<0021> <0063> -<0022> <0071> -<0023> <002E> -<0024> <0062> -<0025> <003A> -<0026> <2019> -<0027> <00660066> -<0028> <007A> -<0029> <0078> -<002A> <006B> -<002B> <0041> -<002C> <0066006C> -<002D> <00660069> -<002E> <0044> -<002F> <0034> -<0030> <0045> -<0031> <0050> -<0032> <0048> -<0033> <0035> -<0034> <0033> -<0035> <0047> -<0036> <0036> -<0037> <0037> -<0038> <0052> -<0039> <0038> -<003A> <0039> -<003B> <0046> -<003C> <004E> -<003D> <0049> -<003E> <004C> -<003F> <0030> -<0040> <0055> -<0041> <004F> -<0042> <004B> -<0043> <0056> -<0044> <005B> -<0045> <005D> -<0046> <2022> -<0047> <0028> -<0048> <0029> -<0049> <003B> -<004A> <006600660069> -<004B> <2013> -<004C> <0042> -<004D> <004A> -<004E> <00A0> -<004F> <006A> -<0050> <002F> -<0051> <201C> -<0052> <201D> -<0053> <007C> -<0054> <2218> -<0055> <005F> -<0056> <007B> -<0057> <007D> -<0058> <00E4> -<0059> <2018> -<005A> <0027> -<005B> <0051> -<005C> <0058> -<005D> <003F> -<005E> <005C> -<005F> <0021> -<0060> <0040> -<0061> <0022> -<0062> <00E1> -<0063> <00E9> -<0064> <00FC> -endbfchar -endcmap -CMapName currentdict /CMap defineresource pop -end -end -%%EndResource -%%EOF -endstream -endobj - -4365 0 obj -<< - /Length 8677 - /Filter /FlateDecode - /Subtype /CIDFontType0C ->> -stream -xz tSwc8QC^e( <-PsKG:#$MZZ:mNt3DdEox[fݛ3[`6h@ xaEa]__`i -?2~@%X+ 'W #3]cafGncLu)bqﳕL}nNYV\Af\qYAǰwh$^Z€2q[)ӆF[oM~)PH4&hFUiZQdcȆHW+jH_bɂE\賓[Ǥ>r1?X./y>v[a_;0zEQJ7qPlS9F Ç2ȍ/{pFk RGz~/`Bl6FӘG.R<$a s@%򼠾Kf+g5g 8Bl,4Ȅ H+[p)ڐh|m;rh%هKp\abcK?{͘*bR^\IqT?:L-k8_ϳ+-m\ N( _k.'=PC+`$JxCl > -Ҥؽ+QNًl:H!GR㪩yȊp{[2eCةq Ӕk)dZQrGpT;%l7U*AU,,E?),ϴ1۞>Pژ[^QidkP6X -6~UacOCt:S?lr -e -MuI-0`_sY;TAiT4_XL  -;6:* W?T , ?~[%u $~Id{(+~'Ϥr+xaqSGxՠ?Ce(n[(;" >JV`Fێj/l{|k{J&qy9r86w.\_=e^Zi4i**;!_W@@Ic6*؁lt -ܯ|`%ߺlp}ݻ" r#-$2. )F -- )iHꃖ=k(˩ZrvW˥k[j]7mJb-% FUPRСB8tznbn -H@ @qSh'L UHUY@MCʼ- \>\ W/UEFL$^lqm ԝY4 - oWvbuRt=Hy 5h@*/oJ&pYBvve8ܧɫ:$\U" n*xMʼ-6e_ù{36p^(m`pnhO.+D余'ẽ0=d 3_jWdfGxsCf/ri2K ޹>uB 4dГpLm熕n;" -\W x_zx^dv|죀H0[a{(@a+5SԩT &1; y7|IH5P\K]~{$QO4k ]?n_Vy&6r? g*t0ۈ`vbVuP !gV *bUa%HP2ƎˮVKQwWNcÙhw/dn⇷ GoAo),[Lj߶O uW 8jJԥ` -OȖz?&D)[Zy0~[%E!& rOQ&R宨 umtoYK kT;SoT7B;GH{R '(m 2ۋn0\xuK6NeG^˿SeQ#.0pW;[_PW$Q=}JΌl|h5d][, "au6= Ûг5,;Tη Wjyj:e>"Xs1 ~U^eEPӧ -%<ph6"4i$0'{G -> 7B/5(A]3?NT)Z+dfjhɑlWzvRo7yj%iP"&f a"l&2lJ,'F]Nr1 E.*gpZa 5?"%巤f/:MA :);zv[@C]E~o)D7,ذp:g:Ttp|cRUڈq]wC'?b˷T,=5"cXe| C>;YPv -'(:c.\7QpOo`)Ed3r(w1ߎ.-zpui -cĔ;>{?~6z}&vaKuƓ:m - V+IJDqnN `)W -x+T ^jo5*I|QǑ+{I!PaAXnRʵl?Kˢ+(λ/<>hД Ъkܽ׹# 6úU *a HC~p[,6){4"+TzD˓+bjԭjcEpL_SGCƢmi<"b;6d%0~OO:~]55e 2pD`TP| )+H' -OvK}+ eF?L†EwOK'z[aDx!{t -а4ػ4 쫬>s [.l~4g_2rs 9@{YAfO~e}1 Rቇ?X/k1[Ђ-i֮}NV_QK6G%~+ӿE'PB|CfFk#<ÃvpdN߈x# -_5M0;G.M 5iTaHRcH0ʭ0fU "@qy ?O*a3sCeUi@Ę?9@JQzGKlUbkn5$ZE٫GD40Ü a %(𬦌 M@IrQil> Q 40NaUĿdD{SrpOM&h{6;JLGPD7ǫ2 |ḑ(-Kj'Zl7k\FoY -^Mz/4@㽠%ڨȆNj8D$19 -b!&<>@I<M|OF | j+X{%i-^T[L-i$zmQޑ!߄ S*% /)e{r ͕Zzu]'y&mMD/HQPbe,fk .Q]{>ʆh r=X ԫ֒Y -#vVbWsn*D5@o\>2"4;Ri;)NT\EGg]\ ka%R4Պ- -ҢH>pA$8^aXlkkс2M64(Ȇ2%5!6"KmvSkSفlVۙ{ NP -Q9eQN).|<9S.Zei=^f8 gt$0s Q+(ntÉ:Q bkH\$h ģ4l$O mme@]̘pR&MtWD"o՘r"L]Y_]~ץ+SB\i9x1gAɽ$ 7(un3&E`y3eC* Iz?Om]8-XFۦ$<]Pׯm߰^xVp1Fyy&»-_ؚt]'pNg:DP֤%tR98L:(wB +@etR|L%@m */.r- Wj[!.}[&ܸ{&PccYD^b\P$D=(a7np-<7Rq -n9d|Øjs -ۊہ~ѵ7m$7}I!5B!z,%(;^㺒2EQ \G582 -%Ū`T&ޕHLQ$BafS&sx0jn^Lq9FR)TA1F6\C;ȡN8 ח``Vʵ5 ->@~g9}j 0 e#Nzf?53;ñ&8J/}px${vQ2XTZН1!Un(wL>/o=B{~uv`CY]ٴGZr-g>oV>UXҙ>@"(c*Jc@`"d<z y>9V44M}Jr?GU*u| _BMiNLA zuIHϞw2%;|ޣikAy/ -ckjaa#Y9hٻW__Q?3O)_s 25>3|U`(ٹ\΄܂pbӓ }.b#-arA*9mySK`])07&={8эY,U/[+Wt0f7=&Y(.4?:O;R)UA! -MCB4$B]N a<)+.(U& r|W#ABp*X1vW}7{@k/Nb,iwlOUU Rt0#+WCݕ*wpwi -REzP߇mIbfjv2vPګ&)i~ !Dž8i`ԫR R)z5{׉֟nfqWMIPC<īk 0㳷1\žz1Jg&Qcab&9e&GIMeoɴd'Yerq"8#w'"\619QK)Ld7M -LzK -].QM@z L}`2)>I -wM6MdL/*RUl6/ҿC/դ]L !_C@ej#`<8ܯ07d Iaͅ l-)9kv L;vA4BQl}>m:Ts ->.yks{݆!o-w箑AZ}Qz&MVnHU[*T8dQ7DT4"!mno ۰Gb~=ILUB*R}8e* n@}; zL5׏~} - kvŋM-'e|`MS$a+)mK6U>Z?!EkSpT\TYj膋+t^izkaeSEo{̓=pjlɯK5M:^sGGiK>==}i+XTxe2>)6w ;6wyΕ]h߲|z<-F^6;?D~kT͖KfwnJgqwC}oP+)WP[-hhQh^,(44Rr;u)C+6dJc6:RI4Cb.n%51 qU,lY3W9.Ԧ7gqlX@+[)?807e -ޔMEm:4uJ#r S!s rT9bk#!%bu Cj"IBdddic`El(ztP]DNhe#5;ZXYj=š̓m`$3:&XAw2D|  Qx;7KIzYEV |] üV/]8<'3J 2Ix^BdCUFϿ>ogkrWë)ɤh{#cubMd-."}bCMoI'9-P%x5PHKs-,^)ۄ$t]ފU+JKw pg`#?.7ik6f0ne$ya HA@͞b:efw~))>2S5>V26¶Yb{R(9[VV_WP N1d]Ovpɿ,gpɰF*Ր6K|O -RR!"vB}]}11>茺zf׭{'돊ob]faߐ -endstream -endobj - -4366 0 obj -<< - /Type /Font - /Subtype /Type0 - /BaseFont /VHGYFM+TeXGyrePagella-Italic-Identity-H - /Encoding /Identity-H - /DescendantFonts [4367 0 R] - /ToUnicode 4370 0 R ->> -endobj - -4367 0 obj -<< - /Type /Font - /Subtype /CIDFontType0 - /BaseFont /VHGYFM+TeXGyrePagella-Italic - /CIDSystemInfo << - /Registry (Adobe) - /Ordering (Identity) - /Supplement 0 - >> - /FontDescriptor 4369 0 R - /DW 0 - /W [0 2 500 3 3 556 4 4 444 5 5 778 6 6 278 7 7 407 8 8 250 9 9 444 10 10 500 11 11 389 12 12 333 13 14 389 15 15 278 16 16 463 17 17 500 18 18 518 19 19 667 20 20 278 21 21 556 22 23 500 24 24 528 25 25 500 26 26 611 27 27 333 28 28 556 29 29 333 30 30 444 31 31 778 32 32 722 33 33 444 34 34 667 35 35 841 36 36 545 37 37 611 38 38 278 39 39 556 40 40 463 41 41 667 42 42 722 43 43 944 44 44 778 45 45 760 46 46 611 47 47 722 48 48 778 49 51 500 52 52 250 53 53 611 54 54 778 55 55 250 56 56 556 57 57 333 58 58 500 59 59 250 60 60 722 61 61 500 62 63 456 64 68 500 69 69 944 70 70 486 71 71 778 72 72 722 73 73 233 74 74 1000] ->> -endobj - -4368 0 obj -<< - /Length 13 - /Filter /FlateDecode ->> -stream -x -6 -endstream -endobj - -4369 0 obj -<< - /Type /FontDescriptor - /FontName /VHGYFM+TeXGyrePagella-Italic - /Flags 131140 - /FontBBox [-162 -276 1010 744] - /ItalicAngle -10 - /Ascent 733 - /Descent -276 - /CapHeight 692 - /StemV 95.4 - /CIDSet 4368 0 R - /FontFile3 4371 0 R ->> -endobj - -4370 0 obj -<< - /Length 1654 - /Type /CMap - /WMode 0 ->> -stream -%!PS-Adobe-3.0 Resource-CMap -%%DocumentNeededResources: procset CIDInit -%%IncludeResource: procset CIDInit -%%BeginResource: CMap Custom -%%Title: (Custom Adobe Identity 0) -%%Version: 1 -%%EndComments -/CIDInit /ProcSet findresource begin -12 dict begin -begincmap -/CIDSystemInfo 3 dict dup begin - /Registry (Adobe) def - /Ordering (Identity) def - /Supplement 0 def -end def -/CMapName /Custom def -/CMapVersion 1 def -/CMapType 0 def -/WMode 0 def -1 begincodespacerange -<0000> -endcodespacerange -74 beginbfchar -<0001> <0064> -<0002> <0079> -<0003> <006E> -<0004> <0061> -<0005> <006D> -<0006> <0069> -<0007> <0063> -<0008> <0020> -<0009> <006F> -<000A> <0070> -<000B> <0073> -<000C> <0074> -<000D> <0065> -<000E> <0072> -<000F> <006C> -<0010> <0062> -<0011> <0076> -<0012> <00660066> -<0013> <0043> -<0014> <0066> -<0015> <0075> -<0016> <0068> -<0017> <0067> -<0018> <00660069> -<0019> <0078> -<001A> <0054> -<001B> <0049> -<001C> <0053> -<001D> <002D> -<001E> <007A> -<001F> <0044> -<0020> <0077> -<0021> <006B> -<0022> <004B> -<0023> <25B7> -<0024> <0066006C> -<0025> <0045> -<0026> <006A> -<0027> <004C> -<0028> <0071> -<0029> <0052> -<002A> <0041> -<002B> <004D> -<002C> <0051> -<002D> <002B> -<002E> <0050> -<002F> <0047> -<0030> <004E> -<0031> <0032> -<0032> <0030> -<0033> <0031> -<0034> <003A> -<0035> <0042> -<0036> <004F> -<0037> <002E> -<0038> <0046> -<0039> <004A> -<003A> <0034> -<003B> <002C> -<003C> <0056> -<003D> <0035> -<003E> <0028> -<003F> <0029> -<0040> <0039> -<0041> <0033> -<0042> <0038> -<0043> <0036> -<0044> <0037> -<0045> <0057> -<0046> <002F> -<0047> <0055> -<0048> <0058> -<0049> <0027> -<004A> <2014> -endbfchar -endcmap -CMapName currentdict /CMap defineresource pop -end -end -%%EndResource -%%EOF -endstream -endobj - -4371 0 obj -<< - /Length 8773 - /Filter /FlateDecode - /Subtype /CIDFontType0C ->> -stream -xwX! Udi6qW$^`b!@G{Hlvc8&iFCzpf߶~~Ctt=GϹ}K3fxxzz> ܔ% -%$-ٜ| 溟>1ZCI3ϢG[̛HKLVpH^RZlZ[,AltLﲥKW.Yw}_^/_^f/)5 ["ž[^0,yK Kx~o8/&,!ʗ5=Ͼݴg]{}w,/-), EBɋd$_LXR xxzlv+Nn+YR3i>e{&{JA3᱕\ -b -&*|<2s|&ޙ:cdq463|Yg]+U~{'g<7ȓxO&۟\?=_o;%7F>'J4'N>HEonHS&ʌ%CH] ,Wz޽FINx9܏q*QFQ" QjvCF|]sLX d)3d8A(E*A-V}yK*RQRfX^XAOY)@\9b!F.^ ?6MNV ]P%+ADY~`xꮐWt86nU5uh6Rd!̹`.K -rE|H* MP:RZa9. EfꒁByr޶De C*āsī}IGfڶ#0%q Պ/V9Wݩѱz'A'<ɠgo᜷˥UCeni襐8) h*| #] LP.@vn;sp#'O"]`@" -3oLS -E`B2؏YS+ sdoe`APfIBUqzK 9t \fΆt݇$#(ͩi n"?.vq?9Y3N -^5 ݁c0X9ڇd" z/;BR'܄63QUQcjך:o}鼱\+(30s`Ŭ=Ilwh,'qrTߞ0V}T/ _gNP>OjA, 8 MaN_Q57!^ڿV/ -S0wP#=EV\Lo8Ͳ#G:`%֕Pi,.: } ڳʒ}EWg=i v$:,@4m#l!|#%,c7#"VŃϬCǰ ^B2RYt{5R27 -:?elwH VScpە\Wk~g` !vă 7lG86TvVX\. !Bbf_z0L'z~?<JGsUuv%ި}H޺j(ܚKfj.^A!Rcõ髍vC}qQXvWk=ImMbmבE OOŠ913p -ڮӜQn4|~yc./-0E -2~n`r\ bu!~zj%Ɂfp vv75u lX%ncD>{WH9v_ǩnd,:l -2VK{aa?^߅z/6\.}DJW4ݗ - f" 5+Ky^^$,,@>4Oɇpׅk)R,ǹ<̢7ҮOn;Fc>6z%]1KVc T]FkL&L^^@D;7fJJ47fW\RK0"v[4@>tC=ԉJSE缍MITCRH#-5==?Q笢_F - -e)?F<#HWڃs?w8-#Z; uρl2g9n8{<?a)_[^ٯz Pj/K?~UIOx5 \-S6z$tȁҬJ8 WdQ|T P0{ߧ 'U<-F@T[lI M};)x׋RPJ5V}->AH[)bɦq#JnfIϓt_,Q| Y]#E7B4ҁHHa4l#fd7@9TK vm _CFdz]6p6~GO9]#~`I8]y -x˳ KM(!1,jm3rPv-6) _ T태ZY`0 2C%/`XJp $FqIZA(*3#!+@{EKc]mUH) 菶%C=ݧ_7pxU.⓮ mذ#<:KBϒˇ"12|3W^NmwG}G\aRټ܂M bjb˗KvSd)fILϤRMW_ TCȒܯ4مF&!W)Ud6M/=6IK,ɽ|#fS*+SAt8m݈JVVGB547PԆAER).u8_go2(EDW7JR/(AĮ*u@Lw.4Auxغ=b; -};6"Tz,v -xW+RG-wzk8.(c`4 m X1UDKT*h@3H @{]ZBILPgᫀރV6_+d%X ud5ZZ^K` ۏEtNF%[MuC7t)(Y#5B%)3Co։TF9- }%"b!tɐ BejYUPT1U]ZeTY!m>O~~۩] yyo+0d=ZKN|N -|ΎW&ؤT+#Z*xiL9&7q2j+cv}-ZW=7}oCo`Vv*wαlPAS5ZiX,ط`%?FHCHm>>Cn緡ۭs++2:GBQ>JHOEs#E'B uI u}1 yC n ]Dq̒v2}͗M5P (\YJ(0HcΥ$tt0*W(ː͇Ͱz []eo ytNέ,Vrz5T/tAIރ?$aCJy^kOG/kS\*\/¢ZL(#Rnf*]iN{%$\Qr8dl/ ͟GpBEY-ا ]etPE$"ԊH.tH٠*pKP, ܙʴvc#& b -O щ7 2M>H)U_ّ߰JewX-9M}\;^99J|+Ç txZmɐIcLzNdj)=@f"> P6OaQM Ct|9]RJLtM*k~j?#?~0 20~Z~Yy!o7cZ^_o9y:!y oU)Lj]Pa+ $y\e^4%C‬Ӳ Ř))!u̍ CJbYUt_jeY]e"T2ksщ\JM#XB@)Ft@á4Fjlj -͊ݘFh*j=0 -W8<:Oѝ*wSt} gӦiڠZ-~pO6k3 ŕ-::QRJrI*>tR]ӷ\EAz/D05{(fofN tD."9H h6u+0kLHSd;<;u'BdeG?*G*~na'(|ԧ~(-fZ*LuY\ܮ:_W|*/3V~W_BGHBu~S$ -cm:^enл?{~w#,do跹~J]Za_)%ÎS%  %aFh,PK$~J')k!N.b.m͔Qk÷9@WQzE[j(y(㭗^B}T $J 0l׋c`e0ʟټџ@<O)GGF<_:a&uz'O յr]HU*c;yiEb n4hjQ*LJzSU¬TT:)+S nܹYoguFxL{+j;=.P4L'zgEh&heX;a0|F6t6 nR%Z1CxU[ -  -)C.g!:n9X.*Hr Q=$A'qui8SnM ߋV-JM~JR%O7)Z ij? g# i{0F ԢS~Q -a-8yChSHY@vs }ڍ_=T&|qI'w=K?@dabIȓѨ85 -0er JJPUZG -U*\x߽G(?j8l DLo8FIK1wobi$YB -Q[]09rh;}+ɷTIQOoCY?܄lH̏p.*֔4=oI1. sy9$;R¥ZN?4w@Y@" r\/+Jͥ@/m:cPz^k p@OO|YJs WYO?J¦٧@/¯z.z1ͦ٘%$cFD5H8 }%R'Ym^]a-\ܾ.'0o܏3hoz3|= }ueD!Ξp -F7n^½֬?r7Oڈϰt|C&`|W) K!01u4bv+pcR[ف4[^u9{4tF^xe\JDgQkq}0|p<ؑ3"ٵpX A]p,YzwOi_"k/ݭQʱdAć S2#9z+56^ܞC3A ޳w+*`'^w#zr8r}dGy#jߛA8ֆkS:db$ '0ξ5D8c'^;i*A"Jx$n_[sn\VeՊ4 DDx -xybgk4޵͡w 5=G/C%bJok򛄍 6QGó,_j4i9 Sz5i-w's*TKnSo"f!*,ih$ͽ̘zXGXƺLֺuP^ZT$NqG3ӡB.u r!OUESJ/s_΂z6DҒF fW1DQTL 7&8&b7&ۏ8'T%S3H)vɰɇ>_n;sa2A(֩"]idAe1V8:& .Ldk\T=v2PS4RCh {D}R ܃*T6+݈ݶ/@e54JR'B"$R~Li%2:LE<]6Stf -$ +P Tj uX4}?VmhP6ϘZ2FR-Z v2onx7PX K1\@!iLPTlg(DuX! -(E(LnAT%+k*Gd;^d;SVQzc{---3+"'H氧drG -endstream -endobj - -4372 0 obj -<< - /Type /Font - /Subtype /Type0 - /BaseFont /AINDEB+TeXGyrePagella-BoldItalic-Identity-H - /Encoding /Identity-H - /DescendantFonts [4373 0 R] - /ToUnicode 4376 0 R ->> -endobj - -4373 0 obj -<< - /Type /Font - /Subtype /CIDFontType0 - /BaseFont /AINDEB+TeXGyrePagella-BoldItalic - /CIDSystemInfo << - /Registry (Adobe) - /Ordering (Identity) - /Supplement 0 - >> - /FontDescriptor 4375 0 R - /DW 0 - /W [0 1 500 2 2 250 3 3 500 4 4 250 5 5 667 6 6 333 7 7 556 8 8 500 9 9 333 10 12 556 13 13 444 14 14 389 15 15 444 16 16 833 17 17 333 18 18 389 19 19 611 20 21 556 22 22 722 23 23 778 24 24 556 25 25 389 26 26 500 27 27 611 28 28 556 29 29 685 30 30 778 31 31 556 32 32 1000 33 33 556 34 34 593 35 35 444 36 36 500 37 37 722 38 38 537 39 40 556 41 41 611 42 42 778 43 43 389 44 44 500 45 45 778 46 46 833 47 47 611 48 48 778 49 49 944] ->> -endobj - -4374 0 obj -<< - /Length 13 - /Filter /FlateDecode ->> -stream -x -endstream -endobj - -4375 0 obj -<< - /Type /FontDescriptor - /FontName /AINDEB+TeXGyrePagella-BoldItalic - /Flags 131140 - /FontBBox [-130 -271 1073 726] - /ItalicAngle -10 - /Ascent 726 - /Descent -271 - /CapHeight 681 - /StemV 168.6 - /CIDSet 4374 0 R - /FontFile3 4377 0 R ->> -endobj - -4376 0 obj -<< - /Length 1300 - /Type /CMap - /WMode 0 ->> -stream -%!PS-Adobe-3.0 Resource-CMap -%%DocumentNeededResources: procset CIDInit -%%IncludeResource: procset CIDInit -%%BeginResource: CMap Custom -%%Title: (Custom Adobe Identity 0) -%%Version: 1 -%%EndComments -/CIDInit /ProcSet findresource begin -12 dict begin -begincmap -/CIDSystemInfo 3 dict dup begin - /Registry (Adobe) def - /Ordering (Identity) def - /Supplement 0 def -end def -/CMapName /Custom def -/CMapVersion 1 def -/CMapType 0 def -/WMode 0 def -1 begincodespacerange -<0000> -endcodespacerange -49 beginbfchar -<0001> <0031> -<0002> <002E> -<0003> <0032> -<0004> <0020> -<0005> <0050> -<0006> <006C> -<0007> <0075> -<0008> <0067> -<0009> <0069> -<000A> <006E> -<000B> <0053> -<000C> <0079> -<000D> <0073> -<000E> <0074> -<000F> <0065> -<0010> <006D> -<0011> <0066> -<0012> <002D> -<0013> <0045> -<0014> <0076> -<0015> <006F> -<0016> <0041> -<0017> <0048> -<0018> <0061> -<0019> <0072> -<001A> <0033> -<001B> <0054> -<001C> <0068> -<001D> <0043> -<001E> <0047> -<001F> <0064> -<0020> <0057> -<0021> <006B> -<0022> <00660066> -<0023> <0063> -<0024> <0078> -<0025> <0052> -<0026> <0062> -<0027> <0046> -<0028> <0070> -<0029> <00660069> -<002A> <004E> -<002B> <0049> -<002C> <0034> -<002D> <0055> -<002E> <004F> -<002F> <004C> -<0030> <0044> -<0031> <004D> -endbfchar -endcmap -CMapName currentdict /CMap defineresource pop -end -end -%%EndResource -%%EOF -endstream -endobj - -4377 0 obj -<< - /Length 6617 - /Filter /FlateDecode - /Subtype /CIDFontType0C ->> -stream -xyyxSպ~cYe%jqhgPT 2R,:Oi6iMm8k/z( ؝pCv-%р@';zrNbAhuNnQ>?- ŋ_Z^Kۖ', E aEa ې#fmxf3as$ Igž%'d|'*Ȱu[F>Lv~J !;ET/ 䧄%$'$y3A-=%l[z 8}W$` bav@ۣ <94c|`rZ]s+ҟStH 9wq(Z6:3{ۇ$Cp/cs#^s޻F.{::}Rܻޏk\G?XP r`"p^= hbz;Ϸ^0FԊJ1HaΝ's 8ԉ1(V/@ * CR+)&^,,hU.0-Ew* 8FR3N%5izS2v;_ٗ!¥z+1<\=Op{ksb y$>yN¿z (H,Nőm*g#=䞀0W{؅EhbԞ_ )::⴩5uX""L*2P vCsU' U6_WgTjWd/j̫۷ @F@!VW: 񅻳0`{|g$~og1$<˙oCas[?~(*R95AWSUkwZq]ejEՄƺFl}S- +1iqXm?Y!AU.Z8[s$|H_x0}8>݆2kD߉H~ȡcd> 8&kkۚS7fE=nSlN ur_iHZB5yjT rJjDH"A8n胱O; z[r(]$+Sڏ8]Q.F5 -nWA[7WI2/#hm.ffg$B9KMՐ9r;Qi jPdl(RzGo=cKr88\% SGcr&;K tyM:*3.mHPP+*L3X:8و>S8+)]o^ ӷS+[i2d+i2lksvh -g` -v.Bwq_G$TOV&> -ntRl;ŷpE(sY>/&cϷiEUX =+!ڛϝeGI%c~YF85s栮fg cEVQ -0o‰2>sHFf\dڔHzDɉ4DhxVLCT㰋A1scLlK@ -Z\U'+1(6I)o*tNД0!˧_DENQҎ4ȶ)~8b`/IT萡pSZ>Q˭#4&W-)t`48# wP^ͣ DyO8j6wFp@I-\m>8i>5sLceadFສZc`T;f{B Q ٗDuIl~zFҨ[k+1g˒i*UʳiC#8S9].^ Ez]DhQfX -/ G8GZt=r/|ebYa #apBT@&D -_ooMɎx(聓0`p#gpQe9j!:RVYU`t>'ADLxMD: -dӡqpG|CMx,)ixeO]-50~]\^x!?G ; kcnG4 %t=!8Ǡl} Pct9 -Ygh?ecH\gá;AZӃW܈nz4JE2EiDZH ) WYx1v#x~k3~QVR9,>ˎA?E=.xt WZk9HjExV+&:B×W8}i -~FϵK`&;Ο6 6kkq ,]u"S$H%L%Oߖ΃AoދgZZ<.YsELJ@e5P7S_{9d.AuϑՈj.3 y]6!u~$`8lr~es(ԀS)v2N) z%@\#.v_R?2փ{T6Yh.Ŧ|GDuJr{;Yydz, pFFn4;Uu]Ҵ,2x 3 -ILeTUZ|Ln45r]Xmd9Fʍ7h}՚M]%oJBȑ[2F7j=_ao}4엪 -(²ۘMZ1OgID"i -" -aq4K-^_"cwf4[t>X>35΢THO.LP ݁SbGR_o/m -;VQ)Zp#`g""N&O.ei3n@1sk"kU0tu?|@B}ou~@(tjZYH`% "M<"oSl~FR4t3TÁZ@]Eo .D REPJTc.9^+R9}soF}44//Ti% 9!^]3D_?C#4 BW#'|LmCtѪ# t#xxrV. J:VS_m?d?Zio]gQjaxa`?nWJQAIگEcxy;޴\`֫qTl1rq[ _FzS_c>}%OOT]+y_i[G9zPWӥ}/zSbIO8$wv;x/~!t -&dΧXنoO pWюAhVeG6#;U_29{Bc$@fbL6_P+]Vϴ/s,2V* -=2 zYb,"ԭ6;wV(GPB)Zvy|l+NCm}-`[sapb2 5'i޸)(eiC#$P\(Ө@QJ -JpC)r5u64Rlq BD$ߥ -V NW%2Þ_#5wׁ5n|o>;hȓ%Nξ~֖jF/f:tf몟hp?k ^x# ̟.NDT?z9nU0mF_M<:GkY'ۀ<wnU3=5W%?:OntJ^bu -ar#ڎ_<>M>%%3 bo'{C|Ԉ7?tjDn[V!<L~ɴ: >UTF_m`W1hs:yS3ئ%ʥZO#&潄`^U9r zʭZzHGzZL^[@o_>99D;Tag*]ظ<>r5TZKK7SBQ'`kt[y< { -..]e\>]/N٧Aw{UqOo|CݜG#ήeqm(|Bk;w`PweAT Ifp_ -/}c6u.kf_7Uhee]3S4@%THsZT.ZQi_ڌ`;-35鞛A{8Io3 :s] NXsx,[>3yIB|=Toͣr*s(}JLp@N_c B#7=&/dt:2v[.UzOC!I(5Eς+?B\ox@XH7Y X~s w'H+!/''~} jU4-*ܗ퍀%dzܫofr@h\bnΓp -hb A4䕖o#ydΒɰ/"+U` -Y_#n](@2m-Ґ*{/c7踸}dSklf)::>BQZ b(jfN@ʴB'Ј,DN_ -endstream -endobj - -4378 0 obj -<< - /Type /Font - /Subtype /Type0 - /BaseFont /FKQCWC+DejaVuSansMono - /Encoding /Identity-H - /DescendantFonts [4379 0 R] - /ToUnicode 4382 0 R ->> -endobj - -4379 0 obj -<< - /Type /Font - /Subtype /CIDFontType2 - /BaseFont /FKQCWC+DejaVuSansMono - /CIDSystemInfo << - /Registry (Adobe) - /Ordering (Identity) - /Supplement 0 - >> - /FontDescriptor 4381 0 R - /DW 0 - /CIDToGIDMap /Identity - /W [0 52 602.0508] ->> -endobj - -4380 0 obj -<< - /Length 13 - /Filter /FlateDecode ->> -stream -x~ -endstream -endobj - -4381 0 obj -<< - /Type /FontDescriptor - /FontName /FKQCWC+DejaVuSansMono - /Flags 131077 - /FontBBox [0 -235.83984 602.0508 765.1367] - /ItalicAngle 0 - /Ascent 759.7656 - /Descent -240.23438 - /CapHeight 759.7656 - /StemV 95.4 - /CIDSet 4380 0 R - /FontFile2 4383 0 R ->> -endobj - -4382 0 obj -<< - /Length 1334 - /Type /CMap - /WMode 0 ->> -stream -%!PS-Adobe-3.0 Resource-CMap -%%DocumentNeededResources: procset CIDInit -%%IncludeResource: procset CIDInit -%%BeginResource: CMap Custom -%%Title: (Custom Adobe Identity 0) -%%Version: 1 -%%EndComments -/CIDInit /ProcSet findresource begin -12 dict begin -begincmap -/CIDSystemInfo 3 dict dup begin - /Registry (Adobe) def - /Ordering (Identity) def - /Supplement 0 def -end def -/CMapName /Custom def -/CMapVersion 1 def -/CMapType 0 def -/WMode 0 def -1 begincodespacerange -<0000> -endcodespacerange -52 beginbfchar -<0001> <0061> -<0002> <0063> -<0003> <0074> -<0004> <0069> -<0005> <0076> -<0006> <0065> -<0007> <0064> -<0008> <0078> -<0009> <006E> -<000A> <0073> -<000B> <006F> -<000C> <0044> -<000D> <0070> -<000E> <002E> -<000F> <0067> -<0010> <0045> -<0011> <0028> -<0012> <0029> -<0013> <0072> -<0014> <0079> -<0015> <0041> -<0016> <0043> -<0017> <0054> -<0018> <0049> -<0019> <0056> -<001A> <004E> -<001B> <0052> -<001C> <004C> -<001D> <004F> -<001E> <0055> -<001F> <006D> -<0020> <004D> -<0021> <0062> -<0022> <006C> -<0023> <0068> -<0024> <0053> -<0025> <0075> -<0026> <0066> -<0027> <0042> -<0028> <0040> -<0029> <005B> -<002A> <005D> -<002B> <006A> -<002C> <006B> -<002D> <002C> -<002E> <0020> -<002F> <005F> -<0030> <0050> -<0031> <002F> -<0032> <0046> -<0033> <0071> -<0034> <0033> -endbfchar -endcmap -CMapName currentdict /CMap defineresource pop -end -end -%%EndResource -%%EOF -endstream -endobj - -4383 0 obj -<< - /Length 9557 - /Filter /FlateDecode ->> -stream -x{ xTչ3df2!!$!@r,AABD̡9KтEjQFRh+Z)0Yg=y?qfwy -A޹.P JU}(~/.Xr~t'@O]%f7w̛miTT ()]Ppwŋ~c1B~/R~FM.Q -/-+_}^Ptټ=}z4͞D#hZ(8P}8[^qBDZ_14&8x -:S83˨e<\tpTMZp(|([\A,oQ,^vs%Kx@7QI씁.ve)cqPI43ZMRW)Y'xA:m>[2~+~ -uۍ GCߠRIQl74^V&|zۍ:]sm5xRl:h<RQrq?P7؍HiRirخg5SmP|tQ^< -U]*) {=nZBz[;='te|㧪]=JQg{?5E -54רS(i -$=)E K?ZwۜM+]PPjX _eͶm8)T4>lyzy`_2>;/zY䙛J`9I =VXJYֽQȬe[1a'E\U)4h -08)E(ԝQRyQN_i{S>YȢ\IVlfx尤Y!X:+0^ -*oS@WRIVcݨEcZm({#6))]H E]ݜ-q.p^:Ew+"vhln:5p_L=TȽx_zFu/:k_ޫii,3;?žA9ݚNtቭuxj- &Thp;$([vt΋CcGq99ّ0wJRF3_y[EغꚚutR)?`.wyNy_p4V|#xkj*SE) - -jc#Ħ[tkŢtJpYBrseXy6vmqVBARt-–MW',3LdeIVce}5F5XOj!)#h= ED8z1d?lcV-dyٟ!1e+@=e JrDJV46f=_}#}ֵg=kkqNJ +qۢtuW#PCѵ.6У-{h"]$p^n祳S\e`cǗD'x뫟_z>zݖ3gZ}xGEX: -e|uo.Ehuf)۞9ngL2>.gJB+^ƍ7b6 nqru6~}ExT<%[Mb:I4b8׵= r 7"ylÝϷqrz0ӽ <؊e77Kk۰Soovϴ}÷@e܇ -);L帒؅@e*FRcq]R EֆQMqaGz35}v't@7 tH#7u!ܣt@SŠ͡kW}n#k/usv yj]K?yF%{8Ňe_F{,,,'x> -cyիJ=Y_f347K߅˒|[').S^-Űݭvx_QF(´An 6?[SiJv5kwo\ϋ~"?Ȏ|k+JmK: Zu8F͉tGx=;f4wTYbGgg7γHy5j%\ MúM`q;O7e19-ٷy}N8xr^>6sx69$ґ5.zq`Zqj=:D9䁡DLVW_ah#T!XQD+ 3* r:Bâgx(Zq8 w0\6FMqϾ,wݺ"s"KJ?7c3}AbqY1GJX?W=-63+\YeUɡ&flŸ#l4~T.;v}fZlɀ"o F2셒'sUK\&͒L6l# -@z=Cj5c(L[Cp>oS2_N6uP(*UYcԒdD WWرKZ,>ɓZUŵ4V-*jnS% FSKz:gۑycel kͰW^qVaX{w{S_(ٓmaKг牁>oG@GWC|C>8O%? $WBZ.ҏ4޲Z O3}jFHی,k8}v#:Ăm1(~GX-o}ݻ&<@}@h_Od $? 0,_^&M%dr 7Yډ(%'Ũ+bt]]VlBWbUWgv3s\yƛTߝ';@kksXTxe4٩%d}%iʹog;2?|O(oxv򙙭y˟|@zV{*O 8}v( 5g/#@1oֲ[悊R[d-a ȶѲݹцa:''iMnmXaS_^:rXxU4OY +*CeUM7Ωy /*P>ŅŹ8x%y4*qy-#.+j1fMa+'Oy(!fް/=0_HO3c?fb(AuԌR@-S+RaVUG.a.c:\a1Xט]&9/c4jkҽS#ơ~ Wv~0Hox}ý{5x^7dP䠨Aуb2n⪨JUZ^eV٪B"bbuVf2ŰN]l‘k˞6y#{.a“/+?i}DY}iTg0hb2-ˢ)60 ` nI٦ijM7Ԍce ˈ3;fbebi򨏥a6tɌɒ+i2s0,쀸 [Z-7xjK -'(xCך!mRm6!˶ã۩N --dUh̆H^v9Ƚ޻WğGl˿pm3Ό33̈YcH4kH~ w@cFL ݻ"x\t-q怘%ϑ=yHwӀhv1öע ;,++Lv j1%ə93^]O!M`Eo4xrЏ&7oPܒw^i8=+>ٴw[e#n,i&YM=9w [-iq/y^0.I'6v5}I1YXW]!1- -#.gwͲ"M0ņ1# Q"9!;2£醹z2lGkVo#k|fͦUkr+]KW=P7'Ď'xCXvGl9.Q_]w2-*YiZ;4bC3임4{zF)4;Th$lgiybfSrx*Bc3o;Q2>}:zLwZhEjH^3S{*>d#<|Md') m[mⳲAC:xamo~x6&jc`VhW}x y:,o7FڗnB#yhdArW6.[-@jwƒ-,-ȑ0Zn>jI@e3yێS[gb]]a9=ESXC#1pwuw>G|n>dr%kׯ^Ħ7;v72Wd[r "Yu^5p}%p_OGjB5'm"^ĥ8(ڽ3YpK[G37%gl.3g޽OoZǦ5u}_q,6zGϼRle~6 -[U:M 7Y7饢߮oM?L=T`/QJ`=֣]@%l%HF 2q yAC6vjpG ] 6ό?(AHv|bX}x]ʟi=AoNq-_vj-dGK>yPkzɶĶ>!BbW>{B{ ]64UH"hPDDOa.pƿSo5C5sPfdtE|7z!J/+io[,mJƶi)o5 3{Jf/5>;?cXi;vMH}߳KsmM.tYSRiҞ~I.&^Xl|H>+]BSXlhSSڙSW|IMo/Kr3[q&K NRM+w)_Mtۮ{f[ZE󝔸 -Cbvo}Bo͌ѷYdް%DyxX*&_V':ߔ#FQޓA%Spyu3‰ۯ$dӘ9vq{{.VXI٬ҫX_+2Quq~;R#Phda) ƽ"LD1,0כ'K6!;(2I%azlÂ60%!o=Рc aBPBCDC011#0ɐBr)O2cpe\5%\wPsi!yh6N48b0ƴm)=~R"CCICޓ(J&dJnƋɣ͎-ނo[grIxJL L2kBI-;}`A'|gr -WW_. [6]З[poqwCb8}~.giWAvO_D8FG[ς>3#qccͧ!%N :N -\DW}$--t&cw~+7n ͂:, A6CzNM>L*d~p&5APc`}ukPio1A{KAVOA/ -v zy!ws\E?{6l=N?S3v$(C?vhm[C6A[C Ж-u zdz"jy`z|cCC&SI .Z/hvU?:V z*Uqo*T+¨Nn*= h%yZRڃ/H=hEtTr *4wN+h|N4K7=砙4wt~4AS=4EdAtd$AMt*/h -AШ4(KECܼ(FFq40;@4tKC -\|4*>U- \TШgU|p nd|V7}5*UdAv|b.AY:x߃ -x^1ˊFQ_A}=Q{o,*ق=<+єa(W8OPz"rxp%ݢݙiw&SO%CP0J,ɅtG% J ㉂y*O(UuԵK * K --(*G ȈtY@'H'r -[sW9¸EN0Q#vr؅ڭkttX#+O7)Y -endstream -endobj - -4384 0 obj -<< - /Type /Font - /Subtype /Type0 - /BaseFont /GPMDBV+NewCMMath-Book-Identity-H - /Encoding /Identity-H - /DescendantFonts [4385 0 R] - /ToUnicode 4388 0 R ->> -endobj - -4385 0 obj -<< - /Type /Font - /Subtype /CIDFontType0 - /BaseFont /GPMDBV+NewCMMath-Book - /CIDSystemInfo << - /Registry (Adobe) - /Ordering (Identity) - /Supplement 0 - >> - /FontDescriptor 4387 0 R - /DW 0 - /W [0 0 500 1 1 625 2 2 611 3 3 361 4 4 278 5 5 584 6 6 444 7 7 306 8 8 444 9 10 389 11 11 500 12 12 389 13 13 278 14 14 497 15 15 603 16 16 654 17 17 750 18 18 1000 19 19 722 20 20 500 21 21 613 22 24 556 25 25 500 26 27 556 28 28 278 29 29 466 30 30 722 31 31 278 32 33 500 34 34 485 35 35 576 36 36 977 37 37 837 38 40 500 41 41 828 42 42 466 43 43 444 44 44 828 45 45 778 46 46 738 47 47 778 48 48 722 49 49 625 50 51 778 52 52 500 53 53 600 54 54 1000 55 55 490 56 56 833 57 57 392 58 58 581 59 59 572 60 60 518 61 61 569 62 62 611 63 63 706 64 64 556 65 65 528 66 66 412 67 67 667 68 68 778 69 69 531 70 70 906 71 71 500 72 72 654 73 73 569 74 74 528 75 75 610 76 77 422 78 78 407 79 79 666 80 80 477 81 81 500 82 82 528 83 83 776 84 84 706 85 85 569 86 86 662 87 87 500 88 88 319 89 89 527 90 90 447 91 91 319 92 92 639 93 94 500 95 95 469 96 96 500 97 97 710 98 98 849 99 99 722 100 100 521 101 101 1000 102 102 607 103 103 500 104 104 571 105 105 778 106 107 278 108 108 667 109 109 568 110 110 394 111 111 583 112 112 278 113 113 816 114 114 520 115 115 445 116 116 500 117 117 831 118 118 595 119 122 902 123 123 732 124 124 667 125 125 759 126 126 863 127 127 917 128 128 759 129 129 451 130 130 530 131 131 517 132 132 593 133 133 1149 134 134 354 135 135 406 136 136 782 137 137 651 138 138 494 139 139 612 140 140 576 141 141 750 142 142 554 143 143 556 144 144 485 145 145 750 146 146 514 147 147 345 148 148 958 149 149 559 150 150 510.99997 151 151 639 152 152 278 153 153 1000 154 154 503.00003 155 156 389 157 157 1000 158 158 778 159 159 839 160 160 529 161 161 429 162 162 653 163 163 1139 164 164 1361 165 165 1000 166 166 778 167 167 500 168 169 667 170 170 642] ->> -endobj - -4386 0 obj -<< - /Length 13 - /Filter /FlateDecode ->> -stream -x x -endstream -endobj - -4387 0 obj -<< - /Type /FontDescriptor - /FontName /GPMDBV+NewCMMath-Book - /Flags 131076 - /FontBBox [-32 -950 1236 1500] - /ItalicAngle 0 - /Ascent 806 - /Descent -194 - /CapHeight 683 - /StemV 95.4 - /CIDSet 4386 0 R - /FontFile3 4389 0 R ->> -endobj - -4388 0 obj -<< - /Length 3246 - /Type /CMap - /WMode 0 ->> -stream -%!PS-Adobe-3.0 Resource-CMap -%%DocumentNeededResources: procset CIDInit -%%IncludeResource: procset CIDInit -%%BeginResource: CMap Custom -%%Title: (Custom Adobe Identity 0) -%%Version: 1 -%%EndComments -/CIDInit /ProcSet findresource begin -12 dict begin -begincmap -/CIDSystemInfo 3 dict dup begin - /Registry (Adobe) def - /Ordering (Identity) def - /Supplement 0 def -end def -/CMapName /Custom def -/CMapVersion 1 def -/CMapType 0 def -/WMode 0 def -1 begincodespacerange -<0000> -endcodespacerange -100 beginbfchar -<0001> <0393> -<0002> <22A2> -<0003> -<0004> <003A> -<0005> -<0006> <0065> -<0007> <0066> -<0008> <0063> -<0009> <0074> -<000A> <0028> -<000B> <0031> -<000C> <0029> -<000D> <002C> -<000E> -<000F> -<0010> -<0011> -<0012> <2192> -<0013> <03A3> -<0014> <0067> -<0015> -<0016> <0070> -<0017> <0075> -<0018> <0068> -<0019> <0061> -<001A> <006E> -<001B> <0064> -<001C> <006C> -<001D> -<001E> <0077> -<001F> <0069> -<0020> <007B> -<0021> <006F> -<0022> -<0023> -<0024> <21A6> -<0025> <2026> -<0026> <007D> -<0027> <0032> -<0028> <0033> -<0029> -<002A> -<002B> -<002C> -<002D> <003D> -<002E> -<002F> <00D7> -<0030> <2115> -<0031> -<0032> <2264> -<0033> <002B> -<0034> <0030> -<0035> -<0036> <221E> -<0037> -<0038> <006D> -<0039> <0072> -<003A> -<003B> -<003C> -<003D> <0031> -<003E> -<003F> <0393> -<0040> <0053> -<0041> <0079> -<0042> <2218> -<0043> <2208> -<0044> <2212> -<0045> -<0046> <2254> -<0047> <0034> -<0048> -<0049> <0030> -<004A> <006B> -<004B> -<004C> <0028> -<004D> <0029> -<004E> <2032> -<004F> <2200> -<0050> -<0051> <0035> -<0052> <0076> -<0053> <22EF> -<0054> -<0055> <0032> -<0056> -<0057> <2217> -<0058> -<0059> -<005A> -<005B> -<005C> -<005D> <0036> -<005E> <22C4> -<005F> -<0060> <0037> -<0061> -<0062> -<0063> <0054> -<0064> -endbfchar -67 beginbfchar -<0065> <21C0> -<0066> -<0067> <0038> -<0068> -<0069> <2286> -<006A> <005B> -<006B> <005D> -<006C> <2209> -<006D> <2216> -<006E> <0073> -<006F> -<0070> <002E> -<0071> <03A3> -<0072> -<0073> <22A7> -<0074> <0039> -<0075> -<0076> -<0077> <007B> -<007B> <22AD> -<007C> <2227> -<007D> -<007E> -<007F> <004D> -<0080> -<0081> -<0082> -<0083> -<0084> -<0085> <2133FE00> -<0086> -<0087> -<0088> <2295> -<0089> -<008A> -<008B> <212D> -<008C> <210E> -<008D> <007B> -<008E> <2111> -<008F> <0062> -<0090> -<0091> <004E> -<0092> <004A> -<0093> -<0094> -<0095> -<0096> -<0097> -<0098> <007C> -<0099> <21D2> -<009A> -<009B> <27E8> -<009C> <27E9> -<009D> <21D4> -<009E> <22A5> -<009F> -<00A0> -<00A1> -<00A2> <0046> -<00A3> <221E> -<00A4> <221E> -<00A5> <2190> -<00A6> <2260> -<00A7> <2205> -<00A8> <222A> -<00A9> <2229> -<00AA> -endbfchar -endcmap -CMapName currentdict /CMap defineresource pop -end -end -%%EndResource -%%EOF -endstream -endobj - -4389 0 obj -<< - /Length 21370 - /Filter /FlateDecode - /Subtype /CIDFontType0C ->> -stream -x| XU6H_r2#1΢&㸌vEot@!d!aJhU;y7_wy99>}DG͙ קsZV\Oœ]hQ\ >]|ψY<}<mQ1ѱ̎陫32ǖ?>g[>ܥEܲ[ˊ seOϽckNn\a1/nn\^fAfZYfL\~Nܕ۶l_\ğ.wofQYܧ[97/ygO*.=S0{N3eOoܰuaOEYż܂n -M%.o"{qctsǜwn΁;b뮁;uflZ;&*:***1m\T'rG]m#u&Dl cd=;ww/3WJ}{0ne{}uC.w=;q~˹=;WPCϻ_G~Gzlcŏ_㉹O|J{GOv|ݛ׏nxu}j6 $lۚmmcG·wEJKT&~7ɜt={HN{9͓C'W޿>a{Ulr5>4l0U89ۦŞaqSa0ݔxuAnh:ڦ6@0BST+]V[u(EKg;H? -/a2Hƞ^bvqBQ׌*csQo׻. Ii!S1}%Cfp^m0/u -U)ʢ~r^ ubeg~{vWe j Tj4wAzz"Tc7ף x:6cI xދD] J[ P(P[Saro 5WYSwAWjet kZ\T*pѣkz&t^@^Ycqw@Qnuf"|?9DLlm6 k|r)\Жs)*PԢrַ -V䤃:=[ -:B6Q\k@fQ6re$kw^u\&gi'No qq.ַ ƌUר9G6:SpCᖮfGNEQZN[ )/:c3b&_Y+ϒEǚ-MN?@IBL T?Vm}_y.u+ԛ ik\20D "y 0*-J>S 86M'V(A -ʫv]Xܿv'' :62$p]{0͈a*hUmyU2O8L@Eޟ[WKC>b˞tayn~,kcy"e)b VݤEESM Ԑ#jnQz \&UpD @ά5H{Ӓw]m{ӡ7LF3]kEz굺ɻV?2 "5. |v&IoĜa)|Z ߍMSO6 -`MfZiɈm16a}s3), -n>Yg-cE'bR:? x ޡkZ:qTk 1jLڃ{Vw<ս -Z/~dQiwjtЂܢvL1w8&/o/ĭZÁ - *h@fV;@E*%sT]@5]mb_`WIvHNNH<YZ*.V0 mj(X(JA B |P5,W5]'j9l-&{xtA}9X+T"jnBЫA MੳCn!,~S#xbJr@L$H.FwCNylz&UJDJޒn~kov k;a,`Gr(-H39~wX՝7=/@1ټ]7~8ᎎ^*IW17}X3=1~*^N ^wۂTȉ,Q2$:+Q\=5R؉`$48+"ʠuFR;?_'=FarW@= -ԜUR/O!~}n!fb?BoG?M8lvCe N MkbAi6ۖ)"JfUrmS34m# ^[*PiT&CAZ.DݘL[+ Uz8d1yNS@0IK/d lҴ>;`qhP>u+@U -E%נ=?iAKp$v쉯@vE= v GL|;#>26Q$UMٔC2!ǡ/jոLV:V Q8Kxt:xWG@t\<*a t i/O>^*.}cCRNE -jt::ʇ*zsl "z߆7XC7`j SxZnE< G/0  -*aRZ4vt4AKQx$) -ABٮKxX*m qX-U\WÊ@Dj{ ww}66}zOHdƒca'ff 8NnPB&MxZ4_H 3&@`PfM-~T)=|=d_3R IZQO4kn3[b&Jq8mm76%\.)rahJă=zB߳c$' 0* -wmo~]eW%GrƢחq& -Z\Io#\? 3K"Iff뻴>ɔE ^htS5Ѵ"|5\aΓqj;~&od IR@XУiU6}%]]]\.wЩ5<ƫM5"ĪZU - P,U"pgp8C-Khlϋ:94eSəݣ\$c՞-XY՜#܏Hę?>q/YFuTX' -qk( ɻlOmVy*OKнI"㳽Gam a{yjJjJ627np"0r;=L$ R J$H|Nk!of:dEV~1tȆ򙾡 H`MMeS\l6 UWęA\0z*6_c6-]A/,z]-60s d@,Cxg +_q{&çZRI/NA -w"ly{}8vgsv|?z* -Ȯ  Q-Ջ dzAWih>z -{ CoaB}!݄2=W&U^a u,`Dƙ9ڙ=MZeW8vŃTa+]`3mvl`VD8Yn8-ܝӟNX*3b :4 c%5It_K=o62u;hw1qbGs[&[zNtY,.j!M%J*A uSIjԢv9C+ Fݺrc\ 1xˍ.eSOwBjEVvV( v^G5UhA:op4\gX|Dmr`"D2`}īPTjun+ 9qGCE68{;Ja+}߁Q8PWjfQQF˩!D=mفdH~F0RQ^)Ɂ.QCgP4Edw|=Tj# 9Xִs_,Xv7 [[uZr3t$6e KF%(E"}Q8KϾGL\aoĿƐgcR}ԥnj0UqAW턺\& -}rN u\ny8xz^c~G= -@;wJXZSX)(AcP&0m&7MZ.awx.!knvƐKP+q - vפdA -鼔D؄^M]]H[S g]5hoOd>(4,[f ¾HC] h6sB]&hn!yKSiZy<N=vSt}H衁ş!v\=9IcȝSOpVw3eRjm /{gyZd:r}EaQ~_Oxt9I?bGlw^+Z"Mt G&;N 4ez2&*X[LL3vsxkj 6i+A bv7kk\% YjQt\y`4NXo .EeX[H& RQ%s#PE#ʠVQkSʶj+r9Mr ^8n&Yv;3Dʌ5Qm87N~畮z^"J] - U{L64YTZĆΠń'Z!UTp5a:17}vq]!@B[ :5HΐZN5%]i*4>9uG'l:ڂd<",l9%NFT2Ʉڢ6*A2H@iT[ Z%H27bXd¢l4Od8|aj%zjj)z8WsƥlҵMf~jJ"D[6sĮ7rO^WM UإeJAMmyP+vXz\&ד AԮնpY"r\?i08lF>Ú`Z=2yPt̾e6 }wXſcCR묵Smzv(1 ˔jtb*tWKp j;wx78Vw5zGAe(ll y tA%1UkIJa* hܺZB6Rvy-M]@uoNxrsٟZ*(>^oC^(KbX+R 4UUZhyJ$I96HԳPf4݁d*U^GBV+@ -RҩF{qfvq$ߢ~&X0MFLmml˨~OX܏!e+MPt:АzbS[?-.9dm1J+Y{7$P5mw|l:irL4{j}V/MEW/s ?/ۛNgMY8"Ia,MߎôwT"PRvU/dbKfdz7ovGni%TBKľq@Ҳ7l7X^a\0&2qGBSC,L>}cރpWKjN4qGQ>RuV"VфF ˲rTɻkO_XQ8[D@̯AO :F-|TTH L -Ogpyxp^φp{b4D CH֮t:*f֗ipDLA\]C_#_Ɛf'qC^"utgKhMO X6B KdUA 5fRN*q,@wv5v~t Di8d!wqu?9uNztk\eUR9ab/ W}'cV#fN?*݃rVpfk*T}|O5X gYwϵ+uʽ_X#ddZ28;!tOigA+wKxM? O0 b{k1l -d2u TrړS$$V(4T5\ŕ"DSBkY&nz"PhrxT1s,2kΡ Za&u0) j"f"_#Q(h_ zь18-֢6 - Bڤ3`C=KfՊDkks,~Cbz@JA ;b@̼,.Nɗ:YWfvhJ`'rɂќNH"j Z;6t= P\U - 1I-uq3y1>tF}ɽ0Αp]k2!%~ Ae# A~VG0ԁ[R#֕4?2~G*kSxCAL,XA%ZUΚgvSwjސ*?Zt9oiyI9PvcރvGR WrPbPw z7yn9#87 5#SOS -8c^/V3@Wh5jij+Xo+5Ib+ZU.Yo @Ì6ôRDpqcK>zYT _Mڒ:8!iٌDP]Y~AKiP W`2t@AeH܀("⯥! bo;KDE!DE1 -:۪Zl7]]H'WAm|GSQ,bބoDoa5{Ł`}= A>:cj0P +5?mƯk Ď[p3~3qF;raE'¦Nulz8 4Ch !@VPbޖe@Eß_* -9 ֕sck@_Vc=Gˤ*C%2DcDHʉp}} UGJ%:cp91&J gѾOc0A'` -Kɗ @qP7Kb?Ozx)5r$%y;Ϫ7:aj(L(qƺ\-DZіuP=3a,.4SP($0m_#{ & `'•+.<ڵq4/Ɋ%$=:JKN2Oa8E/f6#ɑ҃ӈ|}X;zth4 09F%ľ M80YޭnXh:ʞ>VI$VY#>tת\B.siy/9?˺> -`y 16|#qHWoLYaUhxX Y̎s 5t#NyYpD88-V.~nRIVu!Q=T3։glHߙ VCf@-\n]?pt_(KۖqU0c; oΑsӵtXeWxdLt8U9G?pix#XGiKAWP u6wp(WXliy0u,F1l9(*9&3 ,$nY&E<@ؠqp -N>Ca#D33 =_28p*mfl'9$xV*%u/rZz`z^B5pnFWfVʌ ʋJ6l)wVZvR/N9㕑P7~`C\|g.5t5kwٰp놤 ՠi@y1f s:ҽ7do8p#tl-|(RmԽ@=|SI*?m)DbەeqMEaFTj,5꺪j `p: =^WiD L_ɐi(0LOIeQ@wt 7E>v8\.U'G{qQ_ZOcL_-(CeU͝mmԸ̝#cM'Xs!G\殞Ű 62QBfF`$Gדёѓ2Q|wvb;=lয়z3 slްm!)a=-7\mmg?al,ALj-FbMjAΤ5m\̽Yx{>~}s⑈d4e?^[kPSEnceЙfq]bQc_|5W'!}5m-ڨ5i,~{^_*H-ZN YLmK%gBŒX7.YK+⿒!6F)!j%Q Tʇ 1ގ=e:e!|'¸n(|>϶lFB ]%t -{ĥ\A*U}Io4~B\]M?EYܓpihxhN±@,* y36Ww6X&:lNo$I3@#ݧ6j @r\ĥF7pgulPzR JⷰG&8uϣ>! [k j1#e`wSCce* nzvTyReVW6U C\TSyD[ zkZh7Y~GQ;fk5Z-BMe3Eoe -¶0mAWԁKiRT+eHs3@5dG=׽gF: "[{ Ԟ:![#q,&}uI.bw67wrW24? V 29'/%jIQ |gxSR-mD-=wԡc#=mu3 BNKM] [!*=?5|l09̣eWK[q}5kɆ;|-mN*MBk9b}jOBQ"aqM5Α@p9\Zz 7kщ & -}N&B?kZ6|స\nz5B()+b΢grQ%ؚ!xSFXn=J hvSr<<BAFJ^aB/Q|eoJϦUnRV)5(o3u_QP9+e}-ŒCNP4HŒoMuzUvDwwh[e^o "^(DL* c10#ãO`MR+ 8e $`˽q^"ĿgSXc0j ·!1UǒzIc1%2}(i'ce~Yf8 ~dv?$Ų&>e_s?.y{%Scgg)&b}'eP>N?7u~n`ݜ$o#9=99=9N'evܧ7X*cY]$uX=GaɊّMlAV`í6GB+@JQ!/hdP ج]|k -5Ti0@ -EPj4Ann' !/1瑅m1`Ϊ6!*Zʨ}':QT:TQe"LV`5,K_x)?ǜwq3g}G.`ܱRD%B(=⠺IU ~ʠB! axVD-wI6?/{żpSH[ Bt \e6 qd w!hyxH8 \<|.C/cb&0Qx0+Z֦sȥrpx Q"^{_u?ʨuuœ O6!.Խ7#}#/NbgAW+[Ԅ1rԛfЈ*7IV$f''Kڭҷ}8%hGIICC;!8okyPG!  ud^ԭ&ʨkU/Cv1v?]G:abT"V$wM]iMS*+4X^CPk-4;U.R*}5t 8,qzC: zLKinX(a#lf)QeBΐM^=ގPElHQ Eg֛NOfsZgV5ii[;{;s댹-Ni "]}hh/@ Z%Wm'#6dclnO;ߖI݅7HMiBY%K5zN1Iv_Cq#ګ vhЉP=]5-dЗrA`oqϴ(_do -y];EEA}a=O[PjkjuI9ThHrqXRgԦ1V p%juqi^izoO.EBwDQҐٛXPa[9;c4zɸ^s)oڇaE!N -l/Z)%5W # F@Jz*ԩy@ Ar7%ږH%̸PV[-PO>uw6c$GURԃzob}v2- - eu4pU G - --pdb/uEA~OQ.tA -$x3*TV䀤*Kg XLv[CB,eS CI.=W DroVaQ>E+ `1:Ƣ)=D5 d]:CmQN+}N5RHTRCG0ٽ梢`9al ыޜM7'rԨƥj:0!_RbgyR3i=G8f;XUc5q⌧Gxf=F}_4| [IcI;2\,+.&Q$PGb_U -S lrXWҩٳm - ^OnC: [%mO=H]쳈B=(5N^[ H$,`- -s>0C3]+,njW ˋkx8 nװkj991jʿVqy7AG36VKV(sYKѿ\bUKs"4}'"d٦3#FN:@LeRe1Ssq={Ƈ96Fx=a4`P1(@Q+;*8kXjЛ9f'PVO>kr'LK`2'Gb Bv=x<D)7 KajQ7 V zpbv \B6&,t= a|8q_|lJK?}nھ/ ܐAg[FZ2Eb‰ƣaĺy:Io:zg:_RnYMNaZZnZnRN@N`% %uovSҳҳ+W15 j b# &vAH+8j뷬Ϧl/ݚєK|.Hm:=:#zd:BZ2vfJ!Ydbݼ顷羻dkuz#|X3jָ)늓[i'}IMI$816`1H!$ & 1vpl8nW Mi\|q֕vZJ蜳>})1ى -ƷI,%иX+s=!DH*J&ĖD?*CQ -dHW8d2_HXvg}cP߄pwX"cѼo^yAHfjV٠7;.@nEV>ԪBDgMЙ(!kW/n,e{dnB.xz[fv~㉐`dC>BU>-` VT/ s[1ȸ|.ZeAmTbciQ>Xhf Rz@SWׄčYx?2e,<Ë'^[&;"ۧUgO1RxT[Q\.)b(6.aM3a!хdì=.i(\j -!8 }l50R;Μ+l_gǃvSwc)=H)Ίrg3S^οMޔV}U6`i0 WkADhGfjMJL\./sv99/3Ե)@GvDC|Ijbu"1[ MRnaRejGuz .h4:;?kYA-u& -ͪBienF/z@=n A4[ ( 00wڻu‡T#;r@~5WPl4TtEEQ C]ΊlWۗZz]K @.jP{/zOE1q(ZCF4|*Xr{cdϛ]x EO]yj]txF{:-vJnebe$G"@)y !ԨX)r"{gL rſzӺ7uɺ|MKm#sa*,*@UIl'`. !aQ!*+%j A5\Ҏ77/KQg:2j2m =`k5vm|@1Q' ~zϋߩޕ^sL/RعEά$HL~ ?1oGg:* soq(;+ "UVe[I u>a3}o ⇤xc1g 7@k`&@,84w)HdRiJd\i,+R@dy%.,SJp~`${9JI ;-zQ^ƩPEL7}7p- vn4Xz+e@*ā-}.y*;2^[/L_eJݎ,{-ʖg~vDɗ㳞?kj%zAb;`o]r]E v,0ubũUP &X\x3&QW`c~|,X-zhDwR7#"  8(HL͌Ij IRs\4DGA߸}ÎGvq9%[dbP@Q zQҬ`}wGoD, -Ο/P܂_ u$ͻgHIedDzAvWt+B\f+et%&Zg;Gz ¹]pvbkuR3ϏK=j M8 z@(T1SY)P~ -k,^!}~q/\sgϺ='"xk{֢>h531RGzz=3oql~5^g1e2e- b 4# ~` IkAub ~x^ S D$Ek64{ažV)) -M;.%*xG9v_ނeœ7\{1@I(VT% ~u(.X^G 'A64rr1 hQ3^]VW ub⳿/;Ȫ1B Ꚍann}҈p"DW"k[體P4TŌg1@gF(A,_ Z bgZGeE?UwQ\w(sdd;=u0 {2 2{80j;'4zhnD lu.mGEQGh(eNE޾L[os5<q :^ kv%þ${{C7 -ׄd 9~Xp?eZ3YC17HR|Wd vP+JQHqٛb2a[;u,$!_BbN,~1ѣ hAi8/8{0bWf;)IW@?~bhK?Yl5E$ i6sqCtpӉR{@VU]oEW!YAlm<-[KClA.3jo:l?F&877jQj_mo -dSTq@]-!.,ZF/A4I#QPC8'aM8ؗF/IGj}kE/<8֒ƚ~}_P(( *7-IQ#{q7Ӹ462@亰 nd|IcD>rFiKMBk%eЍo1X}VNV^ZqZf%_ :g59^^Xv-G3t8bL\/ʵGZ ZKȲ5i !0m^ld C2RٳSK6ugT<;Tt҄g|TV -|ZvYhV[hcNxb2:D露x'I8BYSk~` fkʠ40=WqTQӠY|k;׸ε̍+2t K( MZL`˴aa ndҤɾy2lg mF u~$(cڙ(nBbZX0jL4DYKi{^f1A ЂNU'9 dwMN}{&KJS2hٗڕ6C],\wK{IzZ-fo^Xvk B}Yqڨ'mZ=NZQ+ceiu\)W -j3TJ*ն8tuV$t:h~|RITUrQna:Pŋ=›+K}i*T13D"["uF_\T(kerJTW&!E_ @'c0l"~qsBEMAAazkZYkzԊ_Zp_Caޖz;\B'p ocL8NJka%zn !5D]Bt%qe> -endobj - -4391 0 obj -<< - /Type /Font - /Subtype /CIDFontType0 - /BaseFont /ZXCGTT+LibertinusSerif-Regular - /CIDSystemInfo << - /Registry (Adobe) - /Ordering (Identity) - /Supplement 0 - >> - /FontDescriptor 4393 0 R - /DW 0 - /W [0 0 500 1 1 375] ->> -endobj - -4392 0 obj -<< - /Length 9 - /Filter /FlateDecode ->> -stream -x; -endstream -endobj - -4393 0 obj -<< - /Type /FontDescriptor - /FontName /ZXCGTT+LibertinusSerif-Regular - /Flags 131078 - /FontBBox [0 0 500 698] - /ItalicAngle 0 - /Ascent 894 - /Descent -246 - /CapHeight 658 - /StemV 95.4 - /CIDSet 4392 0 R - /FontFile3 4395 0 R ->> -endobj - -4394 0 obj -<< - /Length 619 - /Type /CMap - /WMode 0 ->> -stream -%!PS-Adobe-3.0 Resource-CMap -%%DocumentNeededResources: procset CIDInit -%%IncludeResource: procset CIDInit -%%BeginResource: CMap Custom -%%Title: (Custom Adobe Identity 0) -%%Version: 1 -%%EndComments -/CIDInit /ProcSet findresource begin -12 dict begin -begincmap -/CIDSystemInfo 3 dict dup begin - /Registry (Adobe) def - /Ordering (Identity) def - /Supplement 0 def -end def -/CMapName /Custom def -/CMapVersion 1 def -/CMapType 0 def -/WMode 0 def -1 begincodespacerange -<0000> -endcodespacerange -1 beginbfchar -<0001> <2023> -endbfchar -endcmap -CMapName currentdict /CMap defineresource pop -end -end -%%EndResource -%%EOF -endstream -endobj - -4395 0 obj -<< - /Length 344 - /Filter /FlateDecode - /Subtype /CIDFontType0C ->> -stream -xcd`aa`ddLJ-*+-N-L JM/I,ɹ!#CAAB<=EFBOVY \ (>񨀨W< ̌l|ގ)I)y%%E% -BHFY -EY% -%Ez L 8Θ;u3VNe4]yn\oMOQ4@!!&FFߔ?^cCe/s7ˏ~:nn}wߓX+ -bW}c3wOd{||95~Rl; -endstream -endobj - -4396 0 obj -<< - /Type /Font - /Subtype /Type0 - /BaseFont /LCCCWY+DejaVuSansMono-Bold - /Encoding /Identity-H - /DescendantFonts [4397 0 R] - /ToUnicode 4400 0 R ->> -endobj - -4397 0 obj -<< - /Type /Font - /Subtype /CIDFontType2 - /BaseFont /LCCCWY+DejaVuSansMono-Bold - /CIDSystemInfo << - /Registry (Adobe) - /Ordering (Identity) - /Supplement 0 - >> - /FontDescriptor 4399 0 R - /DW 0 - /CIDToGIDMap /Identity - /W [0 8 602.0508] ->> -endobj - -4398 0 obj -<< - /Length 10 - /Filter /FlateDecode ->> -stream -x -endstream -endobj - -4399 0 obj -<< - /Type /FontDescriptor - /FontName /LCCCWY+DejaVuSansMono-Bold - /Flags 131077 - /FontBBox [16.113281 -176.75781 602.0508 742.1875] - /ItalicAngle 0 - /Ascent 759.7656 - /Descent -240.23438 - /CapHeight 759.7656 - /StemV 168.6 - /CIDSet 4398 0 R - /FontFile2 4401 0 R ->> -endobj - -4400 0 obj -<< - /Length 717 - /Type /CMap - /WMode 0 ->> -stream -%!PS-Adobe-3.0 Resource-CMap -%%DocumentNeededResources: procset CIDInit -%%IncludeResource: procset CIDInit -%%BeginResource: CMap Custom -%%Title: (Custom Adobe Identity 0) -%%Version: 1 -%%EndComments -/CIDInit /ProcSet findresource begin -12 dict begin -begincmap -/CIDSystemInfo 3 dict dup begin - /Registry (Adobe) def - /Ordering (Identity) def - /Supplement 0 def -end def -/CMapName /Custom def -/CMapVersion 1 def -/CMapType 0 def -/WMode 0 def -1 begincodespacerange -<0000> -endcodespacerange -8 beginbfchar -<0001> <0052> -<0002> <0045> -<0003> <004C> -<0004> <004F> -<0005> <0041> -<0006> <0044> -<0007> <0055> -<0008> <004E> -endbfchar -endcmap -CMapName currentdict /CMap defineresource pop -end -end -%%EndResource -%%EOF -endstream -endobj - -4401 0 obj -<< - /Length 4326 - /Filter /FlateDecode ->> -stream -xXypTǙ^ϥc B\bFBpY⑑YB 4#Fd#&)qd ^(En[8*d7HȘVvf~0)nߛ/oYR Ђ~}U hC 7l Xis"}wv Ζ&뿋hӾnUh960Xg, uXW8V@ Я,e'pj c\62,`9j-Y. +{Hz*ѧe40N칪>NBc)hx g3qcylc,Wb6qp?g`q|2>>ȟ)>Ua:Yך+<;O-Dl.XZg+6 .3ŋSx Ϡ\u| gh)?,V`ɯ$c?zʒΊ|8>u -|~-2ܰFaKG]~͛u[<[{:/Tm]QnV3-!VX\fs|bcDi=*R0 Kl -bΎ)]Yv's\#C#"^H:,ve.,s ~[DtE"7evFLgvƈqό?> bG}#ƣ>v׃wAu+-Ah ras#d)dv"WpdUS8qHpdNc 8EVXKlV0C_Vh+KmqudO~k'Tmƾe\fo\Ƴgx!cz>ܘ=b.rӲxR|PL@+?)3_w>kc+Y׸`|x_{>fV9FxQoV>73 -f9,;SfkN9pMY++w4Ov]lkƟͥ#ءC1>Rob^1|v4gZ4Ւg!0϶c# PԌKiycl{0ե1e -;ŽY؞+{*Ӎ;>{߃8k=ԯ\'̶Mw^KDG.K`P;QcwFu~I"%!"8Wp1"1,=ZPδkX0,BPXp'A`l3plk?6a>5zR#̶lٶ!՘`1ΘtDjt"Bv"n0-(A Çf ݈] QJtE hXqyFatAB(GЄ- )G$}hC|hGZCIMi(a=:сN܋N#|#7KqAc8/* -ݦbBnİ(F zP8:у. ,vIEЁ0& -P"RFF ŨfюN|EZV67@_LEcYvÇN~)YċJlT6)?*{ãTU6nb33^YD3NӗSfd1>Ǜ"E3b2),׏,ɑsCWމO` z(k>hCF9Yk_^3υ1MĝЉz$16!遈X#С(J2"rwʈx(?Q=RÂ舶e,c73~}'zPm{)*ϔṇRYHVgvQh"S'M\* aH<5&9]2!m4qs9 ;X 1n !pEǍMؤ{@&3O1i+FQ߸Qع](&Eo5^+9b?]qUgتK(QA'%uLDsZMr@V碪';{*-8[GZ -i5(b 6b P/*PZlF%Qr2#sj܂JXMKaԣLb7'EZ#P˹*mTA֢^bGQ)mQM(UjP+bIVdz ֣XufoE5]3sɴLj$jlBw7uES lkkPoR!H(FQ:4k% ai9R\oȬV]Ŭ֌haSo FV -T GqV"JM?Rz(0DPQY=:>)*"e2n/<4LIm|t&ˎ%&P -HJjS[^8n&s›Z!*e$Ƣ/"nUE?DY *QRzQ6qdgbL7dPX #(:)j'#\wU`bNǪ iM.VN7vW{I&;ODnl\djhUΏDTbH}m-u`gs|j QWbnXrsHV1O(uaܯ=.<#9h@ v_0yy0dx-?w~ z=D} n:AA?2̫i0F$ŠW_~$ܫ|R#O ANM_X_4Ło/<__XKϗss}ߠ 3]w/e7 [Ơa?y:Oe҉']tOcGc==OG{#Gӑ<:F;>zԠG.Hzeʠ`@Z=v?f}!kЃux<.Q5RguDyDUt_e*3h05{:elfY3 /kîO3h44Mpڢgyije3hr. 3 +䂇Lʝ)lNM)NM)NrmTnsMyh85CnvnqeԹCpiiIK#g:|-_] -endstream -endobj - -4402 0 obj -[/ICCBased 4404 0 R] -endobj - -4403 0 obj -[/ICCBased 4405 0 R] -endobj - -4404 0 obj -<< - /Length 258 - /N 1 - /Range [0 1] - /Filter /FlateDecode ->> -stream -xuJPFOUvDD@`]\ -FMkIRB|&إnऋ(HrTų9` ըa&ʺ:l -3Ŭ*ުnh)&C|>b纝黓AvCƫ+ y') -̵8+/> -stream -x}Kq?UX 94%MQKSN#ԦQvBˡhFk ! -ՠZP~xx^ޗQx"^P c!H0 - 0l+ߣy7;׫;Q?V._tF3LEK)y z80eIPkT/%[p:8+%d"G `d_{ٹ֖gzm\8rSif1\CU` S] @o _ -endstream -endobj - -4406 0 obj -[4743 0 R /XYZ 70.86614 563.1574 0] -endobj - -4407 0 obj -[4743 0 R /XYZ 70.86614 227.6214 0] -endobj - -4408 0 obj -[4756 0 R /XYZ 70.86614 473.5624 0] -endobj - -4409 0 obj -[4756 0 R /XYZ 70.86614 189.85742 0] -endobj - -4410 0 obj -[4743 0 R /XYZ 70.86614 270.0724 0] -endobj - -4411 0 obj -[4769 0 R /XYZ 70.86614 546.0924 0] -endobj - -4412 0 obj -[4743 0 R /XYZ 70.86614 751.3704 0] -endobj - -4413 0 obj -[4787 0 R /XYZ 70.86614 660.6094 0] -endobj - -4414 0 obj -[4787 0 R /XYZ 70.86614 224.9267 0] -endobj - -4415 0 obj -[4799 0 R /XYZ 70.86614 484.6444 0] -endobj - -4416 0 obj -[4787 0 R /XYZ 70.86614 766.8504 0] -endobj - -4417 0 obj -[4803 0 R /XYZ 70.86614 438.3524 0] -endobj - -4418 0 obj -[4808 0 R /XYZ 70.86614 766.8504 0] -endobj - -4419 0 obj -[4803 0 R /XYZ 70.86614 592.29944 0] -endobj - -4420 0 obj -[4817 0 R /XYZ 70.86614 651.1064 0] -endobj - -4421 0 obj -[4817 0 R /XYZ 70.86614 149.31738 0] -endobj - -4422 0 obj -[4820 0 R /XYZ 70.86614 212.80957 0] -endobj - -4423 0 obj -[4812 0 R /XYZ 70.86614 162.83142 0] -endobj - -4424 0 obj -[4829 0 R /XYZ 70.86614 141.41962 0] -endobj - -4425 0 obj -[4836 0 R /XYZ 70.86614 326.0504 0] -endobj - -4426 0 obj -[4840 0 R /XYZ 70.86614 193.52795 0] -endobj - -4427 0 obj -[4844 0 R /XYZ 70.86614 367.3716 0] -endobj - -4428 0 obj -[4829 0 R /XYZ 70.86614 554.3584 0] -endobj - -4429 0 obj -[4848 0 R /XYZ 70.86614 358.31302 0] -endobj - -4430 0 obj -[4852 0 R /XYZ 70.86614 403.732 0] -endobj - -4431 0 obj -[4848 0 R /XYZ 70.86614 443.95 0] -endobj - -4432 0 obj -[4803 0 R /XYZ 70.86614 766.8504 0] -endobj - -4433 0 obj -[4874 0 R /XYZ 70.86614 461.0124 0] -endobj - -4434 0 obj -[4884 0 R /XYZ 70.86614 442.8364 0] -endobj - -4435 0 obj -[4899 0 R /XYZ 70.86614 266.8504 0] -endobj - -4436 0 obj -[4917 0 R /XYZ 70.86614 483.2844 0] -endobj - -4437 0 obj -[4864 0 R /XYZ 70.86614 344.5394 0] -endobj - -4438 0 obj -[4921 0 R /XYZ 70.86614 562.8894 0] -endobj - -4439 0 obj -[4925 0 R /XYZ 70.86614 644.3064 0] -endobj - -4440 0 obj -[4921 0 R /XYZ 70.86614 703.17444 0] -endobj - -4441 0 obj -[4941 0 R /XYZ 70.86614 614.0324 0] -endobj - -4442 0 obj -[4864 0 R /XYZ 70.86614 519.0904 0] -endobj - -4443 0 obj -[4947 0 R /XYZ 70.86614 460.6354 0] -endobj - -4444 0 obj -[4956 0 R /XYZ 70.86614 573.4164 0] -endobj - -4445 0 obj -[4973 0 R /XYZ 70.86614 703.17444 0] -endobj - -4446 0 obj -[4976 0 R /XYZ 70.86614 689.5124 0] -endobj - -4447 0 obj -[4976 0 R /XYZ 70.86614 171.0354 0] -endobj - -4448 0 obj -[4947 0 R /XYZ 70.86614 566.8764 0] -endobj - -4449 0 obj -[4998 0 R /XYZ 70.86614 687.9334 0] -endobj - -4450 0 obj -[5009 0 R /XYZ 70.86614 716.8364 0] -endobj - -4451 0 obj -[5009 0 R /XYZ 70.86614 150.51141 0] -endobj - -4452 0 obj -[5053 0 R /XYZ 70.86614 593.8784 0] -endobj - -4453 0 obj -[4998 0 R /XYZ 70.86614 766.8504 0] -endobj - -4454 0 obj -[5066 0 R /XYZ 70.86614 682.9724 0] -endobj - -4455 0 obj -[5066 0 R /XYZ 70.86614 331.1374 0] -endobj - -4456 0 obj -[5066 0 R /XYZ 70.86614 302.23438 0] -endobj - -4457 0 obj -[5066 0 R /XYZ 70.86614 268.1104 0] -endobj - -4458 0 obj -[5066 0 R /XYZ 70.86614 233.98639 0] -endobj - -4459 0 obj -[5066 0 R /XYZ 70.86614 199.86243 0] -endobj - -4460 0 obj -[5066 0 R /XYZ 70.86614 179.40039 0] -endobj - -4461 0 obj -[4756 0 R /XYZ 70.86614 101.267395 0] -endobj - -4462 0 obj -[5066 0 R /XYZ 70.86614 117.95239 0] -endobj - -4463 0 obj -[5095 0 R /XYZ 70.86614 766.8504 0] -endobj - -4464 0 obj -[5095 0 R /XYZ 70.86614 684.9404 0] -endobj - -4465 0 obj -[5095 0 R /XYZ 70.86614 650.8164 0] -endobj - -4466 0 obj -[5095 0 R /XYZ 70.86614 616.6924 0] -endobj - -4467 0 obj -[5095 0 R /XYZ 70.86614 582.56836 0] -endobj - -4468 0 obj -[5095 0 R /XYZ 70.86614 534.7824 0] -endobj - -4469 0 obj -[4756 0 R /XYZ 188.99736 745.5764 0] -endobj - -4470 0 obj -[5095 0 R /XYZ 70.86614 486.9964 0] -endobj - -4471 0 obj -[5095 0 R /XYZ 70.86614 452.8724 0] -endobj - -4472 0 obj -[5095 0 R /XYZ 70.86614 418.7484 0] -endobj - -4473 0 obj -[5095 0 R /XYZ 70.86614 370.9624 0] -endobj - -4474 0 obj -[5095 0 R /XYZ 70.86614 309.5144 0] -endobj - -4475 0 obj -[5095 0 R /XYZ 70.86614 248.0664 0] -endobj - -4476 0 obj -[5095 0 R /XYZ 70.86614 213.94238 0] -endobj - -4477 0 obj -[5095 0 R /XYZ 70.86614 193.48041 0] -endobj - -4478 0 obj -[5095 0 R /XYZ 70.86614 132.03241 0] -endobj - -4479 0 obj -[5127 0 R /XYZ 70.86614 766.8504 0] -endobj - -4480 0 obj -[5127 0 R /XYZ 70.86614 719.0644 0] -endobj - -4481 0 obj -[5127 0 R /XYZ 70.86614 671.2784 0] -endobj - -4482 0 obj -[5127 0 R /XYZ 70.86614 623.49243 0] -endobj - -4483 0 obj -[5127 0 R /XYZ 70.86614 575.7064 0] -endobj - -4484 0 obj -[5127 0 R /XYZ 70.86614 514.2584 0] -endobj - -4485 0 obj -[5127 0 R /XYZ 70.86614 466.4724 0] -endobj - -4486 0 obj -[5127 0 R /XYZ 70.86614 432.3484 0] -endobj - -4487 0 obj -[5127 0 R /XYZ 70.86614 370.9004 0] -endobj - -4488 0 obj -[5127 0 R /XYZ 70.86614 336.7764 0] -endobj - -4489 0 obj -[5127 0 R /XYZ 70.86614 275.32843 0] -endobj - -4490 0 obj -[5127 0 R /XYZ 70.86614 227.54242 0] -endobj - -4491 0 obj -[5127 0 R /XYZ 70.86614 166.09442 0] -endobj - -4492 0 obj -[5127 0 R /XYZ 70.86614 131.9704 0] -endobj - -4493 0 obj -[5155 0 R /XYZ 70.86614 766.8504 0] -endobj - -4494 0 obj -[4806 0 R /XYZ 70.86614 408.4204 0] -endobj - -4495 0 obj -[5155 0 R /XYZ 70.86614 719.0644 0] -endobj - -4496 0 obj -[5155 0 R /XYZ 70.86614 684.9404 0] -endobj - -4497 0 obj -[4829 0 R /XYZ 70.86614 211.88239 0] -endobj - -4498 0 obj -[4806 0 R /XYZ 70.86614 322.02838 0] -endobj - -4499 0 obj -[4808 0 R /XYZ 70.86614 259.5064 0] -endobj - -4500 0 obj -[5155 0 R /XYZ 70.86614 650.8164 0] -endobj - -4501 0 obj -[4840 0 R /XYZ 70.86614 436.0584 0] -endobj - -4502 0 obj -[5155 0 R /XYZ 70.86614 589.3684 0] -endobj - -4503 0 obj -[4844 0 R /XYZ 70.86614 551.676 0] -endobj - -4504 0 obj -[4848 0 R /XYZ 70.86614 766.8504 0] -endobj - -4505 0 obj -[4874 0 R /XYZ 70.86614 766.8504 0] -endobj - -4506 0 obj -[4852 0 R /XYZ 70.86614 530.7204 0] -endobj - -4507 0 obj -[4840 0 R /XYZ 70.86614 690.6024 0] -endobj - -4508 0 obj -[4874 0 R /XYZ 70.86614 273.1394 0] -endobj - -4509 0 obj -[4836 0 R /XYZ 70.86614 249.72339 0] -endobj - -4510 0 obj -[4836 0 R /XYZ 70.86614 626.2924 0] -endobj - -4511 0 obj -[4884 0 R /XYZ 70.86614 166.1914 0] -endobj - -4512 0 obj -[4899 0 R /XYZ 70.86614 531.0484 0] -endobj - -4513 0 obj -[4820 0 R /XYZ 70.86614 481.9704 0] -endobj - -4514 0 obj -[4822 0 R /XYZ 70.86614 552.6725 0] -endobj - -4515 0 obj -[4822 0 R /XYZ 70.86614 114.11548 0] -endobj - -4516 0 obj -[4905 0 R /XYZ 70.86614 733.27637 0] -endobj - -4517 0 obj -[4905 0 R /XYZ 84.86614 575.9684 0] -endobj - -4518 0 obj -[4905 0 R /XYZ 84.86614 676.9084 0] -endobj - -4519 0 obj -[4905 0 R /XYZ 70.86614 397.0664 0] -endobj - -4520 0 obj -[4905 0 R /XYZ 70.86614 133.45135 0] -endobj - -4521 0 obj -[4905 0 R /XYZ 460.86523 491.3384 0] -endobj - -4522 0 obj -[4917 0 R /XYZ 70.86614 356.8594 0] -endobj - -4523 0 obj -[5155 0 R /XYZ 70.86614 541.5824 0] -endobj - -4524 0 obj -[5155 0 R /XYZ 70.86614 507.4584 0] -endobj - -4525 0 obj -[4929 0 R /XYZ 70.86614 111.99536 0] -endobj - -4526 0 obj -[4929 0 R /XYZ 215.36813 305.1084 0] -endobj - -4527 0 obj -[4941 0 R /XYZ 70.86614 123.72339 0] -endobj - -4528 0 obj -[4941 0 R /XYZ 70.86614 101.267395 0] -endobj - -4529 0 obj -[4941 0 R /XYZ 424.47882 581.8794 0] -endobj - -4530 0 obj -[4941 0 R /XYZ 448.44293 568.2174 0] -endobj - -4531 0 obj -[5155 0 R /XYZ 70.86614 486.9964 0] -endobj - -4532 0 obj -[5155 0 R /XYZ 70.86614 466.5344 0] -endobj - -4533 0 obj -[5155 0 R /XYZ 70.86614 418.7484 0] -endobj - -4534 0 obj -[5155 0 R /XYZ 70.86614 370.9624 0] -endobj - -4535 0 obj -[5155 0 R /XYZ 70.86614 309.5144 0] -endobj - -4536 0 obj -[5155 0 R /XYZ 70.86614 241.26642 0] -endobj - -4537 0 obj -[4822 0 R /XYZ 70.86614 260.2793 0] -endobj - -4538 0 obj -[5155 0 R /XYZ 70.86614 207.1424 0] -endobj - -4539 0 obj -[5155 0 R /XYZ 70.86614 159.35638 0] -endobj - -4540 0 obj -[4973 0 R /XYZ 70.86614 111.99536 0] -endobj - -4541 0 obj -[5189 0 R /XYZ 70.86614 766.8504 0] -endobj - -4542 0 obj -[5189 0 R /XYZ 70.86614 732.7264 0] -endobj - -4543 0 obj -[5189 0 R /XYZ 70.86614 684.9404 0] -endobj - -4544 0 obj -[5189 0 R /XYZ 70.86614 650.8164 0] -endobj - -4545 0 obj -[5189 0 R /XYZ 70.86614 603.0304 0] -endobj - -4546 0 obj -[5189 0 R /XYZ 70.86614 568.9064 0] -endobj - -4547 0 obj -[5189 0 R /XYZ 70.86614 521.12036 0] -endobj - -4548 0 obj -[5189 0 R /XYZ 70.86614 486.9964 0] -endobj - -4549 0 obj -[5189 0 R /XYZ 70.86614 439.2104 0] -endobj - -4550 0 obj -[5189 0 R /XYZ 70.86614 377.7624 0] -endobj - -4551 0 obj -[4973 0 R /XYZ 246.03696 507.1394 0] -endobj - -4552 0 obj -[5189 0 R /XYZ 70.86614 329.9764 0] -endobj - -4553 0 obj -[5189 0 R /XYZ 70.86614 295.85242 0] -endobj - -4554 0 obj -[5189 0 R /XYZ 70.86614 248.0664 0] -endobj - -4555 0 obj -[5189 0 R /XYZ 70.86614 186.61841 0] -endobj - -4556 0 obj -[5189 0 R /XYZ 70.86614 138.8324 0] -endobj - -4557 0 obj -[5221 0 R /XYZ 70.86614 766.8504 0] -endobj - -4558 0 obj -[5221 0 R /XYZ 70.86614 732.7264 0] -endobj - -4559 0 obj -[5221 0 R /XYZ 70.86614 698.6024 0] -endobj - -4560 0 obj -[5221 0 R /XYZ 70.86614 650.8164 0] -endobj - -4561 0 obj -[5221 0 R /XYZ 70.86614 603.0304 0] -endobj - -4562 0 obj -[5221 0 R /XYZ 70.86614 568.9064 0] -endobj - -4563 0 obj -[5221 0 R /XYZ 70.86614 507.4584 0] -endobj - -4564 0 obj -[5221 0 R /XYZ 70.86614 459.6724 0] -endobj - -4565 0 obj -[5221 0 R /XYZ 70.86614 411.8864 0] -endobj - -4566 0 obj -[5221 0 R /XYZ 70.86614 364.1004 0] -endobj - -4567 0 obj -[5221 0 R /XYZ 70.86614 316.3144 0] -endobj - -4568 0 obj -[5221 0 R /XYZ 70.86614 282.19043 0] -endobj - -4569 0 obj -[5221 0 R /XYZ 70.86614 234.40442 0] -endobj - -4570 0 obj -[5221 0 R /XYZ 70.86614 186.61841 0] -endobj - -4571 0 obj -[5221 0 R /XYZ 70.86614 138.8324 0] -endobj - -4572 0 obj -[5251 0 R /XYZ 70.86614 732.7264 0] -endobj - -4573 0 obj -[5251 0 R /XYZ 70.86614 684.9404 0] -endobj - -4574 0 obj -[5251 0 R /XYZ 70.86614 637.1544 0] -endobj - -4575 0 obj -[5251 0 R /XYZ 70.86614 589.3684 0] -endobj - -4576 0 obj -[5251 0 R /XYZ 70.86614 527.9204 0] -endobj - -4577 0 obj -[5251 0 R /XYZ 70.86614 480.1344 0] -endobj - -4578 0 obj -[5251 0 R /XYZ 70.86614 432.3484 0] -endobj - -4579 0 obj -[5251 0 R /XYZ 70.86614 398.2244 0] -endobj - -4580 0 obj -[5251 0 R /XYZ 70.86614 364.1004 0] -endobj - -4581 0 obj -[5251 0 R /XYZ 70.86614 343.6384 0] -endobj - -4582 0 obj -[5251 0 R /XYZ 70.86614 309.5144 0] -endobj - -4583 0 obj -[5251 0 R /XYZ 70.86614 261.7284 0] -endobj - -4584 0 obj -[5251 0 R /XYZ 70.86614 213.94238 0] -endobj - -4585 0 obj -[5251 0 R /XYZ 70.86614 166.15637 0] -endobj - -4586 0 obj -[5251 0 R /XYZ 70.86614 132.03241 0] -endobj - -4587 0 obj -[5270 0 R /XYZ 70.86614 766.8504 0] -endobj - -4588 0 obj -[5270 0 R /XYZ 70.86614 705.4024 0] -endobj - -4589 0 obj -[5270 0 R /XYZ 70.86614 684.9404 0] -endobj - -4590 0 obj -[5270 0 R /XYZ 70.86614 664.4784 0] -endobj - -4591 0 obj -[5270 0 R /XYZ 70.86614 616.6924 0] -endobj - -4592 0 obj -[5270 0 R /XYZ 70.86614 568.9064 0] -endobj - -4593 0 obj -[5270 0 R /XYZ 70.86614 521.12036 0] -endobj - -4594 0 obj -[5270 0 R /XYZ 70.86614 473.3344 0] -endobj - -4595 0 obj -[5270 0 R /XYZ 70.86614 425.5484 0] -endobj - -4596 0 obj -[4743 0 R /XYZ 178.1254 701.1934 0] -endobj - -4597 0 obj -[4743 0 R /XYZ 423.09903 660.2074 0] -endobj - -4598 0 obj -[4743 0 R /XYZ 382.28867 632.8834 0] -endobj - -4599 0 obj -[4743 0 R /XYZ 508.94345 367.1224 0] -endobj - -4600 0 obj -[4743 0 R /XYZ 153.22902 353.4604 0] -endobj - -4601 0 obj -[4756 0 R /XYZ 524.4094 513.3844 0] -endobj - -4602 0 obj -[4756 0 R /XYZ 317.62296 441.4094 0] -endobj - -4603 0 obj -[4756 0 R /XYZ 125.0658 427.7474 0] -endobj - -4604 0 obj -[4756 0 R /XYZ 465.35275 414.0854 0] -endobj - -4605 0 obj -[4756 0 R /XYZ 278.04752 400.4234 0] -endobj - -4606 0 obj -[4756 0 R /XYZ 238.44057 359.4374 0] -endobj - -4607 0 obj -[4769 0 R /XYZ 219.96544 670.46643 0] -endobj - -4608 0 obj -[4769 0 R /XYZ 107.44759 486.6154 0] -endobj - -4609 0 obj -[4769 0 R /XYZ 237.97284 486.6154 0] -endobj - -4610 0 obj -[4787 0 R /XYZ 293.1822 628.4564 0] -endobj - -4611 0 obj -[4787 0 R /XYZ 408.30182 530.1707 0] -endobj - -4612 0 obj -[4787 0 R /XYZ 108.7478 468.7227 0] -endobj - -4613 0 obj -[4787 0 R /XYZ 270.1342 407.2747 0] -endobj - -4614 0 obj -[4787 0 R /XYZ 167.72777 352.6267 0] -endobj - -4615 0 obj -[4787 0 R /XYZ 210.38522 267.32867 0] -endobj - -4616 0 obj -[4787 0 R /XYZ 355.5598 267.32867 0] -endobj - -4617 0 obj -[4787 0 R /XYZ 412.81937 267.32867 0] -endobj - -4618 0 obj -[4787 0 R /XYZ 503.99344 267.32867 0] -endobj - -4619 0 obj -[4787 0 R /XYZ 235.28406 192.77368 0] -endobj - -4620 0 obj -[4799 0 R /XYZ 363.59082 711.4524 0] -endobj - -4621 0 obj -[4799 0 R /XYZ 322.45868 581.6944 0] -endobj - -4622 0 obj -[4799 0 R /XYZ 211.09238 527.0464 0] -endobj - -4623 0 obj -[4799 0 R /XYZ 381.96036 527.0464 0] -endobj - -4624 0 obj -[4799 0 R /XYZ 153.25615 513.3844 0] -endobj - -4625 0 obj -[4803 0 R /XYZ 317.83813 194.46942 0] -endobj - -4626 0 obj -[4817 0 R /XYZ 317.01538 618.95337 0] -endobj - -4627 0 obj -[4836 0 R /XYZ 168.51923 670.46643 0] -endobj - -4628 0 obj -[4840 0 R /XYZ 292.8334 462.5704 0] -endobj - -4629 0 obj -[4925 0 R /XYZ 355.30414 530.1814 0] -endobj - -4630 0 obj -[4925 0 R /XYZ 414.00015 530.1814 0] -endobj - -4631 0 obj -[4947 0 R /XYZ 291.5864 428.4824 0] -endobj - -4632 0 obj -[4947 0 R /XYZ 168.92632 107.51837 0] -endobj - -4633 0 obj -[4956 0 R /XYZ 524.4094 684.1284 0] -endobj - -4634 0 obj -[4956 0 R /XYZ 321.3684 425.1674 0] -endobj - -4635 0 obj -[4956 0 R /XYZ 145.59686 124.665405 0] -endobj - -4636 0 obj -[4956 0 R /XYZ 120.04367 111.00342 0] -endobj - -4637 0 obj -[4973 0 R /XYZ 310.54578 479.8154 0] -endobj - -4638 0 obj -[4973 0 R /XYZ 481.62567 302.27142 0] -endobj - -4639 0 obj -[4973 0 R /XYZ 136.55405 288.60938 0] -endobj - -4640 0 obj -[4973 0 R /XYZ 246.84358 274.9474 0] -endobj - -4641 0 obj -[4973 0 R /XYZ 443.16983 274.9474 0] -endobj - -4642 0 obj -[4973 0 R /XYZ 393.09418 199.8374 0] -endobj - -4643 0 obj -[4973 0 R /XYZ 162.6677 186.17542 0] -endobj - -4644 0 obj -[4973 0 R /XYZ 395.751 186.17542 0] -endobj - -4645 0 obj -[4973 0 R /XYZ 178.73436 138.3894 0] -endobj - -4646 0 obj -[4976 0 R /XYZ 238.37125 745.5764 0] -endobj - -4647 0 obj -[4985 0 R /XYZ 209.40015 656.8044 0] -endobj - -4648 0 obj -[4985 0 R /XYZ 443.829 533.9084 0] -endobj - -4649 0 obj -[4985 0 R /XYZ 209.55678 411.0124 0] -endobj - -4650 0 obj -[4985 0 R /XYZ 122.979576 226.60638 0] -endobj - -4651 0 obj -[4985 0 R /XYZ 292.35217 185.62042 0] -endobj - -4652 0 obj -[4985 0 R /XYZ 398.23715 171.95837 0] -endobj - -4653 0 obj -[4998 0 R /XYZ 334.1413 567.0084 0] -endobj - -4654 0 obj -[4998 0 R /XYZ 414.36783 539.6844 0] -endobj - -4655 0 obj -[4998 0 R /XYZ 240.69826 355.2784 0] -endobj - -4656 0 obj -[4998 0 R /XYZ 390.9383 211.8584 0] -endobj - -4657 0 obj -[4998 0 R /XYZ 355.56662 157.21039 0] -endobj - -4658 0 obj -[4998 0 R /XYZ 524.4094 157.21039 0] -endobj - -4659 0 obj -[5009 0 R /XYZ 283.5666 636.8974 0] -endobj - -4660 0 obj -[5009 0 R /XYZ 111.38758 595.9114 0] -endobj - -4661 0 obj -[5009 0 R /XYZ 272.62112 397.8434 0] -endobj - -4662 0 obj -[5009 0 R /XYZ 219.68813 206.57538 0] -endobj - -4663 0 obj -[5029 0 R /XYZ 239.16399 615.8184 0] -endobj - -4664 0 obj -[5029 0 R /XYZ 112.72849 602.1564 0] -endobj - -4665 0 obj -[5029 0 R /XYZ 276.56262 602.1564 0] -endobj - -4666 0 obj -[5029 0 R /XYZ 503.99344 574.8324 0] -endobj - -4667 0 obj -[5029 0 R /XYZ 306.7424 335.7784 0] -endobj - -4668 0 obj -[5029 0 R /XYZ 177.65485 294.79242 0] -endobj - -4669 0 obj -[5029 0 R /XYZ 298.93057 294.79242 0] -endobj - -4670 0 obj -[5029 0 R /XYZ 334.41858 253.8064 0] -endobj - -4671 0 obj -[5053 0 R /XYZ 485.22726 745.5764 0] -endobj - -4672 0 obj -[5053 0 R /XYZ 308.39426 731.9144 0] -endobj - -4673 0 obj -[5053 0 R /XYZ 486.7188 704.5904 0] -endobj - -4674 0 obj -[5053 0 R /XYZ 263.03928 690.9284 0] -endobj - -4675 0 obj -[5053 0 R /XYZ 289.94495 677.2664 0] -endobj - -4676 0 obj -[5053 0 R /XYZ 497.94345 486.6154 0] -endobj - -4677 0 obj -[5053 0 R /XYZ 399.76514 343.1954 0] -endobj - -4678 0 obj -[5053 0 R /XYZ 394.7261 145.12738 0] -endobj - -4679 0 obj -[5053 0 R /XYZ 172.12447 131.4654 0] -endobj - -4680 0 obj -[5053 0 R /XYZ 275.54834 104.14142 0] -endobj - -4681 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /XObject << - /x0 5272 0 R - >> - /Font << - /f0 4354 0 R - /f1 4360 0 R - /f2 4366 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 0 - /Parent 1 0 R - /Contents 4682 0 R ->> -endobj - -4682 0 obj -<< - /Length 2833 - /Filter /FlateDecode ->> -stream -x\[o\~?֛VlFE-΃Hxl6@=r8% xp8o<{jpse/^t]nosG~=fqݽ|^~{ FH Nqeyހfw߀y~ӄ p2Շރ pN0sFa՟ݷW/7qcﯾ~`atYpgN(=vK엻uv. ˮ#_W=ծ؅09=o_O0S0Sq$5*4Ѹ(=XDg7f3RSgvۙ^g(e4HK*DK܍G]ӽY F -^;ϬԪ`7 QpSz$6D mFf#{~^Q;3[0gYBɝ?P&#%wVۇ^m-{w޼W|mtF#g EFk%'(y<߲jb@ޝ+m)-R8]q /۹Cr틈}.HuZ) Tԕ#jW8n(ub ŬUF -`ɶRaE&(<&QPi#7~oچEB]\Hh_D-P8ZD5k@ܩ㺪E'9R -TvOfHES*ilq~vK6{2Qk -y+ĭGEϭ\n2?ѣ1CswNrJjҷ;ڽq|?H9RӄJo[fjPdQ}Zh༓-6f6޴ǩr"k]26ѤӖrRTxyW @(=Y2۵Y;:|"dfe/׭h pT5bɟ](Uo|.wcjcd9.e#vu"&t/ -ҏ&F˕z%Ww|'+&z4\ Ňs|]citaBz;\ЇvLjυkzJL3LqdE#\ [@؜>q}ݻm' 5~a{aL $} -endstream -endobj - -4683 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 689.9764 524.4094 697.4674] - /Border [0 0 0] - /Dest (sec:introduction) - /F 4 - /StructParent 1 - /Contents ->> -endobj - -4684 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 671.3144 524.4094 678.9264] - /Border [0 0 0] - /Dest (subsec:composability) - /F 4 - /StructParent 2 - /Contents ->> -endobj - -4685 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 652.6524 524.4094 660.2644] - /Border [0 0 0] - /Dest (subsec:motivation) - /F 4 - /StructParent 3 - /Contents ->> -endobj - -4686 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 633.9904 524.4094 641.6024] - /Border [0 0 0] - /Dest (subsubsec:motivation-plugins) - /F 4 - /StructParent 4 - /Contents ->> -endobj - -4687 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 615.32837 524.4094 622.9404] - /Border [0 0 0] - /Dest (subsubsec:motivation-harnesses) - /F 4 - /StructParent 5 - /Contents ->> -endobj - -4688 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 596.6664 524.4094 604.2784] - /Border [0 0 0] - /Dest (subsubsec:motivation-workaround) - /F 4 - /StructParent 6 - /Contents ->> -endobj - -4689 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 578.0044 524.4094 585.6164] - /Border [0 0 0] - /Dest (subsec:contributions) - /F 4 - /StructParent 7 - /Contents ->> -endobj - -4690 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 549.4634 524.4094 556.9544] - /Border [0 0 0] - /Dest (sec:preliminary) - /F 4 - /StructParent 8 - /Contents ->> -endobj - -4691 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 530.8014 524.4094 538.4134] - /Border [0 0 0] - /Dest (subsec:effects) - /F 4 - /StructParent 9 - /Contents ->> -endobj - -4692 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 512.1394 524.4094 519.7514] - /Border [0 0 0] - /Dest (subsec:coeffects) - /F 4 - /StructParent 10 - /Contents ->> -endobj - -4693 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 493.4774 524.4094 501.0894] - /Border [0 0 0] - /Dest 4415 0 R - /F 4 - /StructParent 11 - /Contents ->> -endobj - -4694 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 464.9364 524.4094 472.4274] - /Border [0 0 0] - /Dest (sec:theory) - /F 4 - /StructParent 12 - /Contents ->> -endobj - -4695 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 446.2744 524.4094 453.8864] - /Border [0 0 0] - /Dest (subsec:revertible-effects) - /F 4 - /StructParent 13 - /Contents ->> -endobj - -4696 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 427.6124 524.4094 435.2244] - /Border [0 0 0] - /Dest (subsubsec:eff-formalization) - /F 4 - /StructParent 14 - /Contents ->> -endobj - -4697 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 408.9504 524.4094 416.5624] - /Border [0 0 0] - /Dest (subsubsec:eff-composition) - /F 4 - /StructParent 15 - /Contents ->> -endobj - -4698 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 390.2884 524.4094 397.9004] - /Border [0 0 0] - /Dest (subsec:reactive-coeffects) - /F 4 - /StructParent 16 - /Contents ->> -endobj - -4699 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 371.6264 524.4094 379.2384] - /Border [0 0 0] - /Dest (subsubsec:coeff-context) - /F 4 - /StructParent 17 - /Contents ->> -endobj - -4700 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 352.9644 524.4094 360.5764] - /Border [0 0 0] - /Dest (subsubsec:coeff-reactive) - /F 4 - /StructParent 18 - /Contents ->> -endobj - -4701 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 334.3024 524.4094 341.9144] - /Border [0 0 0] - /Dest (subsubsec:coeff-isolate-intercept) - /F 4 - /StructParent 19 - /Contents ->> -endobj - -4702 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 315.64038 524.4094 323.25238] - /Border [0 0 0] - /Dest (subsec:component-lifecycle) - /F 4 - /StructParent 20 - /Contents ->> -endobj - -4703 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 296.9784 524.4094 304.5904] - /Border [0 0 0] - /Dest (subsubsec:eff-idempotent) - /F 4 - /StructParent 21 - /Contents ->> -endobj - -4704 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 278.3164 524.4094 285.9284] - /Border [0 0 0] - /Dest (subsubsec:lifecycle-iteration) - /F 4 - /StructParent 22 - /Contents ->> -endobj - -4705 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 259.65442 524.4094 267.26642] - /Border [0 0 0] - /Dest (subsubsec:lifecycle-coherence) - /F 4 - /StructParent 23 - /Contents ->> -endobj - -4706 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 240.99237 524.4094 248.60437] - /Border [0 0 0] - /Dest (subsubsec:lifecycle-asynchrony) - /F 4 - /StructParent 24 - /Contents ->> -endobj - -4707 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 222.33038 524.4094 229.94238] - /Border [0 0 0] - /Dest (subsec:context-paradigm) - /F 4 - /StructParent 25 - /Contents ->> -endobj - -4708 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 203.6684 524.4094 211.2804] - /Border [0 0 0] - /Dest (subsubsec:unified-context) - /F 4 - /StructParent 26 - /Contents ->> -endobj - -4709 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 185.00641 524.4094 192.61841] - /Border [0 0 0] - /Dest (subsubsec:context-situating) - /F 4 - /StructParent 27 - /Contents ->> -endobj - -4710 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 156.4654 524.4094 163.95642] - /Border [0 0 0] - /Dest (sec:system) - /F 4 - /StructParent 28 - /Contents ->> -endobj - -4711 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 137.8034 524.4094 145.4154] - /Border [0 0 0] - /Dest (subsec:core-impl) - /F 4 - /StructParent 29 - /Contents ->> -endobj - -4712 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 119.14142 524.4094 126.75342] - /Border [0 0 0] - /Dest (subsubsec:effect-api) - /F 4 - /StructParent 30 - /Contents ->> -endobj - -4713 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 100.47937 524.4094 108.09143] - /Border [0 0 0] - /Dest (subsubsec:coeffect-api) - /F 4 - /StructParent 31 - /Contents ->> -endobj - -4714 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 89.42938 524.4094 89.42938] - /Border [0 0 0] - /Dest (subsubsec:component-api) - /F 4 - /StructParent 32 - /Contents ->> -endobj - -4715 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4354 0 R - /f1 4360 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 33 - /Tabs /S - /Parent 1 0 R - /Contents 4716 0 R - /Annots [4683 0 R 4684 0 R 4685 0 R 4686 0 R 4687 0 R 4688 0 R 4689 0 R 4690 0 R 4691 0 R 4692 0 R 4693 0 R 4694 0 R 4695 0 R 4696 0 R 4697 0 R 4698 0 R 4699 0 R 4700 0 R 4701 0 R 4702 0 R 4703 0 R 4704 0 R 4705 0 R 4706 0 R 4707 0 R 4708 0 R 4709 0 R 4710 0 R 4711 0 R 4712 0 R 4713 0 R 4714 0 R] ->> -endobj - -4716 0 obj -<< - /Length 16038 - /Filter /FlateDecode ->> -stream -xݽ]smq$޿hkLzժıv"ơ~Ф:s\Ч./_}{ʪo쫻o_~w7_o_?{|w~ꗿW_W_ݿ|=Onݭ_]-L-w篾ͺj|_~պuv?}c|柿֯ޗ+.Һ]w_7_ׯZo]uTrz+W]RJ-6K _$k7`Q˿}a4[>Çwg!fƤDt2DLfĭv)ZJӉ$gZLI1^&jͤhދ@mkqZ9[%ݕJқ8n[[a.RS7M+h&γ;D0(YTq[ϐ!kl-٥|d%gSQ5&aF],dPL>)5A۶T&N -I+e~]8AxQUӖIж ]RjmdRuSZ;!ͨb{eq"hgi+U˒ɜeKeJb|zIu7s"&3T|de"lZ7זS<3X皢`%QbDQ?ň+VI[ -Uĉ}KV;5TvŮ}ؿ?Ro~ʧkN2G'Ok%qzt{]<Ϳ$|<#??{~Bſ○)^my>ŸfdV<g,M,rQH-Z~PBH%sGeT2S̑=.b! A(F7xuY8[9{lu~m7S茇ޗ+~$U -?Ky/W)B$F~nEĮpK%yH)Ѕg#&FZE{ƤgH-R6(L2ir%k"y|Uh! m^bJwi]F{d7Ńoѵ6-av*rO\!$ܓCz/h\»54]'y_dёK&b35I)chH횂^<~jH-S82_Mh7_h+nj%cq_ѷU7_ղ;>i -+ -~o1) kQY8^Ek;>9 --߉ k/SĚLK* ޲!S2r#Tt9k_eJG.;F> -Wў01;$jC*?7(.$,V*GK&D{ҀO s#2yØX*H%5P"7SrxrȁJ;C.^)x-9|32c\n%gw"ERz9+Ӷs z8 ߈M;C9Up$q"GHcxs*G-yrevd E=pW!WF Q|?oQzXIdf$Z^S.k^HLmA/TTzߗΛzF$8|AG$|čprcm>Fͷ-I6 -pފ DoPTH.1 #ݷN'$}IE%'\`۔ࣾp̓GXi ~9b" 1Ybb,Bx~>>BZQ\lӦ&VӦ}y11 !YMGL̵iO:zjb(>~H57o⇚1#q\CK-7 >)GKS{F‡qZ|3̀PyG8#6hn8g6 -$xNx)%' Xeq ?$h$QZI.N~a?J _0"Mf HHP|2֒!%B_\)_DcH? ]7JV5v[ķ_0 =ȅÝ?>槲)>w9">`>TFև_|/E//^ȅZ1El3,#l*"h8`K"PC6-hIN"D^ĞD`*ˑDpc%t;X;ea!꜏>Χ Q|PLťر#E"@35$|D5qfbt:M$Du#E̅ H5%ޟrX"aRrtXȱkOYHK(b$ĥQ˂G EXڏ+i@ՄDGB6{c|شBa c8G 8];W>"nOz+"HP'qBZ ΀"@>#$8;_@-D^|y3Ryҗu3J[@4#>}SO`ECd>{pׯW KOψV{ߌ\i-;ѯ+|%ʂ -,u$ ͵4b;rn7/6mcKGM6RN2e[ӞZSCр ֜vweU)m% blɠ\S59B\QV+.i`MAp?RA* %˝r!59 cC{|Cu],BtYkH͓b<: KiUː5N?ȴ#5FH*pJiڬUgM 'z2c=׷B8"sHTZ3b{& a|ECdˎ"?MsÖZ#>ۍEO<%qxz"4Aԃu{m&?ŏ76 _uӮbTpz]4|&7x8qqC PI)h!JG:vl=8*t)޴o!I.,| )%I?DoJ?uDXȔ6>H7m|PEC[N^KQ EG : O r*v姂 \9C% Jd>Z%H !MothmxNЂ.@/hR6Ě/ECt2 z_,YXYvS*D;\Jzr=B?eBaLiK2Iєц %=B0T&V>VS)-A u_D;Pҳ7? =;_x,jI瑏}n zE>{U)Vӥ>wp_](>↸"|fmH3k+$+Ϭ5I|fMe d (Ay;4g'GQR'+`́"%5Q8HNZN}d} 4pG6ZJɐҔfI3WRr[)6xE/i5e$^|]R{#EG>?h5'-S]~s]IX#mxbIBG\(NY<?L4M/Iuھ+Ñ#xO-åm:^HHR:^v1gT1ۛ6L!SY@'bO(ڡ'J;1GA:sHFmR9v# ġ}?~mDS-/1sqa'cr%v8|J-->\9xW封W\'5c%k2Lx?u3#O“Մ[eWs2vNۯE=I#Yo؛Y !PI!zdLH$e|`_R4o _yQE>Z -^Kl6IEc$ _MRm;H-qD - ?!o(6lI!*5ߗR$i9ra=3 V@[O&iB<#c G$Hj["R {:I{Q!S|}?\0R᣾!ԑG|MEi-e|ۨE/YwXnf ?D[>wwJtr}3͗_-]ItYï==;}`q~*| OE2I/.9_[_\ggv Dl7ܠWB7dHffᣀxwц?\z2Ȟo/5$8-ݭYmoʡ@'i6B~lxs#]CG*GT͝#DF!G3 i @Z^NCV*ݵ; 7B,ӫE[w -t8ah"|LGh-O|Љh/ֲxmF6x£ Z>£4 ?&YSωO %צ.dw[[?Vk3]ȗClq/Sr^0?~[Y#懮Nx$ I >ի~hP} ?+PNdƽnzK(lҳ{3)HR?c HcPՈw<6N-C(1!2Jfs|Ite8`o[^-#En\(JtGxEF$"F#Σ@“C#QG1'1J*C^D -x1mĥ!q8QCV3)Ky hݖǀc`Wh!Jdh}2dHOk+ -^D E.6/]D@0U2;@ım,ZmtQQ gcl&qB$ش? %ՊHޮJɅ[$VYI!nFiO֡J;ߒDGt0 Uاy2zT~mC!/)KکJ틄?YQSA;Cn9-ڏ:釡.ڡ8:!ߑ9Or`E/T>|,iӂbN6Kw#T~:Ւ$|hԻ[fvl$uqn*7%Kt"j85lL(_3R{õ"ң>Qu?.Y.mA IsMqF d->pMua"ᇴ&%8JCw=4 , 8aE{OoU~#|FODTV&$MtOUi݁= 5uDy|I,C]uh4#+*w|q'&97$Ǥ$]H-?mbÒj&618hbpaSX/aS7 ?d7{Z, q=x5 T%`C-,ǡqhE]7Z,4Ʃ\'74|@:ذ^݋A#mUvumT;oqv[h·6~[|f̣b\۝ty5SRĉ|na2jGܱ(qQu:y[|: g6I%$+ ->$O‡Dpqךh8 szA#ӊow^$q礼?$H)i?TTO~Hu|.YG"D$\HHIy9ҠmL ^SoMΛ$|4āMp3AƉunI#iS6& {-5p>:(v*|sɚ%lCޗnsVnw>Zy}$|hDK/=eGOXjࣦKz*sH#3h0(t"K -+:&p.= wkj\;oF"fwK#u7͗ti2ƹ7o̷ lz+ m ^7K~*mY(1o*w ߥ,i&>4xXc!آ t&[a˂xl }79m- wIH]S។PMn8dzb[5Xʼn$|uQC [+Y0X!+W[]~tv҆?[v͝%+6UNJ9 Uw=6@q$ %Y,|t! -c 'ykt}SEGګr,KDwUH?]bieIo?TȗQKl"Q~x;GLQ Infǖ8DG^T1Orkbw]Nh_R}C+3~Jo:\5:\+:\;6|(s[27(sianvanq~^ \.xKt9xUޮ0AC1-[yktTڅkk.6U!M|1"ZRs{~}O.N_ >[Cf/|pތ1;Ni#0$!LCoYokcN#9]H -{R|Ȭ ,$| ?lgJ4b7`-9hoQܞ{z8f&(!`ƧZ\hQl(H5^9I!$t8w٦២Fj: 6 #B;'IchlZ0KrIq2h#}z8H%( -9`/C{wk|JE9}ܞQC6pvv]qū-c7vW9n,d|Ջ^ܟ?7{޷yߨou߲xڨCʩ26~7S\O tbq$%~TwK,?& $:3 -<"zٽS2ۓ*j *p7q F$|=<{dm̈$mn@ɦ]$62i33,(mfF<)'B̋? g=p6 R7,MTrz79^G5.$ ^3$؛65͌Ӧfq/&|G T a~EfD{mnFD<\I#UJnmIht09 d.䌈An":|4;BxD7I~ xЦѷMO"=\#7J_ >78vofnwyЃY<̿y}ٓi[?ܝJvԒ6Q/NƁՑ76N&AndmKdKx,XR"A,1eTUE0TD&EЂ,VHei("At ,żt56`DWpl6mXhlY$|EuQ@d'l&./f'ے -t!E0$fDEв oih@", M<,".VK5rJY.Y`D7zE$RхEв&@7Y)pRD8h(!`P@5`-& -ܨ] Ի2(}o'Oj N ?h%q#o?MD5˒نDP}`bIo}q`HNŸz$%\W"QW%\[?%*>ެ#5˹}We7ky|iB;r`?y&FÝ?T|'AweoJl"2O~ύ4B^WK -zO#KR}Ƨźt6n+i3& ]5< ~b*5e'RI{IXڍ6 ~$o.4f7*Ք57@Y N,c"+TfoOX6V(jCJ5 hssr+YbeڢNN&..6$WOϢPƗ^]bu.ھ:)hl[ >>%zxv[hD%cF]-x#h A‡޼U'Xnћ_+sU4 Y.R$㣲V#8"l q8O0v{}8me?3|Ijˇެ'2%UM$D \4P,oIݼ jQ8tGs>H0Xl?7l9El,mC[ُp\"CqH$(HΦ-$g$,Gƛ<: $Nt$Csh8/޴siМ6As֤l\a{4gZ@"9o"9/~μ-9ߠ)I[%p9hm͗+_?"-?k̍8oʨ[ix,%HAȌ"DK2K(68AAY|H%m N`\%B&r^g55G=-k-oHi0ch,0I0{E(~ɲ<h!>I{ &K P4ZEАi/q{; e<,F%Z$Ž6K8c, {$7lxo^ȸ$p1 .䟒:'Ep2B*5EסUy6N.B"8~츽@&uS \2<ݫmE"ݫ-xp^z -&~>,K#Y 1Bۍ5u@"8^Tx\HuxzbzX0{%.e앇z=y,G ks[Sy51mUt:/] c'iO -?YumPOqS\Я2#g:'G#h4aP,CbAbh'"$_~{ Ȋ#ZAq~n{ IJGPz  `{\BYy⍛W500g7 hkY -T5.by$${, -\ܣ5m ̒`x@T`D"r,֣ʒ\)/}P iEV) 5AH8:JbZ-)S"hpI$(6yG覭Ë2d /ȑ"0L)%M==t -.űDG +vjzWk]Q&F/DR4LAjRK[˾lyϾw壍uszɚ07tRA#%n4A6X("!,SVJ"-Z'ŞEǜ ] +u$| %u$͈OC"JAwcI!$' ?d,Gx!g z"AF~T*F{#} \*O`2 $d:Ảrø7F#(O8EHBB#,vAKG~6&;w)ɪE#eu]8LW" bUHmLE ),|mڞf7 -=E(LޘcKO#ɱZTpK 'w)&׹B"_l^\QX#kVZ<.塸rHëJXޮgAW~QG'un35-OZݣ&6uYVobA$FàL_bC7B ~lK/JW [B O8Lo4hH4YޒK<Rbś|5?5HGO > -Gz5IuzSj>J!юc~F؈ t;NS~À|7ݡ?2brt(҅9X^iK4 ?%*J| T[N>h;S4gGnuJ\yk*x!鴈ۥ^X.6R9[Rœɽu1oKr7iH2]WWE^7E_ݯ֪kڶn~==u~X7+l1A!q)xiJ$H1Es^Ryqe F#xHsU~KȟؼGi*<WdгrI_bԌ"9RėUėeSiy/1yx/1"r{hJ2XpG 8Jju`)"=ZFķG3F8M$h 75GXo:M>he [ ,D|oqH7yZf`RG"}azK#x'ތi~5CZy8Lf܊Keu\ksI}ղKcTzA_=Nxg!ՏϢ߽3Co=~ sP쨮֖ ֏۩eR47qQmƤ(ѥ8s(J%R5) D^j"Ҳc*".9Pb - d*4&R}*#BUrPMH@_^ʆ9P{I 6Իm誶wXZ@kZԛ*}*)T.'D%ojMq#7,pQǞV?ۍ9 ێ)'pMh8#_CGR_S{/#syH%xjH0F@ sNZt: ON4_7x)o`JMf ]|;$|؎9hxٮq؎,quG&:&U> ->th!i94|Eb& [`GC&M]ҵX h6,J-P7ml<$#i"tm]~ -EI4q7x*{hg"fD '|ly3g)Eް&ݛ%;'hO'{9G ~Eֺpߠ%.WmI#q!rv{ŝʿ?p*?'}߾fZkd~G)̙8,(?u,!D`zr- -HdX.܃EVpf!w PH(X%k2HćBƏN"@ -P,,ۅ-`Llkp*o1~! n iJ,5;y{I!&"YF4M֒Zbxoo4=CF> v , $T.E> І n,HPGxu(%v{IHQR<!8tLͤ:U9$Ӛ:(l7̧I 4pQD"@m9o&=5v2H W^crX# -JgiZR!HH^7":VhbOAH.b :8B8{H ݅6:O,x#UjmOK;״:V,~n3ٷ7_Je-/O~ve4Zhp;`oNt(*!JB Ŷ+ ?ToBДw !D.똘џlDP[{.|q"J ,_fI d z{FbQTM*t,DI-FAo !"Q["7 RtC&ےE2 No&3&h>eOb!g_h1y4zh;x.=[F̠)ۤ3Zg fQ#4%+@G=Z,E7 d7@HJ O'VCmS4G"VbMaDZE2\,bI"%xP -q,5B )j#E⾐"@R>/ :$|],xYn¼;5?u/#5/0DjzGݖnT?ݿ}7~o}sϿۏwWQ O4׈sjޡbA -endstream -endobj - -4717 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 749.2384 524.4094 756.8504] - /Border [0 0 0] - /Dest (subsubsec:component-api) - /F 4 - /StructParent 34 - /Contents ->> -endobj - -4718 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 730.5764 524.4094 738.1884] - /Border [0 0 0] - /Dest (subsubsec:context-access) - /F 4 - /StructParent 35 - /Contents ->> -endobj - -4719 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 711.9144 524.4094 719.52637] - /Border [0 0 0] - /Dest (subsec:loader-hmr) - /F 4 - /StructParent 36 - /Contents ->> -endobj - -4720 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 693.2524 524.4094 700.8644] - /Border [0 0 0] - /Dest (subsubsec:config-layer) - /F 4 - /StructParent 37 - /Contents ->> -endobj - -4721 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 674.5904 524.4094 682.2024] - /Border [0 0 0] - /Dest (subsubsec:hmr) - /F 4 - /StructParent 38 - /Contents ->> -endobj - -4722 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 655.9284 524.4094 663.5404] - /Border [0 0 0] - /Dest (subsec:koishi) - /F 4 - /StructParent 39 - /Contents ->> -endobj - -4723 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 627.3874 524.4094 634.8784] - /Border [0 0 0] - /Dest (sec:discussion) - /F 4 - /StructParent 40 - /Contents ->> -endobj - -4724 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 608.7254 524.4094 616.3374] - /Border [0 0 0] - /Dest (subsec:scaling) - /F 4 - /StructParent 41 - /Contents ->> -endobj - -4725 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 590.0634 524.4094 597.6754] - /Border [0 0 0] - /Dest (subsec:capabilities) - /F 4 - /StructParent 42 - /Contents ->> -endobj - -4726 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 571.40137 524.4094 579.0134] - /Border [0 0 0] - /Dest (subsec:language) - /F 4 - /StructParent 43 - /Contents ->> -endobj - -4727 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 552.7394 524.4094 560.35144] - /Border [0 0 0] - /Dest (subsec:granularity) - /F 4 - /StructParent 44 - /Contents ->> -endobj - -4728 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 534.0774 524.4094 541.6894] - /Border [0 0 0] - /Dest (subsec:versioning) - /F 4 - /StructParent 45 - /Contents ->> -endobj - -4729 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 505.5364 524.4094 513.0274] - /Border [0 0 0] - /Dest (sec:related) - /F 4 - /StructParent 46 - /Contents ->> -endobj - -4730 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 486.8744 524.4094 494.4864] - /Border [0 0 0] - /Dest (subsec:rw-effects) - /F 4 - /StructParent 47 - /Contents ->> -endobj - -4731 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 468.2124 524.4094 475.8244] - /Border [0 0 0] - /Dest (subsec:rw-paradigms) - /F 4 - /StructParent 48 - /Contents ->> -endobj - -4732 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 449.5504 524.4094 457.1624] - /Border [0 0 0] - /Dest (subsec:rw-temporal) - /F 4 - /StructParent 49 - /Contents ->> -endobj - -4733 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 430.8884 524.4094 438.5004] - /Border [0 0 0] - /Dest (subsec:rw-spatial) - /F 4 - /StructParent 50 - /Contents ->> -endobj - -4734 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 402.3474 524.4094 409.8384] - /Border [0 0 0] - /Dest (sec:conclusion) - /F 4 - /StructParent 51 - /Contents ->> -endobj - -4735 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 373.8064 524.4094 381.2974] - /Border [0 0 0] - /Dest 4455 0 R - /F 4 - /StructParent 52 - /Contents ->> -endobj - -4736 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4360 0 R - /f1 4354 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 53 - /Tabs /S - /Parent 1 0 R - /Contents 4737 0 R - /Annots [4717 0 R 4718 0 R 4719 0 R 4720 0 R 4721 0 R 4722 0 R 4723 0 R 4724 0 R 4725 0 R 4726 0 R 4727 0 R 4728 0 R 4729 0 R 4730 0 R 4731 0 R 4732 0 R 4733 0 R 4734 0 R 4735 0 R] ->> -endobj - -4737 0 obj -<< - /Length 9777 - /Filter /FlateDecode ->> -stream -x}]Ǒ=xA,\ -6l$ ;Vu- d}pz>83Cii⩞~駻9U~?/_߿z?_߾?˫woG>zӟ^~旿św_ݠ7j]쫽LsUZ{틯7o޼?~};~o|G~To~_^麺['~onqxn0+Yk-뛿|$z̋ڈoټ۫un;ߢ*i%K >MOZ( Ƣ\R3?i&SM/if,QQӦRܓok2z[GچvQ[ҕ,7ڻkZٷ-9,Ei$cm|ȊS /4S%_b:k^UHhD7mI;[,}ēv*)额}hd}xe?E;7hM6זmc&xӆ[shmX=|"d UӤǚel c}[TrrXF5cXkц!x~%hfZc^cXլ*')}b;sC|{~.]~z1C=3_?PxalïbY[\s#,KGmssM}Wfl={p5{ɞ~Ow)]]wGV -6dj T|#!HO=]bKRȆscMwIdU҆&'hϒI)_ >Â-:fE)K,8w R[d:тK@ABYi7u{^:;i7u{vSw$2V@TG&ÛvU U^ж$2Ti'r{N7{$ɽ ?-rKTWn,WOZ#":ɱn?VB" D戃8vb>v~̹~r Ơ+P,|up $JNز */|H-n9頺y-)́_VOl5$NI)/,D+x{w Rmh k؂>]jfs6/~L4eQb >Vڧ|jI&2$x/?z6Grb8xߖ)Q[,xpE;68i.7VqH#ItVA1|}@+dV1QCFApcN p6$dJ}(Zq q{y\HNu-9 -}@,F6+RJÿc_I~/3Z sϖ@|e׊gޅ" eRAG&opiACGW> ~B-G͛~z%U > z|X_: =%[V ?$YV-6;HGkzNތoKۿbJgqR\<Y{,}^|* SU0G۴~>o% )Ť2鸔\SBǁ[  -̓uIj,?9 ӓ|,[8r]ԆxP) 7~l4o~ȴ)_GSP7##s -҂臺B^2 ΅RP r^Z(ɂGX4$out@헃L!>%gi4۲C FZ.VI-5i'Lt$BReE9m⇑ג+PɎ?h -GVPJ~h 堏L1"*&P矅:$t$ mYLBO2@>C-*=zؓMQm%X.*=1c(@HSKN'[G'bzʁ]鉖 GhӼZ]&4/4kSp×Auie|~T{ d}0@t|x?vq^6f`wr9^[2Z\RBRdy!F2 2Z)NdBG#9^2TH@#Z]Kz17(]v(B B@ #ZroUPX@pAHB8q$ /I`DYZp,Bd6h/@I _N + cDaPEZs1;^<^D Z7QSXx!J"]FhGI:Zܲ5!z^dލhf^d/6E=AJed "^@9H(x!Ff T5-Fe?ϰ[zfCb<^-luy䅀ܖ2d;!1<;A|S(Dy`̥RFЉ ([G RL@2+_8rSZY HD)5ZTHHSj'u . I.IBj}Kt_t/$v񽻄^ƿt@0?l'ffUa)o5zT\m8o}sƂk -vq0e @C /Yyz]BOO~t۰ Nx8b`$4>bk ៶prbc8I.6+N8c:ZI b ->YG4_$oN"ᣅkG1͈?bN{P̺W"76T6J3B}p&l݃.'ZymW$B01[ܛl4|ϖ>#< ,| NQHBUA?:jAłz_@qGOVڑ!#HГGcC;e?(=-Dwl8KOGsюҲ=ujR|Բ}vd;TE!v4sd9 ?%,G88m;q{Tѷ@quw*mwu|oÿzǷd~^6sKj7 ?d e|GaD;>ZJ" 5 -9F~X"i#~,|u=紓Tb"ᣝdWƉ ~"ᣟd)/-O4Th({O"*7q]AQ։~E;v;t~Pp2;sv;sv;s" 7=&Y3&hG7I:%vC4 ;+@ɔq)M 8(;ԩCG%r%Nv$SćzC|w W tn.gL/RKQں2 85D>*cjryT~:WPv,/ɇ&. ?6?X0m~/{WQRR۫}~bj)>=zs}&}C Z`JY3F~89׬NO19ӍGI.>́% 8{^lhul^uњ&6킵٦hښ9$6CA[ʹco9ؼgs҆h‡e9Y;۵8]🾨PzYO9z]Fz /ˮn7_off}ۿu1ف_G]TS/;wJmAA_$#'Lkߖ'ҚdXv8$BΓ/[YPWqC"~sݑߠ=]oIϤ*4`Á-w~BDGtc2GF_$vY<OE?*G8H/M;6@UVX4/V$?I!k%$7:x5pexRlBZ>tISC@|[#Yn}o)F<Bβs Q=h!qv" -.8y!BlG1H:-f~33PJM}x!JNZPYz -}B/E 8uf5Αvef PAG'Qy!D $ya A/DJde!x{oh3vk/.C ]% \9ϴ3O0s0˥3 QIJr'3 eڋ[:“own6V;l/DI!i!JEke%yJcv66U -}i!A5͎鱆N66mc5S} nSDJ 疽)!y6r\-6=2mzByKzT Ti3)9լ=sfMYt.^Y@5>`YڊvǢA[78ryQ#CL;# Ÿх?Z E[ո(mu6 #K -FQHLS4wZ) ?dI. -AqaBݞp6O1-=t6 dۦmf(  ?P&y 6O1lQmcuLgy<3NV[(d *p:ߗʂCTsClR)Z.XLÍuU}Q (;{ѶNpJC:)4mDS_:ӤLod@_*yjH mx{gop!hFGRމBy#kPaZ)꒱҅48qXBAXA,DZJyUzx;S-ǴE㇬L+l.K)G=>M6?+$m~`XZ̓JX+. AR -H)‡ci!CGP?20aX -ڄ]i-|JN{saWiïC ?%&i1,4 >AvO}vaX1|K%̓GmGFw~JZ6fXxgcX!֨g Ò 3$nm0, Z!)ïd1ïԛ1-|J5`U9+)8W^VҤmǮT1 R9mo>v%+ρ[7nکڮA %cWJ8#î{/JYpWۜWJگz,|xsJ:4_ە5Ҧm~EۛK4Q H,ْ~ bKsXzx>TXzȄWE hE24|7*>z6Kv2q|(fu]&i#V%p! hX!v  D]< ?eJwV"Ꮨ. aI -̓xm,4 *~\[#9PG4$bz[ YP hi% I !DٸskfWXJ#3t~H-?,1>ei -<6ޱuo!>wKE;2øO .$N;U_2 )ho1kT% z  %s!ZhGfkۚ@ >4䠃\{w;Ў̇] އ UYf#ajCvE¿c^I'evBO];t{Ί֒f-EK]M77ѳu ɺ._eX}_=$ ؇fOҏe6)GvЎ$-Ddlȼ'2-Dy!Re{q h!zx bPqv,e̟bJN1VpNL)uBlqZ8VBh3nU.œ%Ê 2̷[rC 0nut*Xy!܇h!-l?ER芇r iS_lFF aF(*6nUCmZY2ZG=!|3R +-G[ #l(ŋP' (Cgb9#Ǎ\ 1 a82UC4Z\O=Qule?3[3DAI [3DP G.Qʇ8/J}d%RH ҍFP؎3V3J -Br-s'o. "(d͘KVQwV3DJ.'YEލ!nr2'\4pu'h!~,Яzu&B棈tuFiQl.)"dG(Y0CɴRl$hދdOu1.S-pRV-Z{:sB`IZGb -E,z\=EݙKeeз)p.Rbh`Q5B!,@[m(2\2ش.b#` $. -l.Vr3?_߾ǟ/xݯ>;O_}O_\WN:,x.֧O" -endstream -endobj - -4738 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [182.8334 688.1684 188.3334 701.8304] - /Border [0 0 0] - /Dest 4456 0 R - /F 4 - /StructParent 54 - /Contents (1) ->> -endobj - -4739 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [427.80704 647.1824 433.30704 660.8444] - /Border [0 0 0] - /Dest 4457 0 R - /F 4 - /StructParent 55 - /Contents (2) ->> -endobj - -4740 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [386.99667 619.8584 392.49667 633.5204] - /Border [0 0 0] - /Dest 4458 0 R - /F 4 - /StructParent 56 - /Contents (3) ->> -endobj - -4741 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [513.6514 354.0974 519.1514 367.7594] - /Border [0 0 0] - /Dest 4459 0 R - /F 4 - /StructParent 57 - /Contents (4) ->> -endobj - -4742 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [157.93703 340.4354 163.43703 354.0974] - /Border [0 0 0] - /Dest 4460 0 R - /F 4 - /StructParent 58 - /Contents (5) ->> -endobj - -4743 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4354 0 R - /f1 4360 0 R - /f2 4366 0 R - /f3 4372 0 R - /f4 4378 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 59 - /Tabs /S - /Parent 1 0 R - /Contents 4744 0 R - /Annots [4738 0 R 4739 0 R 4740 0 R 4741 0 R 4742 0 R] ->> -endobj - -4744 0 obj -<< - /Length 4497 - /Filter /FlateDecode ->> -stream -xks$8KXޏ*G Hop,KUݙZfg||9jZVwۇ]gg]wbwﻫo~_]?{Ǜwg_|}o^]}훗_D;]qsJ2#~=og3]oϮx'Tw0=~=Uncwg1&1!V„#&fI+]20Ik捡&:!H&+$>J;9Dy7B@ǿaﳔ\ȑӁ9;y޲#Ì Cy\NWQǏbYar}E#|ް+:;޸+ -KfÊ}||,v"J DVGdLvQV4P z>lCZƕ9EkI'y--sdM1Ϩ2Z8'j6i[QbmQ5 ^>Z>Ta6Dy'$#7'^tzmLU&&FM -MjbóD06DO%oGnqݣtJm@ Pu,ڂmt@X?6uY#d44m`ʖv>꤀'Y0CΛR% vUD - j ?:i`!톉7e\ -;6gE^dܮp3N"14 g5 qSO`Krl ,!Y6ybD|qjjYP&QKもHG`4'˕eF/n $.: -G=7f9dE&80 Z.$|G]O -ppqa[78j>ࡖ(vK&GvQ -NHRZ)Iɼ_ ӒŦSD W7p)XFPr` ",cT)AR1UnRґvh - -awdT6 (+c1%[l1 (oYvumzqUbs UpLrmrEBE㑗*nV6, Ngq,+Xc~CqB/V.b -fjrXŔȀbJdC -2n $Mز(a)3 -mؐ@vS}VOU3K5)B -B.閒t 3}TAPPθs?{"B| z;0잤l()&Ȅ  H={ңnoĒ5HaY LQp&tOҋɊt$ 'G| ~>-e7ޅtT ΋*xaJh+a Cm$ʼ?uQBp$S& t<./T[ɐq -3ōGeqdgha_ΒSa s53HVtavnkL0(қ8f$Qͳӭ,`)`He0V^J8 DB9<5ޒA39-~N"yJh&vж Y8Wz%ÜIl"cWܙ< bREA-m,S{Uk80%8+ #diA;k 6nUvU٣X0V)[B&VrS@J Fڰ_4a8CHajNv~)qC bĹ9Ѹּ"gi/bw7O>|TOO l Z3>jNPk|X!0#/ֱYJXOr'drlJU# Qk:q?gsI)UjC2R=/ZSL*ԤSҩ$jQ m_RM4iI`g=] FLJbi8@DPvDE*l*,8W 4]pѦpLM mW8$A^4Vb{mn v</k\Hu5 |Q%> h"Y$JoV0pxpZrr]TӀX:5Q myʦB-ʨ,W5E(NoLˊ}Bi"&dT^!-Q,[qa,!nz 'dI }9cciQ\&ڱǓ#"YrGsMT0एKukmn9Ԥ,P ',33V[`1= ZiDD.RʣL&0~XɈP VOdbڱ ZJ+XͳZ1WӾxE5Px(&er ]dsq,(k[*פb m_e5c32R3%0ZTB'qN$8;N|Nkm Ax;Rl"̄Exru* k`OLYb!]V{0~ tBE0Fc&rFzԒ -myVDFIf/ĢeB-*wS?X~Pi1xy | ;)gQHJ;)f 6{o$'SZn:2DUuU|ng]/Kj<㱈xdN[|f=qrT!oF=3;Bh|< -Du}`]eg竌l mR+ga.(d|Zzϼʯ`zg`UM0Oew\xub9º{M^g&d -WbΪ~ukv ڧ6&!ZxywZāYy.U,4}P\9,Է -h07,,$HHoJ Tԣ9&ߘ?K= o~<.w!auDuűدO-+YehctA]m"Gj$ x`Gc4jc_ƺ墲^" ъ; |Acg}_1*Sۖ)_n 콆ѵ?kiq㝡Q3 Ӝ@57%u(lNIpJF uPi{|X^DuXT6A4s*#z-ɕx jCpClwvaR)D{ j8gxPY/I".C,cUjS/PD)x$ȼS :n`J8iu%Z[zsۡQ*Mily&^S/}Dtf926)/V. N{Aa}Z07FAI|giNHiLm_f4jB)B6j/h0 <_kyWy;Ȣ%5YlPV#-^t&x -2KJf%87,`^;*,σa]2C E$VzuLaj{ -x:^ XO$;^Ӛ6"rKe6X-F|okݿ@ (`N|kaz0x֋HE6CRևfh nj꼕"%3-0(\q^U,Nfk. /7wv/v~ow޼{_]?{Ǜwmw3aLXKԨT -endstream -endobj - -4745 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [188.99736 732.5514 192.29736 746.2134] - /Border [0 0 0] - /Dest 4461 0 R - /F 4 - /StructParent 60 - /Contents (Footnote 1) ->> -endobj - -4746 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [395.27713 630.11743 398.57712 643.7794] - /Border [0 0 0] - /Dest 4461 0 R - /F 4 - /StructParent 61 - /Contents (Footnote 1) ->> -endobj - -4747 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [75.57414 486.6974 81.07414 500.3594] - /Border [0 0 0] - /Dest 4457 0 R - /F 4 - /StructParent 62 - /Contents (2) ->> -endobj - -4748 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [86.57414 486.6974 92.07414 500.3594] - /Border [0 0 0] - /Dest 4462 0 R - /F 4 - /StructParent 63 - /Contents (6) ->> -endobj - -4749 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [322.33093 428.3844 327.83093 442.0464] - /Border [0 0 0] - /Dest 4463 0 R - /F 4 - /StructParent 64 - /Contents (7) ->> -endobj - -4750 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [333.33093 428.3844 338.83093 442.0464] - /Border [0 0 0] - /Dest 4464 0 R - /F 4 - /StructParent 65 - /Contents (9) ->> -endobj - -4751 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [129.7738 414.7224 140.7738 428.3844] - /Border [0 0 0] - /Dest 4465 0 R - /F 4 - /StructParent 66 - /Contents (10) ->> -endobj - -4752 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [470.06073 401.0604 481.06073 414.7224] - /Border [0 0 0] - /Dest 4466 0 R - /F 4 - /StructParent 67 - /Contents (11) ->> -endobj - -4753 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [282.75552 387.3984 293.75552 401.0604] - /Border [0 0 0] - /Dest 4467 0 R - /F 4 - /StructParent 68 - /Contents (12) ->> -endobj - -4754 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [243.14856 346.4124 254.14856 360.0744] - /Border [0 0 0] - /Dest 4468 0 R - /F 4 - /StructParent 69 - /Contents (13) ->> -endobj - -4755 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [79.86614 82.78937 82.56614 93.517395] - /Border [0 0 0] - /Dest 4469 0 R - /F 4 - /StructParent 70 - /Contents (1) ->> -endobj - -4756 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4360 0 R - /f1 4378 0 R - /f2 4354 0 R - /f3 4372 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 71 - /Tabs /S - /Parent 1 0 R - /Contents 4757 0 R - /Annots [4745 0 R 4746 0 R 4747 0 R 4748 0 R 4749 0 R 4750 0 R 4751 0 R 4752 0 R 4753 0 R 4754 0 R 4755 0 R] ->> -endobj - -4757 0 obj -<< - /Length 5456 - /Filter /FlateDecode ->> -stream -x=]+z#嬵o&;e;%qbr}Z]#f\wi ZU`v Awoovݧnnw{oի_}wnwݻw_|bWn^NFuݕ{e`{Mϛ;s#m7_ldw~+;7?{-Zjwχ__vWN g1?ZJ{L!G_ЏPCga>jwiw]vV?{-!@Rˮ?~ D.}s8l82Ed!?Nˌ:z9Β`22{Oӯ:N-egNh+v4{M$Q8aʉ r skiNBd3Q?1?t7|u/ZS(VS'\i -@ڿFx)c\3=g0ɺ>dgZvzw۟gK*F.X)u<%)"x7Ї[W^^f\fz(R.\ƧLP3̇2jãs)WBcOߓGpD`Ao''Y'x"hA4-ִ ËL1Zf -BgkriJ[ dD`gUB::.ji':~\:*xRE߾ZC~~|ij )E\"pvh+j [U3EՁzCM0JKn\O8jPg.Y&QhfF'>#dVl6⭐4)hK]m+P$ -J$T0f]|ϩH@V2g0`෧B jIץ7Z9{+\/[tKb6+@K6`s~t˂GN yF!H ] NACZ)o2:5=5FI4m䣙g6vp@thOdͶXլ8DW&vΓ9J ˆ| 0۹ͮAcgäqҍS` )\Kޟh[zWre6 WlAÒz)0k5=bFdwDN1 FsER+^)sXvvݧ_R>r4C ]6Q6.Ut@GUy5jH+&0tqŠ@A+U&W> @$a?܋no!M/#tzјdlr; vIc-E!l' 3O!ӒނberV)7[0lq~ ,.NLa(=όYANR):PZ(;CP& -#V+hM" AG :~TEE0"u©%% U/l\#lE/] -^ƕШbx`) >[$;i*A繠%-"uzPa5IJ*͋(K -wԌ͋. j޺ͺ-qk׽kjXkO1FT<ߦ:'ɦY&JX. pڈS]T'sN "LW WÁH9Ў8뜂eʡ' NTtM''v4~S\Y*ptVP@uRamif0Czsu66'6Z6|r[Y'f눅İJgp)d[r#!85-A›9-{l{#!I]cVM̿:kvVYBSD4NxHD.5`Vzq -dU.lIQKF} UYkٛCizʰ1:)MO60fCazG0q/f5™دpB_Z HUR&D|8c*0Bx;z 1^ e=]#; Ŗwҡ4t/B0qJNi@u:]Bmc:aZ45`^܉:(ImB t@\kd-hu"I5Uq䡱bV5J\4^Һ$|XIZ![Zr Bgsyn\iw; nR;9&γI$aO`&$PCa % Ug -P RH/YA]/2Y!`ۊG5)F'a sD1{+QOs*9?ġJφ3M/զЯ9?ݞ pN!D΋#4ǧ~D) YY^]YBt ;T)@Oy!:jk>QCƪD7|o1Se(7ά@*29{p$ՠkQ"< 8ޯ96 /T"jGM X4`V`Xv O,&+?$M8_@KUf!R@Z:4 "4ӴdҴm}@xئ9K̰5 155Ml/8@p*89M\Y[jT}JQ6{N6u +ti]נR&gfe]O6l{t[&$2{!ګQ֘l(YE(mg )*gY G= H8_ -C=*)X5Mr}l2`iZj%ɪN$ev$$EJp-Xdj%[H縴΁^Rur笛*i L$reSjgi-!<<݋ 6EU A9b%!&zag1 VM4ȎFYf#,/$keځuکgKwUP-W|[Ʋ AI׳aAKO;(B8X-jqTV}2{zP!tbia޳ZEOh* :A3z,$egKGs`K*U/|h "=);CAT pC+mxx*(ShJbʶ>,UNXyB_ -'X] ~NsioW >V%f;hTmQyY?1@)\ԓ0itF%,7ޭxf[ qO\#(*p1;orETyk \u1g{csPwqSK&NjMIN֗-P6 >O%Om%:a9)ߺTbpʶB+[$L5MAO"=XA&P -iuK'ԕB7aɒ7D167y", d*)= -Tۉ*W2۴롾!3 geiTKmdRe?oI{PcCP> -endobj - -4759 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [224.67343 657.4414 235.67343 671.1034] - /Border [0 0 0] - /Dest 4470 0 R - /F 4 - /StructParent 73 - /Contents (14) ->> -endobj - -4760 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [112.155594 473.5904 123.155594 487.2524] - /Border [0 0 0] - /Dest 4471 0 R - /F 4 - /StructParent 74 - /Contents (15) ->> -endobj - -4761 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [128.25504 473.5904 139.25504 487.2524] - /Border [0 0 0] - /Dest 4472 0 R - /F 4 - /StructParent 75 - /Contents (16) ->> -endobj - -4762 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [242.68085 473.5904 253.68085 487.2524] - /Border [0 0 0] - /Dest 4473 0 R - /F 4 - /StructParent 76 - /Contents (17) ->> -endobj - -4763 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [258.7803 473.5904 269.7803 487.2524] - /Border [0 0 0] - /Dest 4474 0 R - /F 4 - /StructParent 77 - /Contents (18) ->> -endobj - -4764 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [264.2438 357.49442 316.85895 371.1564] - /Border [0 0 0] - /Dest (subsec:revertible-effects) - /F 4 - /StructParent 78 - /Contents (Section 3.1) ->> -endobj - -4765 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [267.97797 302.84637 321.2902 316.50842] - /Border [0 0 0] - /Dest (subsec:reactive-coeffects) - /F 4 - /StructParent 79 - /Contents (Section 3.2) ->> -endobj - -4766 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [313.2113 248.19843 364.57465 261.8604] - /Border [0 0 0] - /Dest (subsec:component-lifecycle) - /F 4 - /StructParent 80 - /Contents (Section 3.3) ->> -endobj - -4767 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [394.14352 220.87439 446.3582 234.53638] - /Border [0 0 0] - /Dest (subsec:context-paradigm) - /F 4 - /StructParent 81 - /Contents (Section 3.4) ->> -endobj - -4768 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [289.3024 193.55042 333.3956 207.2124] - /Border [0 0 0] - /Dest (sec:system) - /F 4 - /StructParent 82 - /Contents (Section 4) ->> -endobj - -4769 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4360 0 R - /f1 4354 0 R - /f2 4366 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 83 - /Tabs /S - /Parent 1 0 R - /Contents 4770 0 R - /Annots [4758 0 R 4759 0 R 4760 0 R 4761 0 R 4762 0 R 4763 0 R 4764 0 R 4765 0 R 4766 0 R 4767 0 R 4768 0 R] ->> -endobj - -4770 0 obj -<< - /Length 5367 - /Filter /FlateDecode ->> -stream -x]o$7r_Qfpn/8Xo$Y ͍tYU,[by%H_^><>꺻_꾿ïq_7?=_mo>/˫~}؞}埾׿]NvU]^.(mݓ~%?mߞ;?~ON:+~7"t>IyL{#v+?/`0AI~]SG)d+n+rt'*]k)òя\\bF󧿞~ɐh/}P3c78UtoA4Ŭ͜\teJW!m_PQAӷYΤhW0h:&[n=Rb׹Q~*v˱ J($|]SK=k'Y(Ԕ'{J˃IMgy1զ;Sflc0gJq`֔mn3!-}҈־cߤrPn6M,84*\)ͩ[ZDTv=|k˗vBK,謙DgK}^J1"h{" wMqqOi255E%& yܴҥFn1xZn')-NTA7\呝ÇHkH*YC,ZWBNPz2 IOJphaz - Yd/nA翿JWPAFYL 6ĊNZ}[.ݎRTøiqj@nJSZ)Og|7Rp ;Kn+^ -5KRƽ7Ngdgb2ir3l918Wdx5QbZEv)(V`YCz| ƭ0p]m0,ßZ dLLQ -Eߥ`4$8; :P% - -ɰ 'j#5Stn֋^.њsl>C >rWn"`#qy".eXr]pܣ\`-A F ڶe0&k23)n,orݸ,;3ɋ3Bk"DrV)v,-A:iıpY@-LILpyaXr -LAå(1\q 5NN̐e5H/)F6>0t]n^2(LRQ~=Ϛ[cTY@%Dk$)\r_:lS7.\29$HwUbU1IZH LъB`i.ĭH.XQ&&x+z{"E&;gf=*,0 /,qUs&.S zʼnMv/wsI16}=ST 9iD4q/Id nmIcA4q)ck94EJ -?xzt-%~ƽ)gH /܁E)_MH۟OBEm4wjQ]3E.3! hmeUMVXqmBONzlA6 -AۜadM*L g2b1[X(yʐOF=0# -&axAjs 7D:< rei8ו{gMuM+B*c -Z9i ڄ5x[bEԔh=ec-Oa~P %Wֵ,aeAX\\*:耈U+D0ŋdZ:f -EtfW -0blL`Ep^ -&it|/-pΥR%Ǒo̥/Pi>Q6g2{ZU365ZKGX+DuXսh|<)8N& N&C*%)- 4Gf.hepXlR=ܦC3^fR̡-w"e>/$͉ B'64ZO!SҜbO&Oml_~;B:ӄSzWAI5Ć~Jli],fCI,ck-ÒҠB<}ђSRC`}<%ĵp -J|oW-aGq"o^T,KAW`!P!UpZ}c'dѝ aXx[<\[>"/> -endobj - -4772 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [297.8902 615.4314 308.8902 629.0934] - /Border [0 0 0] - /Dest 4475 0 R - /F 4 - /StructParent 85 - /Contents (19) ->> -endobj - -4773 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [314.86404 615.4314 325.86404 629.0934] - /Border [0 0 0] - /Dest 4476 0 R - /F 4 - /StructParent 86 - /Contents (20) ->> -endobj - -4774 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [413.00983 517.1457 424.00983 530.80774] - /Border [0 0 0] - /Dest 4477 0 R - /F 4 - /StructParent 87 - /Contents (21) ->> -endobj - -4775 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [210.92213 469.3597 221.92213 483.0217] - /Border [0 0 0] - /Dest 4471 0 R - /F 4 - /StructParent 88 - /Contents (15) ->> -endobj - -4776 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [113.4558 455.6977 124.4558 469.3597] - /Border [0 0 0] - /Dest 4478 0 R - /F 4 - /StructParent 89 - /Contents (22) ->> -endobj - -4777 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [274.8422 394.2497 285.8422 407.9117] - /Border [0 0 0] - /Dest 4472 0 R - /F 4 - /StructParent 90 - /Contents (16) ->> -endobj - -4778 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [291.6684 394.2497 302.6684 407.9117] - /Border [0 0 0] - /Dest 4479 0 R - /F 4 - /StructParent 91 - /Contents (23) ->> -endobj - -4779 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [172.43578 339.6017 183.43578 353.2637] - /Border [0 0 0] - /Dest 4480 0 R - /F 4 - /StructParent 92 - /Contents (24) ->> -endobj - -4780 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [215.09322 254.30371 226.09322 267.9657] - /Border [0 0 0] - /Dest 4481 0 R - /F 4 - /StructParent 93 - /Contents (25) ->> -endobj - -4781 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [360.26782 254.30371 371.26782 267.9657] - /Border [0 0 0] - /Dest 4482 0 R - /F 4 - /StructParent 94 - /Contents (26) ->> -endobj - -4782 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [376.27432 254.30371 387.27432 267.9657] - /Border [0 0 0] - /Dest 4483 0 R - /F 4 - /StructParent 95 - /Contents (27) ->> -endobj - -4783 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [417.52737 254.30371 428.52737 267.9657] - /Border [0 0 0] - /Dest 4484 0 R - /F 4 - /StructParent 96 - /Contents (28) ->> -endobj - -4784 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [508.70145 254.30371 519.7015 267.9657] - /Border [0 0 0] - /Dest 4485 0 R - /F 4 - /StructParent 97 - /Contents (29) ->> -endobj - -4785 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [239.99207 179.74872 250.99207 193.4107] - /Border [0 0 0] - /Dest 4473 0 R - /F 4 - /StructParent 98 - /Contents (17) ->> -endobj - -4786 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [257.33554 179.74872 268.33554 193.4107] - /Border [0 0 0] - /Dest 4486 0 R - /F 4 - /StructParent 99 - /Contents (30) ->> -endobj - -4787 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4354 0 R - /f1 4360 0 R - /f2 4384 0 R - /f3 4366 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 100 - /Tabs /S - /Parent 1 0 R - /Contents 4788 0 R - /Annots [4771 0 R 4772 0 R 4773 0 R 4774 0 R 4775 0 R 4776 0 R 4777 0 R 4778 0 R 4779 0 R 4780 0 R 4781 0 R 4782 0 R 4783 0 R 4784 0 R 4785 0 R 4786 0 R] ->> -endobj - -4788 0 obj -<< - /Length 5807 - /Filter /FlateDecode ->> -stream -x=ra$^稉)G)INo(Yt)Or.fy^ h }իw7oO>W7oừ0~꫷7?<{w]|gWrswϾ|ӯA bxE=8 7?_\Û^o.>խP ׷}{~!Aq#HS'?^ />Z= e*¥Lm8 ֖yuhuO;0贱5Lޏ^xi@_Wi2'ߴUԯ|ksD=m%V/~7LIayG(2zPvt*fnw;xk~&\ς;IdLO4-a*‚u'NI&#ƒ2(T$H_-n>Yզ30k>yVv7 L"YGt\Be%F`X}\YJEMD$n -VKMY)HNN3U?dR(/[@e.Jx-pL9 X;)ʐSIpL(%Fk+;AjG\]-F9c(CˠePwqLQ:lxQh:O_{RBB$hvIY#{ OQcT 9z*VvBj4K+5Ÿ"JۂUm2C딖8U Q)JD[_Ay=l2,l iia-SH%VS-%Is:U}ߎ OB2c L\?IL|V9fJ;@U &0fIHѮדW_莕,(C2/y:b=,YSM= -4uԨ@U?[f;{dΞ45u҃C "5(?FeY5 Fq1$ZGpKa@+'Ð,h9k׼n? B6[d太ML=oحRr27!jR9e,MﺚRNm{4Hfu$7JǤ\`NUoU="%ůjNo7H!hʛm5m-n 嫘(%a̾ NaAFճ&͐ɝ( H7:M6dDb?M6!#%҂Ub,PT"-$:E}H 4֐@t!Gh[ jwInTqTqbxp y\fXK AdR=@92 -hcfONc AAiuT ejD@B[3.tj-NW>^fbf%T2%>d(xna;l-exmPχ-e))g7s0^^ 0|>Ȃu8ȒA86,1ΝMxS %~|n ,iqRZo@RpCx(]lOHQzTGy#%8u1՛_o~_'_~B4p?g5hx sK+)c1b-Q#}K(G9/.įúPz&;{_Lɞq k~8Rp#D" 0@f 8rW |Tf樘Eݟ75!48ڂ|\ -f.<{ $HF+.+ۓuلe,;E j41-<'l?'!* 1OF(Ħŷf+GY`>hbN75cV-PBGB5́FI#ck.ɶKt2B`b)n*/Ϗs[:1aWuԵW|Ix -|L)YJ\&\B/x2;?_ շ%jd$3 - vR௚R%Q\IQ7v%zZ"hKi/dkX4 -T&%9SZD }t5iKV2\}e)PکpUcگmYKGmQdӗSorrXY>m+YYjeK5t-| 9^H?ʀ hfbB$d85X" -mndHl0?f:m|Kԏ,tv)@[dF4.-6`<.tv%/nۮ<`n!ytv#APBq;lۙlkT0|9R#mҵ7 O£dt=^z'/ci }7K*uIDr,}\ORX/Y蕻Co5E= ] uq#;M\sZd,bKA::q5DZOMDG˶?-ʎq_GZ,0-Qab-#ܬ's=kI8߿cSH sԪo'~M)@+W9oڽU˅LaoZ !u/#1՝ڵ6 YGduW#w}+_e$=_#~a˞d8?Wݒ6]QB)_N$v,Y(䬗W?O^46VTItNd57Dѿ:ѭw:3pZ,. ]QC_LnX̐BFcfb*/~E0j'D3ȾVEa' `%vj]?JZ@>c'kWki4=xdĤfӓQc t huvN[vzY_D-_j$&k+%'j#NBS3=e}DD8C*"~Ck .=aJj -[Pfto/iDgyZ!CN4>JveCЪm#jdTДZzK1/<we/ɱziol~uW"֚${(I8T?zHLyC.9:"  -2[L3qTæUtvy.Ɓ'>E*sԕM<nIM{hn~cs協];!;J4  m TIe7ų"EOv{.$Pf_2觑CQMg9yL0 )ȟ<&X:%7l9|:[2IՖh+BɆʻ @i -+ /v_RlQǠ u7uMqA&J(mtCJTFM݈M~72o.inPr!m2)Ao{j!ek S%vߒJ6\%Zֆ7cnFZ8alQ;GUqs&\~%NɘIã.'CBj3TG9ҿY. s7{[R7n[~MS֟ɰ>s_ gzamCJnWDqjCkAy'|FKS[颡-¿VB6? -#># Lw,^ kr -nzE6q1b;@d'ٽB9<d7̀#J@heR+B\h'q-PSR -bEhteЗnb?c.!i,S-;@OẀ zBj(e qTGhi@N9SC%"ijB)Lw 5m] DLa6ckJfJx2w"0-@`C)3&0 d[%>,Z:}-!R0QZ{O\qj&~T=ΚFR=9G[sԦlW4F> -endobj - -4790 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [389.9495 671.1034 400.9495 684.7654] - /Border [0 0 0] - /Dest 4473 0 R - /F 4 - /StructParent 102 - /Contents (17) ->> -endobj - -4791 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [327.1667 568.66943 338.1667 582.3314] - /Border [0 0 0] - /Dest 4488 0 R - /F 4 - /StructParent 103 - /Contents (32) ->> -endobj - -4792 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [202.81924 555.0074 213.81924 568.66943] - /Border [0 0 0] - /Dest 4474 0 R - /F 4 - /StructParent 104 - /Contents (18) ->> -endobj - -4793 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [215.80038 514.02136 226.80038 527.6834] - /Border [0 0 0] - /Dest 4489 0 R - /F 4 - /StructParent 105 - /Contents (33) ->> -endobj - -4794 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [386.66837 514.02136 397.66837 527.6834] - /Border [0 0 0] - /Dest 4490 0 R - /F 4 - /StructParent 106 - /Contents (34) ->> -endobj - -4795 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [403.2961 514.02136 414.2961 527.6834] - /Border [0 0 0] - /Dest 4491 0 R - /F 4 - /StructParent 107 - /Contents (35) ->> -endobj - -4796 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [157.96414 500.3594 168.96414 514.02136] - /Border [0 0 0] - /Dest 4492 0 R - /F 4 - /StructParent 108 - /Contents (36) ->> -endobj - -4797 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [289.38113 398.4804 332.71014 412.1424] - /Border [0 0 0] - /Dest (sec:introduction) - /F 4 - /StructParent 109 - /Contents (Section 1) ->> -endobj - -4798 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [98.00314 132.16443 141.33214 145.82642] - /Border [0 0 0] - /Dest (sec:theory) - /F 4 - /StructParent 110 - /Contents (Section 3) ->> -endobj - -4799 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4360 0 R - /f1 4354 0 R - /f2 4384 0 R - /f3 4366 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 111 - /Tabs /S - /Parent 1 0 R - /Contents 4800 0 R - /Annots [4789 0 R 4790 0 R 4791 0 R 4792 0 R 4793 0 R 4794 0 R 4795 0 R 4796 0 R 4797 0 R 4798 0 R] ->> -endobj - -4800 0 obj -<< - /Length 5926 - /Filter /FlateDecode ->> -stream -x=]s 7*.ɲ|+)KRg٬]h4Y*/IbFݸyپwf;|0ܼnO7~qo曷w?݌统?mx˯^^|ˋ{x~5A b ֢ Û_.nވ/7_^vsqN ?\BBݿO] R ? 9l9#!8܀VPx54Xiy'a1w^2C{k"vQ!6!C`&f&4;4W w5`6] B~;30 ~Z#^G%tF{#ZCyg4OC?}Y~ gSqY*Xi'ҜΥDy;r>\iD͝6VN[8~.fQ&+kؐ̿wA8r?P E/kBJ -.pGsH0OhP2}\?l,9ز`O{E0i7WW pGkoBeAy:fKl0B*%p T=y*Q:4=KM?Pڰ6Qb/܇,_# 4(6jɆڴ!PY&/{(pWW_-W䶆GAB?; S{ BXߏHioBX%l:ZPhzX;pvMrM*Y+}Zq:vDmzox:+apV kdF̭|TIљdlDhJVU]_S~Bϙoڬև*=λ2AmZ3pYuPvyw()y2iFyp,Kj!e cڟırG(%žeyELB2hl <@pv膢IwC~€5n \?]5Ҋ˹! xT5B04Zu:< N  -֛>}tr-M -NOsjE͟@o'cIb@M3en1GF)?'q1-%gP7H[0(kɯjLu|+U[u#M 5BW -U?V֗bnD`>%жjSP _@)EFj"…ZC:EGKHP Py`A 5[+,h9FβPDz VU'r'8^jDRDޡĩЈ/$VP8Q(A51SE)m5HK[w-(yh Ǽ淔3INIԹ8.dZs/|wՄ -J)Yorol_}/bMPnO߽=J,FZC?% -51̶lKU D)!`{Q(Y2,V,DAZ#|5Y)QZzE!.AMkJժ50PƚL+sk|FŧA7`i(k,_㝆^ nP[AAXUE -NĨ9u.][6$t/iApŽNoj듖2 z -# iٶ| E[B+&<&+)SS٨ȇutZzt:|-̴v̌3_CK:3ݘږ[+׉}oq%9٤ĩ4p~in䧠XŹ%ӟ]8;O<5ƒY5qn)jvVXUvnynH -ɫ8*׽xR4Fe9 ' ۖK$#vaCӆM{lKsasAԘ~rE,$I\:N?_JRD:ЖQUy|pM"*qwDtRR@f$fGQ/~ʖ+=3Q5"UhAITMjeޢlQq>VҟJ-H@ˎMp3&nlN_ 3c#! -(rSÀC-`Հ> V;kivi8^;ڧ`ƬwJ|, ZZC -t_S=)ݭ -׷OAwdWX}: *)3=X`tTzitDO|}dTh0Ny:*F~5(#_*h X17c_kbtm!H/@IyauNPo•Nr)2Rjo̤Z~T_=r6ӠKW(dO~RxpƸK9zbNrg[hFp iDA*sM>I${[U4]`9%._R!@O|lt*R -*nŬjIo _zioHAS!n8E!۠)oڱa:妎2rZ`aRPR"Kq!1 Y>_nZiqmlpvP;b|Gv|,P̪4 -hzƵ~kh8@W~0ڸs v_Vg;xjyQnb{岵ɶ^AcQ`o&,~adK7ا]1BM q{q=8' hX?6KFk :W4HAx&bݥ&QLH˓b 99]L/R%+4 DkqMۜ >ud,}Hv;Y HTlk <&ĥca˴^V,OxfSᡝhX_ܷJ^(7ōj!Z#d$I7:Mk0`6r &OCRHED~jE<^V?'ptޛWxAnGD-ة^Ra`1gϷ9ݤ[x;_*t K*Ov^2Qy)|+%E˞&yJ?'\J$2@fz۠8gw>>{b Jh̬aId+G2/p~x#=GTk8^A'sc'w?&3cKhuWU+lw}xj|Vw)3 ǀW&E~+`ӌLlj}S'eh$CJQH~Y_bIzsêo0;`-y᳞dB -&loJ^ME8@4 ?AvJ>04Fe+Z:0贱˜Myᐣg3ur]SJқ~V{{]0oxDśrHG93JP|>jbdS9LKwQ%GWب 5ʇ<(I-Z{FYh Q#Gr5J}J<جH4^<;HՇΙE(݌4MOvgm|@ ᗆ?3I!URwYOZP3RI"/Lm(-ƞT>¾w1PS/Gc}rⴭKxu53Gv,vDt)"nØl9O~G3lZ r~x<%≤Ǐ`©vp8]'d2B:b,IUJhZU N.$9:R:W/&]̏J ߒKHDU"?XF ]IR1Ms۱ɢi&gV%O%mL7p3?5}*/q0QwOztʟLΒXފ{5wQBؚXz|tͼһxss5z7t{ʫ@IPe䅿jLdreQFs-GVRLOx`qddLq."+;@#mK gQmZ̶A>Juie۪VOM|»c 9v(vx؅5k*̴=+䵓TyYNNc"";2~)UR^@N8xʁJcTȵS୔ SdD}>ŷ!o3t윀ex9CO]ǟwN;iH(M3PĞRHiyhYSU+,6ju2Hm}8!|ZО]&sV{־86S>D)l]rkM@ 1fr |>W\&*q=-B --%q5 53U77`eܕjuT.̵+#{+Ĩ1QE[#3 yKrd$0 :>[|lvi~-7ސJPXyOCUf<|V9֕״R~JSن0[܁:e1&JڍI&F{#G[#N$̴(LOlå.ږ^YD>E1229b4cp'vZ#X"6s@,y ʼnYg%T̙K{:. -nr#qTH SGH!=`!E%&}Ccz -/pײYàf -5 -d٧PC*` Uo! \V ZTDmRe5% (EWf.jhu />BD1e^f9O 6a\dG!tl*CW۲j ̓jOpP&A)qOmKmeF@ tjzh_lݽNh{? ?|aˏo~_7>|ؾ݌统?mx({C@cN9CT/g -endstream -endobj - -4801 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [391.98032 717.3104 434.9935 730.9724] - /Border [0 0 0] - /Dest (sec:preliminary) - /F 4 - /StructParent 112 - /Contents (Section 2) ->> -endobj - -4802 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [322.54614 181.4444 333.54614 195.10638] - /Border [0 0 0] - /Dest 4493 0 R - /F 4 - /StructParent 113 - /Contents (37) ->> -endobj - -4803 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4354 0 R - /f1 4360 0 R - /f2 4366 0 R - /f3 4384 0 R - /f4 4372 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 114 - /Tabs /S - /Parent 1 0 R - /Contents 4804 0 R - /Annots [4801 0 R 4802 0 R] ->> -endobj - -4804 0 obj -<< - /Length 5927 - /Filter /FlateDecode ->> -stream -x=r\7rH]:K5k;Ne7,z);sfg0C'/8@;_>lݾL}t1M/77y_~?כvonww/>d.gr{ϟ}$LrLN -o-i'Bpzz9녜ӛ 9<\\ p;|?R>.n⋛ Ix%@N).'eJ}9]~ nf7H*?~-by|nP>'4[L͋Y3TMRRR :d9{9)/ wg3f2\46;,G2Oل'_?@{V csRge6dF7j GKX^Z  NA;/,kbqS `EۋьA9-,/Ô!0e41ͯ}7G_~Rybt_[ڦpVXCjhIHaC@zi/7LNA'拌X{!_E< 7\YQ'B|Wg -^>nQy`0-,/f5Q<=6mdQ(ZCSٓ!/o?Mx{Iik U/ }M8>w:݂aJB0$7RCKvڀB/;gy3%K^]AJJz壏e ™E)9vQhJ v/@Y*h<'0SwCnx\-* i&oS %>1Cn/f<ܽlc5} ^0sӴ u@7'vkZ Ʋ_^RVIk;^AEauWgH.o+K4^Zz,h[-"9c&Im`̲`9*U׃O?FEnHPGC I^`SX#o:z{KS:4Br^]T~O9 "WL|Z̔7cY6qnߓ]%q38XKmC!zZTWn\ƦH̉F Ƽ PhU}Z" 8RX#[FRgop"XzHĬSJ -<0$0$+6K&u8n)b)ME/ЎyDߥ]aZѪ+Gq#qy$OzdU6}I!)]\EGL׾c"8]*$ S^I+\m4+NĢFH)HLI⤛k c mq +eDF>h7|iB)Au6M[H&a3Pz6`.›>é=K~x9fP8-Lt$ԩȢH܌-ځHV=ry]W/QLhtx37#:c Iv,RH DۅȞLrD6D1Q IYʴY CJߥ"~*r?s2Ja8 -:nr @B{=hhdDx˞xI;54O@DKRsly͙u*-a߳r:vېAu` -Mu$ 쩁Q|ʋk<֞]%>aN @Dt`zM'>nN&3{/xv_ڱS#.y_WЖ4N1e+xܞ}iWUR33A<ݜn.+8rgx3u%Rǯ->(Aa W'&’HXb"Q&TF2I$1+wh@thCDC׵ ڛY) ֧ѡp= "@S!ez.'AY`'lx-O]ZzcAOsOagE[qgvN^63 t0B?\Cr\BٕfՒL;ec -dCO:ϑHc`PѫUVN(N߲ANIV|rjLvHN/MVclh£=EJA55RP&X"5<|Zl]g3}.*jS=7zff^gpghrqqo[Y8. N Dm|pvEYdgg=J&"A -PX }Wzq9A@ /L]LQqA.`†P@4ik~IS2gs;1̀.rha` @E -+CqbV'h*ժ5Kq4HzeɭYUW3WYNA,Gk@'ue\lyry5mlBΙv:[ b&*ԗ\h -Pqy7pM"gwKA 3Xzm#2 FaaȭNXASuRvRzV' dt˧ԹKZ)01] bKZ—QuݶR5 -姡mP XB02eb#fЗ%5]@8X6ԵINd7iA$O]LNm6z% J40B}~גhi8ӒS0:ǒfJAOF;ҍKc\?6ǒ^|/˜vbE$W2 |yHbߑ4|bgfrS߶ ƚϯ6-nmz@XPd7AHgl򛤟\e?xo) -;`Џp$i4A !֑RB[l &ڭߪ us!-ՀçwZ`xd'z|fd=Akp6cnCu/B'\#S6b ̃F,xuY&$SOf}O{)2xӓ[&_{R2اX}7],3ȇhlb޾`IOW -QKĽm6\ -lГpN(ݹzExW ra'?!_,G3M$oLNGy_vWoNWw^$3Ji4Z#2y5Z|]mJ/: f -j #]Tdw%7e!Zͩ64tA/ɷ/ƹYIM[FmG+CR0O҉`C]۪7M -Xg_Kމ4|Qi-58yʊ14xp5Q&F5=斧l c d>sa@&-E??^?1CMMU@-1 ` ITz'HmT`@M1H  ٛ:)D{>3y5Քz.'J++FLG`Ju>cOίjQQHy} -e_ ;VsaȏZmo vNCLyB4$⭇]^9 -u뷏ŬCo=\\Ђ%_RFh4woy0􅡋czED=b=ʹ\lM4I!ȃl+  5W}ML%V+lj.hE{b4>jO2=ACU~~ue8\̇2_2U}tԛϫgyh\ykb_O]V4)e6f!hd0jek䣹GooP cgk ZY˖\_wWL4lPWB/Ne]~%^Rl%1d| / CuGݞ_uwZ4YY>P3[ʆr#lF,_U^ -^-B0ݜ=ރS"NYIz>5錹v[uDu?t!BMu<6r1tڸHG [:Q:,D$3˿*䗽Ta%0Zh.S$ G>FB_XVN>ۏ&bHaf'o^N>& -&U2egWV@DJ|ؼ}K+67y7?ݯ7tG7{ӻͻODcl7wƾmm -endstream -endobj - -4805 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [259.9224 538.3174 311.83884 551.9794] - /Border [0 0 0] - /Dest 4494 0 R - /F 4 - /StructParent 115 - /Contents (Theorem 4) ->> -endobj - -4806 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4360 0 R - /f1 4384 0 R - /f2 4354 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 116 - /Tabs /S - /Parent 1 0 R - /Contents 4807 0 R - /Annots [4805 0 R] ->> -endobj - -4807 0 obj -<< - /Length 6944 - /Filter /FlateDecode ->> -stream -x]Yq~_00&*:"(<eQ7 Jt ¡ޝ;f{vndvUVfV_>ݏ?z}7|0<뿾~w?k?zo߼{z߾ۛ_ro~7_÷}_ a! acD 20Mg/o€8aaO7}Bn~>qtO*!!GQ Ib7oB -1@ -CS;x'bua<oQ{B|t| >uDG}ar _~;dMqSgOedB<%%v1fn꿬P/ y $_Աg DP޾U'dӶ9ebjscUqce08jpdnzp;Ȇjbwa0o8޶ żv~FR AM[^BA\1!zv ^k"n"136ruGV냃/vǷ=M`:| -SNv݁voH?oóP½f)__޼(-9H|֍D܅=uwOw/kT}\{ D -YM*?$!/O8)Vqϰ\MsM) -̨M [';.窱nk.Nuh.9^T2f^RU G-(cSffME-2fE7k* \"79FfPB-}7"rφp -?Q$ - 3V)e$1#'q"YZ[xړD@cZ9)G US8bGJ rak쁺 -20riRO?27/&`Lzcn/PŸNdƫByIhc8k#1Ab]FAl2RFՍ!h:n K?k_ZeT̝Atb@Z|-]ՈHEI;J)ׯyq@DB\_k"h-b'We.W;ѽ1Ge|!Ǽ׎~/ (~MR%^zy -ByW %Տ^F1"*|ExuE#X/BF>hQ(}<ڶBv8FL- S:ɋP /{w&O?r>Hg눗sn.DDM' ޾Ϯ5"̩ Z(w~Yn\.\n8jډmK ~hd`"CAͫmqednlFVV5}JuF5HkʺۑDMonK鷜6/MrF7=G:umޫ2;(qV%Gz[VʸXd4q׾FoTbN2h*枋[˒hvB ͱ&,h?5߭)֌@TYZ0I֬!EԳNܧk1dq;Fh Q\<äy Qq#wBRb?Z{U*zRp/Kʐ"/qʍ`收C+ 1F1xfBX!D䭮$!,@Hζ۠>GX-kbo= 1p$.w5ٻ0ݾrL}z_:&|M%Z"@Z`Ƴ~8^)Q۱L~U8s4_z2i;{1z*Vv&qШPdMb3C.h:܀9&Ni-RKЯj>BɐR\ɇ&[q\_>4'ٔ?VD$qR7VP C-.be Q5t'rZdYi֙S`rh:pJ+3p -{5]QJg"_|RRGUVIvPq#P 4ٽU<@o c-eMi3P+CG@TnS]Hn) Яze=^U !!FMKpPABB9AE(oAD )@IdyXL@7Y֜gq}[v'`N"~|^R(Ļxnڻ?D ,w}\J$nݎo q#rw$&JgX tUC&|^J#!`ı8]趟#%ș9C$+Z s.nap {P;ᶟ*`( {w(ܾtLVyL9nk:fKU/unN"vc1 -.P-Kܼv2؁=LRĦў^?fч>xW\ڋn;iB;h}tѪ͞>C9/F9<#3q?Ycp⦆m %ۂ|ju^D#b^7^_(`I T]u_~н  ,@!.BU †^D6wuJ[B89t rl}N M Dz VŗE@>v ZˣgJ\ -Ao;8ucv3d6:K 7  ؽ4VG9nke>ß,ʄ\Itܱj> r<1>H=vֿ6iYǪX_%U~]j R7Z5QA)^UBKp"fP#XbKp@)5\G3ZGѿi$݉j3@@,޹̚h 61$ lA7@pH\a %Qp"Lm\4@9z_z4C`kw'5At%+t[%eӋuv@VnO:pJ.WGy_܄ yw7n 40͋Z35AYJ i$`b1`TH!0efdGhx}g6QsjgmGEBL!A(ӝkBPR1$8A -ډ -cZPđ(5 a$4 "em&q=!qFOTHzy )y50AmM&e4$!(.B7-,PKJ=mz {ݓS_R=ىQRdkvv}ܱw/;BSBf:nIe5 鹶߇̰飥AK7[IB^Bj9>aib^QXQ t5a!&3(l d8ؤWK-kP9I%ĺI"AL9*#ÿ).1p1AF@q@-(V4gzW\nlR*a!>?9pZִ1T KtZxu#>`ru1<OB gbS .*8&/@5@AW_]]bGZmr C~Z_ -o+o𬺜o/7 _r!;r <̆A*<5kZrQ;P"#vɸE8}T{8Cۚp^ !P{Wp\Ԫn6bYfG4!eջC ?P#Vvl<] reGkNf Un9\ P=.!$t??0SHa;#UV5&Kێf6(Ndrn'Ƹpkr1iw!:S㪔QL#&1J0(>Tv] @B8gow -}g,'OG -?:#oOGjoO!!v ť@(Mk⏨P4ys߅%(tag(+oóhJ"vhPv^ɼI\ }XqKd!U jorWBveSK()gY 4M%t?pw>yw NosJ,UMUv؊4$]]NTa3W% zF2B +;o~|j3Cˊ( - -Թs ߮mlJ. sq ZbVkڳEm%H(֪^?K.l I&ޫ& -s zjf,'-Y% .N! p@TթR(7mBWcLxt"쩌hԼp9 lqT/T[z簶Y61sP6x$@ \x_r9I=2P|'#б{ip719fךX.fHxw19(^] ؒwq7X*~w55]AlĢL݆ `S(VF(9SXE)Y -沬$!Y֚iVIPreoSanN"MlW?y~?xTub͏$kjN<͸On<+ Bi -ѡEH{熋&cեuuQJ I7E[}哉Q"y9&W8].a <|ި*aCyXچ,l?S.0huƏ)vs> -A(1sujG? rUx=^&Z9dߟSnveV&W r)n'rv-YǥGc@BO.Dvq3᎞#0Eշ'Nx~>||)y7ew΃ONTEၣʧ3vX9cXtEKᔬU.ʆkZ[] Ic7J vE-1ehc.8 <.ĈaJ_j䋃[01K3GhxΊד_:]`4Wf]0s(]'Rv96ΪޛD1(Qhw#[՛ ens-}9i!6 B!QbD]. -1[,] Wt?,B_a >k.G]%lk:>ͭcѷ?>0ZqQA*c>q8})}>ylK8D( -HG9|o*ONRiG#n!%<0`5T3 -NY2hkv1>6xzf?5GUg -@f۞3qu| 2KS5~&C GlQ%s:S*+S P(EOBʌ޺V\]{F|6-_xs4V ul&i<-)LxRZ&i<)5<W 3Q)}X Ķ'%f*>fg!C.M~+mjomP<"hjWD !kmz6 9y Đd)q;l1m)Z6&+EB&Tr!I q*55cfp>)f./f4?%@ɗ=%t]5!ΜS'Bdۗs ט%Cɉc׸Q| z$dn#KGMX5j5e.IGyd&.4vKbo=ҒwEWY9P.'#ݽz7_?ݻww7ݽyo?z9OWw?{;&Hj~;_<_:@] -endstream -endobj - -4808 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4372 0 R - /f1 4360 0 R - /f2 4384 0 R - /f3 4354 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 117 - /Parent 1 0 R - /Contents 4809 0 R ->> -endobj - -4809 0 obj -<< - /Length 6139 - /Filter /FlateDecode ->> -stream -x][m~_14؛A\Z%+%QRYJM*aI2SRWߧ0gef0ӽsF*끫=;gFgn޾zu}E=՟^?~=_|=?=ꇷW7o__|iO.|o_t\Pv)r]tg׽zwvr_^]_|.{ewy/Px?i{ŗ/~osJH+N~|=bn?ߎ.Gr3w/ o숼@?>__vr=}x$R^|vr\($2xf/Wbp'5\2W~ ~SY -H#LE^=c^v{3\@_{<py.(XL)Qt=!/_ڏN5Nw9".t/B[_س[.*-}O^~E{;'y` DwΑ-ws{a K\, ,={<@0qs'sWиhى7H|{xZv=ʳ_.SUoG__G{w`n |L]}Y¿քx?8_NNjwb,:%9`2 ޺8eE϶?{9QHKV#e E'3.s!ihuՏ~hGVخ0kԬ%7#qݷu{29so7~b5/ wqVr]ܩ=\x;.l2檬Y &uo,FeD63 D&i8GBW؎Iͩ uXm?^b2ÇFொpBl/sdFn޲wem~i8إٚؓdfL-qI=åWN}qif'#ƫ>_$EJemG>P>=@\rwK,a9u; ID,Fra_zACS׏gXSSKϱ>,rafTh6>Y-]1nI'_:D&z4,wƹohr>Uqq!R6Vv\0UۭA8}]nKbo w36`#s{)Ҟeq' UR׸lCXԺ#v;Zc(rYyp[?IY=WϴS}"_3͆ -E< - 0`+F!:a πAEDC iuٓ@FIro '!v8Mqfp-‚9|x}dn:qx5N -V,|qee4]pV _1bN R^~]"$kMh:# -&2b c޸{n Y"O7 +s*Sءq9hObz0%b&,NBP>Š| țVfDD %-[WLBA{"qmLH~Rm3CnL3bH+Ό% =3cc/@)jXr)0Cc!rel0fh2@)5̽AG_JM8sw+d+ma."6ZfK@i -2İ -f دbJoFy ʙoL#8gέ0tA g\c(e4]Ȍ,YoSldTbv %ur -w,-7mfQufz 8XLL=,)I^oϮ@9q}maа,TY_i2ATR/8|=M ZFTG$ ķт u뇬4cfu=MuB;:&O1x<#O͖ۘ8)a-zӰX?Ė<0=1g ?m KEt]TWes s{L=pedX] Z;WM-ÅWbZ^^[lԱ1O}b0DIIglP~&82 &F^"([ [Ƒ] -2(d8\+T_yf9d,Z3-0[fLn#%,!gNsXt.'rs)KQ+P|PK~Q+ "4 E/`AP]a; ,P2(kPlD:X(bBz)m` fZA --1s[Gs_< ́i3MtRJ,G:KQ`- G!`@]cR4XXgS3R4a;XgoAߴ!%\A零P[(bh@_6 -XGEvkQfTe=- Eh8)99~u ʏ6v&e@G460v{s^=5ѴcZAEw`ǨHhi y\4vn1-٩PklG7tFEҔL'54m5mvH2S r*E{ -0z?p羪lvf{/ü4{%\5^(C pv޽ XE?*8z7^SN(RLY$if͆b Z(ofG1@r~f5;^V_^ufyaW]unI}B/5*Nufr΀\Iq:|Ҕ}+5Swnѳ_blDFXBuݤ ?Np7UXj=mr< }]\$˝NP3[$fsqɷaLI@k|E~ ʸv3h \X('~2Q֙1>:mPoVbt<;(ӗo0 W&$1!  HkފR0r@`N5bh4K -+/?vs&jf5]A;CpR3de4^v>4/&= UXupY &/=,L/Lti ӛB>5t{nCQZgD(cFxwܒ#Rm-_bmܼ}sJ0%s'('.{_.\uO/B"'AwY89zldSJ%2)0v S!SsPM 'p}5׌uA:8r8A( K_0U3'N?bxkfwCR'(Z]їcLj:e9,ID8\o&^}k=yǀ'R[fQn!BFF꿭Pߓ =@NK$96(^%K?R՞=2{wDQGsnޢStMFUzwV"Sҥ&%:$l=M.Qix:R0"_Ӷ3Ɯg-(f  9wABr\ͨ}[ -ĀYXUz1PωS$zɘb;I[r&g5ِ+9KkЯN9("St031m6b1D>"ì0ɏ0r_V_'&[2az{+Ll=*QvMiG%=r!6%H>KTd_7Q3C()dtG ?M.!aV坌N}qv5.cŸk88e~ƆM3-f -h' 9xT ČXPC5ts_.v3conO?_ћof\&/6DlWLbA(}R<ݔ95``}C1:9}QBYT;DQ IL8i/d:gF:յ14ɪm$NcmU[$R634 fyTHneb>)1dhb)&|Ťg:L$?4Cm=x.{9DM!'J_ ,~meb",=+;82!/Gu -gb!%Ims5w>4et+QeC@?څPaf(KvYR> -endobj - -4811 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [186.94914 178.54639 238.52814 192.20837] - /Border [0 0 0] - /Dest (subsec:reactive-coeffects) - /F 4 - /StructParent 119 - /Contents (Section 3.2) ->> -endobj - -4812 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - /c1 4403 0 R - >> - /Font << - /f0 4384 0 R - /f1 4354 0 R - /f2 4360 0 R - /f3 4366 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 120 - /Tabs /S - /Parent 1 0 R - /Contents 4813 0 R - /Annots [4810 0 R 4811 0 R] ->> -endobj - -4813 0 obj -<< - /Length 6514 - /Filter /FlateDecode ->> -stream -x=k#qW"u8 TcʼntK$V*RJߧz\r= ͠@wxoy~oG/_O߿~ׯWǿ޽_bn~鳛#~鳛!qxj IaPP4WqxM>M ~sc)9D 874dP@$B\R%qxsC3 -F4q DF}jϿyYO/]}1D̃rw+7q㫻ۛO^vx_7z^[%DhR>j/$6np(3 )F`΁5!n8z ԨyHB -t]Y+h bɃRi/ -hRۯ68Pj<,Qq* Qm4rM+|9`0s<<~Y-lݰbLx,k_D#!ҟz4.;s`n5/lKL@4(Q x#i0) -9HPt.& kj;cHXpEEWѵrB%⠠A -횳A"P+A'I -v:Bf_"a9u:QG*ə3G]\o,ʊd~IO\XG$Y dN[!v6 $1'Sm* ATF9R{ ɡ)9_h>uJn-,FbC&?޽ v |7V8͘.⸝䪦\-?bQ 7w5\ᬽ9|ٯO^:j 9%A -XhM |~<8Q6<ͷXS/k\9K TS :2/"';Mt\G! -ޡXJSSgit  Ol7oLzor>D:M8KvZ>{ [<3X2ò0|*.Կg*6"` ZٷP[K~IH9G!Anՠ{b04+)5Xɍ!?]8qx[ι&n?c(1x,F <ߓ$,}%ndsrciA[P2R\/-#ŕ3(".'!ŕYr'xW@ZeIUNUwc x=yb/ǃA6SAo_[7 p XX?\'tމ6$۽Q3jgE5 !B˪uqkrA2e k\bZ9 6Mnu}hz7qݧV->%>B]=stء!S_Δ/ѧ3& { {/N;[*.["xF&&>ͺ%]djV!}dr6x$/iNީJE3ޤ>R7foLv#SNw{q29 -;;A;Gߩ{,U;(z'E>Nbsm6-R-AXf3NǵsUOy:qip'K4b}jns{]Al#U%Z{-mn=okl0[X/=)l)/k[PAlJ6YU`s݉G:UޕӴEҨ}a 9-w/l/i;f|yAy&6̉WU{1VՁwQE;s{ר"-bvF 5 # j`?$,K"[ dԒ_)u VSr2ʀ^5P _ŕ ! Pr(jY^J@P0K?j]g1aj?v761>TBů1vY + -wj?7YnQL+t4D714d~M -AJleQkB !FK_8A3JlU'0ĥV @?7ҳQňƋj tLG,q# JyPDU~UF Dv*`ˎD3F`]UPpEuZ(L܏B3HD) z4=r8`4 fGؚ~ *CV5Ћ@M3JǪ++굱?ѐ8PON lA&;c5as,@UeՊxLw"P{Z hqR#N\[֍BU`{bn#j产{5UO x,@51raV֘d S>VӀ``H 3/~;K]-~r~|q2eb2d7;T{Jֵ2kw@~{XO^UY[]QV_bb 7Txn0I -dq'Z&RPkyqqVrE NRP 咉-lQĒn-eki VRY -ʈ[B|ywox+^[43~&;^'Cpqw+k̡3MnV>V1X{~uK+peW1/\Lr_0'W9ʷtevMrbi ́B͚_BNiJġLtoyG l$z:4 7{(P֫ϐ)6]jwu`rwΡz[)[ $ZPN pk![9%h{^'wpr1iF7 p&nUh4|>n:ssn:s|¢m;gd)g_\$eTmDpPݒJvV_ -Hsdit!``pKsUkĨA%Ih2]~s/V4VUd ݛ`\ĢҳR  v?+w#P~"s>T~͢$r7Uu-!1'yxNm͢It ^qj59c7cխ쳎v ]W>~YQtk,Qb.U$1ݸsVq-v!]U@J`w -|cůL -R/kb+ -7ΖxQJ|$c:AƐnE/J3th~Gl :bu7'1n郷zsECñݼ贖)]8&<% -<n+m foF2OB0sk3$P}ij)'a?|LoPMRKOww<`?mFR~H-+pbk;!؋jXCn'P:[kvesF+=_-쫓ɐyƖgnډ 9W=. oiv`cx{(mwf5lޯ\LqK`ޯ~Ja_G2FfDXTDB[hYuBK;wcm st:' ?O'sn~CtknRnCߙK\]tVlO}K]ck]3ѭek5͟r:[̾;T-KyւቨFI8D͆]"ݫ'›G'%̅4K̇}!v0LwN,e3ۡ\ t^ <ݵ9VO9v"Sjuiխ87%eMS`F'VT\n2bjRcvUR\J,ԒmPB@-ݮivؙ 6M*JJrpk`,ppEF{ 6i[3͓G+ϴFgXsg^TA?.텫N$h"eb#5h匦"8r]1T8[.l4tz׸xxkz8st}nJ?y4ʫeWcCٕGLc] ;/XG1c tfW6{"򘕸2/u*ߋ4^7O^+;?Z%Y<rK<1 {g"/yꕪd&yY9ݞ)d-g:EbXJx~<>#rN }b(}ěqvS)+IW'zu24fq [;QޮL)*2Ѯ`Nco_%]rױ ۴(F3-t*<[ -mˌꚳ㓶P۞yGl=ߏJυأ hroeTܪ;琘[s{}M `rs Afsc%n9έ\L+C,y''Kg Zn_vjBt_]W -hZ59|f惞|0R+R%YHՙ?̮gxT`is(WSCoAusN.E R_ll .d/i@/Yߛo_ [E:AWsk6Z1]t.K4Sฤm﯎t8Mߑh& - -ɴB!k#];:p8m'rƨ%fj̷Vdnnmj Vhe,k39-awaqO<ҋd79y,1͞e7Wxӏ͗߿wݿ~k_={fy4HG\N? -endstream -endobj - -4814 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [321.7234 605.9284 332.7234 619.5904] - /Border [0 0 0] - /Dest 4495 0 R - /F 4 - /StructParent 121 - /Contents (38) ->> -endobj - -4815 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [340.1572 605.9284 351.1572 619.5904] - /Border [0 0 0] - /Dest 4496 0 R - /F 4 - /StructParent 122 - /Contents (39) ->> -endobj - -4816 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [330.0642 189.77643 383.65222 203.43842] - /Border [0 0 0] - /Dest (subsec:revertible-effects) - /F 4 - /StructParent 123 - /Contents (Section 3.1) ->> -endobj - -4817 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4360 0 R - /f1 4366 0 R - /f2 4372 0 R - /f3 4354 0 R - /f4 4384 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 124 - /Tabs /S - /Parent 1 0 R - /Contents 4818 0 R - /Annots [4814 0 R 4815 0 R 4816 0 R] ->> -endobj - -4818 0 obj -<< - /Length 6211 - /Filter /FlateDecode ->> -stream -x]Y$~_XaVK B}+`df*f驪LF0H/7om>/7ۻyqW_z__~?>xO>ӫ_rkOlP_v 8f&`^ܩWj'7WjyzF ͛W[{o_mRӷJW}Rw>PfB$U *MWޛ8o]dSmm5_{9-V3o2`!8g#w=蝴ء:tM Nq.9#pW\XX5uzx9cz@~VM:1]2gw%Ø21:F)>|s=ku81]әpQ$s}r{Ij?5u˸smx|w*LZϧ0gY%aSuBDmsm;^O\!F4E6QˏĄ~2o+4ŋvⳅ^p1Йξ{Qgm&=5}*_-Z[ ,&)d"zU(A)RPRGkdyvyC,u^j-E˒Yp1Ku"QG,G/w@&oL3<ܽقeJ3sgd1$èK!VU´w_of^) c/U=u̬/ بWUQh|6;{$O|u0W^5;(mJilIF1ˮ-?di$"gJؔ;ŋ1USy;qGԒKeoBq-ud\}vP9?a5Z3(ԑ`P(2K F$21OƥfgflֹVU߽<9)u'-Xj_aug9互Օq-f k[~Fdfv6b\-.Ɲ3Zt:PSĭބp7108MdˤRp%^1 ⶣ)DW}LG2Svj3&R5gTh=+SMT;XjK D--lwqinf@T,~m{"KT)// y%4zPhu8cw>2}.W ^cގ⊢Džx!'\ ֒\pҤ|"m-gBI>V Ӌ"K'l߽B.wom̪_hU0S3SAb(&Nr"0nmkO-њ/3 XKtgIe.\ʑM-r\4T*EsȱX|L@{.c9\HMfP}\$ P l@p4@Km!6~l Zf<>,ъR!Q._.C?[=b',oZD`4=%IJ)AnJYsxT[P$#ƈ`U#!:-^Z[E}73gf93gTGno%3c%r6hb:NM_4Ξ[gl9n:f)5P;N}[ `H݁rԷ% F y&4=9ًᩏ#&g#)/8#(jޥ+Dcz鋖!N` -| LJ8YCsG|G^})/:<ĶaQbg^s6.؞3UJ9|8^|hU˧ӑEGƳ;& '[jle}3 -ƶ_Me.Z4  =8|7$쩣g'%TؤI$Pn#7o׫~n@q4^HhLD=N*{4t)) ѫIjqUaW6"9lbMsq "Rի0l:v!"W!SfW阁yZx&/&0)t؟AѤcL4[#[xPV.>lO:VM^ -#[kcP*_RJSCj@OP<\p}fP<m#CUO\딂NjY=T̵LK'SPk "k{8O+lm<0 w&Bz ZE`Akc -_y"3@ |?A1?vLY4Rt:Mΰѝ YnzT:XղŋB\0ZkOYJkT0k!wtjʝ6(/`LDҖ7^NhJ}7·e9SI4,ҋ>DwTi-)yV)1Ӱ 1  ~> o{HHaJf!a: N:V^-T-p}dcu:4 ;{^$WΛi,ٚv9{-IN!Κh"/s\?ip F*:v]lluq@JYesiBx%lZ*guecJ'(Y%8yUeCSثZ($ڪ$~^d!| -B/`=6"{ZA/@X -H15M^d`HfbdaVP迨YT m [|r1W4Z2\cn] Cjw2}k.DAshC9բ]ARnrzݎaU -PX̞thX"|1RR4J,4R`ρXt8@ P~:9tN37~`qq0D@L&H\I=z -HEB$S]C鳺1(M_̃6I)Y 8Jx*ETK_OXT(WXtz]ly\QQ 5kkƋ, ia`TJ,GA7T җJjO3|uMW!͂40-hW/K_vEyO ~ -@tYJuti<`Y cҿd9F-+ F-,1jy)HS՘EoF -1RńIn34- =Bӌ*JDD3u?X\e +fQ-_:xaBP[ 'T̀:YP"c9FW4NQm0kHaȢE -"W& 2ɥr &xc21L)@R[* rD+pV%c@Ŏ7Gb0ePz9x'2M`@*IŔشtHY рQ P[ 0z0.Y]~ X,?tLgVX( T;ykc3M' Eg8TvN$k_|&X۳ -$` tS)@xgH71(@DH ̞F#42:Aq2Q:>H )4/!d$TA;nO9CII '=RG g)!zH&bq<:UF._VMIJ~w?G=1IiѡUls=G3@*@ZAQ{c6}/bK V_oK06{f Uw3 a{z`480WNǦu{BJT$eH`O+c:2x07{ꀗJʁqZ0ג̠F -M ҭu]NNZ;{܌!?d WglL kg@te~owvm 4ZJ0D\< II(`/%W)IFt U -^TA?+۳p£,hz|FTc[3/۞ -7k /{KL]0^3FsS6ZC=mHnBT[1e|qrpȕ$xa3tD9C2Ur^yUs\kɟ %ZO0ğ谑Rqr׭BcKLA 3r@cs iך=2܊:pO+24~ң1B2 ڀvZcba6)0*Ls,ZֽH:YU↲!.W3-A^+j/3[p4\S>?3/vu,wu?m۟n>zWJ}Â!P}i*c -})B? %ݲAx)3 S^ -Կ9<0mm:rbE8N}U>Ud-gef[k(\Uw~zb㋻$s6Kج[~EYTeI갧Ctaq/`s`IEt--|s@`^f~~8Y8,0r!9$fW"5uTrG?mћRd:%eGUZ% tmMNꊫZ65XE?\z'1EHRY^*fŇw?PaNͳ`d:lR-+'(7O愦 Y?K7d:e䗗RHYhb4wxyn6ۻyɻߥo柿/^{L_݌rۇwlQ 0tfڎv.vP -endstream -endobj - -4819 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [350.45316 328.3786 402.03214 342.0406] - /Border [0 0 0] - /Dest (subsec:component-lifecycle) - /F 4 - /StructParent 125 - /Contents (Section 3.3) ->> -endobj - -4820 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4360 0 R - /f1 4384 0 R - /f2 4366 0 R - /f3 4354 0 R - /f4 4372 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 126 - /Tabs /S - /Parent 1 0 R - /Contents 4821 0 R - /Annots [4819 0 R] ->> -endobj - -4821 0 obj -<< - /Length 5900 - /Filter /FlateDecode ->> -stream -x][s7r~rbW-4"d|@ɒTLidMS8<3gqfAƇFᣏ.ŏ/yrwW_|ۗÓ/_~>f?v|ooӯ>?_ 1< ֢ Ë.Ë/󋻋On.psWǏ㏛.[!ķB -p=(1$&A@thT?վWl%5ʦ? -89?;oL̇}`MCfsMI|33~fpWU/8 -. A6O Mw܏ 7x?0L)Y*L{zbݼnϿB}WBZCIj 1[l/NzihbmZDi 2Gɒaוy 3q/4 :AI"5ŞM+ѺidOCn6Ή=Nnz\-huj}Qy^fX3`[ 늣T,5JcXCjD]|l7Sυ뒭پGɰ&e oO>riEZf x̧G O6h0A/ͫiq*2C LיUnfc xE('g f:ùha "?ؕ+@eHzh%&!5SIAKi?SV<d3dl1}{CǙ~da55ŠY'E2$dCJg2Ujov#&`$##C]|s\+cYG-w \M{j{GJJW)0xN#GVhe&3GTMn"uK@KStvBv#G:s&=C\RԦrS@ȫORo%uˑ O~)Sj OI.,KIr;*l&#OADcr$k;PwA#@.F hudP$}gEh@mq$?ݷ,sǤ|8nhjY5aDQtI|pDQt }hEހwzsHH-:@ڦbx3՞7W>r:*KmƂm'Z#O,.젓O>&WK!'swqr>I(W -tN]"5uwښuء4`[g6,dGQ)U'<^* #/?PdX4-ܬb.bfIgzG+r)eB$(mmrycw_8| -QB,F'sH}8{{Ӑ.`)uTXE2%Tvsdt^  kL -ˍޖniE7Ɓp2aZ`զڙjEWZ1ТԶϔ7M2ӮeBLɔxqi=aK6!RZTY}ؚKѠ8|l'JiDPœv[~M^d˗y5e~|b˫g茾$ÇYCj!Ȅe]bZa=gMOά1հr#$hߗZs,x'#2gJF=?.TkT -6mrNz!]R82Yn,K{ׁБנ?p)cTUv$FQydOg q$@\\F'+'e&Pz-\%#c.ђ@:ϞjX2f:plgӰdȢCޠ xB!I6;Zj74:nKQ0(~GQǩTΡ_U2-;>Q+RE95Q{^Et+>QK T+kvvsYA7rSl;,Vʙam.Lo;E֑N%o@ؘ#ѮɑwԹ$YG'p2&6EL]Mk^Nĥ_96Vw+YP*&$u+#"\˛w1=A[[LuJ4AuS'5o(xvk 2) F@i-ܠi'fxБxm|#vbԏtct jsl/س@MhD,O@f^) Zɴ+!a$ ̺ͪ\dǑ_6*oAA,ZJ2s[2.6US e.Ik $&A.YMj+&Ϟd6ltgQ,&M |mo*FO,&ݔX貇 9RNK(rUDYZda磜UJ=\:X:;Dެrnt|VG)˞!SS6qZ^=ܯͶh_#r@tχ7$̗ %N4Y&m'Ը*%frG?nPP.:O.I}7]Ym*Oneϲ+r%7@4R}8Sbc RxLNEA: -btڷ>RZ~@D[0qf+,Wa.j$%DL'jG O 1dTE928mr'ʉsi-EqG˩9[8KSMOpm{9Io|+P1.t -R $-Em5DPY'td1r-$%~ -W,}4La%|TF}IiE-S_ʯU͸ž׵ؒЯ$ܒo&eNd%m6Evӊ!Y]:__c/˹l7eL5j0VgH|Z1ߧW]/1󂲤˘\D;uo3Rm#`R(#TP Q(Qz0ըgnr:YqR q Vr/>$kʼnftQi)=ӪF FT1#&8$ JX_qYZ}H$kוcw@6R,zX^Mٛ U wg -F[av]O8n^ -wt.gb,gh:2Y OUƂyɊy1҄ːTzȂuGZX-,8!0qU酿w3'|Uhg^6WܩVkcRu6 ɥYzvӺ)8Kɘ-e,J3!l69$ G{: jqEa -? HG`Hq@VtXk[,`W8Fn@* -Y.%!HXnXEu1=܎hNd9P +k+  -٬{r]~z`O|$™-<) 5wOOORANz9*xL|L>U }cM}ekI)Gg6+TxߴjBUG:Kb.I}N(b"yՉ|> ɏ1;4BبfN=?;ܡUhB-+)B8׵TpR~n-Q:k}=2TrO_N=nh!ؾHMAΉÆQUyBQ;1{:q*nAHזbfR~ms)jtJk}[y7fA1Kdj1]-~;"螼|Tydr ί87BϳjЉw3 -\-1@PAⴎsQ$+Y:&]+>wq."bFioke7XD6@MvaJ-%u,qM0;M ^_tbJAnub~5d1e!~(dD}8fI۟lվoUQw"[ҟ^CnzQ}@6Il#K6zbK:x0{GPy6}qdԫ4io(䳪F֯vi:LOVPG]HL<1[J\iSD(k #DήH "gEb6rzօ5ZKf|f{Lk'>礵YccQl.>Xd?]\e[]ϔ9s̴GZ,UаЂaZz9^lsاׯn_v?~'ov7?}/w}9<͛t7wdT!͓t | -endstream -endobj - -4822 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4354 0 R - /f1 4360 0 R - /f2 4366 0 R - /f3 4384 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 127 - /Parent 1 0 R - /Contents 4823 0 R ->> -endobj - -4823 0 obj -<< - /Length 7941 - /Filter /FlateDecode ->> -stream -x]Y~ׯ8EZ$ "KIgW50z=njKb^|vWo|pxë7{/^/}˷y{_e?w}OO~ϟN~}pO{u/=;'xpwxC@9D@'/޸Û>q{Oˏ=/v}툎??OفP24рx{04F|xOK *@r5@.W2&v ̧od:"YT 䄼O5!3'jnyz8 Ot - <`JW9 x:n?P(P`̓4#uluI{׿_>}=:s7"C8Z9-!E<Ā(>{ë}|/p_z˿w4btTТ͆?e牞Mm9-ZEB Z}gpd%YkA%<&U:1Xr*(WR`?OsUCx!}x!FZ!V3Gw|j_B$!D;,MĖ4F! -!f~qQgt*OMh=b&#_X^$Xi;0Ƒ?t Il$Y4S;6bUpoTĹ>59@8qvc+dpHӒ 2>n0rY@"3 -d QBYCj*=Zk -Ca+59x>O63l?Ϫq ~4w_ -v]?pߙyZ|nzo~`v2t]u {kF_$caDŽX1RۇU}r:|K B5VoZ̅5jļQm_$wa5_՜[zAvU *go9*F][&5Dy-|M{"{(sҞiO6T=ES,+LoO'zO'2EӞ|N>ҞiO RujQJnQt0ΣJ/8r^!d9hĞzWC}?uMoaԅJxs+牸L|@n /_M֖oT!7O_q+4+ur]>ɫ%EJHd%3P&n^u_y|uW.*v[~&_<6L^|?NO@~;7SPC)׭& IpI\!8~9Ql --\Yz4zn\ly")c>t~QVWi,HeɘVt^>DbhEإOWk^ըK3)S(bԢid9~)2a1:|הfsQRS(}%_pfx?4KN~>@m[X=[WFdNOf`Fժ3cJ~=*D* f=VX 1#jz¢Cxa} -9?1"Fyrxȫ2%sqĺ}3| m"5lKcEK \K2o5XU0mMJՋ:B/E'PMzyqqСC~W_'fSΡM/iC5frTcY^%Y _U4 ՛18Q;;*^ DPmGVo!;Neg~I_%AB`B:)a#\B"8 -@dR֝{.!vٹS}ԑPSSɒeW"˔A㮄7}B?9*rvjGdSTo#p)U/>o;)leMA^2LR\̩cbQ.k爀)HӫjQ˹yzDxށOi>`81wrQW'jgfp7xtqWG)A )Ο@İq7r*S1~Mc@VS⊋_yU Af܇\g -. LEh *GP[ BoDr ɷbT0 6`a`+oIS  -U<Z7: #ȡ^C%u< -S+5HH;gC}:A HO05AymW#F7]ji5Pr|ү["oy^rasW9C1Vc+H@j%Lě@`;5620 yo7^S_FZ1\v_S~ك+ -gHGQLj55vZkH_)A7`%ZRj%K^Nf@v%SyziEZrM -j3Mz?kRP; VXzkRpq^am XIA{,'+~9)h] IA[+ -8DjYK/)hIA{KZK -ᜪ.vEw%++)G,Gb2ׄiJ"L4H\萬ڞ1@.a󥦗ŤHk0rӐ^"vn'C^|/5*/8#(/=Z/BmoHz\kP#k6դ.2=_5({¸jE 1XTaHoeːZ¥Iq+߼~) 򯗽.Pɛ_zK޸x+S"A/_r 8SA%.CPjM '%F-ԪVLRYX´WW;dknڕNwb.LԂAɼPUe05!ĔVlp!pDR V2` -PU5^U:@W)2+"R 34n'AjɊx$ PbEԀjɊ+XlՊ@UFxKVzA՚KK.),#k=~~S=f'=b^c*F.v{)J0w`q,3h7fazkՎXj%O+& =cuyצXA+>x,'D{ziU봤I~_pLʔ +6  ^rKƷG6PgڻnG)e|AjzW(}ݟxHK{tCm}ժҤvz+%|"]9'w+|ng/'ūm]%4Mlj0+7-7,mzÖ<WSnq}8խJTG^ʷK݅vP:++_ >TK'q뼱&{9jvHz[}>׋zsq2/e)۹,P1<&T9}'g~lnvIUw  ufW׿ڲ;کmSiwDsMڅM44lsY<#FsSix0Z^ U/:!AsK -UH8WbVӡ3F?fV)7M.(K6'^!zrl==U*\NkcB.yq ;.فgCf_ߴ0 ^:-к8,ZjGsScA\+?&n-gz8y{wotQ9IV4Xw9,Q0S?NZ_~nIZ}D3!>u{t~H4b6*<~(H Hwr¼FrcrI)X twaԾ `?٫jK\g9G@dš#[ȺF %6W`xO -M";aZD"'U\~T!${pGUiz~%K;.V3dLL+ȈyA Nsdn`G%p]K;, VQ, r*PX *Xf UK"1p Z}"TLK K|zsyT1- :q7hԔVȝPfBVӈyHơg&yv2AZCg=nVjCJ\헖6A-{\dp-aa yb^M!~l"fiySLbGfe(2P*jVNNպ,d`?*J+b_a/ݞ 8>.Ku/?\[ xC!Ǻsf:$JjtgB –0Ѱhu ֎;~64]36o[So);pAxý- -f#AHjiT1AͤMx̞ך\k,^.b41>_JDSbm,:fi t'1q UN ,?ҪfӢ%˳!!@p\@橛_2Ho⸴ĒPÀ"`G'|[2MPQG+RA1ݐC;^T"S;fW],@@@$~8Ƕ -LXB.ձ~~t*U6*&_S0kh(v -Ҩ`#}MA1ɬ1M›{iżh@c),c)|D0BG$ )b2im*_3B$f ? -K L̎VQ!r:8oC2AH;lf Dqm17` sG۠@\a`0+ n -SC -;Gda+\P*%g^&#l:4d$%[v| zxtct4p9.xThӘ2G>|~Sa8%pGmS3.;w=mr)sB -mtsJ9sGZa9MVGj 2NW -jLA0QA,T,O --9]b1#(WYu6kIYcYG7须"kZE(QdZ jVUY|)<>"W6馡ͦȮ( V[&:ss 9C&:G`p.ʪ g߾{Dg7?~x^|O/_{;5c9G}C(0 -endstream -endobj - -4824 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [461.69614 570.07336 513.27515 583.7354] - /Border [0 0 0] - /Dest (subsec:capabilities) - /F 4 - /StructParent 128 - /Contents (Section 5.2) ->> -endobj - -4825 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 454.5324 122.445145 468.1944] - /Border [0 0 0] - /Dest (subsec:context-paradigm) - /F 4 - /StructParent 129 - /Contents (Section 3.4) ->> -endobj - -4826 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [201.28658 225.36938 241.48993 239.03137] - /Border [0 0 0] - /Dest 4497 0 R - /F 4 - /StructParent 130 - /Contents (Figure 1) ->> -endobj - -4827 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [495.9211 82.57959 522.7611 96.24158] - /Border [0 0 0] - /Dest 4498 0 R - /F 4 - /StructParent 131 - /Contents (Definition 5) ->> -endobj - -4828 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [522.7611 82.57959 526.4241 96.24158] - /Border [0 0 0] - /Dest 4498 0 R - /F 4 - /StructParent 132 - /Contents (Definition 5) ->> -endobj - -4829 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4384 0 R - /f1 4360 0 R - /f2 4354 0 R - /f3 4366 0 R - /f4 4378 0 R - /f5 4372 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 133 - /Tabs /S - /Parent 1 0 R - /Contents 4830 0 R - /Annots [4824 0 R 4825 0 R 4826 0 R 4827 0 R 4828 0 R] ->> -endobj - -4830 0 obj -<< - /Length 7277 - /Filter /FlateDecode ->> -stream -x=]Fn+Hj48%+˹D~X%kUj lirɻKhw?}v{۫w]Oo~}ߧ_~}=ӛܦ_Տ?\f'ݧ=}_n_{:uS` (( -V~{zvf髝^UWv;wJ{}ϻ_|PGʒkAh2W- 9lg4X膃` ^E6tA xρV[ <0J+'eRoq 7qjk -Ǯt("D\e(Zj.~#N!g] %NI*z3#8g}!N퀨 xNR_! 6zS{"/{ "k;5_79_ƔS!4lhСwZ1$4Я_kM2.W)\ֈ5"(xqCZfRoĉ-,C'q3+ZHe_bHH˺ڀzRu~uR)F,Yv,S,Fe ۳DZrL}x փʺx9AZϩN_|pw%[.{Y',(%Y7;5ƧʇgpAkry!G`[=S T =_c)V*V_r=_c U/ea<낇ԧ '( -.gh!ՋEJ~l/%a*7c#@p~l/e)7`K% ɂq/!#@ m_8GƁ;/gI΋lzB]_uFh7~f^WcnDo>>n?:/v=Ty/KeU֨|Tˋ6oųygtSzF+p>s[s8ݞl5)PV8D̓!Chw~Br+v?4 -ll@g1l-lOIƯ!g[REl!ېe[N#vNj?(-^[NacNL2z@A\USK1zV?Pjp-BIemFA<=6qm*C'%x (HuZiI naUem/%T:jTJ!߫2ԺRhAUe(ir&߮rY6 -f\H%V*f.!e(fJE3밅CL+|j^e3WK3ġT9sḃf@3δRHA$]2lͨ|zdCc6A+& k"`oA $﵉ԦuͶkmKGd[mF6?ksicf[mF6?k3iD@ ²6o*nۆhr6'@1K 濑}4paKE'ȶFv6ېB -o-l; 4mg_fCo;+E1)9YR [=l E .ͷBсkl[iͺ ~Ԍ3k B>4S.Wߪp1Î. |; x܉g\ ipz[+ %YT';:_l1|m.&칿Ϧ>ᱵ6巽Ͷ:ms1f{|j0)c]L@P^gFZee[]LT@z?b"*s˓mv11MFm?vBmWlËU.u7@NYTҗM/943&5}-|;JHӒ|=TTNn[}>s2;/u&JXO*qϯ #|daY()g˶ io RUA~admHב<86~}-4h́Jc-4۽:VcH.T#)0$ ! 3fKjL80zn9=hP:@!oT@֣n8orb&O<VY'mZY%xpu=D۴b* ?I+Y>&ͥJƢE2@MH]ZcT$oBOiM+;wel7j^+K -eg;iX|Q\>"Tlbh81hK]C|t ACŘw8j#a Q -j}5c} NI449t*X=ɖ3)۾NLfT|(Hd]<3р -;tAN;eHF<;@}@ynv} EFM:Hu}*d-9Sm;x4JKQUCSs'Qƃ>u'1$p7}Z}BR -US {@?QsPQs(Fkr-Cq!Q޴دFw'M]2L_\\g'*qgrc{<'hwD.9P+cU܇XT;|Y8C2cf;0nJGGL8GꦂEf!gŮn3_h*n4ۨoр&#Ͷ[IZ+vtm}PŦ!l#c:kά\,)QʈjQdOg4iX<V3?H攐;,&N1*7ELHGo'BxOM-s:ψG;æbQ_^/> }uZWrx^D4*f 3xd{UK+2tjz4Wa3@UAsG*":H[LlCv珝Ӓ2]\I|k"y|ʊ@{}PFRñ{1 Qֈzq>6um;4{vQG)䊌C Z%m0* `JI(gOTsP 3 7&=;3sL n;{| HS0f5QaGI%(^N G79|i;-h) bKY" qb(d{>\FC'+>3=:UF`麼'ń9ZR9aDz94'+t yfh?g0'qCqwa[x@ЇaeRr!'GL͏<(uP~;6^/Ljm42A]:pKN\!8Cj""@˰>8Gkž,&9-~]w95ɻ}wϳWh%'.B)N3! Yc.j1_ʙ;0xx-b9~{R8?A_pw /5[WvO۴#Zq-3- `!I3[иpYS^N< -VN)Z1mYĽk&N2'@!Dx0ajnFbfnPJqmbBPVmvףE-he>"iHDA ҿUoeD -x}`n0 :VT+wqdU&U,凫q]Ϗ`NC̎ou/Rt,O.vvNVHF -F"{W|H7'x۲"|BҞ# 5]CcߊNۻ~r>KПj`4`͂t,0O=v`=R`|KM19Y,l!ضT1=0QhL -{̀#Kc ,;l]hm3b9;m`i0EVD60t(UY̠:TZD,.q0TI- 6MBuoG5`#`HOs_:\.gܰNq'B:0 .;7FP|ag - n0AfNM{ *v/Afm:]m0>O/۠O\FJ&4搼x,O&}m2d ^N+C}iO} -zvpꦤ4n,L\D2LTH#|}NFA+mA<+٩؈J9[.=;uʐkm]GƂaɎFRɘ* -TAckX3~t xYrxm6}mNGl0>CVvW:&<{,,!j?ԁ%2&WTsbL2 Wbr#|]wGҋh'lUF礁^1uLOc#}@&{1U@ XGzq`kA|gy.Y 勞HYa8'P%tj}* ssd̻"*#]CL=FYE;,0]5ȑKQ9YU7:nu`5L; 3b) Ne6r#3BU .D+f+<сW-M%)4) --ڰ$2oH;i=14yU_!T"-N/C4MfMs9K[Җ?j̚Pq^K ?Y Du PF\VۗR@/)v{]R` ){[R`W¯qooTCpG)0y^l)y^6c^$ѩm)fxt`X5O-k|V4iM}-Y}.O,=(%O:bSxmnVյ^!-ܮxkۥD'א"Eb0a)‡mg+'Nyn$˚B(d͝ -A57{IQs ʶeNMDR g/4QΪCiL,t!?6{v>R{*o{aT"Y56_M6;wcslۉU{v"vˉ1|m“]{ XNl˾*&O}CiĄΆ㍖tgf;ytmVXX[MtUՑ6ȃ4->|SnyP8#!׼QZګ1/Q-޼Pzv\*n؊Mh xj o6?yZ6wY&_vrZՋw_/`Pd^"sfTqj:&ykv82j]pŭwip=p^ 0]ogw?>}ͷApC5cN绗Ͽٙ?қvveRA:p AP6 -w;*&ٍv -5ׄ^@jAݱsw4:زwETuigZpL۳]Ͻ -^.4(tSD;J/K[6lAvfHeaEФmoFB"ݞ.DЦ -Զ%B:xx`;N/?ưw.!KgtfOOO5UUkL2nbI/A}v.vz;W,`o:5a|꣍eYΒO/?|Z"߭^HfJ1:F[53udf?8绨`]{N4 4 Btlkl9^1 -ɵmKYLlß\E~g;vD0Fkwټ|vI_.^LkO7scRK'hpk;m&ڶOQ f$ΥGb!\'(4!bLIX&3è6 &OV_0 ='zGS/!7{K˩,Sg>*-OTTGO>@pJV=iQx81fܒ?;!G{*5_""`H/"u>Oo~}O}뻿{wonӯ^?ǟo~~mZQ.6N; -endstream -endobj - -4831 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 746.2134 101.63025 759.87537] - /Border [0 0 0] - /Dest 4498 0 R - /F 4 - /StructParent 134 - /Contents (Definition 5) ->> -endobj - -4832 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [426.6189 732.5514 483.94568 746.2134] - /Border [0 0 0] - /Dest 4499 0 R - /F 4 - /StructParent 135 - /Contents (Definition 7) ->> -endobj - -4833 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [173.22722 657.4414 184.22722 671.1034] - /Border [0 0 0] - /Dest 4500 0 R - /F 4 - /StructParent 136 - /Contents (40) ->> -endobj - -4834 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [260.59808 453.1714 318.8676 466.8334] - /Border [0 0 0] - /Dest 4499 0 R - /F 4 - /StructParent 137 - /Contents (Definition 7) ->> -endobj - -4835 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [118.39714 339.1854 178.22614 352.8474] - /Border [0 0 0] - /Dest (subsubsec:eff-composition) - /F 4 - /StructParent 138 - /Contents (Section 3.1.2) ->> -endobj - -4836 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4360 0 R - /f1 4384 0 R - /f2 4366 0 R - /f3 4378 0 R - /f4 4354 0 R - /f5 4372 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 139 - /Tabs /S - /Parent 1 0 R - /Contents 4837 0 R - /Annots [4831 0 R 4832 0 R 4833 0 R 4834 0 R 4835 0 R] ->> -endobj - -4837 0 obj -<< - /Length 7328 - /Filter /FlateDecode ->> -stream -x]Y~h-%#yPȡ[r>&eyCx>Bmh4êB"3HG?yqO6=>||۟+߾O7Ͽ|ʟ^l~'~O|O__?ܼxx n6/ޜ^.?^7EOo%Ef}y'x;rR('$W!=̩9n>짅hcMBp-v O{v|wv[y.GkjL"~ -4NЃpУ[[r>ִ 仇, -4N 65`м(ɥ(0%G$1Cܡ7kAb766ػ6 -η[[݆eaMޡe+t|SZkRfl)s4L!ˑ<T=&:sQw'f?<$Af7y,{چ}bO??;CY ":G:6~sq8ylп(WN ƖwCxpU@sEBd:ΗFW:4d/z]~+12"#QS9s(J>Bb[cyv QM,6\ӓ0̓L#Ӣ 6q*o(盻M8|yq}~3Kymvn/?A|&iY F褥͢#Cv/oZx_i'Osޒ]G [RúKn#2;{c9WfwZ>KO o.pqszp"\"[)l9 #84GS>/+:T}hTϜx:|K+1;ӘɎ>TglN 6\|2ifOlQ ZF\Bt@ܕq;*5` D i@L$gzjE%2P"5 8->J##B$ "VX{j]Uk129nvz da1MUgBgYNOp+4sZj. I2D@JL=LRV`9X!1BJM 23>QtcσIKsZ^BD6ބh, - ṞQu~^+tMPr+єasjdJ3f8_ȋB[QhKHII,NFGu"`'GfX^l=#E Ǔ¥M< p__9{-}NMj$I BZT}$q`$m5D=s7G鿞ӕkH2NQ*g Zo9ӪRI4jEX^R]9sJ=[ݣtմzr]y%6s's˩be UӸfDé. i AhQ#ӚѲgXʒj~cZԢ5LipĐK9*G dEXԪUszsuV$=Ygߓ-!U3βE$07dG -u1Kډˑ'Ye6ǘ&dHb?aq!P2DHAS#9`l]pSowXcƤ8.mfk;]=lx580Rjez -g*%74"A`l/f]L%`obϣf]mr,UxvU_:)|1j K&_|E|5T\VQ%g%Ҟ.n )jlѫ},lWSX[\֬k|RMD >8R#`r;Y\!u0&6,T O>4v)5"8 ÷dUs;bVK}Ԛ=0?%h2x?veֶ34wA+^;k0[2 U03yĐig*j&C)qHlҪ1V7KH Re%۴³"W;+<Nۮي>҇=' MD"ήO;'r"(L.+{Ix&39ݞŲ?>Atƕئ{&Z[#p / e*i͓^tK]m!Ф"6%/k 7~ pfo -br?WPXʮ֫Y_?mjV(i1i ˘+,]=qoMΨ{U>@7[:5P!ʚ+gZëy*$=j秆vf5GD;.,dVsT {xsj2obVCdu- -5Ɛ}-v9/!19Ls7]^_ |@__UW*[1WM_ikp UC1kBfĒPQ y%Q桅PA[lJ]tyҐ{]0םa9> AAE\؆j{<0T8<`'>ppPz=srCnO9utC|= ÐcPviJI )eYT_ B6|S}$`0` Fu z2t97b;ѕ8}|Knuc9:|KJ8lG|)SgPqntkגh2@*d@@Uj;"祺 -M.Ƙm18%)/#K1!@ͩ`.9q:U&&cpio,P9ȍB}/Lrp F%PR׺Aǂ/e-e`F'6 -LQhǐT0MDBrֺ :vcRH ܍tA1hEe0} -SYԓx@VևD=j8*Zfxc!05q_V3)-`xye\2NYlQqϪi))k25fi&"x -[1}n^<كN%vnZ8|ѾYk`ݮ侻pۍ۲g > -*u-i%b2#"-s=igղ#O&N5Ŕ2Z|NZjɜĄ) ee -vsmrgf\/bZnO?CU `ʪQr|{j)Yj&cT{]ha{lkzJ#$CxE؅.4TR `ʑGCf̔[gtm hW*O:Q4K}̛D)aytKIC_jͮ#/_ t}\eŢW5rI0}Rj_TRͳ1\Z65*J)Fr EؼLZur{|sTA2"m_T3-3*Ӱ/kٵxv^k&}{Mf~?{T+89D߯bǣo=xyV,w[B63v6kԮ31?AJH@bCH/9zk*x2Z:x"0=}5'GEVs\^w*kCL˧LҢ]>!pC (JMՂ L_,,-!=7[m_v Su=^ڙ*8QLio6tǝ$ -ry%$NiŞtX:ibIjj[G3o7fodV"v_uSiԱ-gh( lޫ=jU-'Ou!R̜l^Чy RE3D&]>>,ML/RstI 9:ςXNwvjq7poGpMo%c)=ӦNᅩ&x}uԋXQsG׳2դ= -V (oxȜ@W -Ӎ@Npjn'O_~s9"~=Ƙk?es6 bJGS/XnP5A}Fw{_N]7,;m鹁se*$+,*@s.]ߖĜrZ_ *Q.]06elf8msm9_XVMB[V'KIR5A4[g hՠ+EMSS*-#7X(zZTB4u?LHq7Y '5.}xuPJ5]A@IQs[4_ʸooRtx@oYS^jKZH*p< s !rOǠaU񹓆rgƅ 1yyو klev"ìb9mw]^MسJEd[U mQ)xL!/ݳi̺EC0frXkع1~HosD Z^Qzјxa/PߗிaPB(7 @+U -1mr#Z"B\\ >t{V)P(k;( 7^x+[!V W=LZս*J[ӭV1<nuLCxpnj`!}? &4/y0د@J-z K: 7჎+YVɁg.ثR(.IA(x^n:C,^܆ :eBI@R^,AMo}\y}DzmD뢣}/ 2iUKD΁')P$!Go~[/ j)PA?X``/ pK GcT -4 -sXs=.Z ǐ\L!.孿Aٰdpq@݀j(ĕj7 P W! <VU,Ճd,O f4%Q=p"iCD JBgۣa lyDࢿ"*G%ޅ*"|7QC9>΂h*&Qc t]T $3dEQ$'`7E\#qz3Mک(BiE]%6q[ h&ѣU(bK.48~4P*LR\Ppg(:c\`RyH%\s!Ւ!uX`.#V F zzRD\ -jB=z#53XPWKsKg= *X`XOR?_vЕ~¼6 F2.`MG]PHBu-ѸKWnS4̎QҎPaO=X9r}F*~` k钾K(ÎcNl U !iHjH}X+]d -ɹ)\^ !q -\zY^P֯MߵczwIgb36 =<=g?z||Oo?ǿzo_??ۗ?xǷj$'{,ζ9i;Zc -endstream -endobj - -4838 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [468.37003 476.86942 508.41824 490.5314] - /Border [0 0 0] - /Dest 4501 0 R - /F 4 - /StructParent 140 - /Contents (Figure 2) ->> -endobj - -4839 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [297.5414 449.5454 308.5414 463.2074] - /Border [0 0 0] - /Dest 4502 0 R - /F 4 - /StructParent 141 - /Contents (41) ->> -endobj - -4840 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4390 0 R - /f1 4384 0 R - /f2 4360 0 R - /f3 4354 0 R - /f4 4366 0 R - /f5 4378 0 R - /f6 4372 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 142 - /Tabs /S - /Parent 1 0 R - /Contents 4841 0 R - /Annots [4838 0 R 4839 0 R] ->> -endobj - -4841 0 obj -<< - /Length 6945 - /Filter /FlateDecode ->> -stream -x=kqW C9`D$p@&H" u"eQ@޽ٙ驙ݞ=2nog۟^>hu޾o?wO~y=^Mz?t77O>~o>=~ˋѾwu?;uD,;27__cwv=}Wu_ o_>#"}|:!,a Z@ۏ#!2!bDH_ D2|=j-rcZVOw)?~l~=ϷO:݇4}{O4#~01AfUΐb!Z$Cu ֻ#Sj V T)P©#6J$B' -8 msU{P{בzml:۹]x[@(m~?~(+Wv<ӑX QYA^*iYFlW#v87w9wN$U7H[C/ǑcdAk]ZBt 18k*:mE<5g' B\Ӄ_CTݎыEx/ dkֿ45h!H~M2ioОugQ)/"`{Ċ 6y+.ћ˭|A.?xQupeQ=u#b:I}t/v43LO\9!Wz;j<84UB!_\3ĸjH\fOanM;z$lJc,b%n`u< U?DXAA?,S<L$B~4֔.qȎlrQ60QV5#o -Ur@?V zM u28cv< -YpV( f"xd-@m4ܲGQX@T3@7Kճ ;) $ƄץCTt$dmO?.aI]&|3kBـ;Mq %x6@~k:.-k[J5(g0~>(n -!w. ᒪQŨ ?__=G%'Qk_se;ȀLUxn5/^(Mv2Y0TNfϛLm &<9 x޿@ |Jժ*ƁqNřߪ'΂ {A HgJ"7)ƙ6TUoJU52&߁i~iZU FxntUD#>A$mO?*$ࣵ/ @aD {8Mpx%>OVT_A]/NuY˼_Z@mз{,X:|[?AfEOCaI-9yTлE:z(AW5Qz]JfR.$8NJyUJH|u!"/f^x>ruFi_284ZSԹ zݷ7Xu碀3_P^^9l8{*A<7/ P4`cbФa EX4)\1{V$㥴״gdxdA5R T xP2*c`%ZHL4ѵNFvfm6A\mp\د[,up1ph-!/+Wռ)q) oZQPCg$ԓr 9M>VI~We*% 0r\a;յ/~~o/|I?p DdET -xk4U#HSQ`i\IGѱ?d̼61bPC61!X A5'/eę7 -K=#/mL?-m0y )! 6V^<.Bk0<!.MJ1%BPKXE* "bs\CeGE,u]2hZpzƐw9njBC]8g< Ƙ\Ʀg'iJf6eW4k|,XsVxfu~ʴvJU4@ -3kQ;.+JlDq5Lhjojd ͖܌<)J }TʹVp%\<,5k =vBOuC]*\5ӿ.z!J/"O΁Hܙy{W))8p;a)FJ-uMmI_V*$Fwu5S33u aeMn -ɣB!Ds0; -i&5U >NEHm4˓|OiZ 9V!Cו?8 .vZEL.CvM&iԌ;h&"nB;(o[wp^Պ=):!T__M XkRdNܳ=/4DXHsm֟Z6%#IJbkb:eu-Y2M"Y=O`TK*9,Mŕ9WaL}Uףnz^-UgBzގbjW 1:[J%Yr8Gv AiWQHГ`M2RˤO#Nnv>Y8FՕ+܅WgW'+qf)bpF,L; Y,x@56z'jͼ@V ɪ^Mf\tMzt>\M&CgRNwݳO37;aGCwJp -Dؽޥl":L%1xk?k rDw} -VIF5@g`GS)؆ Ӗ(qX%Z[zMX{גl[ 'b"l*n$Q Xk -᝴DJ'u+ -W#p P*}8U,r{#8لbC v)Quz7||e%몈A.a+sG(Q -:`.LyB`ψ zqL40Tb hVNdW"͘ ~9C !ثJ@4 -Hy\0 -as; { ȀH -/؏ jx=j/~$;8 '"6Ąd -AR'=+-z^ .DvI`GЇT)8 2ޙ82Gр.դO0v&1~?{zʖTxt*%{$h̸:zqvG"ٱԯ_{WT^đKdb~Ӂ$"/id/c[Z,`.VVxoELEQD,3Y Hd C`' "K-]%[EYK}Ȉ>R]$:&>>C#N9>\%䷌*"Kmi"I=$.28pΛ!p([Nßë~mjO)`|ۢh#X=n߁E0їkLY1{azTuR% FQ?(YJE; 6YM5I!T7S|mZơrfN? h*믐fOv<Tf/g -QCcZ`m^u:A: -؞oլx"U4#B., T~xv^nB AE*rFy5pHNY{KpJ<uLϾxek!>2tY'= Gf >+-أFQsBkRccct-Rbg%S3? -U'tggWY9w[) &"ON}=iXWCGmwtTowT%Ij,eVUoHh_dS22D*ff"2f9ZkKd#Tuz -C'۩Ιw\œu{zL]ls5 -: S j$t$`BM -^`Oz]1i7Y&r,L^mR{+J3 Rj{@&dua^%gniF -e>0銥3c.űZRٱ>e=jd_$bnU\d(5d"U!6A#UDiQ[t$,/I}RԤ."ip4z>:+fQ Dn0 -r6]yOگ3p)u' -:MJ52H[PVv&ݒsRf+ -Նs֧a{A Iy//>}\%QC!"ԾQ:Xi1@6HچӦn9&6eutDT1.MEL6/bXm9X?ڪɪ).5eߩL]HՖ?I 0R/l+kҘ$ L m@ @p7az>)n50WR@J6Բ[D@#s-(PjPDUFLȜ+~PQ}n@dmfD)*1Р\cI,Wm^}3ɑ[Y8sswnӪf6J]xIqeU@Ij?ً__7n&X,϶ƥ`r_$M!gAQUdp$^ת7UGgk/Vmz"7*֙P8mUfM`&f'a$ pGUwht`8;" WDznEqp$솃p-Xf7oVhݥ%InUeCt%g5"іoF@ZSibsO+T)=QTg59UK՛FY/z"Ֆl B FQ^B`Y@&*s>X2RB˔[wV)N"Y\FV}im%B9]7( xطk"X>_Q`WEBf_f%520;9&>54I0/y&ʸ,-ÝkNwqy -gwz+Wr9 - 0/] -aCSY?mSr^ 1O qhڥdKpv~ثƜEsO\HyjHjlpy^xf=)L=ՀD AF=`V.>V;e`-n/*ȴŵ# x)r ZJ/Y~#F:P> -endobj - -4843 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [467.11914 178.77362 506.78516 192.43561] - /Border [0 0 0] - /Dest 4504 0 R - /F 4 - /StructParent 144 - /Contents (Figure 4) ->> -endobj - -4844 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4360 0 R - /f1 4366 0 R - /f2 4384 0 R - /f3 4378 0 R - /f4 4372 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 145 - /Tabs /S - /Parent 1 0 R - /Contents 4845 0 R - /Annots [4842 0 R 4843 0 R] ->> -endobj - -4845 0 obj -<< - /Length 5807 - /Filter /FlateDecode ->> -stream -x=]7n+g;u"GI*wuvҾٮz-NI+go}uS Mrgz;"<~zۇ6]O~y|W/竛^ǯ绛m<}|ŗ7_rs;Q(kIwN`uwvۿnuׯǗ뷛o>EƫD{= -mv~I+mQ:2ç~h& w% |~H>Ri̲8NE{]wכ9oݕ xd[q?Cw0U|Y@Qq$> s~1.JWݣ) ͹gnǰMV|Jܖ"vqʦ-:r!S3 =$&鷽Jb.1VN0-BF1^v^u[n$4{2S ބ2tn*fz+߃7V ި@@+  `n5PNyĆ2i^^LwT eO co% 6Sѝx4FJIjګ((Y\BVQB)?ERH5x;G+Iu`4;%QLOۻ|Q›:0S (߭TٿŻS_[PAEz<ó'e,`/=K>|Ϣ;kIiv}tGmS|IiE`U u%]yy<ӒFr`zU$EP_ $~^-J=ӾhQy+eV^z.u()_I1v|o$gЃо*$ Oxnkyu쫌/ɼ`i}90$Ajua$Z(f:^x!Q(Z%e92q8y1?$K>J RZJ%bA+мn'Fk8!4xMZ##5b`),͏iK9Mc_uj<')1-GjMVYW WiVHOFXV~+:FNleo 9 3XMQ,Us*\N[㑙tScqy^HihN $[4qThbU3+GTc#x NoS:=R5P;PX35/=5eL>=5wIL@׈$1UdIN2M<")X Uo͎LUe"' P-)>VQx2_ځ5ht/ 龤d$ѢE Y͏2 4ju]Vfh^)+JO %-kE\'?DZ9@e"tƚȉ'}Ɓsw]d#7t-x"_a1&:4:~q?.eѪf|CXbj?u9UvMODXY5]hTp39u5V -CIqXVMNL.JCy>?yti?HKօ [G0HN„y6>̀!"0<nؓA''ƳԊ_>_= 25R)J\a z*(@pp>;-9ʀGyy#E\ )>(*̲Dt7 HDG.Ě_tijG0Wa;rڳ/+ :m:Q/7vu/ݗq -;Thnpo6/<ۤlǓ7Xs19gG앱ʺn{PKt Y)m\G`ɑ#!`awۀӀtP`!U/Ru8x !eu =mT6A6^ A c!Fe4h|EG6F b.7E༵?l]M`;CX*xV8\ hڙ<Vs5ÛPU L?pu4kbSmkjX/.7x"1/DbgfDd}L-Q8T`83Wcb4Tq1%CX2>J0dՙ aQϬ_U4eM~9TcATV7q*뛵PU8TT8aY'U :g4hU: -jS9b;+ĶvgeY8bWǿgCbS.ڈs~Vkܟ~]N賻6rwsAFn`N^طMᲢy|.k;7\T5gwnk.bӪs -΍*k;7r.e١:R T:b ?'<;TPY <E9m=;T7YYԈ]*( 8TEبb_ PW8b -Fi+٠pVnp.b4v$8-iEPu:Gl;JA^ D]L Be&D핎{\¡wv!zw/D_T=C^ 1,iwɓ![!jT9F Џ=ۗfLo~zM7[#0PѱZMąAkr1t8bK|3c8BUn JK憮䟕TL>Ka"nOPgjfLJ%rJ/vFsl*akm2Ty^cV~m֬uVE>^Bjn^a@:-y߄XZ8ҫj3vH`5UN+eY$8N}y -gxeu꟥.K!jԸ)Nf]]( ,"t쏨"P)6FXYr9eU3s~luSispb,Ys45Mg]&lV&W| -ݰ6Mh^cҞ+32sT5u< 0%PD&e$EԺNqgiBH6r:mt'71>Ĉb O>b%6EhHUX:%˟n4v]vUpbFj-OIlN6LZ/'EoV+m4UKl M r@ ֊Ӧ=m,>$=5]eqPwZH\5Gwʋ>ѩEHϟ]@aA]˺adq,q@"}5~9-/^_m~z$ŬC0W_|T&¡;Y(Ad:sPڧĦCxЯǴװODqG7[|v;DGI&Jի6瞵OJ1Q<'XU1tRo4^K^^ Gah2CDd1&,6drx%cd71vOZDF Օ-g7^\KzΞeIY-Cd\a486`#?/)C'al1#,`ɌGj7t_xӸxy|܂!ٙ[kaf,C|ђ|~ZnߎbQcqxAAl&NK8j- GGUqGdJv`B!DN9݅]<ޓ߿gXOoRߠƮ* -󜞤VD&}IB"N۫ Kr\ӌw%J:i ges,(2R9L;or^mܟNȩ؀̞m\Ե{%/sq]l&^&ƋCHX6"wQDžBCb]t1u \[j>vw -'V1@퉨{@sto=-jO8$_yo-j_=ܮV@`m7DB7cT6ؓ$ovڱ7o _#TTJbCGOl8A>t!y9_<ߋ${2\-A::^Gπ>d2ҭ*kIbQxzYƩz"&2%^LMV NE^ %xەJys(/a=5VAQ89:;cЂ1i lo{x7{xx_//޽{xu~ǟn~~w'v%}9m&SVGM O4 -endstream -endobj - -4846 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [213.19614 398.77203 265.11087 412.43402] - /Border [0 0 0] - /Dest (subsec:component-lifecycle) - /F 4 - /StructParent 146 - /Contents (Section 3.3) ->> -endobj - -4847 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [249.16646 313.135 300.0526 326.797] - /Border [0 0 0] - /Dest (subsec:revertible-effects) - /F 4 - /StructParent 147 - /Contents (Section 3.1) ->> -endobj - -4848 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - /c1 4403 0 R - >> - /Font << - /f0 4378 0 R - /f1 4396 0 R - /f2 4360 0 R - /f3 4354 0 R - /f4 4384 0 R - /f5 4372 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 148 - /Tabs /S - /Parent 1 0 R - /Contents 4849 0 R - /Annots [4846 0 R 4847 0 R] ->> -endobj - -4849 0 obj -<< - /Length 5170 - /Filter /FlateDecode ->> -stream -x]ݓ7nU]KHe*j-JI+eo\)L&N*v # x~]\=onySO?^zOoo>t}}}e绯Z|l.o! RխlIalv~w1͇lPgЃ/M6WV$/ Cy_%l>  VJT@xD)&5(U£NS {4$4O )u`VEɃYgS/-FQs-yW6VګAaX2xO~zbkE q'jaIFaHM7:ràZP$+(; fqC@WCW|5P pu;麃R]ct X e Cy{^YޑCpHL AN_Yf0CfJѭʯ~tTr0N|l)*v*u-qC Y#^@' G4z)ȢV>(g* &B+uPp(ΊWl[e|]I`Zj P ۿ.%x#]ۻI}×tـl rΡDhv@ZI a_A}zꛐ>_vXn~y~ٺC^Z'"Ƃa恋Ϯw]ko>%|%I>iN6yNˋ?. -"#zr$9mNʈZO@_ q(ZU35 A"O ' N'I3$1e(,J3 $Gz.DA(n3J1Rob iJA|#Nj)R-j1'4<'64E%{KE#^Ij{| 9% ;<[նV]7Ս]_쐠5[4d eA%Rb]V9X!DC|s7%ÇFdJYp"}V -%-a/.n޽~RQ]4pl_>eNj(oɴOAw,sOkt-K C}gC6z5[˖%R=GBwn垘vf&J!a<IeLB9ۘ,'a_LN -cF3QϹv -IHmr(A4t"V30. {f + 濔z`q_e AN`%'e+g ha%jXF?2u5ǓpyϯZZCohTBj!GТidHh6p7Z<(jřv@h7-[Y6ʐ t._&5vzm. -!iB)we֏Jފ  -Li$ A䘋RPA!m6(Pk -?~B6dZ!Dž\B['3VGkbKuJ:eAWZfX_ 8ƯLl,K1GOOC/]BRMA~V{HXPPRHP<{?c 4 MbEbFu -68HG3>3,i\N7Ztv#=GM3~T==_1at4]4g:loVU (qM4 gj<7&lz:n$ŚgfJ,G)O\ґA6[jqjDv7pԧ@uU^.jҜ9oB *cj%KM>a.e=08d4qjԲN_XwɁM9 -iJh?i)q#. YaIև[!h.)E,3iJ:%Z,G ψ\!ڊ'X Xi<4MbB-uHuvRS.~15U9T@]/F-q ͒5U V\ "(Tp1h(m)Ƨ$[xSփlqrU’"뽃t.o)+"sIg=7rN%Y"nP"30eJn^蝡RS ,xIdH%7hdNjG^h󮪭s jܟ|:+sn\1`M$Yߏ -V{- Zo3oTN9 NYO>wo|v&pg}%Ox#ƌk C4J;RzF:Ĥp?YJ8AH(%öV{9Tw"v&n`D"іe:9(* u &`5e*]4wZ";{a8aֿ0 *$7S% I) Yx( %yq @͇W(Jj|XxS^1lCՂN<>j_0N[̼&"m)^^\,x,%alp'IHMG,O27yKHPޭP76T{3xwҲl`5b@8~~fֈey[! s:}*8)F4+ΪjC^ؘ*+Z>7х59ŜKrQc930ƣ#|ԇ,S͕nLqn] -l;TBk_T!'Z(bJh)|4o"Q -dSł7wJ [!6ôrDhg-bRi4Zhe1H*E@"+ٟIG>$zF:i((CpHzs0#8Amcr4|!S?[}2IaS3eƖ%ҡ + 9r"= CɽIٱ*ʇj׳t@MR -5E"y@BZ e6W~ >g#m4ðոBZOU{>[pD[Ra Yzp0W$ H#ARw%Ш6!mN%R{T4j ޜԡJ8 XABWtL~Rq,>v_'x&\l4`rYmtZ qHZɁ#>8rofa"P} a)Hi(fH'6ƛ$MlfA0[2p.Ze3+uWU,{b{sі۽Ź2[u"zYHrg)4- ƭu{ IJ{)ٲR't[T,_}@6;CگcbR\y<[YuE_ gbdq+!lQH:8Hcpݶkݤen?ȴd&-.2(EƮ @rpSm׆BQ Y}6wWB!q`Ƶecg(Uu;VfW.dָ\R`oR!v"M%؉ӶꄂjXxdGD +νNfUOG$qǹ'O'O4K lPEk^ -Vզ> $MSc8Ouc|~@TMV6tj؋ **YIV{k -CmAo5!YU}#A9I`w[{٫: iaY#e JQ-u.mĻJÔfyep.T̵H54)0gU-[}npd9RQX% -ܹ%$v\]-#xQ}foLlªaǚU7E&:'l8'@έZd:|)5%{\wFQxf׃a*+x܅#6z' М(Oo 0Y]1;E{ZW|sơE2mkG-EpHϓ3{ %ЦM2:74Z0~D Mnح'Q^O2JBnvF[ա0Z32>m=Kj>m-1*VO)Hkkx~ g] U+wr:B܆4n{*S̷SEI!~_)0l;N+ ԾXh>qV7ۛ}> -endobj - -4851 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [107.86602 297.10602 118.86602 310.768] - /Border [0 0 0] - /Dest 4478 0 R - /F 4 - /StructParent 150 - /Contents (22) ->> -endobj - -4852 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4360 0 R - /f1 4354 0 R - /f2 4384 0 R - /f3 4366 0 R - /f4 4372 0 R - /f5 4378 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 151 - /Tabs /S - /Parent 1 0 R - /Contents 4853 0 R - /Annots [4850 0 R 4851 0 R] ->> -endobj - -4853 0 obj -<< - /Length 5365 - /Filter /FlateDecode ->> -stream -x=ks+G QSN~9ĬbEKR畏YW]n0w1@/kn_>߿w|ru//?_}?y~ǷWw~ŋ?.n~7g?^NvQ]"zllD=|q \O.dwxqNvJuwNw?_|凜Kǿ%6￑WOQ2 -eaugAnRjUbZs(8i&ig '–{ob em&c;=.1 ,:^)>G{|#Xd4/+_ 襱+ -5pMB:/t4k4k N;v=1J$l1ӛIRgY ްZT/w+)_~bA¸p4ÿVb6X*d޽ h NPGn. Ͽ _ <0%_4X*cXMi9K^xg<_1W<]2SR\HW/ʐAilD&SFғv8ʀ{efrl32f̯y{ {eL 4v,G8#RڧOrՏ',R>n…u=V_XwṄƐaslY>%ʱS\Ⱥ;n|nj`8$i/]<:F8f~.w75Zߐy(#)>ʧljOAk5Z8ɘTW 6:κM#! l:W,i Ӕc.MiфhHYC!TJvMpoq֊1֬VqW.*^&NA Tc_"Mrwt8ojw'T6H{ -w<崉|hW csu":K3dFvdfRgi:>a2%tXӵgh̥!:Mp'FDJ)H"eiŲyz%nI٬AGrwyǜgVvf íf{O;P!TyCs"XT&=\jꪗ;TH L ~an{iQvguk, IڬrE%CǵߟBdbH@1C{$=Y6+\2P4Fqo1j[jnP/tėb`6qJxg.*T$_ -DE̚ORC4XdϯOa;i͝ڒZאQ߂0Z.U kc9V=m\d35T HnqQ gFGX< Kf*N&h 9k)qGQ":F==̌V }Xz/B,f!jR7< -ay)LRj7[j](p;e-gAhT؎ Tsj T_,Ӳ8L(cUxF"IE yw2a18.aBteX֟2+CfcCɨGfc)^(`T͑[D*S0XNO&]V2RA{[P/ -Zί)SAhw~8ŠSݲ rtއ_A5#YMZ -Go!H;θkA^)8Q+[jIZ-=\0ʈ\āW Q4I3s^x)tejX#:lΕ3S n8[r#ZWuE-c vHxSpML(bb ԹÀFD4 -n@;J-iL쳿ǀ2W+A@_CGN(6Y`] 0iD47AKh{6'|Lۀ3)RGۋ˦%4h|A\z=3G4 Cω+ןrs#&s W$GYaT8IߌuZ!3ښ,wYhH)u[dA -)$5^ZVN;퍖"i$}OèVO'UN[t4M.k) I;̇dX`fYд46x\ja M)VsE$:hr#Bs W NbTH(Ifsd?OE~qR8 ڗ顠EE) - V֪gNRp̑G`ز 8XSs+o+oyDsHRS_!O"D/ժ* -l"vX7$aD#XM#8 1 \̙m5!o}.X#±0tUk O -넍:I)GVM5F(m>ejE3(p\%bUDHFގ1f$ML8'5.x-v/`|k -y9F0ʩqrxc ђ6D{NydžVM -ճxl - ,_\)Lۖ4Vo20mI\<"upEV@ýz+`7g2B -;a0 ⾬EK$A a[FJPSx)rkS;s yNX:βც=6Vҭ`J&s5"P`o8TN& -K[XF0an C{VOR|*G\Y#][6D@RAS10;0"fiaF7E#&my@5JR҇E y` L-uLeA?̻] k'N}: {1Z3əشbMY8`eVyӞI)y9xYlOSOvQ}H߸aـfQ}2B'*ɩxx|p%̞D~dqѣn+k෧)IqAtD].HO&Le4d/> -endobj - -4855 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [467.71432 582.3314 518.84344 595.9934] - /Border [0 0 0] - /Dest (subsec:reactive-coeffects) - /F 4 - /StructParent 153 - /Contents (Section 3.2) ->> -endobj - -4856 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [407.13937 469.5504 452.5994 483.2124] - /Border [0 0 0] - /Dest (sec:theory) - /F 4 - /StructParent 154 - /Contents (Section 3) ->> -endobj - -4857 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [468.31793 414.9024 519.39343 428.5644] - /Border [0 0 0] - /Dest (subsec:core-impl) - /F 4 - /StructParent 155 - /Contents (Section 4.1) ->> -endobj - -4858 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [465.84985 401.2404 519.39343 414.9024] - /Border [0 0 0] - /Dest (subsec:loader-hmr) - /F 4 - /StructParent 156 - /Contents (Section 4.2) ->> -endobj - -4859 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [213.6029 373.9164 267.18137 387.5784] - /Border [0 0 0] - /Dest (subsec:koishi) - /F 4 - /StructParent 157 - /Contents (Section 4.3) ->> -endobj - -4860 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 299.3614 107.09487 313.02338] - /Border [0 0 0] - /Dest 4505 0 R - /F 4 - /StructParent 158 - /Contents (Table 1) ->> -endobj - -4861 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [184.06622 210.58942 235.26276 224.2514] - /Border [0 0 0] - /Dest (subsec:component-lifecycle) - /F 4 - /StructParent 159 - /Contents (Section 3.3) ->> -endobj - -4862 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [218.00346 155.9414 281.07553 169.6034] - /Border [0 0 0] - /Dest 4506 0 R - /F 4 - /StructParent 160 - /Contents (Definition 25) ->> -endobj - -4863 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [489.91193 128.61737 524.4094 142.27942] - /Border [0 0 0] - /Dest 4505 0 R - /F 4 - /StructParent 161 - /Contents (Table 1) ->> -endobj - -4864 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4360 0 R - /f1 4354 0 R - /f2 4366 0 R - /f3 4378 0 R - /f4 4384 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 162 - /Tabs /S - /Parent 1 0 R - /Contents 4865 0 R - /Annots [4854 0 R 4855 0 R 4856 0 R 4857 0 R 4858 0 R 4859 0 R 4860 0 R 4861 0 R 4862 0 R 4863 0 R] ->> -endobj - -4865 0 obj -<< - /Length 5456 - /Filter /FlateDecode ->> -stream -xr_14eǫ "ۺRv|@ҤTL):}j;3@ < -I }qnj=yrug϶ۋ=;WzuwW?}ۋ훷GOv}>?:~>ELJHtݩgZ;磳+]rĻ_n>;? o>8qiL7T%&2G %6ݩ0/~t\vMA禡e>d() LGL5 ^w7#먔#E 15)ǥ8ݦtRlqRG6)TM=(o8S(Qh[s$Zu+f5ɉQ9(,18kKr"0A"O).6rEL5jA 13˹'qNfwW"tC4=~7 ؟B'>ƦZnHF'I@HL̺O G5TFA uՔZ |nP$% J Ngi=՞m:8"JQyV .0rZVSM)_d7`>~Db>]vrnI 0b[){<8 Uɷ`⩅pDdBr \4/Et5sUbfI$ǰ >:ʪ|CkvAx~'&>Cl3#}3:+j ɖA j0j)oZi2EWsXL\4&Ea3.PtGW3Η>2a-S!?뎴e37a\r@rJYDX?Q,8!`c!@ d$*%Sc`+c!>G/@3W=)2ĒJ)D3W+̌ge҅1$?ӤfH.L` -e8viA Ğ-|H:^Gfaa,G 2 uX$b@FG2j HɜTLϮ^ɋ/^p싧1mHjɢ +$~I s2- WpŌ gc=%>(~rY$p]?wpo)뽬0`5 [ j ڔk =ꆰV)i\WUi2Y̜z-29hB`\xEXv5 |{ p:O"ql<㌷g`&KB`W5KIu[`9IQ ";4`|YŎak`1FϿ]T1 Ȥ)cy?Xh<ǔpu oxTfİ7YDX`^_  WɔffPt(BQ7԰9\E(6"K U!23^C@c6N0G"8G ՀL98GvP$΋KժTCV(Y_ s&ԩ*q-cBG&R#b DIqpE{{@6[ .|LGMqI}n.P*%Et$3άvA1'tJDপdNpݧ׷ &-5DM4g I\Kҥ^}_'b1Qʮ=, h'J>]hā;&TPn ?(5vVRK,Ƞd&UW 0_8JڢP &#x`$Y - -qřGjhz -Xv8c^Q72F7#iboT kRyܠ4jObI |?OѐP1k0;X.A*UL+̻>HCn4܋%} FQHWA`Z**miОQdq=N^^=t}W6!lI4&`PHp:-*sV>O,aIuKgf**pr'8qx ۺd7ޚ {h%aE'9*1Ds&J#0 -M 7hc!K Fv+&AS*PUg 5xϬ>-[+_-X3]Lk'KaD>=e843̑KrQ=- -RQ 0S&Km'.@l 0fTQ]-G^\~)hu+N@_Nܫ j!ʻI?qk f8'\VQ ƍr ]Ѷ -)ZC*]ͨAWX4͈TPz M"R~\3i>Wӷi(<oy U\}Ri,ͨEoC -/UPSY&)mlc͠s\ ]E2!T0F*X߬a^oVPHi7;=5mMZ*pf5$ -)&tp8|FDr~NAWB:^`C`MF\JA%kS{Ip"gXGqviLΫץ' ֎dSh/}fk'Ng۾Bɐph40'v- {,d3HW=. <(R(f @ub:UtuLxΠO(sK5ٽ s[2 wVeE~5f>=d-ﵱLWe)pGQ1jI!}]dJAc, N^"l0%ȵB*qa"l8TfJ(t_I4Wqɔ_΃F]vH[ 1{+n\e_Wo$d`p%o˖] HDLenI}UI˞T[6`6}l7ska1_x͸RC0ҍ (äή(ؓ\lD9ڒ.bdPeo̩1Q-Z깪[ט CлIRMInMOC 36k)}$x&V{-Cf<V޺Ԧ!&}҇GNRSS dMEt?j/;b<4 NYٲJdG="ߝ}mGXHMό"A{n3?Tu)$oM TʯU+ŒB2掠ˑ򪈙J r.Qk]Bim}wqj;TNB~0|$NX.z}Z ̫Q3i̹IAx{3BF#?3esv3^˵ -Z^=j;L! ZжT`v>{]bqItkL:=WKgE9ͪbI#W&dt=;ZV>~%,KWG_6t%QcB.u%T{[yPr&H_=QU;=\i؄SWYB]yKLc^'G5vK>%saJg/Tf3baV,p57rJUμ:֑!ZyІ)08?Z-}? ʮ.lvX )--3J6i7# d(WQ%a;as׌a$\!ĿU0ѧgV>ֻ}ycHCzI?S>$PZ& kb/U+񂢮,H6P^ /C -%nj:Zdc{d$qmùMXեgA- sS[ةur-z3 -T[;B]Q8.G +&l6ZGv3Kpi :0yoĸh{d ^;9|ԫCua9Irk%bӣ1-L8"õ -^E; $7M@utlYz ߲K> DPkd KU;Is`a -N=bI#{: s_{[A ^=EO=K6Sm\\m0v{qݷgn}o~;{__b-ߐL(;#XƄ5xtU]4 -endstream -endobj - -4866 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [180.62326 741.2904 222.00327 753.6004] - /Border [0 0 0] - /Dest (sec:theory) - /F 4 - /StructParent 163 - /Contents (Section 3) ->> -endobj - -4867 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [463.0277 515.1334 524.4094 528.7954] - /Border [0 0 0] - /Dest (subsubsec:effect-api) - /F 4 - /StructParent 164 - /Contents (Section 4.1.1) ->> -endobj - -4868 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [464.3611 501.4714 524.4094 515.1334] - /Border [0 0 0] - /Dest (subsubsec:coeffect-api) - /F 4 - /StructParent 165 - /Contents (Section 4.1.2) ->> -endobj - -4869 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [229.18156 487.8094 288.63504 501.4714] - /Border [0 0 0] - /Dest (subsubsec:component-api) - /F 4 - /StructParent 166 - /Contents (Section 4.1.3) ->> -endobj - -4870 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 474.1474 130.69514 487.8094] - /Border [0 0 0] - /Dest (subsubsec:context-access) - /F 4 - /StructParent 167 - /Contents (Section 4.1.4) ->> -endobj - -4871 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [263.94278 415.8344 316.6733 429.4964] - /Border [0 0 0] - /Dest (subsec:revertible-effects) - /F 4 - /StructParent 168 - /Contents (Section 3.1) ->> -endobj - -4872 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [346.99957 361.1864 411.01254 374.8484] - /Border [0 0 0] - /Dest 4507 0 R - /F 4 - /StructParent 169 - /Contents (Definition 23) ->> -endobj - -4873 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [87.36614 286.07642 146.54327 299.7384] - /Border [0 0 0] - /Dest 4508 0 R - /F 4 - /StructParent 170 - /Contents (Algorithm 1) ->> -endobj - -4874 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4354 0 R - /f1 4384 0 R - /f2 4378 0 R - /f3 4360 0 R - /f4 4372 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 171 - /Tabs /S - /Parent 1 0 R - /Contents 4875 0 R - /Annots [4866 0 R 4867 0 R 4868 0 R 4869 0 R 4870 0 R 4871 0 R 4872 0 R 4873 0 R] ->> -endobj - -4875 0 obj -<< - /Length 5323 - /Filter /FlateDecode ->> -stream -x]K(ZW-97`k i[ԮLEaH7ġvܲ~]]ThR<̰{DC\=?y}|i/|}ͻ_]_5WO_~>~usonoy'<{[|vJJ)Q7/^bzwN7v; hl~]`qƂ7$?P0ƀ)\|{w'_|n tHZ#`+>=asszۏ#U%ќ~}Ps2fb#Xy?OV-!]#m _J +77[`Eh 'VT/\*E"ɧNUtFA^[QsDސ h0(n)-GLۖZH[64~N# 1ʪwR <)Q:|1#Ow0IURp@ݽn}IZlY<2Be k0H\B%{$'@ D|k]EȸzNVŷa1;ףV(j+ijcŔCmrggÁ'?I6zijy^Fks9!>07]] $9;E"5An ->(wS[ -d\t hCFnyj.pX4圠mi{<8-s -KzsՓ#޹ 0v[2;.s 12=X[Q&jtbv RfIɬ+z>+2Δ1T{kqsJ8._ĕd7Vtciw"MN+3d|^!`6%LR >Xc+^)%ǔs2y~*SXk!`JULB3jO.̰ MDՋnyU{(謯 &y`QyCkܩr3*3/&[2_&F %F TXN=z:qR -ôžhy3'QnNLtOA))gc&(:e (h Վ -=q\F-l? I6 l<\D/h,¬WM ٬@͈'qII]]ьXPU:ƺJ dѳ˟ Uâ*kJX׳mO_5A!14;h{T8 _tle``Ն`A l*0ܜ$R-sii48k1:oQT?. tEtsST{.\m61{a?KF`Z, eRyճ=qXk -VCl~0'YRKZ=11z`f:)KAHjB,6D;F*vg89 -BװG  뇱wE̜{YNO 3s#$9qy+k/Dj_#kQY{+y, Qփ&9E&F%@ bɣ +l|W*m!`z<g&D{Ӗγ yAlXhΙCLAyQS1~zd -.'HBDNh*#}#0o,f6h7X/x)wpDR OV6dK~ѠBn1 -:%ME@DSٽ3{"vRߢ$¤;`3ԙKq@N:rŜW}B-eUy5 8ACpYkLQr5!}G65B\GZ~"} ;j*ULATKt"y"4J6}{<ƈR9L-c S՛w S^ /&چő[ds')3@0ۗf+rjGx '1V*1Hmn+@keTQ!KȆN5qH?m,OKCJ6R/'͒TSɷ+*Kanؑ:ֵ@Vxkko#]tԸFU0S@0J5|o&I&_@v /ʐ>@b}J^<YЈ.72'2s+grJu^[sSaǮ'縷8 *pxl .PeS[KBo{`ycD\W%fZRr1LʖG_}|{w_^^ǯnͻ;2=S> -endobj - -4877 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [311.19995 572.0674 370.8978 585.7294] - /Border [0 0 0] - /Dest (subsubsec:lifecycle-iteration) - /F 4 - /StructParent 173 - /Contents (Section 3.3.2) ->> -endobj - -4878 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [197.09962 524.2814 261.27277 537.94336] - /Border [0 0 0] - /Dest 4510 0 R - /F 4 - /StructParent 174 - /Contents (Definition 21) ->> -endobj - -4879 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [408.45615 469.6334 468.06592 483.2954] - /Border [0 0 0] - /Dest (subsubsec:component-api) - /F 4 - /StructParent 175 - /Contents (Section 4.1.3) ->> -endobj - -4880 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [258.05804 397.6584 309.11444 411.3204] - /Border [0 0 0] - /Dest (subsec:reactive-coeffects) - /F 4 - /StructParent 176 - /Contents (Section 3.2) ->> -endobj - -4881 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [75.88214 308.8864 134.90927 322.5484] - /Border [0 0 0] - /Dest 4511 0 R - /F 4 - /StructParent 177 - /Contents (Algorithm 2) ->> -endobj - -4882 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [363.2142 220.11438 415.47824 233.77643] - /Border [0 0 0] - /Dest (subsec:revertible-effects) - /F 4 - /StructParent 178 - /Contents (Section 3.1) ->> -endobj - -4883 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [402.55 206.4524 463.17172 220.11438] - /Border [0 0 0] - /Dest 4511 0 R - /F 4 - /StructParent 179 - /Contents (Algorithm 2) ->> -endobj - -4884 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4360 0 R - /f1 4384 0 R - /f2 4354 0 R - /f3 4378 0 R - /f4 4372 0 R - /f5 4366 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 180 - /Tabs /S - /Parent 1 0 R - /Contents 4885 0 R - /Annots [4876 0 R 4877 0 R 4878 0 R 4879 0 R 4880 0 R 4881 0 R 4882 0 R 4883 0 R] ->> -endobj - -4885 0 obj -<< - /Length 6976 - /Filter /FlateDecode ->> -stream -x=]s$5i)#bx c`a޸*UR*yUR*ߙJ]vwO/?~H_~7w髗/vCO/|zO/z;թJw^ApNS筃`u^\V]owS{{o~#k1/VA5*p{;F㉇oUiEDj -^< A{h ׋8LJWN`5P;ُcOo׌ bo^v;_ѩxtzF//TVu{y{z7x⻏WJ}^|+B3@h=ljY(*>Tt~Wt|g,:mk }g˿&7br 9vy &jnO~r١:ϿY4jܑ=d\rqKt7ehc -?P抜jtO}s'2 -%D)S^O -?oE RՒ Nqo+c'?1H4H4V!Q;(d́dL5-$s":Q{dV6'BFjq, U:ҜbDMu%tK8P,MP;pj5Jyب4<[dl}'g(3YI %XKeF='5v6UU#/2=KxXX}B|Qnz * -3!2ф=™"qY}!W(Af^YvX\h:24$!ͰkCĺZ1-cK^[0[ꉋklගo"Q\ {82vkc~T5CHEW٥b2>h* -=,e9;R`:ԑz+%pF2QqFcyl;d 3,h.i_\Q;]QByf IUHm%RjV\ErZOՠq5zo$p؊ztSa`s܉~_bNWkPiE@>mvvF6 -ַl'|uPmo/W9FOXCU"R[/:ST+O֙Yxq7tla3T0ՖlY8F)P=υ -0=vwn8BXxzƁ ) ?3xTL#FC,mbCF5eVVmƆ>\$ -Vd#΃Vl Rfg@)9͛WwlebtN:`C=@eT),n}"a>H6Xv\*nI PG)E.RF6ЮŔQN,n'gΏ͙w6'y5QB0?61g`̹,jIT -:HyBUo c+^pxa|m$Ɉd\t>[{h1%y8CWO ^OlK//<)!]vfKf>l a5Q٤*WѳYfFKn &Z".LuF0xYlܺ+zoǢ  6/ycwBA 4V(K]b8QA޹}hMl(v(F\ Duj\2&?M [< -te7W/Y7qf.D] ld֤AK%=m.9 k,(<,pFy@X-'ں&NjUH(K!iێ#=?l@iRy)H"An BuI\TWr&ʌ2gz2C3nqh<RȦnC³ -H>T\結 ؾgB;-1+ovOeڈ9c8tǭ]l{&c!PJlЕYSfJSBIw%}ɳawK@7s;6EJ rj!rƥ:%[ws!JַA -=zpC:l*rT ﱕyJ%6ʖ&΋Nɉ J $y΋Wb;X' )>X㺲SJ5Gg1@/|gq y -5x)~Ɉ !:xe?4,@`c|&ַ`C|&큲M{RAKk۷=_^[D6NzfE4oqD3]܈sr}v[!D V_נx;?d#cj C/g )v`56 ڈ#O$ M6A -ֵG>aŵ;#~/^4.%N;iDxg*/[0hlA`t`b[~eKސU={1IՓeéz^?G7&CG1>K3zbWctJ-5)h@湺ؤ.b[ e{be#{z VG4-W 48> g;78Y*r摶`OD.( & -{EDꨧ`~YKW>@ S YC / 1~d7 (kPcW Ş5VeqDi+ܪ{,ӿ?{E$B.  6]+^js쫚3 ׭wh2).Ke'ogJCD,c="6faEʶ_K%LH-c̦ی$r@4n&*@e -X :;Q F5)dR`Q-(j.[11!2N? -!- m!bE!d }MBbDV[ Ȋ MӱT@6J2-tIFr -I6{$kC T {ˤ7dƵH@*YÃ3"ns(ƥ>Zp._yB5sY[⡌KVBtapRUͶM#GoQ<>ε\vf5q -QdSMʓm.IM]swONVʓހb`$&9-˙1|Y@ٔD* ŧ0z wI,f⪲Xtzܛv]$(֡ǐqlMiB* NG@!VmgCRșǐlGG1)$IɔajGDg؆jVVҨA l3[`<`&&½ZWN_a4f,Ĵk9O4q.QXsF(Ӯ+KH8+]ޞ+zL鮈qWڻyw܊1&rf5Wz(Ж.8˞:eQl*&_,-O}H +ss֩HJMV57kp[YI'т -9\Ek +/ߞxcf[z dۭ.k_L:SUslN & 8?ۧ(xiGI;4O̹BR%/7MyJ݀b.YD2˧ӏ1!Y!}v38ぶYl; m:?hQPQ#*%=E3hWdn摎"/?Y&,|jNJͥ|DRb@^P&PLK 1D'.}$n}B!(碝Da;Mǧq>x8d%blHdz%e.+ >kbz*/x|=i>4z&R{LbͷQ\~h!hmvOqew)+?=5g-^9ȶ{;[*Z?6غ -j^&^*Dl#"`L7XT#Ӻtd%U~;>l+})!\wdYGɫ6َ)vf7>X[t&A=)z7x}[Vtٹg ,c%ТE}5M%'IgFWGnz4ƥ:0ZږldjdLD4b[j -Qe-Ju -fjA9]I݌K^ݜhBAa}E8*Tl[4_~clK*w0N" O4T 0w9lgY6*BҮlޓr!~i? 7q6ɤCZ#+\澬pIcS$9Cd6s]MK*DU5kW /Tj|vw |fhnUmBuW~FրMg_?|q0#{;j ,sK|$)7V\QEVYt`}75{bB~$j MI_&NŅ^Spn*#eXPo`|N/oO|Dnc^Zkbjmv+ - kEZѩŜr-t@,lmORiȮg^Ӷ Ϥ6vvudP2nXK#PtO d|{C)4=+zk21R!ͬ`*vdb}O+)0cۄc걳1;a6:ҝ"&)ՂqS~Y' 4jAP*vT}Q/Ϙ@bd!Xv|֬(Yfv~FK@aS@dvN7*%vNJyX:aVSl_#nQݡ;zS|C2|v7?v]ҷ/?wƇΦiƆHA_OeШӵ -endstream -endobj - -4886 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [87.36614 598.6334 147.40263 612.2954] - /Border [0 0 0] - /Dest 4512 0 R - /F 4 - /StructParent 181 - /Contents (Algorithm 3) ->> -endobj - -4887 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [140.40207 571.3094 200.47287 584.97144] - /Border [0 0 0] - /Dest (subsubsec:component-api) - /F 4 - /StructParent 182 - /Contents (Section 4.1.3) ->> -endobj - -4888 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [149.96503 557.6474 213.69797 571.3094] - /Border [0 0 0] - /Dest 4513 0 R - /F 4 - /StructParent 183 - /Contents (Definition 15) ->> -endobj - -4889 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [276.43414 530.32336 336.26315 543.9854] - /Border [0 0 0] - /Dest (subsubsec:component-api) - /F 4 - /StructParent 184 - /Contents (Section 4.1.3) ->> -endobj - -4890 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [259.87186 334.6334 325.1928 348.2954] - /Border [0 0 0] - /Dest 4514 0 R - /F 4 - /StructParent 185 - /Contents (Definition 17) ->> -endobj - -4891 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [383.5707 307.3094 446.11862 320.97137] - /Border [0 0 0] - /Dest 4515 0 R - /F 4 - /StructParent 186 - /Contents (Definition 19) ->> -endobj - -4892 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 208.01038 122.27716 221.67242] - /Border [0 0 0] - /Dest (subsec:core-impl) - /F 4 - /StructParent 187 - /Contents (Section 4.1) ->> -endobj - -4893 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [382.14737 208.01038 441.80838 221.67242] - /Border [0 0 0] - /Dest (subsubsec:lifecycle-asynchrony) - /F 4 - /StructParent 188 - /Contents (Section 3.3.4) ->> -endobj - -4894 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [270.15045 180.6864 330.23697 194.34839] - /Border [0 0 0] - /Dest (subsubsec:unified-context) - /F 4 - /StructParent 189 - /Contents (Section 3.4.1) ->> -endobj - -4895 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [87.36614 146.56238 148.84537 160.22443] - /Border [0 0 0] - /Dest 4516 0 R - /F 4 - /StructParent 190 - /Contents (Algorithm 4) ->> -endobj - -4896 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [260.3851 119.2384 290.7564 132.90039] - /Border [0 0 0] - /Dest 4517 0 R - /F 4 - /StructParent 191 - /Contents (Line 9) ->> -endobj - -4897 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [277.53036 105.576416 306.98016 119.2384] - /Border [0 0 0] - /Dest 4518 0 R - /F 4 - /StructParent 192 - /Contents (Line 2) ->> -endobj - -4898 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [362.92276 91.91443 422.8277 105.576416] - /Border [0 0 0] - /Dest 4519 0 R - /F 4 - /StructParent 193 - /Contents (Algorithm 5) ->> -endobj - -4899 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4360 0 R - /f1 4354 0 R - /f2 4384 0 R - /f3 4378 0 R - /f4 4366 0 R - /f5 4372 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 194 - /Tabs /S - /Parent 1 0 R - /Contents 4900 0 R - /Annots [4886 0 R 4887 0 R 4888 0 R 4889 0 R 4890 0 R 4891 0 R 4892 0 R 4893 0 R 4894 0 R 4895 0 R 4896 0 R 4897 0 R 4898 0 R] ->> -endobj - -4900 0 obj -<< - /Length 6217 - /Filter /FlateDecode ->> -stream -x=]s#SIW쓜:'$Kћʿt,:= h77v߽z>nv>}wmwޥ^Տo_˯\|퓋q/}r?U)yDto>\ܼݛ_.d˛ Ip!?f/tւ0RwoO<~#ˏRR i' zB -'0ݷ A=v " `@HŜ H!5ُ;m~g@?̈́=1 FϯnoyHP/.dBng/7W݋]|b[OW q$=3FI *v݋?5`\ l+<>˗wT4`˫*MSYJ~:=#1z $,˓ Ke(Rjj1j>eY ^;R /{pߍtGk;([+#l\Bt8 0^ڐ74!zMi ^xs$8 ` e0(r+(Z05 - LCqStM"ӧ&m"P~k$'QnAHI&E^N C*ԃzMPNX#cFI*4g  -2z*@ŹwjQ4O\'Fm((Piа68:0aQ@$,`Vm+LC"mA)Yi-!&wBgvp|BI` FHSp4c).8aO&7M%-nk>2"ν9$%cKt86JH#ZӆxEяhFyk\u0IY hg4b(yΊ瞣UVo0/g0@ wR4'NA(;ru" -NnK+$aA}$狷` 3aG?Ҡּ"dFZs9# {-\1'@İ>X= !kd*U/wѠn+" )nMs/ VT򏙫_,P)kp=&MzBMzT ߣ6|HZ]u#MJf!T/ׯnm`Xްa *p2ki 5@†2Wb>fz-6=_J [|845Cָ)gJY:ئvO&1knL f0ݲDW1[s4p3"9`Li2fixt&xۂX -mWvkBn"QD4ɥ!G8^mW81o8įp{{02ѧ ps:15MƣZȂ`yk{_'4 t4#D ?%BXL7nH#Wq#x,3ۡ3B6XڳE7Rh!Ms?E*gx{ӴR/\[=L1h-LÂ`2/ ZбǔʆMo* -'ZM1:&Ј))-MQs"J|ů#QDgbڗb2{QJɦE+{؈x_N(p?1.x0l)MNʮYMd#K{XPBb_uE!2")O(dEod3ڒH60*P2a`-*mxl/ojIM>.^D@~nqE4]J!%U"+Ha!Wd- 0 -y5`][%Ձُ;'c1N8ߍL0P5r@sO1*X㧷?f?>nؕQ50Rz厈M leƆ=>22 0R 䇽I氅fNp:G#%y (i~23 ($))pyzEID( crz`qK*?H#6ݣX:KmVUwak-*=ZNe̽1oDoLyix4IG@B#akM F@_H+!& *i a'gȒaNYF潡'T TƨMQt.@_H]:LZ$UQH2BWsDX-oV p_ 4 G6g'CP"⦌&e`Ow@غjI^H}m!RL[eoIŤz\I綤BYJ!fPhMuS~z.x_$Mchm%C: --9SE=W\h'fm=7Zj>P_dR l^QQ9`}7t0^nY~eL+S d~f -_VDPr̻aP g)zpӳ"9?o]P]LӪˉ\|hfx'V(C_ո$+kL)n>ZyffA8r -Ax[^޻lʇ2fť!F\AOu^\οq(S1U9yNq]<cX@ԅhQkz!&2O8BK'k"`FmD|z;^ ЛZ?M,Rn y ̣u팈T–BLIIh;U?{h|wr%W ވZ~ -M?΋ <ƣT"y'D/5 -XΩOعmKME}h -O}i@ai-o0QN,X }*S N6#x "~v-h{گ-[69w;#I༉T*d+?;HƈO9wHUmlP[r;eÊoJD k{8A-n闔#xWBEWGc#szkPW(f,AΪk2b$1B:wSBS%}W/^ջjUe#fn抂<',o ԋRP6ngSo0Q3'wN,ڞƂFUa栴$G$\[j,g-k2)<Hieap{*;$Z&!jG&m)( /̃ʸzIhWp2nɲ0q_d Ip$ |& -ZXN+BTf ׅ8Tp~aϊJhe-Բ,Yy;$tK{Ctd1NjgNFdGY7rK̛ gPgXA&HZDyқ8 ̣+eƬ塪bɰtVS6eR;)AXx喕Z8D4q -5 Ԅ^I1l%~/ yRU)cU}IJ(؄9cs*(A)hHѻsR ->j9 oJ_j=4*F&Uqm/>JmWꂘCCZ EK qRաސPs!ز hSYjqb9_b9`Ssńur萄P΃gA*fHwmN`]2j(YJ JO!bhq2IY -o7 -~LiBY^z}(8G;N)b4&t^] /3BGP@;MjK!M@GstpolP-zU ^2 EUM^~aKG*0X&gFXj(kgVxI'+A"&`7&Ϡ*zl}WxV\c:$!LJ1Ʀ2Izϓb -mQUFE\^⍦CB>g;oJ#ʒDp0Y =vUP"vE}lɁ, -K>743"j]GZֈ%4f\P h1. v @ n0sp1hs!HͻBqÒPMxpIi:!+#t(N (8HXo a^`jD&]*K ]<;d6so}CZX!E z7gnj'TT9̙uOT" ؔ\L8 gBY +\YڣN+/38TzdO[(5R} z=-G 63"Wؖp@P~cr՛}wӷzv7]E__[4nB6h䤲v J -endstream -endobj - -4901 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [87.36614 519.29944 146.85141 532.9614] - /Border [0 0 0] - /Dest 4519 0 R - /F 4 - /StructParent 195 - /Contents (Algorithm 5) ->> -endobj - -4902 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [326.38528 519.29944 386.20056 532.9614] - /Border [0 0 0] - /Dest (subsubsec:lifecycle-asynchrony) - /F 4 - /StructParent 196 - /Contents (Section 3.3.4) ->> -endobj - -4903 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [460.86523 478.31342 464.16522 491.9754] - /Border [0 0 0] - /Dest 4520 0 R - /F 4 - /StructParent 197 - /Contents (Footnote 2) ->> -endobj - -4904 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [79.86614 114.97339 82.56614 125.701355] - /Border [0 0 0] - /Dest 4521 0 R - /F 4 - /StructParent 198 - /Contents (2) ->> -endobj - -4905 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4360 0 R - /f1 4384 0 R - /f2 4378 0 R - /f3 4354 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 199 - /Tabs /S - /Parent 1 0 R - /Contents 4906 0 R - /Annots [4901 0 R 4902 0 R 4903 0 R 4904 0 R] ->> -endobj - -4906 0 obj -<< - /Length 5213 - /Filter /FlateDecode ->> -stream -x]mqb3mxGȡ(˲哨T(Rb<*u\)Ac'ZUFxpCg~z8ܾ77~6|ӛś܇nwwwv}W_?]~e: t3g *τt{~ww_^~wwq~'88twM ܟw3oߒ |7}+{Źs}'4{zu N1tn~fl2 S8_}Ost.bIYg)t*;wNxg'K̀Ę`,d D瘛g#?ɖg"Qa$zϤڶ ..js?(d49 9X`ʄG%$i0Z~ #_ 9GH.*{eϩdH&9V9 -dQ9`44_P8v0h1T$9YΔBBf8x7n 3Mƫ4t֩jU@umHgr rKgWQZgVf Ah5FyK8l [Z&bܺZ<'LZN9 e 3- Q {W%\Z^L|DB)ڜE؊\ Y͵pcYkG?:J7owl%G,cmXռYNظ '=kR\ΨP/5ˌTHgs -(:-RR뀫YǾ-P(© qvu"yM*Q?z9ycbH_T~y?x,"mD{}+C{=(EnCN)i>) ]!TY|TFKjLAuTڵk߶ ޠ芺Tq&us_41ˡ2ɪL9n}qC-0kX3]Af-B̺c0V0-ihsX'BhtZeG)hV -xW+;q!MӀ[ewEff%o~VRIErPԀ0Ϝrhd .fJ ewT8qmlel\fn묞84 (YnIC&#M`]b0 ‡=]ڼCau+xDOЎm$O}"K(})Ax:mv%]LArLqve/Bj.\u@p|͜[9Ȍ Y[$XC&=bgd7LpSp>W)%|Wz!D@j~$ӽptaNz}ԗy@P8U,!Y裝sd:dN16ճ.0Y/S֚eg\`Z385e4?5:׸<`#C-`6kpLvQ!-sf -*cL;7xo xR"m~N8\" -NvaeVbyęAm̊ZP[:3+;0e{*6s(q]L ^Gb\ 8mظdm"6h-Sp9 <ɔ1@85#iW7P4lI5: <5^0ƶ"H֞yfS~Ѯc*k))6|/pIpcicP{ NEI˭r* yHat+-Y3CY3Nѣn`VDZKB˵_`!gBcS۬6^0KݘaH#ܸ4l7~sat[`_cNJ/ 0{4?TYBԕ duYtFECY* 5 #`4 -IЋ& -#SGS0*פ0{& -TޘT2k$r!,)0;(QhVj xғRiޤfkuiL*bGQgRJ5sC k2.,3&Q,qtv_z&)z\3[ S"ą&; >6x5}*ÕArϼ;+ߌJQgPy% JJ+n108-2"iU$x%,ak:VX|q/qJ"3qEbfl0&[W{ :~0n&K)=iē/)]֋dByabf\zitWk<{^)cF( (dʝ,~%T:IYZns*+Q*kݙ ~'{z8ܾ7_|8>6|ӛ7>܇nwwwВ@Zi`&v('ddq?+ -endstream -endobj - -4907 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [210.73615 585.1914 270.70114 598.8534] - /Border [0 0 0] - /Dest (subsubsec:lifecycle-coherence) - /F 4 - /StructParent 200 - /Contents (Section 3.3.3) ->> -endobj - -4908 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [349.41644 585.1914 409.38144 598.8534] - /Border [0 0 0] - /Dest (subsubsec:coeffect-api) - /F 4 - /StructParent 201 - /Contents (Section 4.1.2) ->> -endobj - -4909 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [304.4633 523.7434 363.29776 537.4054] - /Border [0 0 0] - /Dest 4508 0 R - /F 4 - /StructParent 202 - /Contents (Algorithm 1) ->> -endobj - -4910 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [411.42615 496.4194 471.25513 510.0814] - /Border [0 0 0] - /Dest (subsubsec:lifecycle-coherence) - /F 4 - /StructParent 203 - /Contents (Section 3.3.3) ->> -endobj - -4911 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [210.50237 438.1064 273.43668 451.7684] - /Border [0 0 0] - /Dest (subsubsec:coeffect-api) - /F 4 - /StructParent 204 - /Contents (Section 4.1.2) ->> -endobj - -4912 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [298.89136 369.7964 357.71567 383.4584] - /Border [0 0 0] - /Dest 4522 0 R - /F 4 - /StructParent 205 - /Contents (Algorithm 6) ->> -endobj - -4913 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [301.9643 356.1344 361.79327 369.7964] - /Border [0 0 0] - /Dest (subsubsec:coeffect-api) - /F 4 - /StructParent 206 - /Contents (Section 4.1.2) ->> -endobj - -4914 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [87.36614 215.0924 146.8631 228.7544] - /Border [0 0 0] - /Dest 4522 0 R - /F 4 - /StructParent 207 - /Contents (Algorithm 6) ->> -endobj - -4915 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [458.63428 201.43042 517.46844 215.0924] - /Border [0 0 0] - /Dest 4511 0 R - /F 4 - /StructParent 208 - /Contents (Algorithm 2) ->> -endobj - -4916 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [75.88214 119.458374 135.71114 133.12042] - /Border [0 0 0] - /Dest (subsubsec:component-api) - /F 4 - /StructParent 209 - /Contents (Section 4.1.3) ->> -endobj - -4917 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4360 0 R - /f1 4354 0 R - /f2 4384 0 R - /f3 4378 0 R - /f4 4366 0 R - /f5 4372 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 210 - /Tabs /S - /Parent 1 0 R - /Contents 4918 0 R - /Annots [4907 0 R 4908 0 R 4909 0 R 4910 0 R 4911 0 R 4912 0 R 4913 0 R 4914 0 R 4915 0 R 4916 0 R] ->> -endobj - -4918 0 obj -<< - /Length 5497 - /Filter /FlateDecode ->> -stream -x=kqW sLo$R-KNYS|HSR9+ =hcO1?pfFht|~O]w}wsW/?n~sÛm~|w{xx??|8 }y7yɅNf| uM[S0XJdQbJLLR0{L}{qJFk}Zۭ$ LDt݉Ǒd@UgJ"T&aO/)񜿿I$j[ Zl0M8$Ji̥54h\@ULmQ\`V6Mj7cA4 "˥I%BF8=W!9Ѹ9?u7s&Ka -A Lă̹Z$&[lݳAߜ فBU$!U4sTІmшVͨ4 7ejKCJJ2fBT$~T" >jHVcl!vƽ!:fA.εpu݊ Ǝ.9svss`:O2/ӆ%}&1pgdޘ|Kh"N /A` !@U؉"HLsd) ?q݂a`oMo$[S2(AeO2EaQԬ)Mn lyBGȀt3dzk`G"5:I#]&/,N\R~>ts(pm6+6Wa6ά k-:9Q?-סFC"\fQ ˙ }7(} )>Y-gVM됝cd|rcWMTA)1!rRy(o&rz(f+tv# -yUeZM6kB$Za2Xt}0D -1&ZI1UdZ]f\wbY/=1 8H;="I_ּ5A:o0 ._m*%6ŸWYh jBkt=5ҕcb&){-(-j-VJ$^<.([QC| : !/9$2hd1ȓoCm`&4-B ׂ9%x楁PC/F Gc(Ja}G\զQ)7jc=ݻ4MXz+tPɓ1b@ mrT/ U%bٕ̾KU\Ć@^LOfcV!5x^.jw5Ye -LOdtUHp1Y jiBuSf!]bx g -Th0 *#^O[K=:2lr`21WNrŔr -d7idNLxk"_)l3BX$gFZݰ)36#iS& jJo_4FT6[1ꀗ4ۍ|iUjyUV@cQhDYO2PQ6c.gƸrbHZ-Dj\HOrMxx\yԖ{so]k_g:Nx0b^k(B3KxN?- -qΦtŁS"o&5狫5"Rk<"_ F3emv]Eo3N8s8eMX:N刂 _ϗcqxOۣ '܊Q} 5SH1b&1GpmDJYV:e`^)ieyFp$ATudC5 *Ӳ`22NN 'ڇ*2Rzt@%\>52e#, jc"놶LDmT2쬄!/b;PHXpZUn -@ ȂuZwm,0\5!0/s̮|󯾲`֟P E0iDnWJ٭Ey.6;˕N&ҾJ7 J:bDq8F͐QsqRM$j6 +r( 2NmN_*lA2lj[rDRQ)J1cXzȉ:J# j^ Ij2&r3$:5J0q^E>+v8Ԉ8=?\d#j-Ⴔ欅H1*Y}Li˄g[ؖ0#}<~rN?'(}Phm1OS ɜjy5) -Y3PZm=lH.dVą^D'Ӓ[ܰgn*TBT| ȤE(xXHfT(@RYS) 2bx= U{-PCtkDʔ)'Go~f Gv6򰟭:\5L_h0z[kgǪ% -@e "eeаgUe(&KG|j,$nD~0}w g{osk>'#y]'j{%e%` !Pٸ-lTĩEHZ-sΦ@u 2, -UmQZNCDlxzyRFHb13v{`,&эiѱZ\j׶V޽Dj#9COcC=fbh zmhk_(M{1"Xo}c77 pm, 4lZYii[x;۩מvSKذ5a,>OMfWiZ/j/Ltf^BQak 7s(90<ڪt pW:nY)ًdWBWK6aj.i=.i3|7-!k,Z7*o^?UQ[T/=/jd-ziո}q;z:݌]oܦٻlVE㗦j~6}tQ7uښp4GF3 Ǚu~QT@G 8Zx%l'@q -Ug'\|/. #IIHbxڻG -ϬjzR_v'QR-m-`փtkɨ \'$5LD0#~ߥ8nъR2ZR֣rjdv5[XYFp.\XQsXQPzR%6U%k!ItCn@Ck^U-b}_ux!n'O}'󂣵;7h[*ݒJERi9h?`bZQl?j2q YH<߸G/5"jgqkZCseޅk|0ZVLcva3`{肆l׎y~(i@֋fy6G#ԸhľHB22 v+gJmD8Mb6Y5e5ĝIܡC|4g,Vd˘Z[LoG'G4Di&x>%wS4HzT'Nkzp[jf̿i>Sͧ^Q-`,1%7;9WF57‘N.ca2N= 5~mQ6"zgy? *p<.8:04ه0ks|QlE(cODS{&;$`+MDFqk -R njwjwfJN)y>T6ׅv:zGxHGe#7@Cx6@/n(Ȃ+VY}HE=k9fY ,ŕXXQdowgPR3#w3@{u* L`]FEdcF*цG.#h'Of5җc;}V[ݛna$5vĭ6e6c~>b5|>[\Q#]u.^ -1hj0Q0W8ulX j)),n7 $R;;y &;RxP/ZeRxͮǵB2em۽ 4d7iù܁֚wSRA2ۥX4Cv~yXCŷOPV.G>af^iɖ4>RO@w+dyCΧ^ƆWh((ޚC*U›zzhmY.mxy `1 PbaυZpYؙ(e$5p']J8īTYZ^mMT֕ oҋC#N^;tV]RLʇ -Y[Z3U5TsܩC(\T9^ ϰ&t#r9> -endobj - -4920 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [184.48878 504.0494 243.92665 517.7114] - /Border [0 0 0] - /Dest (subsubsec:unified-context) - /F 4 - /StructParent 212 - /Contents (Section 3.4.1) ->> -endobj - -4921 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4360 0 R - /f1 4378 0 R - /f2 4384 0 R - /f3 4354 0 R - /f4 4366 0 R - /f5 4372 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 213 - /Tabs /S - /Parent 1 0 R - /Contents 4922 0 R - /Annots [4919 0 R 4920 0 R] ->> -endobj - -4922 0 obj -<< - /Length 5034 - /Filter /FlateDecode ->> -stream -xے}m`kuʡb S8!ž˚80TOttttC^vm.~g׷Ӌ|_˫~o75_]ttu?^߼^|i/xwl\7y"ǙVIus-onͯۋϮ.xs|!ݯ_.\o7\{w4OeV -mGF KA-!] x& ? ?s3 ⋫l2Fd3Vpl Tڱvsur9yPxnM# +ėᨁ2i o+~N/TBeNxk+3=l}iEսdKq.>B`ͦ!v%Mj^" `N2%]L./rK!r8."1R3E"@:IuTW0p'CIG8М2i\Os'/M@u\IQ\EX2/?Pm 蠴g};`MÎz{R=\llkM .4skarU84GhdkebUH1[D ڤ&0`fǬ `#%bi)b0E,(?+Zژ[ʵ+{FNލnp 2r}O!4؇߯{LE$%D0."}VĎ"0Gz9Z,3%Q9:jQD(@ƃ3\y!r -UnHS'̇5R2g)_w<}ŋ?~:G9]C -eAȲ$fkncGA \( -ohk1/64W<J.wp:⨴l3g㉻F Ү <"X)9ƕ4;>%f*Jp~e;u..;-)aX`GH!d-hajgNW!h`ĠwƾMxtQ5*ln?c1U*xz|{zb1B:&$;ahp Zp5$.:'o?H2NJ%g4!?N -f:j*8Orl -F t !y,ܙ}HDX<=+ mKθ2gN@sŔ oyɻpΓqh]9":K[R,RiNm{?qQed E{d(u"~y*%w"̕D01'I8E}VD,GS$y)K9\1m&hI^JbG -y* U{5PT;CatiG)0*d;eO`E$p8m }DA[֑01*/;쏰?@("$M+bț!(b\8Te8EqXnZpθXg=hyH xާ>NM$h\qz0eB+BWd 9sjAglLh.;^0kzXk)G5S8OU~T^%êNN8F:I`W`tK4fh2'NFwnG1 <51,#d.t2 a(y<_hxʹίYw)E/G}/ -ЊZh_{@M pԒջ"v"єY&TH_M8t9̛t a,1͉0rm HGVӘ&=Ը,(nB.g&8ɜNOg fA&9ZIQ=Zx.d&DsMg$5&̪q  ;f(o\\+2X]˜vf0 -Xbcc~ ] ž d#TX&aFNs-]ܖm%v0ONɶre ( ճxD+w/Ƽsf0g4E( -2Nۊ0l(P+`E$`U҂Y9+yދ?aE2.+W/ק+45.xˬr("F2DW:0*Iī t U2"+6H@QTr~PLgR>> -2G% 1$.JH88L5SǁOZr$ˢXVM@I -8D{EXIGY+K5(+x~| -iUθb=hq͆|H'S -VRf MLqy>0$kWEG9=7jLhxofYa^exȩӱԺᡢ,ȇR~eset$CrάcHO2dyZ(Ĩ+k33"e{co)rwT gg\)U޲1V^}Kh61۾¢K? -(->rD\hif4'?19,bڶVTr }/@\UQc Z̓-gVυB)j&U6 o%qdHaS|!IkIaX^vAc ] B#Z0-K@VH#{]wm- \E:43_ꕘgJ: -ҖlLl'f6x2UkTo\|2j*ea EɌz B|Y : )U̹JSjE#?GoxCa!8Ĉd=+g%;i,=gFk0A󉑌k+\]x(LST/!F*җ&id42ClKzGy:| JvyVzd!8댉~ҏBՠ--B6E@e;,iNjqfO4,b> K1#  aʪ=zMrk&[=C?&p_/ -.M|l<\TV_* ,aA3Z4O8*֒j;$/1"b&z}XVߙ.ĸIV,f ΀l+ސ]5 mK gf5yEo"qjD>>d] -C5 3wqy<׈b,E,X ,5Dtoi:Ips֒0I"eXXNWhAHd ,[-#cE\­XYs8Si.2pH;aA[)Vf,GJ řZu5qG2Q d+K!,Vja&fUO# 9Ic"i,ec4㟂%'.zbcOD/o]Uӓא{% d1!7Wڈ -,ar!HWբ^ Ƀk/L5S4_U4 -#%uљKdAq!ҙ'Br ԕ1Agőc9b׊9'FToRKB I)Zc3D9 -c$7^nŐ".35 W qXcd-g2iEkZ2P3nTgBf 5 KW_iob1j-)[A Ɇ94CMxۿy}}?߳w?5_~vˏ_f۷]zeC DZa̒ۑx;P -endstream -endobj - -4923 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [360.01215 517.1564 371.01215 530.81836] - /Border [0 0 0] - /Dest 4523 0 R - /F 4 - /StructParent 214 - /Contents (42) ->> -endobj - -4924 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [418.70813 517.1564 429.70813 530.81836] - /Border [0 0 0] - /Dest 4524 0 R - /F 4 - /StructParent 215 - /Contents (43) ->> -endobj - -4925 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4360 0 R - /f1 4378 0 R - /f2 4372 0 R - /f3 4366 0 R - /f4 4354 0 R - /f5 4384 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 216 - /Tabs /S - /Parent 1 0 R - /Contents 4926 0 R - /Annots [4923 0 R 4924 0 R] ->> -endobj - -4926 0 obj -<< - /Length 5049 - /Filter /FlateDecode ->> -stream -x]ݓq߿bhNCQ"错rAÑILG弪}jfw0A_7OnﯯGv]wdzӻ..?}WwŋwW?t9\=~}ݷ/.^rus?~A;ޝC=€LHvoy/;.ow׼..?55__YwL !~u?>w{ցpۄ>lmI}։YǏm'od}]ݿ -Ⱦ -#7R1WqK"0ZdF{)7SGߢ G%FM -$Vū4?:hĞ'LG=Ht/YaR3m'au&[Ϥ^ -+pd8gݹFoU09U caҘ>lp֝V}'2cc:9ΣE6%2 Y#^bS=+䎍:P璖 xUU<52)QSAAAb B{AJqQ,\Qze/$A(h2ipDŽ`YwߕMCd#t= obFҎEHLb JA^b5iF JnMQPRI%lʄt?&LјE8ˬDjH7X$#N'΄[1F̈́}Cf:vR+||br)O#  -HxE u"` S`/q7USS%QPK'&Iupw?+oӥ64$:TU ĊT4#5IHMBG"y(mLVRGWdϳW}R| Bs5I{ڐ]]$zNޜ1IF4<&P1!\* Ù2FU J#n9*9փxUf I<ߒ4"P܉>[\B % sk*^T7w1~'R9 Y0e "_s G>Z$ -᥇|cKlo?K#@ˠ* W?_{g8q䖆98<|Z#2(HFR8B:Q4iVާzDJDH܏]&5r5׸OebjukM!0l*!.>~x\<|[ϵ̩2gӘ_*JMq+:qUynO4r"A>+>s?YT_1+unxid?kMB2)*3p2QQANO=nH" B4aAOn^)Z>L0VFtB V{Z3: t~C4 -3WP*@GŁ I>` -ia=!R|jfEBZ|=OuiKXT+’r1 -܁Kd(Q & IQ `3 喛lސ֪gVϏ KpLKFN9;OӏsjRILLqe܎ڷВ,y2vD(kZ9lzZ|k1N%j g k6CE/rA*h9ׄ`f#XA"(L -z&mDR|QxȂPg,Q%I91=T"7P pv4`RYmԗȣ#"'Biƍ0eRm!6BERS{]=UޙCuRV>NĊN)N)pLk[6j9[53@#5﫠^XKg%)VTh*FdH_0a4~ >r7Y.P<ӘRx1^=E?RJ٫K/*2 GX^!-m45F'snq Z=)ޯKp h+{Pba֔Uy^i`^=Z031CUZtKH܃0rmӊO z{^etNgדd˅a -hZX;P'Zi戁YFÏCTpARh+z!.êR,+B^_v\UW1au7*zN,XB'r5,Za[9*GZ(gN'kiǴ9_,\=#Nyɽf& %b?_$IBYPߵ W^ yfC趥txٛ[5(lbP#^)(T.Hc;dB5~z] G 8~-TƻTl)Zί$p/ $6!8ϳL+)?iw0 }b|(lLP% -IIW š^YBJ5?yq0Sq]Z( iָ*1$+qݩe/s,+j|j*M<3vhw3i&˄ӽ,b)1Lɦ a }ge7` J3tM3HìY68 3Z'Xɇlrv#ز3.xpncL+ 3K7]bts3^2ۨs3SS\PNᇚBݺA%Z4YA:rgz*ÏupSVV̪F۬"{=K<_oXHxrVcْK@{,_P5 -KPrEoHFcVvIv0 uG?я Y0{{ -Iީ*dN=EOׁ%uTTZC8;M*ԡ@7n -HUA(=Sd^P uʾQ|'Y0bR )_@Z `f:7-o*hb+,D-eL܃>IBQ/JXsrHչ%AifF ݷUZ3[3dd^26bn(I2_bLR -̡ -\4QrLC ʟ|qw fof<0L_= )?m5\V/w= -q(]@Dn -"(wYμZf'F/2Cj7 9:/ -*ow1QXqr8<4PRZU9`NTZ6OMTz?=-z~7p-V|82ܰ56ޣ n_gB -:cS 5OzpOz:b/ z4WeppKޕ 4+, bAh?eX)|@S!H驟AB& sV HJ3)5# # :B9&֛rp,? -' I6f'[Ѩ &iX~ _ Co -i1 1@`HǴ,=Ms`%e ->_$`,7,`M2E2I{#u@5Lܹ /W*B1@Vhm8+ WH'ߧ_s-]~D}saS -.~]q='ZK&3Hu&i+zۧlkX:!FX2C;.C/ \Tx8KFEFPpɡB\zO0-Y SV=e+Jq?n+wؗ ̟ILe XAN/ jUs}B{nz:N\%uhm~%<4fC[J&b a1ճ7@#'&Zv[x]jf֮+Ỹc8ō-Z)n܂ww7*Y-nDoy호WՂq үZ;KfR2q#zA7,ejܸ+&Iˌ;k=ORQq#MjB2)VV~OQ/GEW (z'n;7ZZ.1zJof~Mֱ ~ǖU{ihoƮ7KIcݣ=`Tgi6 yxm[ʌho^쩛ډp5.\Sr%hVLVړShz)Ϗtq?e ԯrq0Sd#ٿLu~mDK,v ~w?t]|q~}/ﺋg?~Տo?ޠ݆uH% o~ -endstream -endobj - -4927 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [215.36813 292.08337 218.66814 305.74542] - /Border [0 0 0] - /Dest 4525 0 R - /F 4 - /StructParent 217 - /Contents (Footnote 3) ->> -endobj - -4928 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [79.86614 93.517395 82.56614 104.24536] - /Border [0 0 0] - /Dest 4526 0 R - /F 4 - /StructParent 218 - /Contents (3) ->> -endobj - -4929 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4360 0 R - /f1 4354 0 R - /f2 4378 0 R - /f3 4366 0 R - /f4 4384 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 219 - /Tabs /S - /Parent 1 0 R - /Contents 4930 0 R - /Annots [4927 0 R 4928 0 R] ->> -endobj - -4930 0 obj -<< - /Length 4465 - /Filter /FlateDecode ->> -stream -x][~?bpU! I )/668r>s\$5hZ}Swكݛ/w9{]wg.='.~xu.77.7<˧6g݈>g oxs˙3TcaNsռ|9{ɛlx o8yͽo?~SZ2/izϥ$tg6o 3׶SUW1<"ѳ gfm=F5Oőͳax%UÇ_y)O}E[ly)@79ڜk_φo7}slno%-%o -cw]\~ -~φMKrHTrX~>RAWRo4s _^Cqy'.?u>ᇳ.ee~@v@U"Nkz -kXoB*@ɞEvXޕ]Ū3J2.g3Z;9k%%wЄԪBIt5V+- *RΞGQoLxkYpi5/vrD_vwECpś[o -[axª-"4OSۄ 񌫵T)ru-i$jlRU\%Lg+bRA8f`J ʖWThCw;M|AZ4/M-#QρI*E;"8Uiҳ/Zȁ~xC48VM- -VKM' V-,ίk4Gb*+joKj2j9Y:QLu5{Nax_fWdCڗܡ%KKxCËUv^z)Lpi&< etoce#'+]erSbhOVWoWRVkSܭ xpǺOvn?r%4 ӳa'WEZ3, f) jhViY9%9E\7K5B5OYQPşQ;% 꾹<Тyh -*].4p:#ԦUܭ-ø&n.s[N8?V}3uBf]ѢefV -Ib9G Z@=P Q$}Kz}3֏mNŶ50dB/5#rq -D5z~tL2pτc!t SoWB'i/Vࢡ"0or6[ o^ӣgFEjڣ>[&a-,$w)t62?lɁptU1%& m^_h۝ +Ukǖ vU;ZEWE`<t -7m -ro3%D‘țP9n+$lgvm z\5LtNä'jOdQhb5!5 `d(Xk4Ɛ؉2_n4_A* J*lF!Y5;EGb5_h-8`5[($쫬\*kQbH}zޣPE i>z:f -CbIfHRZ2Ԫ3CU<"=j{,$ 3 G1k@2{ÌS'Gmc2L~lMRB 9nu=-O&{3:Z>hiℸaVx5 g@>8m9ǣ~@"ҌԁfҸPIk+03;pPMp"\2nOI\̝8Me|ؓuz;b,[O!Fafy޻/J;cODhv}~DHbME ԯVLOR'g>*7\3Z'hEZIGù}HӃSgZqVQ\C}}"fluvw84hӣ = mnup:4h8+ bUI"HTj~ǿ,B[&) 7;3PYmL]U'V|jEECI9 Sp{\f׾'8njN@]D }Ny;$Mts-8~ g;B!::o#U -ubPց\FRm8+a*I- -p$W) tQE`l$d3aD[*~#`sfǔ(USĨ5c'j("ρ¿NkH3u[)iY Ds22 jd'Ssʼ7p˔'w؋FxO#c|9"&LQd^'Yc/ƏyژÖs5v/wzўQ#{9ȳ1D2@.U")s2실]WS[>|B-e&MG9lڵF{z]ҡ&-NU1`W+>]<~4NfwiiWG$ d^Ll쥪37g2_2u+ܭt*Y}t4nwW?4ߝ=|۽{}޿jUt\^޼H'=hM -=8{V$}{E -endstream -endobj - -4931 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [424.47882 568.8544 427.7788 582.51636] - /Border [0 0 0] - /Dest 4527 0 R - /F 4 - /StructParent 220 - /Contents (Footnote 4) ->> -endobj - -4932 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [448.44293 555.1924 451.74295 568.8544] - /Border [0 0 0] - /Dest 4528 0 R - /F 4 - /StructParent 221 - /Contents (Footnote 5) ->> -endobj - -4933 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [436.5668 480.0824 488.00662 493.74442] - /Border [0 0 0] - /Dest (subsec:core-impl) - /F 4 - /StructParent 222 - /Contents (Section 4.1) ->> -endobj - -4934 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [448.2978 425.4344 492.196 439.0964] - /Border [0 0 0] - /Dest (sec:theory) - /F 4 - /StructParent 223 - /Contents (Section 3) ->> -endobj - -4935 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 336.6624 131.14336 350.3244] - /Border [0 0 0] - /Dest (subsubsec:motivation-plugins) - /F 4 - /StructParent 224 - /Contents (Section 1.2.1) ->> -endobj - -4936 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [123.86342 254.69043 176.0907 268.35242] - /Border [0 0 0] - /Dest (subsec:revertible-effects) - /F 4 - /StructParent 225 - /Contents (Section 3.1) ->> -endobj - -4937 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [146.12852 227.3664 206.04572 241.02838] - /Border [0 0 0] - /Dest (subsubsec:motivation-plugins) - /F 4 - /StructParent 226 - /Contents (Section 1.2.1) ->> -endobj - -4938 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 179.58038 130.88567 193.24237] - /Border [0 0 0] - /Dest (subsubsec:motivation-plugins) - /F 4 - /StructParent 227 - /Contents (Section 1.2.1) ->> -endobj - -4939 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [79.86614 105.24536 82.56614 115.97339] - /Border [0 0 0] - /Dest 4529 0 R - /F 4 - /StructParent 228 - /Contents (4) ->> -endobj - -4940 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [79.86614 82.78937 82.56614 93.517395] - /Border [0 0 0] - /Dest 4530 0 R - /F 4 - /StructParent 229 - /Contents (5) ->> -endobj - -4941 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4360 0 R - /f1 4354 0 R - /f2 4384 0 R - /f3 4378 0 R - /f4 4366 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 230 - /Tabs /S - /Parent 1 0 R - /Contents 4942 0 R - /Annots [4931 0 R 4932 0 R 4933 0 R 4934 0 R 4935 0 R 4936 0 R 4937 0 R 4938 0 R 4939 0 R 4940 0 R] ->> -endobj - -4942 0 obj -<< - /Length 5550 - /Filter /FlateDecode ->> -stream -x=rHJLXvJmɩI5;3@\wqnt7nn<}igO?4]^_o徹|u_o~|ٿ}|E^\#>bhxÛ 8μB7X ݻo?p&MnÛ~bF+~poKAy|V<ߡW,jÙ=sՋo7y@#ϛ)˴_Jt8̴UwkDZu8g­:\y'WlO"7_6`f?pLHr owa~ 7_]E?ll>ߞ#5DSt7snN%L#`q,.LoΛ azcnKp"meVU"Qs[Ic`x˸[\f$ZOKOeJ50500+ǢE@qy2| ,0^0˖qjiOZQ8a&o_ NI}~eU*\aKW;DK/ DKS+$̋qr|Q60{;zrpP5 -zV% 7ֵT&|_Y!,cۼU 2Z,\"jm9{GGYye]rs_}Vdcb{W^"|N1g|PA*vq=o.\i}ұ#1j`H( -1ƨ2FPobbOrEz aO kbֻhkt+RO`I |y^µ[ ֳK,'f2 @-۵3ZDC0Rpkzo\Eppay9/GQl`@BVCN#Ssb~U&@IgcԆZ=wl%ȯ;3"Jt\Ic'ĭbUzr 0NH<\Uv-5=]l^̃m˼׬j<#L^"V?' v㗿~|ZDԥoY++0ZI;Q3fA'^+:,72Z!*ll-cP90%>B%c &&0=+t+:ֲUjżTIa69-[|^JՅ\n&=][Sw@ )<,C]n-sh|֔!A?0B"_vK\7a\ b®lj#yCֽ_gǧ9~@4*Ɛl6nr^cK$ⳐP7sؕM,fR9k ؄&súp)ǎlzB#Kh l .=B-K˭M@{_M2 -ɬ--nAK,gR8TBϑb -5'«FSC<8Vq:ǎb&U&mmp%q5*ړ# -+ˌ~ 1PhʾcnC5&Gh؏ -B0gq2:v`DUffF.v/.@zj"C%TJ +ة00L)=< -eT}vDUFIPJ#, zUɫgO/Z\Zc#,JZPE, ǹU`$ȕ+,Qpݸ D/ZT`dyBzBM,0-)Rˡr -r#=fc!Q>^3Q!#I $SvAThvHΕ&mh;aAކ [mhYpQyM(e-B;ݰm23Ƈ%Aޙ^3z@LJ^ŷLn^o>6BYƭlۆ7?ojk|azKKwyŸ8LӭQ]{-ʵq T;u '>kXՖݧLJ 'G?*.-98)TV43k|9PhI諺q228ŢoBwʳb<>כnooor{|ck199u7)_l& -endstream -endobj - -4943 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [75.88214 732.5514 126.86732 746.2134] - /Border [0 0 0] - /Dest (subsec:reactive-coeffects) - /F 4 - /StructParent 231 - /Contents (Section 3.2) ->> -endobj - -4944 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [296.2944 415.4574 307.2944 429.11942] - /Border [0 0 0] - /Dest 4531 0 R - /F 4 - /StructParent 232 - /Contents (44) ->> -endobj - -4945 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [173.63432 94.49341 184.63432 108.155396] - /Border [0 0 0] - /Dest 4532 0 R - /F 4 - /StructParent 233 - /Contents (45) ->> -endobj - -4946 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [191.8974 94.49341 202.8974 108.155396] - /Border [0 0 0] - /Dest 4533 0 R - /F 4 - /StructParent 234 - /Contents (46) ->> -endobj - -4947 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4360 0 R - /f1 4354 0 R - /f2 4366 0 R - /f3 4378 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 235 - /Tabs /S - /Parent 1 0 R - /Contents 4948 0 R - /Annots [4943 0 R 4944 0 R 4945 0 R 4946 0 R] ->> -endobj - -4948 0 obj -<< - /Length 5092 - /Filter /FlateDecode ->> -stream -x=k$qWf& 9X7YV{ќ27zvU,ُanEXU7_>>>ӟ辻x?}˛_~z~0x㏻O>o>7~Y'_JuݝvFMod+iÕWoeTOWR?JN^ɽ)?i8T@:ET;O%- ݸ]86Ni9_e&N^7(DdJ7}xA 7gD2 }0zuB%` eQ3eh$#$VCmx˚xzfw9 2RN@l]7 DL{֝ {/`QՂ ӆ9Ls1]QWh{W .;&:7,®}Z -3iq{ț Vh73o =4vsnt/s7<\WiAb7̈]cH'y}<3߀T&a -?l?},RK:mE8V^hW)#)Ny炐HGJWŏDW(WV7lJu<!{@Q;plX90$s2N9i 1ϟs.匎rQzAb/;a>hV%S4)s-Q.> N >^cE=A!z2r:y3xضX1οu&縕(a ꙽v)8KȤe^Wy+fGZ3$xn\ŋ5Aߑwy庝VwrlR9Cia("/ Mh~~GPpy`/K¿sO]0y3QX夶^k1\,(g@m#&HՄ*{bge8ܡRsYer5[&e{:Gf3c`ĺK`3!Šʇ`%*%P%PAA^U-=<}_|!>!NySnl[/z L[$;{Nc(,,PfBu9XexpKyX9/kՄ lMlm-gb6K3 ߃Q%%rNsQvzFI DX -J  1oQaXQ -G$7#:eY5 QX+:QӁdQR)@+/g R^)l7tXl}P3̎f0 ,Lo*ƒ%'v4jb}Yn &wI]ؔ/&*&|+| -gBcmkO}~ZV^hm9n}H&̲RQW.QUA%0zSٞ9\5UlꂋZ(&e+I יڰ _*@Ǻhl@V% 7:NS^O0 -%-oQC'QOr mj(6l/6Mu0PTTBVr!2ˀ7bku+=T-gׁPNbL(L/)$drw a*8R*89f~7.~8a+zZF\sEUG|m%uy~kY^װg>T.hO!JN tI0d-v*-^!-M5,>7v]PpEacpS"M>xiH͚}i꺁CfE%N+t -1cD, &NC\yI3Vc1) I:0hDϧbudQK&**.I޿GfÉ6Da[9Pzmkf#ΚŭnzUNS~Ԩ7[*"2쮻K@BL ǎoHy.rh5"zaiPRRhg / 293yyKf1aS$s 3hAϿHErA~Yܛr腎v;WQ@J qZ5PQZ!n5 - -tP&.6!Qeq5̺V${ Y˴^Ȇ#ҵ@K ? (Lf=i W/e^ߑVzUN2"rw"HٗiP2)It 1ZѤ+C5+, -h?(*U6sNR3tk&+ I -n#AaʭȔ_f8.fILw)A>qkׁJ:8}MŴ(,Ʋdt܏@]خa`~:ȓ*xNզ"?SEz{f-(5ƹ˼&'،*qU),֘9-*g\ \/ѵtߌm#K?C)UE':nq4X'"Mc+סfbo4ԛ $Eb ҠWa hcD!C嫰: -M4[qQǩ9!B=*?t!-p4ވoe(Zn RƖu<.fLBrsŐ%?!hdۉ50w ̧ _nEdO:&XLyjѿ֥CXxdnl9FAƛPakT[=T{W>j ق7KÝ#)"j>RWeu/[?`>뗀 n2 -WԟF_mf'1|+SvEdd/~ől/#󯗤 zTlJvڴ85zadS+b/YC~zn `-fџ/@w|CZZ\WnE)3r(id_i!_6⾅f-[b]U:y᳠B~G2HePJDZ:>Lo \` -@ --(-9X/bgsWV!o&uX ۲+FF+\%Ko9xe1hE/.y3dE Hi\5CJ(UڵG_ٔ!B, fۧka=;Nh/AP73H=r̈́Kbؤ4pzB$T)*7xKC%@$9._4ZԂS=+f3nNqc*O.wgky]QulҚ^Սx} [e!HkDm՞ɼ=4YlG\ŇAR6MRQq/n]4%_~*uy5g#MBKio6м~KY/1U ;afaxBc -%aٴ mr*97>`'i4r$2K )i?( -/2clj[ -lvV8ӛ:$>Z2U'ݒ& O]\yNS|C6ku؅[Th8td~XE-@L\rrGNBohcej-V/ګ(YUCdEW슫T]<U!ND{g^c $PkOE{186@k)L8t"`5jku9QDQUevӝRH-c4FE%L֨ E3]o3^cLhy[6\ڳ(o_]k8N.@$3-6IG)GԅH̷AR:UR{ŔBƪJD ІMʖ7PaA\1YX#iя6Q| zN&6 7{fSs%F<n>lLj|( ' C19o!sȃl5fvT~D?ȢE?dK?ゴ|`Vh,Eux/t~\ޱ)A "/oqm[k eh+ %bsVgR,Tofu6`(ʎ'*Sv(N<B iS* D6=M[V2}:>UKɿPv8&¥_M{^[[$k2jb#P #(#TJ -LeֳmdZ&5Jf/ 3.=DՁ,>I"յ{~ǻ~oAeۓScc -\S'1FO >ڸ&,4v<^?籌z0nw~\ OwR+CPxv2EE ѧdk?խ_1bA85W2¶Ky)t?Ԟ7W?B)jo5d+]7}ڰ&PۭVޖ>POc^ Kgzpl]B ~Pwӕt2jҧ)>& Ӕf-3JĶwo;,ӟ辻7ǿ0x,aBwN[yn7\R -endstream -endobj - -4949 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [75.57414 657.4414 86.57414 671.1034] - /Border [0 0 0] - /Dest 4534 0 R - /F 4 - /StructParent 236 - /Contents (47) ->> -endobj - -4950 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [455.87366 453.1284 519.39343 466.7904] - /Border [0 0 0] - /Dest (subsubsec:context-access) - /F 4 - /StructParent 237 - /Contents (Section 4.1.4) ->> -endobj - -4951 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [326.0764 412.1424 337.0764 425.8044] - /Border [0 0 0] - /Dest 4535 0 R - /F 4 - /StructParent 238 - /Contents (48) ->> -endobj - -4952 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [342.5764 412.1424 353.5764 425.8044] - /Border [0 0 0] - /Dest 4536 0 R - /F 4 - /StructParent 239 - /Contents (50) ->> -endobj - -4953 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [456.27435 309.70837 518.84344 323.37042] - /Border [0 0 0] - /Dest 4537 0 R - /F 4 - /StructParent 240 - /Contents (Definition 18) ->> -endobj - -4954 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [150.30486 111.64038 161.30486 125.30243] - /Border [0 0 0] - /Dest 4538 0 R - /F 4 - /StructParent 241 - /Contents (51) ->> -endobj - -4955 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [124.75167 97.97839 135.75166 111.64038] - /Border [0 0 0] - /Dest 4539 0 R - /F 4 - /StructParent 242 - /Contents (52) ->> -endobj - -4956 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4360 0 R - /f1 4378 0 R - /f2 4354 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 243 - /Tabs /S - /Parent 1 0 R - /Contents 4957 0 R - /Annots [4949 0 R 4950 0 R 4951 0 R 4952 0 R 4953 0 R 4954 0 R 4955 0 R] ->> -endobj - -4957 0 obj -<< - /Length 5393 - /Filter /FlateDecode ->> -stream -x=]s䶑T\"dW]_z ZgYd\uW@wFwм{?{th>i^O/? ܽ~~y?{OO?o>7{V566m~{?/dϧŧ_ܽRy{)RӟJ}Өڝfo[jms\vJ=טp"Ga!/oƱ, )2A>S?iqI,3ic}<7ҺUӉc2&PڊΘ@w<;?IZ#s,6dYrV4z13SUv ew(`a2#hf$vzRF)PIb4D4BPvbg]4/GqbrWWq̻lX5 yρkjpn4 U4,#3:13tvvJVi-e):,ޡN Xmhy0BEw$c;nJC$|n1Bm@D$w9r+2y X)6Lr_UU*u0ː6oV*::%yΠNAe ^&m?+8bn?NÉUns>HFq36K+2V(cN< xoC*p<2i%紘]!֛mN;xN; -=+S]f|M. om-:˕w -F7rܑ[9?1Bيg2uvL+ZZdG5 UsBŢfl ]Lc1HD4R,Q'F ?6J9}TE뷅m6:a+6IڐyQM UD5S$G)92Zhݏϫ>9no3\DPuosxK2A9) Qɔ `86S"EԤѢ~ -X#ЇN ;\ZV H':UL Zrh9h"¼H 1vrLzXN[LX--1 "cP)[6T EI<(/hi:''B2pcYh4 (8bW&)V<;^9UhRvpTny*6evy)nvs]iM%3zb3 H1BK FhV {ύ0[b(Y _I^E,6-W5Ŧq`xP_d -{AS/XfQA>jl)f» Y 7~3>~F֬&+fos}ۡ#iSs,(*0xOլ_SOq0?Ll%,V\f-PN*SX,9e]9iDo7|INض. -_Vk*dQ"AG0SUf04*rA7>)+`B"\j [7`{)tֽ xGJAɠ7RO -Ңj5EM*[?|@ p=x´v 6~~AT1W۝JKh'ͦmW"X7M?;ey٤,~,9%! D8b6`dqx1K}D9]DQ=2٢hQAJ3i焔U%RR['FnxUYT%eJQ)ڡz}#k^ l -*; kZ-l3qje5_$-!#M~zQĴGPv i --@7(ā긏LUsNuy7hv"\( "*m &'lNt"<ȺZA.[Հ.0T'=,om9/Δ 4 - $U0ڡUHqr&6rB8ݟ( el Pd7PSEq!# dUl_'p q]ځ(7Z *+zi^ȡ[5>K*raL[ʑ6VU(%Ng(zj(иNnvtli9oR< 5b9( fk@三-R '+B_@W 򢗢:֗"AHlX{.*' ϰRDʅ@N 9]:kK?mLCX% =hEU+³(xhR .]i$ *`֨7]+:[P wڊVvv̉@F4:vKŶd/EQ_#JCwrG^\.a%/-[ evP&ykgZ:;<%b, ,4u- Ưĭ Sf%IrUi;t\~pK -T|Ğ-r2^ -J ɺ^NzwFNH*G%AAӎA -qa%+CoۤNyf4Z'ǦFD 8f)$6,e'&z2lZ0K)Sey礌.4%bs{qcy+([xf=Wk6M_tfW]/\udۛInaSa+h.t^- RvVїlͭ=lRo1Ś"{n‹ 銢% )(-ZS*!D?cEQE"YGR56)$ơO7HūB}IjpH^ ^5BC5˧an" r;j(RLܱ`||olw2@JFA `[ׁ)˿lZdIUl 7 -\Gn+VruDk[mՅ6 oh[ٚ% P)@@ga p^-#ũ/\P Akp+tUB%OrY=c3uBvn0WTV8e~(Z5ebbf`#]*L_{M)ځ;tʎ>t0Aۜ~aSZau݋_>i[IcҮf<%UQ([P^YNVEpFg{1zH^x?PI{bշKG$Mlſ~YfaV3)D}k -2SuWM,U9^S܇YV->|rNxb(a^}+A^yK'nUήib!F%_b5qk Z&N%kZVTbKً$DzoWV T;P:JBSD(>➂ts0T@N -ȟ Ě3{KkaoXZțgh>\}ӕU8+kT26+'G%Gk }Fqhu{Nr~8L}idw ?)щotNJ-&V[%}6=>TxtÈ&^#Ed[B*HQoROe6H[@ЛCTu?"E9=M!<ۂ9w,QL-kRys UIC1ˈEoHrT!xqgirnɒ]'%ge__*51L%ӃHK۔BZ۪}) -)mET*4> -endobj - -4959 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [246.03696 494.1144 249.33694 507.7764] - /Border [0 0 0] - /Dest 4540 0 R - /F 4 - /StructParent 245 - /Contents (Footnote 6) ->> -endobj - -4960 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [315.25378 466.7904 326.25378 480.4524] - /Border [0 0 0] - /Dest 4541 0 R - /F 4 - /StructParent 246 - /Contents (53) ->> -endobj - -4961 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [311.1513 350.6944 322.1513 364.3564] - /Border [0 0 0] - /Dest 4496 0 R - /F 4 - /StructParent 247 - /Contents (39) ->> -endobj - -4962 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [140.36269 289.2464 201.18646 302.9084] - /Border [0 0 0] - /Dest (subsubsec:coeff-context) - /F 4 - /StructParent 248 - /Contents (Section 3.2.1) ->> -endobj - -4963 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [486.33368 289.2464 497.33368 302.9084] - /Border [0 0 0] - /Dest 4542 0 R - /F 4 - /StructParent 249 - /Contents (54) ->> -endobj - -4964 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [141.26205 275.5844 152.26205 289.2464] - /Border [0 0 0] - /Dest 4543 0 R - /F 4 - /StructParent 250 - /Contents (55) ->> -endobj - -4965 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [251.55157 261.92242 262.55157 275.5844] - /Border [0 0 0] - /Dest 4544 0 R - /F 4 - /StructParent 251 - /Contents (56) ->> -endobj - -4966 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [447.87784 261.92242 458.87784 275.5844] - /Border [0 0 0] - /Dest 4545 0 R - /F 4 - /StructParent 252 - /Contents (57) ->> -endobj - -4967 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [397.8022 186.81238 408.8022 200.47443] - /Border [0 0 0] - /Dest 4546 0 R - /F 4 - /StructParent 253 - /Contents (58) ->> -endobj - -4968 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [167.3757 173.15039 178.3757 186.81238] - /Border [0 0 0] - /Dest 4547 0 R - /F 4 - /StructParent 254 - /Contents (59) ->> -endobj - -4969 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [400.45898 173.15039 411.45898 186.81238] - /Border [0 0 0] - /Dest 4548 0 R - /F 4 - /StructParent 255 - /Contents (60) ->> -endobj - -4970 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [416.3656 173.15039 427.3656 186.81238] - /Border [0 0 0] - /Dest 4549 0 R - /F 4 - /StructParent 256 - /Contents (61) ->> -endobj - -4971 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [183.44235 125.36438 194.44235 139.02643] - /Border [0 0 0] - /Dest 4550 0 R - /F 4 - /StructParent 257 - /Contents (62) ->> -endobj - -4972 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [79.86614 93.517395 82.56614 104.24536] - /Border [0 0 0] - /Dest 4551 0 R - /F 4 - /StructParent 258 - /Contents (6) ->> -endobj - -4973 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4360 0 R - /f1 4354 0 R - /f2 4366 0 R - /f3 4378 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 259 - /Tabs /S - /Parent 1 0 R - /Contents 4974 0 R - /Annots [4958 0 R 4959 0 R 4960 0 R 4961 0 R 4962 0 R 4963 0 R 4964 0 R 4965 0 R 4966 0 R 4967 0 R 4968 0 R 4969 0 R 4970 0 R 4971 0 R 4972 0 R] ->> -endobj - -4974 0 obj -<< - /Length 5950 - /Filter /FlateDecode ->> -stream -x=]q+|T3CH)N(J627IG銎\){f0 {Fwqw_ w~͛O??>??>|tw _|W/.n^|{wՋ] 9`xyxŷNJD]NHu׃>u,Ҝ8 -3HύWo."@oxP ˖)a3W6(b?J9a?1p=<%%:qSr<<3V"O,Nsf,4i-Ԃ-:QKbgbz>I zPӆH] -ki+w]d93%hK ;8@v ur#)-lpF3zF.SNWrsM,gY*QSIӏ ͒Vҭ&<ƂwJ<ų*UR -DW`BJ") n(13XHO|hu\Z܀kbX;_8%En)"QSzPhz{U? V9h/xE9bQQ')=1(/': :m.NC !]7%̩Diu]$<Tf4]#) -Ό_'y͠PJ0Zsi$S6Vfq9 7XiU˳%WfQQiȉƦɞ 8k3c%\?I‰fo*Ҷ) SGnlU ҳ[!Be9{h -'5 "h?]SuQpJt6FKiYzcrrgA]]Av ܀xD5Ama'7< E+SHBx~7# - 5g&LGQXYן^|}vʋ|Rg>ƽzNɳ3M#{1b{=Q5F%7jw9 .Tc>Aef3+ϣai1z,NN7j"l8: tu/@Mrkd 6XnxKH_i-60.Ĩ>7e/YoR/j0Rrr+;wUO|;(`x{d*긐.,T_E$45y5XPJ! f=y}+_F0D淤;| (yǒ9[ -nXQi,S̛Bd~i\ fgqd冲VEc -&vT9\BJ).l>?k48bhd>-X1![p4lP%H0S^rNl;'kH, -1Ў3 ӅF¬SִeLex 5Mgk'u!Ʃ0I'9L~egOt_"NӢp܏xU߳9jz286پd,j!琌̉1\n A87W{ϴ:, $#dvSp#9"C]ƌҖHIG4\rr&ܼcӲ,UaYDxW~SNQ ։eA v F6䵫ksi\KOLұd@m1S=+m rj1Ёaps#–j"i_<]!$|&|.NyDWLҪ0p$lb wі*]q4Q/^lnZooo;])Q)Usm).J%d:?]o-R& -]2'DK>bWy,1$z4 +IAHL̎* Uhج!0DWK蚐d.iJ/d&9D(")0=H,qO:!bLI5aFK#HʡBBpղJ - 0V -!4_%1鳞HOMpX7[r J4atD`JYt#9:"-ֆe\.I]6N1 ՂA5TS*86h-D<3sH`;lhISP9ȧ}P{&8w -ۨ`s[Ņ3y_6 -%iC7f}Y,2` -gq@:FPVE|Uu[i-Et +8vevgs.TJg]fiK -)5.x -(Ԑ͐4 }mxa [c02Tz/%Yj02@\1M'˜Z;I5!2*X+:l -mȻ4U-̨M yW0kUE'^H7JW" -paO" xH n@śi n<]"^HWza9k:4TecqB1ѭ%cB~ZG\OCoXQAh5M : -hg" ~|5H"sOReu;JRc3͉%dQQ [d kҁH v3jy?\>B}%C43#9b}`.˚|DGL%pdU2&yãdY#qepP|)+sߣgNVȼ&N4Z_"GCP,C 3fdLBV[iα{OD]VǕD -!Z YG 6 d-r8f+ SMoS,t!MO NWJ?m -C"ؠb -U`8~7V-UqHG8Tq@kI]PRk(k͖c 1%)v%l4 5-j&fy*BĘ -hR4s,J*TN&,[\]%튛NVrj,-bsXK.o;O'y$L4$,HW'/vn|FH -C5 7P*('V{MqV8*@wJ-I[W3rV6jq.2j*1TR'zŲfUmvpf3e] `9su\őORCdP]*fT[ ^6lydeMkg`@By :.bUm^Wѱ-c:lLP-.6[ܳdWݞKݫI6"6GFK Jx*R^ܨ #E>׹h.B!H53Ic?bĨӷH{Ҋ,;ϔ`|Vv]xZ mxY)lӡw޲W*o>g{b @ش;E#W6isK*N}k\2WQ j50ڀY!]P9e#v1c sZ󲱣#Ja{/j"Ht%k+O$L)ʠRMG[80>Vr>XST2٤9A!I)|N6L;cZkvT@Y -Jh:TB;iQqRƺbɨCW$b~ %BBE!)˰v¡zNXk@PʩS}Q -X2]@ƫXL -Ы=_uaԾ Jɢ 9l~}Y -@m*4s?nz lދrFD:l",Br0,F3HzeढEռlQ+9f2Yc8[ -aNҏ0Q ɤw 4F`|mV^0چԄO Aʂl4 uD!T*DO@yl;#RzķkJvƄlL9uzsV@(Y-ŠuE>pZ AU4S N ;?֕Fc, %f`,{ɨv,Rf)s71~;HЧݵ+"(jkʂiMZGbd`pJ< Y|\n6lG]=62xJ[ul$' -2P-Fj ^>AM\M,mKq)i6#'|l|xSR2ᶥJMqlSd93T5js)hV"2J&/Kcŀhjq9n$KC п|::#?)@>fTBy0gQ}Шv?e}+d5]oYFZA*Q* H\D2C}zF>D:Ig.|+lf+Kep;vEMQJ!R|8"nM0Λ1cJP(kVΡ9(+AQN ZH7$Ʋ$c~8 HDп&~|#h! -Wzz&'MxzRa^󚚅ҠwxZH6;WAҢ&HZHhy`Q-.nh$upB;I=/$|:9RVB!GdǼYGY5YLq>[4ŐP-y*(+1 S$nT`4ӐT.nAΉ F iøxLY#TIdm^Qe޵|H 鳔rvhdl+XyG[S|Ǫ%HZ_ )ƽ"\9]2! - tF["=\uYN#f#(`_2jk3J1ہ&`?>iyB$o%Fӿ6q(b`eI,I~10G.ߟ*beGt.p֟mb2ܐE6q;nMeVmcûsukn= _*wGv%x}!/t! .>?]yҩ92UU8O.E#C+Lr3(vἎ]@d$=?>|tGVUƗ-n2v|MzB -endstream -endobj - -4975 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [243.07924 732.5514 254.07924 746.2134] - /Border [0 0 0] - /Dest 4552 0 R - /F 4 - /StructParent 260 - /Contents (63) ->> -endobj - -4976 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4360 0 R - /f1 4354 0 R - /f2 4384 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 261 - /Tabs /S - /Parent 1 0 R - /Contents 4977 0 R - /Annots [4975 0 R] ->> -endobj - -4977 0 obj -<< - /Length 4873 - /Filter /FlateDecode ->> -stream -x]~\nNOH) E-|N\4kwbvfE4;v_vwDQIK'w7櫯Κv{s7?5Wnmwfgg/yvvǛ7Ͼ~F6Tk[eoЦ/gWL6ޮϞ^zsvN6J5?׿}?lvvJJwTJ ep=$)5eԪQrU;nl>PMC|gxz@q;LG*FZ@9K:.U}xiYSaڈ;cKW8Ŭ}u"~:?[5怗Ə^\cŊqvg{N气 ۘ"Z`hcMtϨkdn;Ѧ+l솚!} 0ƎDK!|$v8(ww^dC6$^gC\dX57{M2 h3o E~1&ؓE+ -,.UZVueh41 -eB^A;2hv! O1R=TyyFXsM7B$~i+l:/wuV\Z5 )4KG:8aX*9i'v^f<jdNY-C,ta{5 -6V#8#`Bᄌ*QR)!jdJ8nM15( Z8T[ܫ6P`RPA33 WЌv|D/*b]']UfEOqt3t['MF?IJJ( l@Uilti? ]}rvlBY;HQ^[_TA׵ҸKD6Ⱥ٫%E2ꐮR2r):עuF -mXuRYÅ`h0a3Occ;%]I~%F2e&[72Ō3h FE#xz`<^-"{?t. qv4z`qA!!tUKelf~NO EНjIop/Ŋؙ GwdQދs%`9I!2 `Y2BdzUQy)^Ac>Iۉ[w{T܄ɼ Zxf<#*0&K%_8r y@SnT"~Z -kB`G8".#˩Rv/<1Y)Aӊ#.A煹) g%R:8%2Y(_-B#;\ɟ 0f MTMȔA{Rxfʁe}-{ F.tOUA&drōfsuu3( 7 -ig& 0ї -4A(lE~N]2萈VQJ YlqK P{9~Y -:6MY ${ٚgz^\Fx-CWx{\F&8F/Ȫ?8ATH6=`E:6jbUL!d03^Tz_C$HT49aX16J֜R˖vO*cnu*" "74*JH3nT1,pBH4Z, c#{)q΢Ke. #7.sVK%oGҞ*-p2?9[z+oZ'fd\ZK4-J OUS{_~98𗸀97̥&rAj߰uŇ.̥l+,vs U$6S]9Y[KpG#C{pL[ ~JC tg:6sf4 jfnOUW[-.\ -r>ieů5;0:iPd=#G\NWRE+@ֶ͐'iKY0%uZ5'o0l5Nz^p#"\wHqnyUՠ'IOg!￯= -DrBA=O)eZa8'޷)%xi UiyAL<}~rRGN4qiiJiՄ:T;)ًc -l543&"5d|X-D#C\} 3V-بA -g"Do13Yfǀs'wߤ!5ȶ @eZf s --gL[W0.(u&T9UitsvwDʁv~*Rt?Ptn4m$ƸjY!čV cɛsUr]3VM[`7QQA˸+{~e7#"깚EڿDYy3V"ltwMaS3(X-Pq | ֕#cK[}5A"VM,{#S[+^[>؇j\HIIX -P>Fo%GT̖ͥldߐK%RTRThM@.u>RIrL9 V%Ixc+;[ple6G۪ORڡ =5տ4% "JSĐH~M$,W*s>фKL N6ہ@p@V+4lG`ѝ|b9B`Aխsb4Mk~Q ['L曖Q{sXI45HЧLgC:d geo*/WMm<b%|M9 ,N8,hHj'ֽ E)}2.5J\.,vA_"RvO6nnCym_~7?5W/?|mwfÚjPwS"(w+2 -endstream -endobj - -4978 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [214.10814 643.7794 225.10814 657.4414] - /Border [0 0 0] - /Dest 4553 0 R - /F 4 - /StructParent 262 - /Contents (64) ->> -endobj - -4979 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [448.53702 520.8834 459.53702 534.5454] - /Border [0 0 0] - /Dest 4554 0 R - /F 4 - /StructParent 263 - /Contents (65) ->> -endobj - -4980 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [214.26477 397.9874 225.26477 411.6494] - /Border [0 0 0] - /Dest 4555 0 R - /F 4 - /StructParent 264 - /Contents (66) ->> -endobj - -4981 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [127.68758 213.58142 138.68758 227.24341] - /Border [0 0 0] - /Dest 4556 0 R - /F 4 - /StructParent 265 - /Contents (67) ->> -endobj - -4982 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [297.06018 172.5954 308.06018 186.25739] - /Border [0 0 0] - /Dest 4557 0 R - /F 4 - /StructParent 266 - /Contents (68) ->> -endobj - -4983 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [418.09393 172.5954 429.09393 186.25739] - /Border [0 0 0] - /Dest 4477 0 R - /F 4 - /StructParent 267 - /Contents (21) ->> -endobj - -4984 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [402.94513 158.93341 413.94513 172.5954] - /Border [0 0 0] - /Dest 4558 0 R - /F 4 - /StructParent 268 - /Contents (69) ->> -endobj - -4985 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4360 0 R - /f1 4354 0 R - /f2 4384 0 R - /f3 4366 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 269 - /Tabs /S - /Parent 1 0 R - /Contents 4986 0 R - /Annots [4978 0 R 4979 0 R 4980 0 R 4981 0 R 4982 0 R 4983 0 R 4984 0 R] ->> -endobj - -4986 0 obj -<< - /Length 5815 - /Filter /FlateDecode ->> -stream -x][[~_q\mb_ -רRdߒ<׉FN7 -H:Gp8ijv^,Dp8f8x~yf3<}z6 7n]\~opo~|ڼ>{lg/~qv/W=_|_{&>\ 3oЃӁIp n~=ï7/pywvB Ǐ˟Ͼ{\Y o}r3˹ڃR5LM L̤ J?91\B-gj AOWU3ޥ<;3 *h_DȴiM#úɸlcbY2{|EmvD,U=?bJ㙰]0\~u_Vg{4n^z;_!yqP*"GyEV5$, YZIM[pPe## ׿$:sqSvפT -Yډ0LM~{"L׫|w1y"WùJ Ldt.(WBX#dF8-ZxS]6_?a2qPZ* ';)]ȶh3(\5QܤZjTTR- ēux=h,9\ 2mF#dJ" n] &7hI}-׸dΤK#u(N@h?։~F΋Ԩ҅1c7)e#/[Y&5hśvf:\ xUTAκ6ٕ@V-,vy2 ,+BYhb*l4N EFLzck!Hɜ\17߮syW8ųpeOp; R%;Q^0]JJ& GMHJ55!MNGaPRgѲf qXϥR46&&AχLd*OOnu*:#`Md:청`Y0-RsN3!0`%JerİLͧYHov6J+b[/[<.HDE.R-ҷ#ynEy঄eJ-{wy5OvS1\/3_׸LIeZycm>f)#Z/::\#?~b#+Cf ClXj/)U]Y%rժ1=!yNM -"s!6#ZPd6Zu!v&D08B2 -'GcA8슁ݬF -Id[؂qoQ <i?ߓ.0Cwv5@#opѨl40h),u@>:#/ [$kX4F=VYI"GowWZ͡_pI TrMC SjHA<k)GyI%cMv"EfF{Jq]v#噗_"z5g1qʍk47#Zr=AD\ySEe"]s~p;6j!)( 01+#FGd+,+tbE` "-&  DP})ByyJ+x>b`ZdžO+EnW]ڮ0ʀWip?ԡg3^K^7]>WQ#EN5]FjQJS3n O9U(zRٮ@tܩù[a5z 7bh(%UP8xfߜBfт&e ۹K(gmT]jZ C:R5s~EJ*j1w9kX9ő:F(mH=#fΑT,pfxd[5oIvdž5)V0C j2"Mb"&9jH(Q歑\1}|5KərR%/TdE$ſNߊD+!FXlrm*NB t ,jZ+e -:Ҫpq(edmY,@.ߋ#^wa/&K"Ks[v5֓c7Nۨ7#>rZ7z/8URxTk${lt_~q}xhJ />NpE.E<3ib+,@tT-C -y}!9ƍ}duj2n@ &C, U9.0-YD:RiD B۩'oeR#ZkGNJKeZf^7 lمYʏЪZ]ʠYw SΟ?Vi#+7. +kRbZ5X&?29!+)#bK汪6$eBE.rޝk䈽zQKz"=_7:s |g9ߴUtԧ>ʤf{<l{{%LV2mn5;!7\V:nȩVX<,X Wl+D @oKdTz O;UIws^9o%60fJM%|F/#(ɳ-$foa2TFWzĥN!}wVCӯVB3x܉L evlRnBInt=kxuJ&fp/Z8vo6s;c<eEnk.} vX!Eח.̢)Rx`X{1bM!MڹIp M#' ī;괕23'jFfc`pZ.ˎ2c?Ee쩮 Uh'ћNf6Ő͂F"=@Đx9lJ:ڛ(/cK3{jC\1a-rYX@o nur yz!oka2"G(68zrYJ(H+j~jhthI{U гk誇P?pJ~(aQxyHFXYNYW:M4{Q:󰲜qi 8AXHutvr;)ySlE~|9)N -^P91~h*%G6Ee_ -TST2er8}ro oc=NHMoIRbe۸G s#:OR{@j iMK_z*˦ 8ʝ!f 38:8Cj% -n$:FbE95粔ly)\l+w3 -z=$d9\̮UO?LvIci58,i㌣qqBNAlxU9'#+ܧ=tma;%pPo2(pv8`z} -:=pL@&,ځz#TvQ߮[7/r=caICa9Me+1WTYjüHi)l s%ωÔ!HF`c9ߊz ,%]2DCpf*:_d1W"FJWrr0 [ЍHv72NݖxУCl4/+k"8>HEΏOM+߳\ :&Kr㭆9{,c&t<ԕZc*ԜF+3 -V<+C 5x:ha}W(h%H3&۪tz4⡅MaҀ qtƟ0eډBF쑡0B/$%ɻMZA.EYR1$(OzV,(ukľͤ?fΨ=Ѳy&gNImTv]{YEθu3 (`ώ;+vM{^0W_zXܣgis`j@GA6I%`3J>QId }sq]W$*)/@Iř^OcQCT'`^ʦ)})?¾,g/]I+g[k8i!B%XTᅠL8YnŸARXfEA⧤=/da47lPY_9ntq/fVL)Z=2"/!d! ]NZ#Ǎ1=9$ e-!rܶM+O _`^foNM8ϡtt}aR*.¢rL?JR2ޱv*MWc :ӲnfkV*.q-WN?elLޖ%}|&ԢZ`g^5N~ZT*rBh{ST%RIXIf2ܐ A9S}0zS$O]Jbܤ0DH6UHTԀdbN@eh8 V+қn.·oOĦSQr)MPzL)\$4Ac q˅_@ uFp@?@1pD,]emx+9/⛑cp}@( c-J~nNZ(عR+<aMECBlր$$GT&ˍ#ᤛn~2 -(/TPP7'R8r YzX!}4ЇgAȃrNl0&/ -I钰6](0Bo$#"e@j~A>d)/`:@J,Ax1#V8DdV"?k 43%B+#2r~\~_R6OĢ3y&@3"0Mfƴ?"y~twz;0e30|ލ_]n&,cɢ:~m -endstream -endobj - -4987 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 642.7554 114.800316 656.4174] - /Border [0 0 0] - /Dest (sec:preliminary) - /F 4 - /StructParent 270 - /Contents (Section 2) ->> -endobj - -4988 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [348.7979 581.3074 402.13605 594.9694] - /Border [0 0 0] - /Dest (subsec:effects) - /F 4 - /StructParent 271 - /Contents (Section 2.1) ->> -endobj - -4989 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [338.8493 553.9834 349.8493 567.6454] - /Border [0 0 0] - /Dest 4559 0 R - /F 4 - /StructParent 272 - /Contents (70) ->> -endobj - -4990 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [355.08704 553.9834 366.08704 567.6454] - /Border [0 0 0] - /Dest 4560 0 R - /F 4 - /StructParent 273 - /Contents (71) ->> -endobj - -4991 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [419.0758 526.6594 430.0758 540.3214] - /Border [0 0 0] - /Dest 4561 0 R - /F 4 - /StructParent 274 - /Contents (72) ->> -endobj - -4992 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [245.40627 342.2534 256.40625 355.9154] - /Border [0 0 0] - /Dest 4562 0 R - /F 4 - /StructParent 275 - /Contents (73) ->> -endobj - -4993 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [193.23015 219.29541 244.80914 232.9574] - /Border [0 0 0] - /Dest (subsec:revertible-effects) - /F 4 - /StructParent 276 - /Contents (Section 3.1) ->> -endobj - -4994 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [395.6463 198.83337 406.6463 212.49542] - /Border [0 0 0] - /Dest 4563 0 R - /F 4 - /StructParent 277 - /Contents (74) ->> -endobj - -4995 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [360.2746 144.18542 371.2746 157.84741] - /Border [0 0 0] - /Dest 4564 0 R - /F 4 - /StructParent 278 - /Contents (75) ->> -endobj - -4996 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [378.12582 144.18542 389.12582 157.84741] - /Border [0 0 0] - /Dest 4565 0 R - /F 4 - /StructParent 279 - /Contents (76) ->> -endobj - -4997 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [75.57414 130.52338 86.57414 144.18542] - /Border [0 0 0] - /Dest 4566 0 R - /F 4 - /StructParent 280 - /Contents (77) ->> -endobj - -4998 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4354 0 R - /f1 4360 0 R - /f2 4366 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 281 - /Tabs /S - /Parent 1 0 R - /Contents 4999 0 R - /Annots [4987 0 R 4988 0 R 4989 0 R 4990 0 R 4991 0 R 4992 0 R 4993 0 R 4994 0 R 4995 0 R 4996 0 R 4997 0 R] ->> -endobj - -4999 0 obj -<< - /Length 5610 - /Filter /FlateDecode ->> -stream -x][d~_qfgMOjݥ8^o"! gR:$t.=/SUPEQ'䓫}s8?ۻ8|o~t~?޽]}i_}Wz;|׿_NvQ]"zll}lq%<>^*~w?H)>+M/Bӡ:bJmCzS;: *+6sSҝs85o-1*SMG_w7Zhٻ?s}c;= 8L{yv4|VDKqZY&EΎzԅ" C5|idZs$)cbˉ S駋8^X;95iuXKm.L$,Ũf*PB&ֲaײ|-)К*䒑w.Tzd4TjőyHEg62B];uS郍L\=_kV.[w`V楼N} )Օ X G:OG?imW ꩵ,X)N(3#^s8'`q81R7(oqJL3R;8lX?,DZYҹۤ[TmCSd:MQ,emNrS2i!1!/;ם6Mak+Wȱ/sNeN+ 8hT\|[m8ћ^l^S ri}P:YFzǾ}Y`Krf (Ϗ]o -&dS1>q|{`=CE83BJ&{$`Owxd 7*(?Q>0l u:+c܉Vjnf -l~]MYn8gBT6Ia? XFd3 Q;⹢yObNX)wY[8VG`#2gS`1"\ *B&T5D6fHЂΜGH$8瞞w.)q++獵mDZyst]۝ҙ6xxzE5Y5cYG-εHn)FBw:Ӿ5(?1Jxg_#ey+Uf5_Tzؘ(W~WD!7""5Bq0~aGդz2T|Y 6Aл-QJכ^&cV򒶕ڷ'hƳ,/o[#vĵA reֽ=102@su Y C>4ȑrgfQժu9:ufCjSTj:g N/"AZ>8m7u/|\ f1uT^()KbS_P? Xe{")df۸5 ++5\wQ vvOF>MHg@E\[*+ѬYm7uⰪ2~]֓t4٘:wXcEf.,- ^',k~TF:^y! -B[F^[܈:NEp!QK*IX*mW7(0vh츮$C`LHV~?әmfl ˚N`998V;mA8 -+T_ -fXuu(pf(D3A->1d!@IGVf3AW)v5=4GaC5-1 -߯hwEwzG3a -%Q Ii`J@&[`MԕֈԑQ!Jf1vlo-JX!,M!GidOPBm؛{68!* 5fhs![a|z.LKwj|ya~/PђT0]q:fS6C H{>5FĚ`J+a/ [l)ʨfy0ExI*̷Q6 -^JI8\ -0(=<WbC_wDV̩[b1䈑ڪPc3dq&692j -n DmXg V-ғ׶p:Rkjlzۛ7A {L3+L DQMIoB @VPtSM4qZބqh귄Ln\fGz 72ZѪXPק໡\1Է%ON lbj2< U3M-Z64D!%EpFI3Mv16n0](U BC˸K59vΕ. g|'&82zpSY(;Jѯ`OvF?sY'l0^B"Pf)2jPԨ'N *J5m^"-: -GڄH+l=s* <:!3m$N 6 W(oؓ\˩bJm$Erl$imLl9$ Q[.SOT0E8GA 4$m$㱐?%M"s E$/xۣS+$& -H8"VG-^2r5r*,j_7`FF&4iZtC|62@7Ln*el@5`?s(h!0 1Qp)gA]C$= 5 +e@jN< N2`ZK<+ ;@nIqֿ`=E[:C`x{eCZE׀0`j`C:* Rhe]*w ^g'0>`Ԍ RJr'IiFrjf.9* -Vz֋qm5>pPȴn^ 9v(1]PfJ{mO -L*ۋii{ı~cϩ8uF%NzE;.e_[E0+j5gA+#Ae \ :̴mmY#(KKѐ5텷֪5>̕eP2<`OJrm+6M@0q0Tíi5+'d4.-Y#Ɬ@}_w>g4 q_U1F٣GP붋Zq tRyDEߊySX;Z$wl-.m$vMM۬2:p!/f,d_k-^,=_[B,·[1 7B!SH&'֊(Md;>6r@wXS3C%O2Q))kk6b/(%ysp[v:o0x5v5-"фzjr4 H;f2,t ߀臄f+o * (p}-M@@ѭR¸Ϫh*z;\e5<8B:«L_8a -ǜW'KI(TY'L[&˜aUtc, 6RT BENR KMA -< B[:@[Y,P`8ysQ754 mwN1 )AxoFv'#\o{mSZӶ<~O򫯤|ŧcmo ޷sZpƮ5Hbx /d֙/ʻluZi*TqdT-'='j'\zOC5)[?D4-!z%t[ Y'MY*c%i*Ľ}!Xb5Gs(..E+]=Gff\ENP*^l;9вg4 34@zaa2_5J"56~$Ekk+8%kxu675v7}.}Mj2KxS - R ]bC#!hB+XNJbPXv  -ѕԖAsZ[kV&g6W儲Yrf 8kUrQeA,9]/t!;03hHюۊkQ)yN.ϯ uYe

> -endobj - -5001 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [288.27457 623.87244 299.27457 637.5344] - /Border [0 0 0] - /Dest 4567 0 R - /F 4 - /StructParent 283 - /Contents (78) ->> -endobj - -5002 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [307.49673 623.87244 318.49673 637.5344] - /Border [0 0 0] - /Dest 4568 0 R - /F 4 - /StructParent 284 - /Contents (79) ->> -endobj - -5003 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [116.09558 582.8864 127.09558 596.5484] - /Border [0 0 0] - /Dest 4569 0 R - /F 4 - /StructParent 285 - /Contents (80) ->> -endobj - -5004 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [467.82358 500.9144 518.84344 514.5764] - /Border [0 0 0] - /Dest (subsec:reactive-coeffects) - /F 4 - /StructParent 286 - /Contents (Section 3.2) ->> -endobj - -5005 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [277.32913 384.8184 288.32913 398.4804] - /Border [0 0 0] - /Dest 4570 0 R - /F 4 - /StructParent 287 - /Contents (81) ->> -endobj - -5006 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [294.39148 384.8184 305.39148 398.4804] - /Border [0 0 0] - /Dest 4571 0 R - /F 4 - /StructParent 288 - /Contents (82) ->> -endobj - -5007 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [224.39613 193.55042 235.39613 207.2124] - /Border [0 0 0] - /Dest 4572 0 R - /F 4 - /StructParent 289 - /Contents (83) ->> -endobj - -5008 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [240.76514 193.55042 251.76514 207.2124] - /Border [0 0 0] - /Dest 4573 0 R - /F 4 - /StructParent 290 - /Contents (84) ->> -endobj - -5009 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4360 0 R - /f1 4354 0 R - /f2 4366 0 R - /f3 4384 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 291 - /Tabs /S - /Parent 1 0 R - /Contents 5010 0 R - /Annots [5000 0 R 5001 0 R 5002 0 R 5003 0 R 5004 0 R 5005 0 R 5006 0 R 5007 0 R 5008 0 R] ->> -endobj - -5010 0 obj -<< - /Length 5477 - /Filter /FlateDecode ->> -stream -x=ْ$7nٞͤCctay֌vV\[< _  ."_>>>i_|w_4_y͡??߽|qg|ͧ7@ӯ?kdݨF6SM^&(imlz#>o>yljގw~凜K-wMtFwҸo5BJ{/A*kQ:$Um:DtrizdQEtRܕK'`jұցVd5~f~5t#Yj]s7Sypg2kа=mm{ -$y_ȄZ?4y͟hX`pP]:j@T/480}< -Q!A76ަ 5`3Ӈ!W(JTN/'s߽((u*{d.45!z3F&3)sR2L4#+*fטA.OChR ԦD*na·f5qP}qQUhK?En٥9biH!M6YG*PnNS3O0S!?7+<)Iz-<4e5d?iϐn)F$F"%ړ)4䃬hՑY U:^ +D(xZj0Dwk2QlyQ͖:NI+bFSk(66:&q>:9[So*3#4L@{@yBX6=DVm5gmDwpZΡjnzgrRb=iY:c^*`j*W J)vK!2={,ƻoE?켋&8=j>|,a,hcXDt{Gr4I/=N ނ{a}Wqh[$m1PXՓuPaXk>ٮynv*V`]XOӾ" (_Ǹ#1<~#=Lծ%^҆IKՑ%9!tWQIb1.6 YC;ʼKuN8/m^ЅMN@U~DJeV 'cE&kE5AڸUKHL#äLX~Ufi -.¯d @dܰ7`o (Mw}XWeЀZפM_3SO n&SU*r(\0kJ:?qiDutB}7}rl5ykQriCN6jt)3-')@E-U3$`iHDWtaMC+ŋ㯏o/> )_q?'+O9tkJɗ\J$90mpйlؐX rSVm GR6uojDϹx)*cĴIդ3ozTćѬ*/'h -_?nvwݡ*d^BEyrq4ɜFYQ^4X׬SWU'JҷF"%F)D9EɥjӥK׋*5J9Պ֚$[$*ƢmBwkUƷbNftjД=?ϑb4Ȁp!P.& .j(_#8f鶸 58/CՆ UWBի(aR׳|df2p - "is?c2 >AOk.>& --*#dҰ)[a`A] gDխLNɦ5iAy֩oZ}jU7k+eZDPC꺲dkTQ-VJ -r:atTf=NWp?fz[m Kv%VlAj:S!#zD%;m4J -@ב[d@%(0;YTWq9]:5XkD{L߷E6AD!s WN(c, 9]D+#yPg2ɞ+N'smTw :9>wkvx«BZD=~tCZH;i5 zȎ/67xGȾF.kq6][+6` B<)}D$`Ђ"-A g55^\JҔzyFmI8zYώzL:цUS_ӮqF! jv$T11A_O}]bC5ŀeGa:&G,\A -;r<CEuR -:d!-fuֹi'.7nxX6ް^Q -׽1I_jP1*_xgAF.jnb zh"@ЖT[%w K@Xa*f!ȡL%ǜ `\JWHuh*`wJ_SAUI vMPӈTNij)JgC^L}LYCۜ%g)uWsTڊ +ephgW9\1IUhİ(FфH W<=),PM$UcQ7Ұޤ>8+f7ʐs֕v@D_~9 +W')EWad!@|H^ 3/A*PVW􄞓(ҐJZ:Դ[/^vQ$ՠڈ6FVWfD N'VAkZ(fcd>eڎ4gBʖ~gT]Tpڂe>JϑvuLϩZIMJxuRd;8:F'GC9'qF\6?]-$flJ12:"i3[G`HKf U…!WtȞL(*Bw=1,lAwHbDlq·2]?!t./XRa~mfh7PhX)w"E4ȗ8UZ8]'!nL &jCgXņ8>eSVWy+zkZE*VMjƀZTLhi}ˊmɩ,|['-ZT[VW$P=U*TS7J3FӔZ(3 -TT6;h˗EveGi_).a&7JLyJ&IT`Kz l\@ +:?Op|{_|w?t~ix}pǟ.lZ()s*c?ߔ -endstream -endobj - -5011 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [406.6614 657.4414 417.6614 671.1034] - /Border [0 0 0] - /Dest 4532 0 R - /F 4 - /StructParent 292 - /Contents (45) ->> -endobj - -5012 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [313.45062 643.7794 324.45062 657.4414] - /Border [0 0 0] - /Dest 4533 0 R - /F 4 - /StructParent 293 - /Contents (46) ->> -endobj - -5013 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [468.4083 643.7794 519.39343 657.4414] - /Border [0 0 0] - /Dest (subsec:scaling) - /F 4 - /StructParent 294 - /Contents (Section 5.1) ->> -endobj - -5014 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [243.872 602.7934 254.872 616.4554] - /Border [0 0 0] - /Dest 4574 0 R - /F 4 - /StructParent 295 - /Contents (85) ->> -endobj - -5015 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [117.43649 589.1314 128.4365 602.7934] - /Border [0 0 0] - /Dest 4575 0 R - /F 4 - /StructParent 296 - /Contents (86) ->> -endobj - -5016 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [281.27063 589.1314 292.27063 602.7934] - /Border [0 0 0] - /Dest 4576 0 R - /F 4 - /StructParent 297 - /Contents (87) ->> -endobj - -5017 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [508.70145 561.8074 519.7015 575.46936] - /Border [0 0 0] - /Dest 4577 0 R - /F 4 - /StructParent 298 - /Contents (88) ->> -endobj - -5018 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [369.36508 534.4834 380.36508 548.1454] - /Border [0 0 0] - /Dest 4470 0 R - /F 4 - /StructParent 299 - /Contents (14) ->> -endobj - -5019 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [152.61218 493.4974 163.61218 507.1594] - /Border [0 0 0] - /Dest 4523 0 R - /F 4 - /StructParent 300 - /Contents (42) ->> -endobj - -5020 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [204.64723 493.4974 215.64723 507.1594] - /Border [0 0 0] - /Dest 4524 0 R - /F 4 - /StructParent 301 - /Contents (43) ->> -endobj - -5021 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [178.02861 466.1734 229.13483 479.8354] - /Border [0 0 0] - /Dest (subsec:loader-hmr) - /F 4 - /StructParent 302 - /Contents (Section 4.2) ->> -endobj - -5022 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [130.3328 336.4154 141.3328 350.0774] - /Border [0 0 0] - /Dest 4531 0 R - /F 4 - /StructParent 303 - /Contents (44) ->> -endobj - -5023 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [311.4504 322.75342 322.4504 336.4154] - /Border [0 0 0] - /Dest 4578 0 R - /F 4 - /StructParent 304 - /Contents (89) ->> -endobj - -5024 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [339.76633 309.09143 350.76633 322.75342] - /Border [0 0 0] - /Dest 4493 0 R - /F 4 - /StructParent 305 - /Contents (37) ->> -endobj - -5025 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [182.36285 281.7674 193.36285 295.42938] - /Border [0 0 0] - /Dest 4579 0 R - /F 4 - /StructParent 306 - /Contents (90) ->> -endobj - -5026 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [303.63855 281.7674 314.63855 295.42938] - /Border [0 0 0] - /Dest 4580 0 R - /F 4 - /StructParent 307 - /Contents (91) ->> -endobj - -5027 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [143.21643 240.78137 204.36157 254.44342] - /Border [0 0 0] - /Dest (subsubsec:motivation-plugins) - /F 4 - /StructParent 308 - /Contents (Section 1.2.1) ->> -endobj - -5028 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [339.1266 240.78137 350.1266 254.44342] - /Border [0 0 0] - /Dest 4581 0 R - /F 4 - /StructParent 309 - /Contents (92) ->> -endobj - -5029 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4360 0 R - /f1 4354 0 R - /f2 4366 0 R - /f3 4378 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 310 - /Tabs /S - /Parent 1 0 R - /Contents 5030 0 R - /Annots [5011 0 R 5012 0 R 5013 0 R 5014 0 R 5015 0 R 5016 0 R 5017 0 R 5018 0 R 5019 0 R 5020 0 R 5021 0 R 5022 0 R 5023 0 R 5024 0 R 5025 0 R 5026 0 R 5027 0 R 5028 0 R] ->> -endobj - -5030 0 obj -<< - /Length 6837 - /Filter /FlateDecode ->> -stream -x=r7vQ(mL -Ľv"7)%eebʙvO܀4yhq=88splw?ݼv_|㟾ǻfw?._M;3&Vj(mb<}-Fy/~K#Lm(>}T{\~Gv~Mmi\n9t`-^i'EW ڙGB>fcۜ-v~Zܾl>%QVZKaDꬫ A}ؽ׋/^^'M1H1\PaS#PGp\-xڸjhPnB-.JUТONZxX{| s_5C)~ 0␝B?8C;QpTyݯ]<]uVZ!Hho{zrLV5*s>,{Gbh7߿4(w܁6+;oЌOO;{bHaIp?K_NPx5M78a#-G@/?5.Hj6`[NC%q9wt{Llj[ MS2Oh>H n3jN\f2T]D4cԐu8#9]!#\a -fyσ"x봔pßHE)~+me!X@VI{{,cr - 'ё:_ --KKK?tRTu.0)s[d<`hLܨ՟ЩhMCQlH*C FUJB4>UPi[&:UHǞ`(qoP/8僎VKH>o}*xY CZ@N:540&o -'"ں0)VZ'_U_:mp6ڤC;ڄ;~(Y*\v~ }J= `ጤ'VUEɼQapN*Ƚ!߸E,? ~?=udL8Ug @^57rY[[H]9{̸Wo +㑰IZ[ Bjψ OZ5Dc˿o}_~?npdu9$4Z C3YǿdvՅ ĨͭX4JA_M[QeNe{<9c3#>>5 a46A%5gDer؆f`a. -CTD:BAwtalZ 6)Z.CmR{-ZTl?F&^|T^G6d7V@@6Rx/U b8L'^P\]-Z5 =Qz) y*jz-_pb<|V9 (> Y$`UM>줉:`̠}/aFblWaPajSħfޥ#tb^(_,~1&- Gv*DRbIFAG-Ʀ8RpɶmׄYrTyHqۀ Ft-;&hf"і<@a[#Zv,Rj=,R^=|J%D6G{e>K)aSCN,'(]+ZDG-oMOT֋ wјpPF &t?""Rɥe 0-5#օUr]iQ^@kJ<]F9oMDIcdOF/ƥ4Cj𾪑xB񏟮}#xb,M1n)jT=V?vg2ef ey\YPzpN|%hR0<u^BtP0r OFX/ jt0 X^ (3txڹzRI7jѹDyK<̳.HS( 24hMV٫Xz&IYo˫ -*ս;[]U7 TdIYDH ܠ bTۑuinAd-T/C&:kO4KmQ0:ּd@JP};pF1XJFFbЃM2K #gcV.6%R<_F( ҥOK—FνB23GRVQ p`J>P"=o6Sj튲Z8 -}%δKh_zh0fYo9|}QQ%Ͱ J%Ca+P2Uch>P//"vozx~1.L›%wGP!Cg7W*HʑAՀ zF2ƙh+PmmBؿ 7"ckDdr1kX#OfBgH8L X]j^4uUƯtDK"fPˢT'E:7oTiJfUX}/BjiT6]BtHj&&;2ҪEv1Yd.[x)5je$EfWцDdkB!̡$ө'Cku]! c*fًa8;?n(dU}5-{P<6RBq# 췪OR5HL,s:%%F/-ΌROjHD* XӕL* n^B;`FfW"z o~tf3nuqQb-JĈN4(mEzlTwpQ>8WWЮ6PjHE(N↠KoI!$hu_\neM:eNA΋Qz+ %WDa2NH'rVHA&H)-¤zL1I]; Wz6cI>ԙ&4JLBS_)۽ sfS3*h$=ŢqTmԥDBCKJ -+OZϰHRO4T V)Y\O] Nyߤ\MAu?nhD׊v :|H_B]Jv0$kh=%p`Kˆ9}v-rH?`o{ڿ"BnK4fW -Wwjpq q܅#%iS!j{U0\y5Er͏, WYn:I(t鯰~ƟN^ܥ"wS)AM=콊)gdۜ1OE[dDyKʸ<ؖi0(\ 2hJ<gpiU<kL=d"T+/mشlSP6j9_x \f6 =Ԑ"^ߊhL6M]Z0QY7lJT/~U"@yV=7F}[jPJVU=Sb{2DQyl),L{k.<2AESϞ]fV+lj|\1ƛE4'2Gj}T}u,'cm*8d&a|rJaw<3= -7%9Iȫ6lL340PRōUlE}I$,m˒*BOO&ɡI[UOCy=l]} ,c羕RojhWB_ $F%%(Jz⡐fůaN J亐/Drd&m|MBP~[a >j %9 dWjiicdAkZK|sxűdt@E"5],gˏ`H'G%5!ՋMv@?2͡"bEYEG66bS=tjShmjۭk3&Bk=mShi$br5 -d:wP1$M:rqI14u@6XGTc47 b17u24|&.'@lRVNEf R\7~4b6)!nB9"j+W2BPZM:eR -s54?eXGW܇\JnR\w0.~eXDk*tN`IKuϜh@ ~"R-rddEo?PZhk *u0(|)K"(>(vvM?T7tJ_7* $|艒M0],<[qxDeIfꌱy!L6 `tC+원Ie1z1'rhdSdYo 0*&z$*ƅvj]6jB,Wrь:aF5ʥ 1dQWhR& =("5i?@lXUO'7)U ޻h:܍r{!mVK H?Z{qY#+$y@|mxVv2՞`_VV{o6_cQ?g3̔-AhG Zs@PKcqNTKғ FP"GC F.@cL:^gDXY0Qi3L(,1oCMĴKvO2`P5lQ0' -WeUY1'tTbX4 z0ۥ,@GA%@S[ !5p52\;Uw*.GsFHIŦF꡴7 -RJ+ -+#,, JR=6Wym pnq-)Kt4BbLJ Z&1NfUNA0ZSQtqx}dxq-2.^f={*jI'/љ#sy6c۩%;nbHFjO.Бa,߯`Y - U%b!m3s٪T>xBs3fMb 3pt,eKm W?j) W3i t͒ځ*f<0yz/L+6ь.g r: x`zB%.?CA4SWRFH+ +TY -۔X'=ղDX X POŸsFuc5Xr$o::H }iPxb l\. y!$M) =7kmeJc8to^Έl9%p ^%b -F?Ntq ,˹ȬVA}II6fu -ib9iemE`K maM~ H=;0U!6V,gR*,c3HXDVh}sFy[1R Z%y;t-۪pV^`הaf &=F芻Syj$ĉ\FʌޓidWB=h.ٌ/ WxVTWtNqnV{4z tKPO5xi(*cHBlFYH E Nz}.|#4 lw{vwwo~}ٻw0oov_{wf?oo~y{{s-9oqC |Q'w -endstream -endobj - -5031 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [489.93527 732.5514 500.93527 746.2134] - /Border [0 0 0] - /Dest 4582 0 R - /F 4 - /StructParent 311 - /Contents (93) ->> -endobj - -5032 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [508.15146 732.5514 519.1514 746.2134] - /Border [0 0 0] - /Dest 4583 0 R - /F 4 - /StructParent 312 - /Contents (94) ->> -endobj - -5033 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [313.10226 718.8894 324.10226 732.5514] - /Border [0 0 0] - /Dest 4584 0 R - /F 4 - /StructParent 313 - /Contents (95) ->> -endobj - -5034 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [491.42682 691.5654 502.42682 705.2274] - /Border [0 0 0] - /Dest 4585 0 R - /F 4 - /StructParent 314 - /Contents (96) ->> -endobj - -5035 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [508.70145 691.5654 519.7015 705.2274] - /Border [0 0 0] - /Dest 4586 0 R - /F 4 - /StructParent 315 - /Contents (97) ->> -endobj - -5036 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [267.74725 677.9034 278.74725 691.5654] - /Border [0 0 0] - /Dest 4587 0 R - /F 4 - /StructParent 316 - /Contents (98) ->> -endobj - -5037 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [294.65292 664.2414 305.65292 677.9034] - /Border [0 0 0] - /Dest 4588 0 R - /F 4 - /StructParent 317 - /Contents (99) ->> -endobj - -5038 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [345.86566 664.2414 351.36566 677.9034] - /Border [0 0 0] - /Dest 4459 0 R - /F 4 - /StructParent 318 - /Contents (4) ->> -endobj - -5039 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [508.70145 664.2414 519.7015 677.9034] - /Border [0 0 0] - /Dest 4543 0 R - /F 4 - /StructParent 319 - /Contents (55) ->> -endobj - -5040 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [409.15625 473.5904 420.15625 487.2524] - /Border [0 0 0] - /Dest 4496 0 R - /F 4 - /StructParent 320 - /Contents (39) ->> -endobj - -5041 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [502.65146 473.5904 519.1514 487.2524] - /Border [0 0 0] - /Dest 4589 0 R - /F 4 - /StructParent 321 - /Contents (100) ->> -endobj - -5042 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [160.42686 377.9564 211.92822 391.6184] - /Border [0 0 0] - /Dest (subsec:reactive-coeffects) - /F 4 - /StructParent 322 - /Contents (Section 3.2) ->> -endobj - -5043 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [404.4731 330.1704 420.9731 343.8324] - /Border [0 0 0] - /Dest 4590 0 R - /F 4 - /StructParent 323 - /Contents (101) ->> -endobj - -5044 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [426.4229 330.1704 442.9229 343.8324] - /Border [0 0 0] - /Dest 4591 0 R - /F 4 - /StructParent 324 - /Contents (102) ->> -endobj - -5045 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [420.18588 302.84637 436.68588 316.50842] - /Border [0 0 0] - /Dest 4591 0 R - /F 4 - /StructParent 325 - /Contents (102) ->> -endobj - -5046 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [423.9508 275.5224 434.9508 289.1844] - /Border [0 0 0] - /Dest 4534 0 R - /F 4 - /StructParent 326 - /Contents (47) ->> -endobj - -5047 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [216.92166 248.19843 269.61102 261.8604] - /Border [0 0 0] - /Dest (subsec:scaling) - /F 4 - /StructParent 327 - /Contents (Section 5.1) ->> -endobj - -5048 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [75.88214 152.56439 135.71114 166.22638] - /Border [0 0 0] - /Dest (subsubsec:lifecycle-asynchrony) - /F 4 - /StructParent 328 - /Contents (Section 3.3.4) ->> -endobj - -5049 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [399.4341 132.10242 415.9341 145.7644] - /Border [0 0 0] - /Dest 4592 0 R - /F 4 - /StructParent 329 - /Contents (103) ->> -endobj - -5050 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [176.83247 118.44043 193.33247 132.10242] - /Border [0 0 0] - /Dest 4593 0 R - /F 4 - /StructParent 330 - /Contents (104) ->> -endobj - -5051 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [198.4779 118.44043 214.9779 132.10242] - /Border [0 0 0] - /Dest 4594 0 R - /F 4 - /StructParent 331 - /Contents (105) ->> -endobj - -5052 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [280.25635 91.116394 296.75635 104.77838] - /Border [0 0 0] - /Dest 4595 0 R - /F 4 - /StructParent 332 - /Contents (106) ->> -endobj - -5053 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4354 0 R - /f1 4360 0 R - /f2 4378 0 R - /f3 4366 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 333 - /Tabs /S - /Parent 1 0 R - /Contents 5054 0 R - /Annots [5031 0 R 5032 0 R 5033 0 R 5034 0 R 5035 0 R 5036 0 R 5037 0 R 5038 0 R 5039 0 R 5040 0 R 5041 0 R 5042 0 R 5043 0 R 5044 0 R 5045 0 R 5046 0 R 5047 0 R 5048 0 R 5049 0 R 5050 0 R 5051 0 R 5052 0 R] ->> -endobj - -5054 0 obj -<< - /Length 6459 - /Filter /FlateDecode ->> -stream -x=ks+FG.T ޏQNUtѕ]W>f]uW3 4 bVb$h4w/.v{w? ~Wv~z8vۻ?l>n.^o^]|0ۛWjnwi^|wLY+t`Ry=ݿOʦbjFݔIɃ\䇟5 h5B0of-_+|~nۋE '!E`\Apn=v0uؖVZj"XU:QQWxLq~'ލ>0\&'=Ahxhq܌O?n0=oT<> Rr~S33aDxqRIf=ƒ1c,b\dS(aFStf,đ-d؇{t\E$:퇄{~!y3nKrI0O˪g^R1灉XxmJ: t/&h+<0)=L䫫5z`AE - |- ELJظ0 DM_WcKż ZʣU% Bm!2; -t`,{apE*o2$ALkO,1#/G(CqTУ<4 %\-UE)h >Jnܔ*{S؇,[fM`v̔gKTys2'cy漎YZc"I?U#[MJu4KgqÂ2&T),?o``@#4-ީ?? m:[)W}x]u 2Cݢ0[ʝ_L=|TeFLK;9B:dDr|,`쀝:QpWiSGG/pɛ T&xKi0]#sΣ0LPL׵(s7 Ic~ڢp%eNxpm:2f ~~u,kAnˊP+8.Y @ǂ&j&r¤|Ӷ61ѢXD,5a_FJ(pPGۭ2hf 8wG܁nh@LYT?[s4)Dz۵`8{~Q]歱{.`j)1j ;eY酾!qhim!M,*F;@7 KW,y&w/ը0}n ݹzɭ9, -*d+q3+pO,(Mꂬ-jLn6,zUCd ^'B9Ac -_ Xa# -Wq\I= ᗥS_Z-HqF5/ -Fꅱ,x'R1C K#o"6Ġ0k90Hk>脼g )٠e{p3@ ZDw}AoL9BG%0LbAЁi&4W&eOAeĩ2Ƕňgs_}X>.݅P<(hH\"HE~=0FmHX.#j[Ox#RtN --EP,1WcoMEJSW5nd]Wg)9neЩh+}m3mˑ!a I|SyQX{WJ1|wu4$C1cN'6sXWWC8LyYe,Ha bfxs'uT?Z{[ܘM)+01Cm ^:4G=fFki2أZ Mۋh*v*.pzDig)#3缸vL -?KJ? - -%Rl'ݲHn6oS#JAu#rq͖:rVXϢÃ}o2%/'u8JO?HP-Mߡewʲh"~Eq -tBf8ιHEN~;JWDd]Պ/cƦiBwi١T̹P ү,4`*HFh\R0m97c:(mWҟL01"{23m -1mK4 [ -RTV2goBOu8!: Z<7~ J؉vP51d}>=a2ȋ9p&Dsw7lVy~Z8)$%Z1RM'X/J_Eg -ɦWt43RcwJ.D-zL83@@Ev`RKOP5; -bp܌HmF-8i矋D:D<Z>ZP]Z[ͼ7wO3[Зg)u˴y .@1@EIW#kW!!> Diӌ@ rҁ(Hg`B -G8W@6%єut9 iU&RGU_ryc9F5:BhͥM|z,Ha*uJ3D:bՐfnBpΞOpH#mLFuEB=;+|څ+xY0elY%tvpr=قF:!YX*A3ٲwY Η 5iI,ƒGw#GN 8;I`M /z~jWa$&eq?&iѩsXd/0HEzDmT+f0$!0؟M 6l:ͺ^BfQ8eQ66Yxb mqi%k6sꣂ" ΥiU, dFI- cxVGL -`MA6֊z ->萚d PQ 1D5^ -~GrSR $jS18jchusk=C8͓A=\M٢4?fv(YYK -^Ը>JX{ϟ\3JBa´Ԣw.#*7!LXQCcUD 2gRsZس6ۻ abƆ~ykK.eƪФ<4N\$"KüMW年M,f&aNU3j˫xІO,ɺB1{'jbS0DV2hԞWHHB:ҵCyq5;iOhGG`?OcFYubp ՄɦdI0iHgA+|ݞ.1Rzx͜x#ZD]EDsٕ#+-Y-<U:R1TN+.I~2z!iW -) ] %Tr6?W~1g W ;܅LH]l;˼ZbK,EZ45'~UT˧.?)4 {]~r|ƛ at$l | eڹe<'j^`UʆV׼$dm7|c>A,}T-8|zqy4v cR2oy*hղqYG`UTgWO|1Pᯏ ߉zTFnmxMլָ?CQ{%$#l6ˉ «L%#YV᫵̓oz1;IJ'Y@\b(`LhfZHΗGvɖG9Gx4~]5 %d3fW]fO)ͷL -dw02XziPml?2.I*>_GVoC-m@K4:Zi< -_Z?s=O7_~n?~w7?n=퇏B`AsV -endstream -endobj - -5055 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [237.94225 435.3644 299.514 449.0264] - /Border [0 0 0] - /Dest (subsubsec:motivation-harnesses) - /F 4 - /StructParent 334 - /Contents (Section 1.2.2) ->> -endobj - -5056 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 281.5974 85.78214 295.2594] - /Border [0 0 0] - /Dest 4596 0 R - /F 4 - /StructParent 335 - /Contents ([1]) ->> -endobj - -5057 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [413.16415 267.93542 523.01013 281.5974] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/361598.361623) - >> - /F 4 - /StructParent 336 - /Contents (https://doi.org/10.1145/361598.361623) ->> -endobj - -5058 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 247.47339 85.78214 261.13538] - /Border [0 0 0] - /Dest 4597 0 R - /F 4 - /StructParent 337 - /Contents ([2]) ->> -endobj - -5059 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [169.31615 233.8114 290.16214 247.47339] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/1053331.1053345) - >> - /F 4 - /StructParent 338 - /Contents (https://doi.org/10.1145/1053331.1053345) ->> -endobj - -5060 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 213.34943 85.78214 227.01141] - /Border [0 0 0] - /Dest 4598 0 R - /F 4 - /StructParent 339 - /Contents ([3]) ->> -endobj - -5061 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [442.35815 199.68738 521.95416 213.34943] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/2890784) - >> - /F 4 - /StructParent 340 - /Contents (https://doi.org/10.1145/2890784) ->> -endobj - -5062 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 179.2254 85.78214 192.88739] - /Border [0 0 0] - /Dest 4599 0 R - /F 4 - /StructParent 341 - /Contents ([4]) ->> -endobj - -5063 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 158.76343 85.78214 172.42542] - /Border [0 0 0] - /Dest 4600 0 R - /F 4 - /StructParent 342 - /Contents ([5]) ->> -endobj - -5064 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [275.27914 117.777405 385.12515 131.43939] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/378795.378858) - >> - /F 4 - /StructParent 343 - /Contents (https://doi.org/10.1145/378795.378858) ->> -endobj - -5065 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 97.31543 85.78214 110.97742] - /Border [0 0 0] - /Dest 4601 0 R - /F 4 - /StructParent 344 - /Contents ([6]) ->> -endobj - -5066 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4366 0 R - /f1 4360 0 R - /f2 4354 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 345 - /Tabs /S - /Parent 1 0 R - /Contents 5067 0 R - /Annots [5055 0 R 5056 0 R 5057 0 R 5058 0 R 5059 0 R 5060 0 R 5061 0 R 5062 0 R 5063 0 R 5064 0 R 5065 0 R] ->> -endobj - -5067 0 obj -<< - /Length 5044 - /Filter /FlateDecode ->> -stream -x=[w$&0l,n,,@<&f3iuKRI}<|/ϴ.RT~tzx{j>i_N{?}???4|f폯o~|꓋Ooh_~W cB4͕hgB7NwLV7?]\_ <]\?Fqtqο OoRaw߄;|ӛqcYЦHQCsrjKι?T?9s H6#zFDӃ(;__b++| -_xІqι:?Fx&a?rY7`Pd{6F6BūaDA2Q` mw@7FN%,I 3n:ņK6N(:I1=<<'r%1>4rE|Ƶ?e4uIt;X^08eĉhu6_NlŸRrf/ᕶr@/iւ1]}#IE/s-C+י- 86pKRf7 -l|f*+'-d3)'m΃m"BA+."ZUKSlj[ش9EB̎ 3 ,"AȀh fy(ki+YiU5X0F?zǖ1m.S[#XJ3icޡEE" cTO[ _d_cBjPj5wlx#3A9d]>`N߼\4apUЖbH^zr[0F%)$d`zTKQafLP3O:[Lgv[̮uVhPZ -xew\HiI!찎# rJ! Gj3XYa!o|Zk]l3G;/tIikyE J,X׶x(sj[-ghij0D鞎CT%4>tcGvLkr{Ν3& n!J/=d;nCǒʶL-Ղ(Tc҂Mh^q1 8ZN{F=;`Y i;;نB -Χ|*c:\}'/VEޣ[u J,ˀ4&;8vP -mgfM0y)ɸ[#]ەmʼnҺ >!$ύ ꁧ>$<Ocɇ}BHX}[n7$*$Bs`, VBB <]Z)wV pi^!.t{^`'lna3c`#0i^[~Eovd8J41ݐZNF _iG(ҝ[˄dC!0X%ižJ^Zߕs{%%D yM}Fij֠ǑO7u wxxt`>2ۊ`bѲnI1b.+l飝dFl] nA6EL.f@\ԷW ͯ?D򹆐1[}]"Ē+Zԙdl0$}q]DfbED^[fnzܡi|[ཬO/tL4Q88V KJ4@MT! E5C - -)EVm:R4v[ZôL+-4pA߮ǦmLk5A aq`;D_J@poXslJX4CK@9*R\!"dPe MVzVC*R=kTZh˯<%j!%MFLMJuOu@BvgYr9^],J``zKM3;}||_Kf9jyӼ2{AQ'&]u1Mh)ҙ&O? -Հ"yV0w̯M/)bp4)nO*T2yLxMp0a ):4_FW"?;p&SUiFvdt}N~j88W$Ʈ=6Vb^l&.0@62eժP$I&'6?!ݚ^QT>:-M28f}7ۻQ7T-9OK;^eрyl ;̀,t!gm3g!Irx+9b>|kjrDu$父yκ'9 u$[ (8;ٳfWkWj.1ҙeZl3eI6uQd|4T t:\ESB2}ἎLj];,1Pv#^/jfTj"z59>-VHƜ6}Nɾvhذ҂ /?,<鑨u˔9ve t$_&&!d2K% Ht4 s]"ܔ`e5ǩ]f=ޗy - ]LH3\`"x3WR^8/yO?>#1ܡ2*qY)92㧧T3GOȞgR9xy{bטS -Ŭ*0TP&]PR'1^@#&<58 ]=鐑&5?xIȩȔ6 -YiZ6j^)pXWz>?Ɔbv#R\-Hӓi8]FnDFYk \l3n̗/60 1-4hR.m;&UUFIL2`i+---vBPwlK: YybiI9x"E;)ZeZ` W<Ƿ k0a;-2 "-CWȎ3ae/7J.eimJS |/WH$ d ] PDA` 3Kն'UMlxBݔ/ž`pFO5ci뢍@_ v|A,D61Y|͂:Km$ޓUYW0\2'6.qHS:kVԐcꈎ3eealU&R2oO_3 -#hOWճA .@WMфb0/5Z-R,8!ZɤWҊ -U4{L\yMU)DyIxfa[B@hp Ħ}bDwzFC|k1?uP#ʛc\S|?Gu4Ʈ -/܉J҄؋HOjs"r5'i҂5Sc -FX2JKXo{uV[Ŷ(l +klm/B  U&t 6TL;_KÁPJD%a#jZidJGO/YiHfjThy4;=P:_-Ү`Nr\ ulXqюU3flg]{I -voB@XtB0d1҂)D Sdذw#GcX *_:,U8>[;mWr)ջG2X. Bi'w~{hcF5ƀ4='J0lHƌ\D3ZTA:&[kTbn)ʐ6HLQ H e[~RclC`3+j(7g"@ޒ#Ť Lτ&fޑy㐜\nq Hl\]ʲ/p`<1WXv9 als]w^7h2c+.{0!MoAذ*#3#Li&nnf`<# =qt]{2/"6:j|ǤmZU/Iy͗C'Q@<|);DɿϞż4ѥoQ.v;k^q -lj -6&]smj,!Okuݕ'F|tzx{No?4^tzrwgoޜn_x{zI&k#X'YOH_w -endstream -endobj - -5068 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 746.2134 85.78214 759.87537] - /Border [0 0 0] - /Dest 4602 0 R - /F 4 - /StructParent 346 - /Contents ([7]) ->> -endobj - -5069 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [183.08813 732.5514 419.91815 746.2134] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://openai.com/index/harness-engineering/) - >> - /F 4 - /StructParent 347 - /Contents (https://openai.com/index/harness-engineering/) ->> -endobj - -5070 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 712.0894 85.78214 725.7514] - /Border [0 0 0] - /Dest 4602 0 R - /F 4 - /StructParent 348 - /Contents ([8]) ->> -endobj - -5071 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [242.77809 698.42737 526.4241 712.0894] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://www.anthropic.com/engineering/harness-design-long-running-apps) - >> - /F 4 - /StructParent 349 - /Contents (https://www.anthropic.com/engineering/harness-design-long-running-apps) ->> -endobj - -5072 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [103.932144 684.7654 195.93614 698.42737] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://www.anthropic.com/engineering/harness-design-long-running-apps) - >> - /F 4 - /StructParent 350 - /Contents (https://www.anthropic.com/engineering/harness-design-long-running-apps) ->> -endobj - -5073 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 664.3034 85.78214 677.9654] - /Border [0 0 0] - /Dest 4602 0 R - /F 4 - /StructParent 351 - /Contents ([9]) ->> -endobj - -5074 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [387.49014 650.6414 521.23914 664.3034] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1007/s11704-024-40231-1) - >> - /F 4 - /StructParent 352 - /Contents (https://doi.org/10.1007/s11704-024-40231-1) ->> -endobj - -5075 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 630.1794 91.28214 643.84143] - /Border [0 0 0] - /Dest 4603 0 R - /F 4 - /StructParent 353 - /Contents ([10]) ->> -endobj - -5076 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [125.31614 616.5174 204.91214 630.1794] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/3704435) - >> - /F 4 - /StructParent 354 - /Contents (https://doi.org/10.1145/3704435) ->> -endobj - -5077 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 596.0554 91.28214 609.7174] - /Border [0 0 0] - /Dest 4604 0 R - /F 4 - /StructParent 355 - /Contents ([11]) ->> -endobj - -5078 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 561.9314 91.28214 575.5934] - /Border [0 0 0] - /Dest 4605 0 R - /F 4 - /StructParent 356 - /Contents ([12]) ->> -endobj - -5079 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [355.66714 534.6074 467.96616 548.2694] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.24963/ijcai.2024/890) - >> - /F 4 - /StructParent 357 - /Contents (https://doi.org/10.24963/ijcai.2024/890) ->> -endobj - -5080 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 514.1454 91.28214 527.8074] - /Border [0 0 0] - /Dest 4606 0 R - /F 4 - /StructParent 358 - /Contents ([13]) ->> -endobj - -5081 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 466.3594 91.28214 480.0214] - /Border [0 0 0] - /Dest 4607 0 R - /F 4 - /StructParent 359 - /Contents ([14]) ->> -endobj - -5082 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 432.2354 91.28214 445.8974] - /Border [0 0 0] - /Dest 4608 0 R - /F 4 - /StructParent 360 - /Contents ([15]) ->> -endobj - -5083 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [233.44614 418.5734 379.90015 432.2354] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1016/0890-5401(91)90052-4) - >> - /F 4 - /StructParent 361 - /Contents (https://doi.org/10.1016/0890-5401(91)90052-4) ->> -endobj - -5084 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 398.1114 91.28214 411.7734] - /Border [0 0 0] - /Dest 4608 0 R - /F 4 - /StructParent 362 - /Contents ([16]) ->> -endobj - -5085 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 350.3254 91.28214 363.9874] - /Border [0 0 0] - /Dest 4609 0 R - /F 4 - /StructParent 363 - /Contents ([17]) ->> -endobj - -5086 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [169.31615 309.33942 313.06415 323.0014] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1007/978-3-642-39212-2_35) - >> - /F 4 - /StructParent 364 - /Contents (https://doi.org/10.1007/978-3-642-39212-2_35) ->> -endobj - -5087 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 288.87738 91.28214 302.53943] - /Border [0 0 0] - /Dest 4609 0 R - /F 4 - /StructParent 365 - /Contents ([18]) ->> -endobj - -5088 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [310.53415 247.89142 431.38013 261.5534] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/2951913.2951939) - >> - /F 4 - /StructParent 366 - /Contents (https://doi.org/10.1145/2951913.2951939) ->> -endobj - -5089 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 227.42938 91.28214 241.09143] - /Border [0 0 0] - /Dest 4610 0 R - /F 4 - /StructParent 367 - /Contents ([19]) ->> -endobj - -5090 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [264.92813 213.7674 344.52414 227.42938] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.2307/2266170) - >> - /F 4 - /StructParent 368 - /Contents (https://doi.org/10.2307/2266170) ->> -endobj - -5091 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 193.30542 91.28214 206.9674] - /Border [0 0 0] - /Dest 4610 0 R - /F 4 - /StructParent 369 - /Contents ([20]) ->> -endobj - -5092 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 172.84338 91.28214 186.50537] - /Border [0 0 0] - /Dest 4611 0 R - /F 4 - /StructParent 370 - /Contents ([21]) ->> -endobj - -5093 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [125.31614 131.85742 224.16214 145.51941] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/73560.73564) - >> - /F 4 - /StructParent 371 - /Contents (https://doi.org/10.1145/73560.73564) ->> -endobj - -5094 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 111.395386 91.28214 125.05737] - /Border [0 0 0] - /Dest 4612 0 R - /F 4 - /StructParent 372 - /Contents ([22]) ->> -endobj - -5095 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4360 0 R - /f1 4366 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 373 - /Tabs /S - /Parent 1 0 R - /Contents 5096 0 R - /Annots [5068 0 R 5069 0 R 5070 0 R 5071 0 R 5072 0 R 5073 0 R 5074 0 R 5075 0 R 5076 0 R 5077 0 R 5078 0 R 5079 0 R 5080 0 R 5081 0 R 5082 0 R 5083 0 R 5084 0 R 5085 0 R 5086 0 R 5087 0 R 5088 0 R 5089 0 R 5090 0 R 5091 0 R 5092 0 R 5093 0 R 5094 0 R] ->> -endobj - -5096 0 obj -<< - /Length 5301 - /Filter /FlateDecode ->> -stream -x][s~hR*aJٵTbKL?Ph+9̸* ppf7}rq98}ڧn/ӧ'MspO?S;_Ç/N^~qro/ۆO~"hgB7N{&U_ONxsj77'׼9+w=o}Ԝ8!!DpżBo@J}>.82+ngG*C|}݇롖5O94bjD㋹Y>8sk?=;7k"YHo\ʘ=J5a?R.xi8 {p&NKa -ȋ/WK6.6rť%=ކIsj̹ X|QIwqz۳Y;]#F!)WiUcNɓzQUƝ2gg[PM -.+f%paPmF3$å3Fajd]Bj0aZ; ϱZp0A +|VࢮT4}g:)T y&FrGI"&H瘱Nl0IB~-j/Pe5QɁܭfڹHFG/PZ]9kf4 xn"PU߀!I}{{NVj&h}XfsK+,/Y]M}ɘǍ[ 6z%'fAPo6R(-) -AaF;bK~$,U2l.Z`e&V_zӄap _غђXIX:L K0I/Z6@ -zn$y":z@[T|. .(jTgFvAs<ډr(L43/WP!  }^~gS.&ի4 L۸͝VaCCVSmN0罐̶',*`/-z\q+-j.kQqR`@C -V]`nYfÍPWnMg1W([$pXA_` -Hs]-6 O8P(3f9} !s> >- [ST ZU[qNpX'?ȫP.T*DHz*XSuk FcOrVXY`ѻy:Ab:Aw 019}((e5L4]czg 7h cC2G,A cb}+xGq*(]E\~ FE0)֊UQz!1 ٴXu7ovM2:˱˭֕02)^.K%C^#l$Z@EFRYѽ\$'ADh a.1)tU[4;<2;QCa1AQ~9-7 zZc}rHPWZ3#;5C^)yЯ!%фݵWw:܃/B f{AU q$N6I6+!'Ъ,2tF:+f%B_H^_ΰֶZl+ߪ Sz`HLx@zYwx!eɂ}TJ "sE/T]F樓l7/[PnڂŶO~%??qY5'~%a%ܮOR2<>͈<7bI,0/$ xLWW|w#'P`Z"~cZ>`@t~wΙO`Ǥ!m%xSmFrlFUDɘ$SEzqBhÅwFJ@\IYxT~ᤦ:fx$D&rg'59>.LSzCgP` -y딛&EgkRnM¤'fm+|i\_Ը6u&dRorK UBh%Lڬ} j=a"#E/-e"mU&HYY$ 'EħkPG_I@ Ɛ}Gb]w (8mUqZ;t0p7$Z -h i{2|œ՚ױr Β%HE -Rf5hA: 3khGh"uTwOr }:; \G)bv-Jn/py?7?>x8|~wo>~<~:￿C(^2\0k -#7, -endstream -endobj - -5097 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 746.2134 91.28214 759.87537] - /Border [0 0 0] - /Dest 4613 0 R - /F 4 - /StructParent 374 - /Contents ([23]) ->> -endobj - -5098 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [245.49113 718.8894 369.07614 732.5514] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1007/3-540-45931-6_24) - >> - /F 4 - /StructParent 375 - /Contents (https://doi.org/10.1007/3-540-45931-6_24) ->> -endobj - -5099 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 698.42737 91.28214 712.0894] - /Border [0 0 0] - /Dest 4614 0 R - /F 4 - /StructParent 376 - /Contents ([24]) ->> -endobj - -5100 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [125.31614 671.1034 263.56415 684.7654] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1007/978-3-642-00590-9_7) - >> - /F 4 - /StructParent 377 - /Contents (https://doi.org/10.1007/978-3-642-00590-9_7) ->> -endobj - -5101 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 650.6414 91.28214 664.3034] - /Border [0 0 0] - /Dest 4615 0 R - /F 4 - /StructParent 378 - /Contents ([25]) ->> -endobj - -5102 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [483.31345 636.9794 524.4094 650.6414] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1016/j.entcs.2015.12.003) - >> - /F 4 - /StructParent 379 - /Contents (https://doi.org/10.1016/j.entcs.2015.12.003) ->> -endobj - -5103 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [103.932144 623.3174 191.81114 636.9794] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1016/j.entcs.2015.12.003) - >> - /F 4 - /StructParent 380 - /Contents (https://doi.org/10.1016/j.entcs.2015.12.003) ->> -endobj - -5104 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 602.8554 91.28214 616.5174] - /Border [0 0 0] - /Dest 4616 0 R - /F 4 - /StructParent 381 - /Contents ([26]) ->> -endobj - -5105 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [483.31345 589.1934 524.4094 602.8554] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.4204/eptcs.153.8) - >> - /F 4 - /StructParent 382 - /Contents (https://doi.org/10.4204/eptcs.153.8) ->> -endobj - -5106 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [103.932144 575.5314 156.22614 589.1934] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.4204/eptcs.153.8) - >> - /F 4 - /StructParent 383 - /Contents (https://doi.org/10.4204/eptcs.153.8) ->> -endobj - -5107 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 555.0694 91.28214 568.73145] - /Border [0 0 0] - /Dest 4616 0 R - /F 4 - /StructParent 384 - /Contents ([27]) ->> -endobj - -5108 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [103.932144 514.0834 224.77814 527.74536] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/3009837.3009872) - >> - /F 4 - /StructParent 385 - /Contents (https://doi.org/10.1145/3009837.3009872) ->> -endobj - -5109 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 493.6214 91.28214 507.2834] - /Border [0 0 0] - /Dest 4617 0 R - /F 4 - /StructParent 386 - /Contents ([28]) ->> -endobj - -5110 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [103.932144 466.2974 235.48114 479.9594] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1016/j.jlamp.2014.02.001) - >> - /F 4 - /StructParent 387 - /Contents (https://doi.org/10.1016/j.jlamp.2014.02.001) ->> -endobj - -5111 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 445.8354 91.28214 459.4974] - /Border [0 0 0] - /Dest 4618 0 R - /F 4 - /StructParent 388 - /Contents ([29]) ->> -endobj - -5112 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [287.61014 432.1734 367.20615 445.8354] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/3408995) - >> - /F 4 - /StructParent 389 - /Contents (https://doi.org/10.1145/3408995) ->> -endobj - -5113 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 411.7114 91.28214 425.3734] - /Border [0 0 0] - /Dest 4619 0 R - /F 4 - /StructParent 390 - /Contents ([30]) ->> -endobj - -5114 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [275.27914 370.7254 396.12515 384.3874] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/2628136.2628160) - >> - /F 4 - /StructParent 391 - /Contents (https://doi.org/10.1145/2628136.2628160) ->> -endobj - -5115 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 350.2634 91.28214 363.9254] - /Border [0 0 0] - /Dest 4620 0 R - /F 4 - /StructParent 392 - /Contents ([31]) ->> -endobj - -5116 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [394.88446 336.6014 523.85944 350.2634] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1016/j.entcs.2008.05.029) - >> - /F 4 - /StructParent 393 - /Contents (https://doi.org/10.1016/j.entcs.2008.05.029) ->> -endobj - -5117 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 316.1394 91.28214 329.8014] - /Border [0 0 0] - /Dest 4621 0 R - /F 4 - /StructParent 394 - /Contents ([32]) ->> -endobj - -5118 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [103.932144 275.15338 247.68015 288.81543] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1007/978-3-642-54833-8_19) - >> - /F 4 - /StructParent 395 - /Contents (https://doi.org/10.1007/978-3-642-54833-8_19) ->> -endobj - -5119 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 254.6914 91.28214 268.3534] - /Border [0 0 0] - /Dest 4622 0 R - /F 4 - /StructParent 396 - /Contents ([33]) ->> -endobj - -5120 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [103.932144 227.36737 224.77814 241.02942] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/1932681.1863568) - >> - /F 4 - /StructParent 397 - /Contents (https://doi.org/10.1145/1932681.1863568) ->> -endobj - -5121 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 206.9054 91.28214 220.56738] - /Border [0 0 0] - /Dest 4623 0 R - /F 4 - /StructParent 398 - /Contents ([34]) ->> -endobj - -5122 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [215.53815 165.91937 325.38416 179.58142] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/292540.292555) - >> - /F 4 - /StructParent 399 - /Contents (https://doi.org/10.1145/292540.292555) ->> -endobj - -5123 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 145.4574 91.28214 159.11938] - /Border [0 0 0] - /Dest 4623 0 R - /F 4 - /StructParent 400 - /Contents ([35]) ->> -endobj - -5124 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [250.87015 131.79541 360.71616 145.4574] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/360051.360056) - >> - /F 4 - /StructParent 401 - /Contents (https://doi.org/10.1145/360051.360056) ->> -endobj - -5125 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 111.333374 91.28214 124.99542] - /Border [0 0 0] - /Dest 4624 0 R - /F 4 - /StructParent 402 - /Contents ([36]) ->> -endobj - -5126 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [332.40213 97.67139 411.99814 111.333374] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/3498692) - >> - /F 4 - /StructParent 403 - /Contents (https://doi.org/10.1145/3498692) ->> -endobj - -5127 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4360 0 R - /f1 4366 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 404 - /Tabs /S - /Parent 1 0 R - /Contents 5128 0 R - /Annots [5097 0 R 5098 0 R 5099 0 R 5100 0 R 5101 0 R 5102 0 R 5103 0 R 5104 0 R 5105 0 R 5106 0 R 5107 0 R 5108 0 R 5109 0 R 5110 0 R 5111 0 R 5112 0 R 5113 0 R 5114 0 R 5115 0 R 5116 0 R 5117 0 R 5118 0 R 5119 0 R 5120 0 R 5121 0 R 5122 0 R 5123 0 R 5124 0 R 5125 0 R 5126 0 R] ->> -endobj - -5128 0 obj -<< - /Length 5218 - /Filter /FlateDecode ->> -stream -x]r7}WCV-и k$Kk+l/c)6-/UUK5 ]kv2 kn;{/Oã~n۫oG~yڿ;{{嫳^:XWeG_ucJz쌴^v7mohw3fwvwgwc|2[JßS]Wgo1A -bgr&σCta-ЇO6SR1蘕?U$\'6iө CktSMggDo?O7=uS'&;='$T!7["&i Y׶Bc檖ޥ{"ms'Vaovt6'V^լ]=7i ?ϔ1R>q](I@"E0ϓ$i L{k07c-֪h@pw@ȦP̼%=ih` ;[Ż혙mйwSD~Ԑlù aAWl,tY<LCJF>Lfܼ|GbۯV"(ML91dKzq.oo=ŗϦ ft=1X]8#vԹ[+nBMgAi>g|3|{x,4 D\*"-c]k>Ea̽z<<ο=qY~Qp[@jFF<8d6iPF+i:MVXkX[-(,nDȪض&tPu|co]A4"t|}1|,}lܧPZYbX3F\L<%zApZ4Ю_s_G"dzSm1J<]dQvb,m#2Jb2VMʄ7 bT6#6(w(?/K`'* Lm:,~5u W9'B4XLWF)\7s0Ki`$a j0`jo`5}2>L `+с?)ӜDiTLp.39 Z땀}a c-cxfӱi8an#((9LIWF:tw!R Ay̜Ͱ GF\': ,[4KSJ.Japa&Y "Dqz|czh2[0j2&۱]('63jojm<s8g|Y$yG, ^.. `R@`KU@ƘmUows^\c߱ DSw@=lȁ)Ƀbo1ŗYFzXSg&YI{U𷶉Z < W̘]@2EVX |=(<6MgI0XPtȯ: uZfHH \~āo*QA!,*Ng֚uJ˙iK_-A)Y Nʀ҄6 - JZ):TcQ#7 -JFU3\OAWXYn:L -!>Xy xz9i?F=SysMQbkk!:]ttʞ-8QqPKEuZ$R40>FW3 w&'>QaoG+P{$5B)*$Ykfk:L("L4n -/Uou`Q&B'ى -k,nBL{8q)wA>MXEPyS ^V3@'!M_\$1{ o|t}?0Rb̒QIۙ@gt,j-:fi<-X,q@n&ә+2CKbLϚ:]IפD˵2J]oVs.Q4L>%+6`☹XcKWK]*SD/hʞj[2#[6BL:9}ES W%P4=L(\VV4ED~'PÅ@TIb"u*IQ*NQ.> ӕ~0ŭēr_,*ύD<$,56k?0K#;R["8wO.aBEg8oE:"8 򩃮}ʞz-&Γ:Z`2Z%0nôηr01 e 8%+Z:9DRȬ`Bר̂x(Leb(&9ƾC}?VY;"@zubނMF2Wc&y_FHa'hU"(JlPY>HۈĦ6$<0@ɚ+F`h]ʮqQwo> g*("/~?("yoft!Xh܆HB=G14T#'$FTܠ!gyp@pbyQQ7Iy[.]t z\K '@j9GVO >]<QXoPoMa4_'_΁C(b_r(x1&snBJO8赌PFicمkN(VNvEYIFB -")y H=VE2# Oa;q1-MQ`>Ct6r"Ɔ564JdĘ.ƫ ctm+Zd9*93-'^'/a"DH) HLxY/8&Ϝ ^ud"GdYF^\&,WJ3XֿĨS}eҝbDDw4euc"j"Xu‰D&uU+&+Z_!kӐ׽EYjlmQZEZO/F' -R\^AI t>wY5l*x_){$ATՌglSxS2Azr.iAT$`hQֶoNU_SֶmPXySkSͺnb׽tkP%DqLLuЕ:KE\(qRFX) -LF Eܝ\'!5 7 -+IKWPZN -*x+27R 镭qɆjLK)@G)ĔioTA9b{-; ҥaAMV,\T5:۽3(J=/љB-'wE%@iȈ - Dy4b:z*6 QPEo -鞱 FmpC0C J*)QN( S0 xhc<w 4X׽ڛYqTfd|l.V͒I|'Ӟx!T귧Áy]3EQ$Jrcj$$jQֶx ^[08Ǧi_BޞGiMĔنI0fǞެpfDww;7j݋!jA-%SZ$S < reaz]PV)}E"BJb6ʘ쎅 0'xN*MBao<9K!tpø>"'5w\ -W -,ccgzfn?6R KkȌKIM`M 4F;dBMr<\ٹ[ id?91&uU h܏;P1ƭFn& .0>Ž x{ރr\ɋﳱ[]/nPZA%_+ֽӖ!|.p7hr+L'9G>*LD > aH R=HjTGgUq2H q:Y:[xIM8 @OHU'Ntݎzl b]gV{a ]S ؐW|HMؖ!0g*ۂU ź;Ow/w㲞Mu&QZԲ1UՋ$A&iCA%#FuNYXg:=qڀÏ82q0=YE$ۢ"B+N(/=%fn6$ΐUV`([:"YtIbYyA>OϨmgxWq/nsj8~ ]f [^pC 8.KМ@/;9ӞiDrW 4yuo%kSMmVj[$wL ]5KVjHx?s>CQ`OE}2&lfYT_OȄq( a_tAħxǮ+t;q:ZEou -"]ȁ ql4]40 ACW0Y;c L] -ޛ[=;q '[~|98EÔPS!/Q`F?wītkg[x$[h3 .^xD%%A$^6-=NhA *.Z '=Uj;1G"[`m"=%...QT2H:?kzz€/ȞV 8Q0ǯ|r?%J{ 03Fv;]8tyݏۗ4> -endobj - -5130 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [103.932144 718.8894 202.77814 732.5514] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/38713.38742) - >> - /F 4 - /StructParent 406 - /Contents (https://doi.org/10.1145/38713.38742) ->> -endobj - -5131 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 698.42737 91.28214 712.0894] - /Border [0 0 0] - /Dest 4626 0 R - /F 4 - /StructParent 407 - /Contents ([38]) ->> -endobj - -5132 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 664.3034 91.28214 677.9654] - /Border [0 0 0] - /Dest 4626 0 R - /F 4 - /StructParent 408 - /Contents ([39]) ->> -endobj - -5133 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [233.11613 650.6414 470.02313 664.3034] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://martinfowler.com/articles/injection.html) - >> - /F 4 - /StructParent 409 - /Contents (https://martinfowler.com/articles/injection.html) ->> -endobj - -5134 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 630.1794 91.28214 643.84143] - /Border [0 0 0] - /Dest 4627 0 R - /F 4 - /StructParent 410 - /Contents ([40]) ->> -endobj - -5135 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [264.81815 589.1934 388.24915 602.8554] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1007/3-540-57182-5\\_8) - >> - /F 4 - /StructParent 411 - /Contents (https://doi.org/10.1007/3-540-57182-5\\_8) ->> -endobj - -5136 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 568.73145 91.28214 582.39343] - /Border [0 0 0] - /Dest 4628 0 R - /F 4 - /StructParent 412 - /Contents ([41]) ->> -endobj - -5137 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 520.94543 91.28214 534.6074] - /Border [0 0 0] - /Dest 4629 0 R - /F 4 - /StructParent 413 - /Contents ([42]) ->> -endobj - -5138 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [387.86646 520.94543 524.4094 534.6074] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://webpack.js.org/api/hot-module-replacement/) - >> - /F 4 - /StructParent 414 - /Contents (https://webpack.js.org/api/hot-module-replacement/) ->> -endobj - -5139 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [103.932144 507.2834 230.02515 520.94543] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://webpack.js.org/api/hot-module-replacement/) - >> - /F 4 - /StructParent 415 - /Contents (https://webpack.js.org/api/hot-module-replacement/) ->> -endobj - -5140 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 486.8214 91.28214 500.4834] - /Border [0 0 0] - /Dest 4630 0 R - /F 4 - /StructParent 416 - /Contents ([43]) ->> -endobj - -5141 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [292.59314 486.8214 447.93515 500.4834] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://vite.dev/guide/api-hmr) - >> - /F 4 - /StructParent 417 - /Contents (https://vite.dev/guide/api-hmr) ->> -endobj - -5142 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 466.3594 91.28214 480.0214] - /Border [0 0 0] - /Dest 4631 0 R - /F 4 - /StructParent 418 - /Contents ([44]) ->> -endobj - -5143 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 445.8974 91.28214 459.5594] - /Border [0 0 0] - /Dest 4632 0 R - /F 4 - /StructParent 419 - /Contents ([45]) ->> -endobj - -5144 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [125.31614 418.5734 207.66214 432.2354] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1109/32.60317) - >> - /F 4 - /StructParent 420 - /Contents (https://doi.org/10.1109/32.60317) ->> -endobj - -5145 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 398.1114 91.28214 411.7734] - /Border [0 0 0] - /Dest 4632 0 R - /F 4 - /StructParent 421 - /Contents ([46]) ->> -endobj - -5146 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [388.97513 370.7874 498.59015 384.4494] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1109/tse.2007.70733) - >> - /F 4 - /StructParent 422 - /Contents (https://doi.org/10.1109/tse.2007.70733) ->> -endobj - -5147 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 350.3254 91.28214 363.9874] - /Border [0 0 0] - /Dest 4633 0 R - /F 4 - /StructParent 423 - /Contents ([47]) ->> -endobj - -5148 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [103.932144 309.33942 242.18015 323.0014] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1007/978-3-540-76778-7_1) - >> - /F 4 - /StructParent 424 - /Contents (https://doi.org/10.1007/978-3-540-76778-7_1) ->> -endobj - -5149 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 288.87738 91.28214 302.53943] - /Border [0 0 0] - /Dest 4634 0 R - /F 4 - /StructParent 425 - /Contents ([48]) ->> -endobj - -5150 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 254.75342 91.28214 268.4154] - /Border [0 0 0] - /Dest 4634 0 R - /F 4 - /StructParent 426 - /Contents ([49]) ->> -endobj - -5151 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 220.6294 91.28214 234.29138] - /Border [0 0 0] - /Dest 4634 0 R - /F 4 - /StructParent 427 - /Contents ([50]) ->> -endobj - -5152 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 186.50537 91.28214 200.16742] - /Border [0 0 0] - /Dest 4635 0 R - /F 4 - /StructParent 428 - /Contents ([51]) ->> -endobj - -5153 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [266.66614 159.1814 376.51215 172.84338] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/168619.168635) - >> - /F 4 - /StructParent 429 - /Contents (https://doi.org/10.1145/168619.168635) ->> -endobj - -5154 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 138.71942 91.28214 152.38141] - /Border [0 0 0] - /Dest 4636 0 R - /F 4 - /StructParent 430 - /Contents ([52]) ->> -endobj - -5155 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4360 0 R - /f1 4366 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 431 - /Tabs /S - /Parent 1 0 R - /Contents 5156 0 R - /Annots [5129 0 R 5130 0 R 5131 0 R 5132 0 R 5133 0 R 5134 0 R 5135 0 R 5136 0 R 5137 0 R 5138 0 R 5139 0 R 5140 0 R 5141 0 R 5142 0 R 5143 0 R 5144 0 R 5145 0 R 5146 0 R 5147 0 R 5148 0 R 5149 0 R 5150 0 R 5151 0 R 5152 0 R 5153 0 R 5154 0 R] ->> -endobj - -5156 0 obj -<< - /Length 5106 - /Filter /FlateDecode ->> -stream -x=r7q[!7P4uͱRF4ikbr3?QuՖbȮ‘Hqzqpwui<9jӋN/?}_79ݫ?6>Κϟx_Ckyǯ{$hgZ[&G7oq>zzyě;\͕??}{/V79zqyF XGvsjIZnO=~0G|Xx,( ͗~Jmkïux3­a Ȫ_9|"l/Z -Y"JIVf -aH|ya>D% *\9FVn s\Vk=B0.Sikj5&Wgi6M]4 㠛GJ3.F()uo&ٽ=+ 'n)P0 B|drDnL<5. :YJGAD"uprlqPvIyڇ!qJy@ʄ=y]gZMmx(nyRK A"`mޓ#|f~N|=4fzy|>qE"#\2X4~|ǫo]i#U\'f{)<.W/Nh^`nlL\\U?DG؜ )^g[z;ӢxH#γyhM}z'K/0>š={%J/Y+5+̒ёiShb-h$:gʢVKU_7.uݭ﹵p M z~GeTL4OA{5m@΍ȐJG{qQ񘡈%ǸJ"4߿ <aVGR11Nt 7ӮP$s(fQ95M;dz^ib&Zv8"^M1Ljp# -u^y ' &VtWLAnDh>*?\QtNZor} WI@|R ם-p^VZD0)Bbr\kF|ON:xv{a$9_&N LdB -2: ǁs AU -0~.~1$TzuBBX c(cFڀʼn}-Zf |dyje‡,Y)54S@Ʂ%;q]Pp,`Y1٨jLTz}_6Fa$%LX|z++#bRN Wbl_C[C|`7$ yQ6D;ԯQ(' yLCm:JٍYHǤuC#4( ڙ ̔)w6- 4z4 ftLCi#"@L7W(qNL'#6 uji}e5F(L+ M94-ծAuUTՃ%V3/0.%ejFĜ#Ac-,=dnh fgL+zR]AΏLN( 0γK}ǀ~V?H -Эd^*o.ΪBn1se)jT Z3h-8c5飡t;; "SEx.ikՋ="FkBeʇ?1_H4(fTκ@< yCc 3P'.V'}zӵeB׭{m4]0'5l#fq~:,!Q)8S/ƳIupШ*͵oue%zh@=8t1[yh)[L2"?M~F2u&)M@OFNxyHz@9I\-ͶL8Vm4-q ֠ hE癒F%q:'ט䄄 n˭Br.P +h8 <b5RJP\OﶳJui0K]%XYdĵ.i%ܕHނ|";OlĉDK摉:rh}#JހFDŽ -ٸ%"-> -~՘׮l;7/h1KOQl+6TˬZ.Q] GEbـu;8]"Hx чI~~Ia"i2w} 9cT7(Axǥs_O6}cb7a?|d݅ŗqivXô-Tր#Rg?C'&MEeՄT  NQ<&w}K$X|hXt?[ ɔ(6djG 7⦘`:Eu-l%U‘+("[Z~Ҏ4.(+'s (5I -tX!qiN3zUX*uB+BKhIh/bN'DwyUh3L_PFm:MX.G_&$퓌 ia]ND' OTud -J $?fVJZ;*˧r9(:u{ 4ߢ#4b4u)a]yr[Pc01edZxז8d$PYUshNX*%,docb4$Ѯ čeĎi7' :P}+A+Gۅ`J-vͽ<2N7MD99m(72°u%Wjez>rz\Cf%whr:vUˁcn(yOY Y2CF1DɁ!JnqkT}RXeXnոg<^"qĘm"g@? a)B1(\ #&PfבKPE|f.8%.`Y5O򍋼$P.Ms`'7,^򖵭\pK%O݅,yÅ?*}'= LM\ԡ-aY_dHr@& -ϙq362XLjiٰr"f RN.S%&jײn厽Lr2Q9L9l[eF-h -T4FbY Q¬)ɬFXk~<g!=^<CQ9^|(.~iW\? 9Ky{N_q̘yUBD"PeڤL\3[[LH=vMvId2>D+K}@,1&Fbd?P2ax,"b`!9O+  зZpϼ|vt`3ZHX$,<87ei\0sa/AoM ЍB=ŏ)̢Vy޴ksz/TצU> -endobj - -5158 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [392.97916 732.5514 510.96515 746.2134] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1002/SPE.4380210404) - >> - /F 4 - /StructParent 433 - /Contents (https://doi.org/10.1002/SPE.4380210404) ->> -endobj - -5159 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 712.0894 91.28214 725.7514] - /Border [0 0 0] - /Dest 4638 0 R - /F 4 - /StructParent 434 - /Contents ([54]) ->> -endobj - -5160 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [322.68915 684.7654 421.53516 698.42737] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/75277.75283) - >> - /F 4 - /StructParent 435 - /Contents (https://doi.org/10.1145/75277.75283) ->> -endobj - -5161 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 664.3034 91.28214 677.9654] - /Border [0 0 0] - /Dest 4639 0 R - /F 4 - /StructParent 436 - /Contents ([55]) ->> -endobj - -5162 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 630.1794 91.28214 643.84143] - /Border [0 0 0] - /Dest 4640 0 R - /F 4 - /StructParent 437 - /Contents ([56]) ->> -endobj - -5163 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [322.68915 602.8554 443.53516 616.5174] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/1190216.1190229) - >> - /F 4 - /StructParent 438 - /Contents (https://doi.org/10.1145/1190216.1190229) ->> -endobj - -5164 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 582.39343 91.28214 596.0554] - /Border [0 0 0] - /Dest 4641 0 R - /F 4 - /StructParent 439 - /Contents ([57]) ->> -endobj - -5165 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [386.45844 582.39343 526.60944 596.0554] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://www.typescriptlang.org/docs/handbook/declaration-merging.html) - >> - /F 4 - /StructParent 440 - /Contents (https://www.typescriptlang.org/docs/handbook/declaration-merging.html) ->> -endobj - -5166 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [103.932144 568.73145 332.56714 582.39343] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://www.typescriptlang.org/docs/handbook/declaration-merging.html) - >> - /F 4 - /StructParent 441 - /Contents (https://www.typescriptlang.org/docs/handbook/declaration-merging.html) ->> -endobj - -5167 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 548.2694 91.28214 561.9314] - /Border [0 0 0] - /Dest 4642 0 R - /F 4 - /StructParent 442 - /Contents ([58]) ->> -endobj - -5168 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [204.53815 520.94543 325.38416 534.6074] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/1869631.1869638) - >> - /F 4 - /StructParent 443 - /Contents (https://doi.org/10.1145/1869631.1869638) ->> -endobj - -5169 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 500.4834 91.28214 514.1454] - /Border [0 0 0] - /Dest 4643 0 R - /F 4 - /StructParent 444 - /Contents ([59]) ->> -endobj - -5170 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [401.79245 500.4834 524.4094 514.1454] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://docs.python.org/3/howto/descriptor.html) - >> - /F 4 - /StructParent 445 - /Contents (https://docs.python.org/3/howto/descriptor.html) ->> -endobj - -5171 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [103.932144 486.8214 225.16315 500.4834] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://docs.python.org/3/howto/descriptor.html) - >> - /F 4 - /StructParent 446 - /Contents (https://docs.python.org/3/howto/descriptor.html) ->> -endobj - -5172 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 466.3594 91.28214 480.0214] - /Border [0 0 0] - /Dest 4644 0 R - /F 4 - /StructParent 447 - /Contents ([60]) ->> -endobj - -5173 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [169.31615 439.0354 268.16214 452.6974] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/38765.38821) - >> - /F 4 - /StructParent 448 - /Contents (https://doi.org/10.1145/38765.38821) ->> -endobj - -5174 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 418.5734 91.28214 432.2354] - /Border [0 0 0] - /Dest 4644 0 R - /F 4 - /StructParent 449 - /Contents ([61]) ->> -endobj - -5175 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [249.25314 377.5874 370.09915 391.2494] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/1028976.1029004) - >> - /F 4 - /StructParent 450 - /Contents (https://doi.org/10.1145/1028976.1029004) ->> -endobj - -5176 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 357.1254 91.28214 370.7874] - /Border [0 0 0] - /Dest 4645 0 R - /F 4 - /StructParent 451 - /Contents ([62]) ->> -endobj - -5177 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [483.31345 343.4634 524.4094 357.1254] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1007/s12243-008-0072-z) - >> - /F 4 - /StructParent 452 - /Contents (https://doi.org/10.1007/s12243-008-0072-z) ->> -endobj - -5178 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [103.932144 329.8014 191.08514 343.4634] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1007/s12243-008-0072-z) - >> - /F 4 - /StructParent 453 - /Contents (https://doi.org/10.1007/s12243-008-0072-z) ->> -endobj - -5179 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 309.33942 91.28214 323.0014] - /Border [0 0 0] - /Dest 4646 0 R - /F 4 - /StructParent 454 - /Contents ([63]) ->> -endobj - -5180 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [378.28314 295.67743 499.12915 309.33942] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/2489837.2489840) - >> - /F 4 - /StructParent 455 - /Contents (https://doi.org/10.1145/2489837.2489840) ->> -endobj - -5181 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 275.2154 91.28214 288.87738] - /Border [0 0 0] - /Dest 4647 0 R - /F 4 - /StructParent 456 - /Contents ([64]) ->> -endobj - -5182 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [196.81615 247.89142 312.88815 261.5534] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1016/j.jss.2016.04.008) - >> - /F 4 - /StructParent 457 - /Contents (https://doi.org/10.1016/j.jss.2016.04.008) ->> -endobj - -5183 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 227.42938 91.28214 241.09143] - /Border [0 0 0] - /Dest 4648 0 R - /F 4 - /StructParent 458 - /Contents ([65]) ->> -endobj - -5184 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [147.31615 186.44342 268.16214 200.10541] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/3426428.3426922) - >> - /F 4 - /StructParent 459 - /Contents (https://doi.org/10.1145/3426428.3426922) ->> -endobj - -5185 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 165.98138 91.28214 179.64337] - /Border [0 0 0] - /Dest 4649 0 R - /F 4 - /StructParent 460 - /Contents ([66]) ->> -endobj - -5186 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [260.94614 138.65741 377.01813 152.3194] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1016/j.jss.2012.02.018) - >> - /F 4 - /StructParent 461 - /Contents (https://doi.org/10.1016/j.jss.2012.02.018) ->> -endobj - -5187 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 118.19537 91.28214 131.85742] - /Border [0 0 0] - /Dest 4650 0 R - /F 4 - /StructParent 462 - /Contents ([67]) ->> -endobj - -5188 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [226.07614 90.8714 324.92215 104.53339] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/73560.73566) - >> - /F 4 - /StructParent 463 - /Contents (https://doi.org/10.1145/73560.73566) ->> -endobj - -5189 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4360 0 R - /f1 4366 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 464 - /Tabs /S - /Parent 1 0 R - /Contents 5190 0 R - /Annots [5157 0 R 5158 0 R 5159 0 R 5160 0 R 5161 0 R 5162 0 R 5163 0 R 5164 0 R 5165 0 R 5166 0 R 5167 0 R 5168 0 R 5169 0 R 5170 0 R 5171 0 R 5172 0 R 5173 0 R 5174 0 R 5175 0 R 5176 0 R 5177 0 R 5178 0 R 5179 0 R 5180 0 R 5181 0 R 5182 0 R 5183 0 R 5184 0 R 5185 0 R 5186 0 R 5187 0 R 5188 0 R] ->> -endobj - -5190 0 obj -<< - /Length 5269 - /Filter /FlateDecode ->> -stream -x]Y7r~_Qj.奰U\͓ʳwTuUHU$72G7 -@&/?df]<ٿwf=xpu7ys~>W?>ygvO=={ӳ~j>w'3g]=ͯgoxg'g9x;!wg?|#C ?Ξ_{#WR ]y7}>~u4Nb4&|*%m4xwISWjjHq{uWNI wdv -{[?KSb׉_ EeP)6=(*Wx+_C;do8h:쟗+E˷;bhX}3Kty7vD:6vP5TMx[Pޞ.#:nd|zɭ3d=e4+&>Cd57q%K+ %߉?vwש/8z+_uƤ{m,Xf2pJepZIucA1l*(S-X]Jc i#Ta>3%u gNrfM,,[-z'J =>G JXNk>+ [gW>K2HY$1(f -n@%p1`Fa dH Pˌ]0}v iOWU?!9gR NFA7 )~l­d| ,d:WfrM~yUx*֟$vd^+%pѱPX:_mr݆i)G9cE8}E6 @EyA]9b94^ph6g:Q Qi'0mC -b<XZ9 -d-ioPgx 8;{pg6Τ w68h:g^({,{!{h{L2{ZYsKOW姨$̬.&m g8mо/o!;qbB4W28&j'm+a>op`qfܽá| "gE©9,:W  tE -8P2m&5)vYte3;߉-lP#@h*/M&"5M:8 :znxI:Sjhםq1cSV,9 AݬLz۾oUz} ^*~|.x1W- $3uݲB&0uԒno<>N}Z[|]MIH -ヺ-WRE98E篙p]=ݬy RS: +)3泻2qnçY_.`:mZ,\*\K`KZ(#V`f{ڥTIEzfz'-kb1g}OcIiuQ_#J"{t$9s 93W-?(@r͌rlcQE@S>o(BS4)qMrEx3|R~:{k;/>c; =oh:5`H܏A %S&8pWGZ2AJS;:f5rKk牴NYD޷ͭgNptӝZ;zuP'3(Z$z*R2uLX9%l"Lo|֣׃Nl=N20ͅtJh,nẒ >TqpR}9Ո(7C;.{TS7KGzv 7w3 o|FT B- -nNBջZj36r9s@|D>7e;+ -4mׇ&7L[kM.o|({cC>G<1*udLsΟε#M>@np?ZҰTSɨl$UƖ2#XʉKx2j[EW僌B\\7߯<?{8W\Y zI}Z=fpY:n0-=SM=;2F$qRZ<%ۦ$cFmc@FH+äeCG[AC!eM&-r& ğS5m_ݧ$~ZJy MFj)"h|o%j% qi$G0k󵼊Of)Mj#wuGN(Ԙ2Bv8 _Tl gںapɓ뭺s}l{nJǾ8U bH 4ٵQh~jak [_I)G93[Ⱛ`o&\gO\/~O,˼[?ypHS-h`ɵ~Vqw=+n|7,p< DZS)A|0kkB2 czYڐy ]I^Lojn2@4+t:8#:}(Fb2XjҚYd,(LXsi^hڭir}'Ixۈ{Jvτgvv Y;Ҭk윜7?vz"IaҀm@<li9zĐo@GOٝڠ0{ƅj6L!r̶wk ^ \ݣQjͤ^Yg p^D/^PTP8x]slIr81ަQZu 'kK =dUI3 66'U7a/B\74X .Q*mOgƸ"PV -.0gseo͵=;an:LL6I"8{fuAQe2WŪ\{Ŝ+a:N:&efG!T'߻"-W>~qс^R6GaE3/0kro]7ysœ_>ÇۛWڿpM&LuF0/'APu[m -endstream -endobj - -5191 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 746.2134 91.28214 759.87537] - /Border [0 0 0] - /Dest 4651 0 R - /F 4 - /StructParent 465 - /Contents ([68]) ->> -endobj - -5192 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [125.31614 732.5514 207.66214 746.2134] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1109/2.161279) - >> - /F 4 - /StructParent 466 - /Contents (https://doi.org/10.1109/2.161279) ->> -endobj - -5193 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 712.0894 91.28214 725.7514] - /Border [0 0 0] - /Dest 4652 0 R - /F 4 - /StructParent 467 - /Contents ([69]) ->> -endobj - -5194 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [266.44614 698.42737 377.49115 712.0894] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1006/inco.1994.1055) - >> - /F 4 - /StructParent 468 - /Contents (https://doi.org/10.1006/inco.1994.1055) ->> -endobj - -5195 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 677.9654 91.28214 691.6274] - /Border [0 0 0] - /Dest 4653 0 R - /F 4 - /StructParent 469 - /Contents ([70]) ->> -endobj - -5196 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [152.81615 650.6414 232.41214 664.3034] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/3428194) - >> - /F 4 - /StructParent 470 - /Contents (https://doi.org/10.1145/3428194) ->> -endobj - -5197 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 630.1794 91.28214 643.84143] - /Border [0 0 0] - /Dest 4653 0 R - /F 4 - /StructParent 471 - /Contents ([71]) ->> -endobj - -5198 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [333.17215 602.8554 412.76813 616.5174] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/3527320) - >> - /F 4 - /StructParent 472 - /Contents (https://doi.org/10.1145/3527320) ->> -endobj - -5199 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 582.39343 91.28214 596.0554] - /Border [0 0 0] - /Dest 4654 0 R - /F 4 - /StructParent 473 - /Contents ([72]) ->> -endobj - -5200 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [129.48514 568.73145 238.49515 582.39343] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://effect.website/) - >> - /F 4 - /StructParent 474 - /Contents (https://effect.website/) ->> -endobj - -5201 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 548.2694 91.28214 561.9314] - /Border [0 0 0] - /Dest 4655 0 R - /F 4 - /StructParent 475 - /Contents ([73]) ->> -endobj - -5202 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [215.53815 507.2834 344.51315 520.94543] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1016/j.entcs.2018.11.009) - >> - /F 4 - /StructParent 476 - /Contents (https://doi.org/10.1016/j.entcs.2018.11.009) ->> -endobj - -5203 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 486.8214 91.28214 500.4834] - /Border [0 0 0] - /Dest 4656 0 R - /F 4 - /StructParent 477 - /Contents ([74]) ->> -endobj - -5204 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [103.932144 459.4974 183.52814 473.1594] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/3341714) - >> - /F 4 - /StructParent 478 - /Contents (https://doi.org/10.1145/3341714) ->> -endobj - -5205 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 439.0354 91.28214 452.6974] - /Border [0 0 0] - /Dest 4657 0 R - /F 4 - /StructParent 479 - /Contents ([75]) ->> -endobj - -5206 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [103.932144 411.7114 183.52814 425.3734] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/3563319) - >> - /F 4 - /StructParent 480 - /Contents (https://doi.org/10.1145/3563319) ->> -endobj - -5207 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 391.2494 91.28214 404.9114] - /Border [0 0 0] - /Dest 4657 0 R - /F 4 - /StructParent 481 - /Contents ([76]) ->> -endobj - -5208 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [469.68445 377.5874 526.60944 391.2494] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/https://doi.org/10.1016/j.tcs.2023.114063) - >> - /F 4 - /StructParent 482 - /Contents (https://doi.org/https://doi.org/10.1016/j.tcs.2023.114063) ->> -endobj - -5209 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [103.932144 363.9254 245.68915 377.5874] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/https://doi.org/10.1016/j.tcs.2023.114063) - >> - /F 4 - /StructParent 483 - /Contents (https://doi.org/https://doi.org/10.1016/j.tcs.2023.114063) ->> -endobj - -5210 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 343.4634 91.28214 357.1254] - /Border [0 0 0] - /Dest 4658 0 R - /F 4 - /StructParent 484 - /Contents ([77]) ->> -endobj - -5211 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [152.81615 316.1394 232.41214 329.8014] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/3689750) - >> - /F 4 - /StructParent 485 - /Contents (https://doi.org/10.1145/3689750) ->> -endobj - -5212 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 295.67743 91.28214 309.33942] - /Border [0 0 0] - /Dest 4659 0 R - /F 4 - /StructParent 486 - /Contents ([78]) ->> -endobj - -5213 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [373.59714 282.01538 481.69415 295.67743] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.5381/jot.2008.7.3.a4) - >> - /F 4 - /StructParent 487 - /Contents (https://doi.org/10.5381/jot.2008.7.3.a4) ->> -endobj - -5214 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 261.5534 91.28214 275.2154] - /Border [0 0 0] - /Dest 4659 0 R - /F 4 - /StructParent 488 - /Contents ([79]) ->> -endobj - -5215 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [285.91614 234.22937 406.76215 247.89142] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/1146841.1146842) - >> - /F 4 - /StructParent 489 - /Contents (https://doi.org/10.1145/1146841.1146842) ->> -endobj - -5216 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 213.7674 91.28214 227.42938] - /Border [0 0 0] - /Dest 4660 0 R - /F 4 - /StructParent 490 - /Contents ([80]) ->> -endobj - -5217 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [152.81615 186.44342 268.88815 200.10541] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1016/j.jss.2012.03.024) - >> - /F 4 - /StructParent 491 - /Contents (https://doi.org/10.1016/j.jss.2012.03.024) ->> -endobj - -5218 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 165.98138 91.28214 179.64337] - /Border [0 0 0] - /Dest 4661 0 R - /F 4 - /StructParent 492 - /Contents ([81]) ->> -endobj - -5219 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [264.81815 138.65741 363.33414 152.3194] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1007/BFb0053381) - >> - /F 4 - /StructParent 493 - /Contents (https://doi.org/10.1007/BFb0053381) ->> -endobj - -5220 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 118.19537 91.28214 131.85742] - /Border [0 0 0] - /Dest 4661 0 R - /F 4 - /StructParent 494 - /Contents ([82]) ->> -endobj - -5221 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4360 0 R - /f1 4366 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 495 - /Tabs /S - /Parent 1 0 R - /Contents 5222 0 R - /Annots [5191 0 R 5192 0 R 5193 0 R 5194 0 R 5195 0 R 5196 0 R 5197 0 R 5198 0 R 5199 0 R 5200 0 R 5201 0 R 5202 0 R 5203 0 R 5204 0 R 5205 0 R 5206 0 R 5207 0 R 5208 0 R 5209 0 R 5210 0 R 5211 0 R 5212 0 R 5213 0 R 5214 0 R 5215 0 R 5216 0 R 5217 0 R 5218 0 R 5219 0 R 5220 0 R] ->> -endobj - -5222 0 obj -<< - /Length 5118 - /Filter /FlateDecode ->> -stream -x]Ys7~( -Y:3#HhbMy9툝Quэw_8z]ݍ~hGSJLvF:…ͯGg7yswvGgiXw~]z(/ۣWGoqjB 8\zӝZF$Fww~1563do7cǻRBoR$?Oa#selѦ@946ʧƦq3 c@ﻻe{+/wdΉV,]((v77X7N+E`kMqʶ̒6\fz^vBrصiq`nlnmcW0p` E Im0" |3}4x,_~gWN[lt8FQqjּmTàN6?2d~e*i K(3$8m(%B6 E0m -x;lx^K\=T2, BGSY4Dž tXǠ_?' c]Q+H]JBVL0~s\Ѐyx?/;s4S,YtN"ŀhořUJ䗐;eD**hBY l+xAX*(p Q3>YP=hOJq|,S-îLD8GEYRVU~5: /ict.1 <˂ gҝ&񀢥_QGE -P~S6B4i5p@ &5L!df(uY*Y gQ.amV1O!Fj!fY=:~s.@{@lgڟUak,F XL ;sgV٪̓g2ӄ6i"㗛N.Lm)eZ3%s4ENc:p-;7+gN[@ыc,·j#sH ukؿYsLb4S+ $cXX.>L|V Tqda4U,pj2 O2mS)Q^S^b#_-p5js(~Ȣ -rxs/,7=w҄|"9d"" 8f<C,) A'e֮82OԷ''ԟvH=Eo9?U"*;bq<`Iy'<>ȳJ4\40P. ?!"ZK1O!3HjY8kZͤ{γ["SVԏB Q3DX^ɀ%`dmhO٘0e5& )"Q.5Ӕ]>2\5f,Yq;{Nqy?R6#:址q vGiU&2\Tt3NVz8VrNG ۣ -'13^`_N$/=g\gȰ:^gy7Yͼ/nPTh Lii69QօͽOZNǛ1zL9iVf^͸5,(RZCq-'t!nV{PyԹ>F)dHyˍз)(ӏ|wP Po!SZC 'DЖ;Vsx 2]y1KɪR0ELt<=(] -tTHU$ Z.'BHIm\JmuUQmϪT[Y6D"dO-tl:'3AoK%:%`gG{_G :j_@3`}F-O>jzEGrL6܈}B40r!{uRS(aNv>x c({᜴5l]/,7@>,7,^Xnn[bnTvܐڨܰ[ܰ333QN"T\ K͉9!"C `(Y4 -\JN^vX\A)j. -+g=!t% ji$"-)=6Z S@嚴2`4@@` oQCHnQc QHG)N慝-Ɇx -CxM6DѼk TYSÏM7nzS/8#;Z1Z-4|EAqn ,$'*Bؚ[2IפuG \CÇRUH:W@AGuJ2C?X[ 2@1nmk# b(8pg1_z> );$kbԚ⪁wK/R].2J] K{'s^ 0X1VYZ"Th0P>̜TL6;g(Sd>p%VX}& ;W},&(1֒IGhR# -՘SjGR0[8'FuRMg:$wU-Q5uH۲oWzeqRZpEnahjaVj:ڥ&ҮrTvm -k $\QfZW3Gq`4hl2/L'5Qᶾ+R1Pt9=8gGV JtZS}:;Efet9cIŃB|U2M޾]iO4qmzKr,1*4A2CB9Ʋvnu1-ז8΍Ͷ  -' ptF@'SAH sr`0v; AlNFzyɢ]7"Ыe(Udrg| [SC4 ,cgF 3>$ ȠΏ_L!Ix#5P"OtBՉ(͝쏎r;:6a9pѸs,N - 8Әbt PT5+i\bɭ"T\}_*1 ڻJ) p_ܿ3/:4ʋlB U1! :8*"n̠+,ACS# ʙUmŶo;cx(A.8& KˈvT˲FK]%CDy -[%ք9؊m7(²O -ʧ(x%t֦Z>N%I!DQV1XG'MUnaSqm 91-슱LpmbUra6p|71\y&SG:,Z#09%Ti'@ ->ޥ<fFp3-ci2i Yd -_TZpq*-@`~Pr$jV'ܪR㺌 -vQ5U}q:KCΫ Lx( XM$NO6EL+kr0z8} 2a56C;`=4,q9nG˶~<lLowq -1:"m9D(SY -C9$̦ -^H?`0 }km#3BcJd+WuB[;I.fw ä^ A|IǘRu8 .Ju0lN* yJ^2-o{dHXdO|/ AY5zQ{5]Q:Y؀ٟVFo,-F4]Z- CR-[hIh%*V.tߢЁ]E_QŞX\Luf_u;Q ~,!; 2;[`/PR -glyfԌ3rΆ̀RZF|Fh~ψr*ƷjUDܷVUTW,= u hU~ -WOfݏg?n߯;}_>]m?|V c;ňcJ]CHj -endstream -endobj - -5223 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [125.31614 732.5514 248.90114 746.2134] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1007/3-540-45337-7_18) - >> - /F 4 - /StructParent 496 - /Contents (https://doi.org/10.1007/3-540-45337-7_18) ->> -endobj - -5224 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 712.0894 91.28214 725.7514] - /Border [0 0 0] - /Dest 4662 0 R - /F 4 - /StructParent 497 - /Contents ([83]) ->> -endobj - -5225 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [382.00113 684.7654 491.84714 698.42737] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/508386.508404) - >> - /F 4 - /StructParent 498 - /Contents (https://doi.org/10.1145/508386.508404) ->> -endobj - -5226 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 664.3034 91.28214 677.9654] - /Border [0 0 0] - /Dest 4662 0 R - /F 4 - /StructParent 499 - /Contents ([84]) ->> -endobj - -5227 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [401.52615 636.9794 511.37213 650.6414] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/976270.976273) - >> - /F 4 - /StructParent 500 - /Contents (https://doi.org/10.1145/976270.976273) ->> -endobj - -5228 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 616.5174 91.28214 630.1794] - /Border [0 0 0] - /Dest 4663 0 R - /F 4 - /StructParent 501 - /Contents ([85]) ->> -endobj - -5229 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [266.72113 589.1934 376.56714 602.8554] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/378795.378798) - >> - /F 4 - /StructParent 502 - /Contents (https://doi.org/10.1145/378795.378798) ->> -endobj - -5230 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 568.73145 91.28214 582.39343] - /Border [0 0 0] - /Dest 4664 0 R - /F 4 - /StructParent 503 - /Contents ([86]) ->> -endobj - -5231 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [147.31615 527.74536 268.16214 541.4074] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/1040305.1040321) - >> - /F 4 - /StructParent 504 - /Contents (https://doi.org/10.1145/1040305.1040321) ->> -endobj - -5232 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 507.2834 91.28214 520.94543] - /Border [0 0 0] - /Dest 4665 0 R - /F 4 - /StructParent 505 - /Contents ([87]) ->> -endobj - -5233 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [125.31614 479.9594 204.91214 493.6214] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/2629460) - >> - /F 4 - /StructParent 506 - /Contents (https://doi.org/10.1145/2629460) ->> -endobj - -5234 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 459.4974 91.28214 473.1594] - /Border [0 0 0] - /Dest 4666 0 R - /F 4 - /StructParent 507 - /Contents ([88]) ->> -endobj - -5235 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [378.18414 432.1734 522.3831 445.8354] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1109/SANER.2017.7884621) - >> - /F 4 - /StructParent 508 - /Contents (https://doi.org/10.1109/SANER.2017.7884621) ->> -endobj - -5236 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 411.7114 91.28214 425.3734] - /Border [0 0 0] - /Dest 4667 0 R - /F 4 - /StructParent 509 - /Contents ([89]) ->> -endobj - -5237 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 377.5874 91.28214 391.2494] - /Border [0 0 0] - /Dest 4668 0 R - /F 4 - /StructParent 510 - /Contents ([90]) ->> -endobj - -5238 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 343.4634 91.28214 357.1254] - /Border [0 0 0] - /Dest 4669 0 R - /F 4 - /StructParent 511 - /Contents ([91]) ->> -endobj - -5239 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 323.0014 91.28214 336.6634] - /Border [0 0 0] - /Dest 4670 0 R - /F 4 - /StructParent 512 - /Contents ([92]) ->> -endobj - -5240 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [444.26346 309.33942 523.85944 323.0014] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/3763067) - >> - /F 4 - /StructParent 513 - /Contents (https://doi.org/10.1145/3763067) ->> -endobj - -5241 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 288.87738 91.28214 302.53943] - /Border [0 0 0] - /Dest 4671 0 R - /F 4 - /StructParent 514 - /Contents ([93]) ->> -endobj - -5242 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [188.03815 261.5534 297.88416 275.2154] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/224964.224987) - >> - /F 4 - /StructParent 515 - /Contents (https://doi.org/10.1145/224964.224987) ->> -endobj - -5243 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 241.09143 91.28214 254.75342] - /Border [0 0 0] - /Dest 4671 0 R - /F 4 - /StructParent 516 - /Contents ([94]) ->> -endobj - -5244 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [376.65515 213.7674 497.50113 227.42938] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/1065944.1065952) - >> - /F 4 - /StructParent 517 - /Contents (https://doi.org/10.1145/1065944.1065952) ->> -endobj - -5245 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 193.30542 91.28214 206.9674] - /Border [0 0 0] - /Dest 4672 0 R - /F 4 - /StructParent 518 - /Contents ([95]) ->> -endobj - -5246 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [385.25714 165.98138 495.10315 179.64337] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/165123.165164) - >> - /F 4 - /StructParent 519 - /Contents (https://doi.org/10.1145/165123.165164) ->> -endobj - -5247 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 145.51941 91.28214 159.1814] - /Border [0 0 0] - /Dest 4673 0 R - /F 4 - /StructParent 520 - /Contents ([96]) ->> -endobj - -5248 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [428.20114 131.85742 518.6981 145.51941] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1147/rd.53.0183) - >> - /F 4 - /StructParent 521 - /Contents (https://doi.org/10.1147/rd.53.0183) ->> -endobj - -5249 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 111.395386 91.28214 125.05737] - /Border [0 0 0] - /Dest 4673 0 R - /F 4 - /StructParent 522 - /Contents ([97]) ->> -endobj - -5250 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [319.92813 97.7334 415.92514 111.395386] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1147/rd.176.0525) - >> - /F 4 - /StructParent 523 - /Contents (https://doi.org/10.1147/rd.176.0525) ->> -endobj - -5251 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4366 0 R - /f1 4360 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 524 - /Tabs /S - /Parent 1 0 R - /Contents 5252 0 R - /Annots [5223 0 R 5224 0 R 5225 0 R 5226 0 R 5227 0 R 5228 0 R 5229 0 R 5230 0 R 5231 0 R 5232 0 R 5233 0 R 5234 0 R 5235 0 R 5236 0 R 5237 0 R 5238 0 R 5239 0 R 5240 0 R 5241 0 R 5242 0 R 5243 0 R 5244 0 R 5245 0 R 5246 0 R 5247 0 R 5248 0 R 5249 0 R 5250 0 R] ->> -endobj - -5252 0 obj -<< - /Length 5388 - /Filter /FlateDecode ->> -stream -x]YsF~節C֎ ->44lX5[~hɣuiG TUVց( NԑuW_>9tOup}wt?_}=wmjׇgϞu/~yg?~K{?h߫XG;=f8paew nyF^\=~ b<7c;18x6Ss|7Wgxʼnrrwcs80c)=}H$X&ǎfx*`T򑈏DB:>-TM)Snɀc3tP;c'w&ʹ#3fV:3=+NJk+Tg[2awc1߯=^K"r[(rElAz}xafNǣ0&9/_u_"GٺQ]!Jxa$9_M2W׶?ʂ5R~:k`/ g{ks:G+m -}j\.VmȣpV8h<۠i8e'1~}{4Gب'@Y"<>G%Δi4TV|8n @dMx1|j'&gqmd*Ήь_Xz|-_? -nٴz/ ݂2"_ss2M{͏c$:[*h@Yb㬥e0@9&\ӄ4Ecy[޼E1e}5Ep+f"hlTLEU.}afqkl;#_F#*1aW[\ qc oZuؾpmr.b][3dl cgd宓cY:ޗJҁ|3|}^̹D+T _Zy(@\ʔ&8+#8?~aKXN(eLlW}3 Gģj?1&#VִV&KEkCl_Λ S}fu^Gs>51V y\V>o -P%܃ezӓPR}[/oW(ZNaDWR\b٫C7|u6޵ PH݀ (>1بMsHJ(f@'x/N1=ËBx"om"8ńkʈza1GAQ6A ΋P9 -]G IpQ٢6hZ!МHJwp( 1 KH -=kA%c<1J%l"uHI>CήUf\G7GB"9P_B!X@BȸHve\ek-Z (ָ=TkhA+2!'m;&Q6Ia~z5 -DN+H0"_]РD) -j*a-/t!U f漕̻F/MIRآ|%M4>xbk3<˪D(.Um5{Zbʋ_9N8[ㄇl{6O~S٪ ,214ךk׳]hInoѽ_]1h'&Jl-0bB\M`յAM1t "7^C9,RTC - P+̅?Z$zjy5c!o{ywD}}Z%J LqGYKb⬤+/-FTÆA -$TnkJ*e uR5fa q#1/$B#k)T9⌋;tc1r-&=MĆ~/62Z&|L[…pB*Tu$zpHBqoUfzБΊ 9dW S̓l`,4ՇLw *Cu61aUo-=r*QX8b~` 5O!DDdQn)]L@ JYdضũH3ݨZ߄SRz&ْ%7C8>i#݆[]2J[Vӄ[%L ʓjjʘ`v -'8l|'9O Oq].ۄ -8h>~rv؛ݙáa[Sɶ+VF2a3( o|Xf)+$4r"T,3-{vW};WF_<ƓW#Y[ƶ&J)T?0*/aFF#mO)r+(f^ -'r8i .QT~AE[$=xiwwLAQ;HaEeJʖg9qvZYYb.GvG1t[Ġ 8I$K͉⛸Z6GAYTnT[_'zֶ/R%>#EEK{ )ĴʹN{ :oTw"X:W;6VU ZHz0Z^j U -0ډ-sq i U,y+_nPpXQJ(ϪV[qW||քOYxjRE{€ba_ҿ; ` XG9S @i[FiЪޏ-Hs|Ԇ`Nx=hs^0 -d[CK0rn`Gi[`ϰڐG?Ԧ), ^ {~GjwIa,aVn2(|m#똏Jfr+4aUL%$FlG QiuhLh> .UA~Zue -C qi8|^Q,XMj PHnF4xtǬ!2y)aw$ħu- /K"V@jVD갩vɱU&{Qm4@ A,C.Q$XT%g| 󮤱dj= -DEma)l -ܖwbu[ 11L2?kꮸ^5)@4%g_8>^6RM4&HA}զ\9춥QeehLMʓ9tOL$s*oRAV~^ Jsd[hMZ3w`NyuELtd=j@ͮ0|TA}{Yj"Z/'Qb"\ݢ^2Q Α' 2=j/d-;/0pby1>3*y}RVNHVoyX RZ&o\fNcdwR&PT|}i\pw L" 7ET0?'؈Qw;%JWe-h#L#MHr}Ŗ]|F="Z;Û8ڕw/=ZpZȊGxY1O"=ՊB)mRoJC4#RJµzqJ]uD7daMWl"qtelL8nPpQ(MHG:qK(-$Dϒ'b4ٛfGt^R!Ҡ˻IvcT8OJ6CbRW?8E /u1`\ Q閵p_ #R[(g_6ySѓXYp5Hv4ᥗb>. 1K2bqcW$_+S3 $apǜivȀt@bXx6 #TPu-m2MK1 -S -uZc0 εL wX1 Sdd0Ռ<*xXIŵ$R+uX2w -^0}zV6vX+{aE-G^IZ[Eb]ݠBXGwSNq`@S-s,jTP@0 ; (`%nR!c(yDnzHV懐\&e3'&J+*t:.a^ ^ndojUH` ck&,秣T[O4XaMK? ?@Qr]E .7-cLFfdJg|>!o!$r/FX.B%F@wk 0>Paj*@aFQQ[Ď̽!e.TY#Ub3W<zYIzi;WpFd~cS:Cpy~b&4y*Iַؕ%Rj=%|L;{zHu.2L7 L3㷇R[cؔyI2ŀo4ԡ $!\wEδDM*R~|OŞ܇KR1!\522,&Fa, mv#7|>m0K%W[xDkT3' n0އxht([)f@j s?ۏnGW>|Gy?`;ňcJ.!\ -endstream -endobj - -5253 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 746.2134 91.28214 759.87537] - /Border [0 0 0] - /Dest 4674 0 R - /F 4 - /StructParent 525 - /Contents ([98]) ->> -endobj - -5254 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [103.932144 705.2274 224.77814 718.8894] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/1244381.1244404) - >> - /F 4 - /StructParent 526 - /Contents (https://doi.org/10.1145/1244381.1244404) ->> -endobj - -5255 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 684.7654 91.28214 698.42737] - /Border [0 0 0] - /Dest 4675 0 R - /F 4 - /StructParent 527 - /Contents ([99]) ->> -endobj - -5256 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 664.3034 96.78214 677.9654] - /Border [0 0 0] - /Dest 4676 0 R - /F 4 - /StructParent 528 - /Contents ([100]) ->> -endobj - -5257 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 643.84143 96.78214 657.5034] - /Border [0 0 0] - /Dest 4677 0 R - /F 4 - /StructParent 529 - /Contents ([101]) ->> -endobj - -5258 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [147.31615 616.5174 248.28514 630.1794] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1109/SCC.2007.74) - >> - /F 4 - /StructParent 530 - /Contents (https://doi.org/10.1109/SCC.2007.74) ->> -endobj - -5259 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 596.0554 96.78214 609.7174] - /Border [0 0 0] - /Dest 4677 0 R - /F 4 - /StructParent 531 - /Contents ([102]) ->> -endobj - -5260 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [391.93414 568.73145 523.03217 582.39343] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1109/ICSE.2004.1317483) - >> - /F 4 - /StructParent 532 - /Contents (https://doi.org/10.1109/ICSE.2004.1317483) ->> -endobj - -5261 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 548.2694 96.78214 561.9314] - /Border [0 0 0] - /Dest 4678 0 R - /F 4 - /StructParent 533 - /Contents ([103]) ->> -endobj - -5262 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [169.31615 520.94543 279.16214 534.6074] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/258948.258973) - >> - /F 4 - /StructParent 534 - /Contents (https://doi.org/10.1145/258948.258973) ->> -endobj - -5263 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 500.4834 96.78214 514.1454] - /Border [0 0 0] - /Dest 4679 0 R - /F 4 - /StructParent 535 - /Contents ([104]) ->> -endobj - -5264 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [406.43213 473.1594 508.02814 486.8214] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1007/11693024_20) - >> - /F 4 - /StructParent 536 - /Contents (https://doi.org/10.1007/11693024_20) ->> -endobj - -5265 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 452.6974 96.78214 466.3594] - /Border [0 0 0] - /Dest 4679 0 R - /F 4 - /StructParent 537 - /Contents ([105]) ->> -endobj - -5266 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [391.82645 439.0354 524.4094 452.6974] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://infoscience.epfl.ch/record/176887) - >> - /F 4 - /StructParent 538 - /Contents (https://infoscience.epfl.ch/record/176887) ->> -endobj - -5267 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [103.932144 425.3734 173.68314 439.0354] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://infoscience.epfl.ch/record/176887) - >> - /F 4 - /StructParent 539 - /Contents (https://infoscience.epfl.ch/record/176887) ->> -endobj - -5268 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [70.86614 404.9114 96.78214 418.5734] - /Border [0 0 0] - /Dest 4680 0 R - /F 4 - /StructParent 540 - /Contents ([106]) ->> -endobj - -5269 0 obj -<< - /Type /Annot - /Subtype /Link - /Rect [103.932144 377.5874 224.77814 391.2494] - /Border [0 0 0] - /A << - /Type /Action - /S /URI - /URI (https://doi.org/10.1145/2501654.2501666) - >> - /F 4 - /StructParent 541 - /Contents (https://doi.org/10.1145/2501654.2501666) ->> -endobj - -5270 0 obj -<< - /Type /Page - /Resources << - /ProcSet [/PDF /Text /ImageC /ImageB] - /ColorSpace << - /c0 4402 0 R - >> - /Font << - /f0 4360 0 R - /f1 4366 0 R - >> - >> - /MediaBox [0 0 595.2756 841.8898] - /StructParents 542 - /Tabs /S - /Parent 1 0 R - /Contents 5271 0 R - /Annots [5253 0 R 5254 0 R 5255 0 R 5256 0 R 5257 0 R 5258 0 R 5259 0 R 5260 0 R 5261 0 R 5262 0 R 5263 0 R 5264 0 R 5265 0 R 5266 0 R 5267 0 R 5268 0 R 5269 0 R] ->> -endobj - -5271 0 obj -<< - /Length 3295 - /Filter /FlateDecode ->> -stream -x\ms ~b=r&>;ut%O3V~IH:SKri}g_lОn ><ݾ:6Of|=׻/ӛ~b_ߝ}w:9yqruj;j?+І6Y)ږFKCdsa+qyzqjsEƚ+pqa˃3JQy_L9^ڜ~:>]0F13~(fv0ޢy̸!ǟ(e(Z7c놻TB3]_N(o - 1x_AίOfD@vݰfHw{)2ib8 g龩nXVnx,ec" d_SY Hi%n3+U(tdRr4G$~G#s4EXtG[+~U==U -U5"JN91I$ɤm[Dvv[a LY.MBS9l.Gن׍da(> -7NL_ǖf lEl-HZv$8 kB‘:#4SLTW{ Y55V2VT>}mW>?:+9}`8Ϲq7ΈLHI&CDm;)] -U%^ݓN?X(XgE:DH>ʈ QQ댰k"J %㼝 .b|[JҊ9e7ߊ%b^t\#H)Yn/촡D6ECmY^%7΅V8[p'8I"LO<=EShH"2B~s+g^2}V%Dk,RhH"{AAC05X. JhҊbP,R`Dv\1qgIǟ&IAF45IbHK֑Nq1GUFA"}_X]`Z3rdJ%Ȅkdo QkC]>Au?F`[3ki'1<>(S-iCXۧl-,,Ր -j@YYVNٸ"\VN)ss(CNCCZZ9mߺơ,>GaS7BPk'`7vQҔ {N~KJDr?_rۧӷa.8*GYI!\X^lRtBggGj& -ĝ}m\LUo~ -bD-/0D Gpڒ0c6[gU=%N>K3v)ָFyO#냅-aݢ,gun#Q`; yVqpeT#Ft]kvHanp ޓ?!Qϴ6=hOTmq)M3īDsliG( rѕќύ<$Mņ,e;[{m')D'KK jB0( G3%x;&*e(+ümF BR,p$ŷnr2,suB"D)M8$9$ZuHUTJNh(^}|0 # auqA(guCYk=/yBSG)ߘWw岅17w2oڃ\P0W^Bg=<5:,7U՜{aq,ғ@-F芨HĈ=1/e;JjZ?K/k<1Ĵt*+1*d̿4Djםxu(YFH,QtBh3U bH7d!xo^}X (# @2<#%Ձ0['3 !DhmjRΙѻG 3S5oݨi{"!JSAۣaNH+}h FL+A҈QNyY4JUʋEGI>;ƒ@ -cx߹`6A*&7͇e¯nn G6&tרuhJX -endstream -endobj - -5272 0 obj -<< - /Length 1412 - /Type /XObject - /Subtype /Form - /Filter /FlateDecode - /BBox [0 0 146.25 31.019531] - /Matrix [1 0 0 1 0 0] - /Resources << - /ExtGState << - /a0 << - /CA 1 - /ca 1 - >> - >> - /XObject << - /x6 5273 0 R - >> - >> ->> -stream -xmV;%5 } -]`r.1 -dOҗ&I!I79I߿/~uӧ~k}7ۖN.uOtX.\"[3Eg 泛(KHERXErȸ$}'a$g DFZ,أȹ +O@g@l2$,$(V }hs,zhlIw;7"jny{0ڬGr$[a$ay98*]k,A.j[9$H8ܨ﵅S72Ҹ+`2a OSRg(o-8"[/Mgpb7NZmt:|*EG/@`ESԜ`Pa gy]7*;L5"I8`P6VE8db(=Χ'V8չjDx'YP]q_%!ڞ-n?ljaPi_Z0+q/67f-5 U'XZ"J*,b!!}XZ?3JGyhY:GO} pyRt{7&FrH)0.!E䓵ݑqLFձ7sF[ g@T_Y{wlkt-pCb/w $R|,&"uDӐT"f285kR.ɫNq_Vvj.hDi? b] LH;?jӑs_.vm '_3Lq*0Xs{cM|i -UT:bL;u>zw`&FyHLoim??eX -endstream -endobj - -5273 0 obj -<< - /Length 2113 - /BBox [0 0 147 32] - /Filter /FlateDecode - /Resources 5274 0 R - /Subtype /Form - /Type /XObject ->> -stream -xmXIr,u2~t| G8Kjyh%X|,{ȕ߼\\/_־GW)w_uu,?҈}}^|`tΘ}Y(^.Z3Pq2lN{[q.Pnwkqlz\D h?1V¹6iSqwN_{!L|︨ת:/"\E Q5CE胺^$hc?l fvq_NX @C?kӈ a(ӑ@TV8lۂ\}kTuP H8(Yl-Y5B.)- -Z,9aĬYʝ$;o}9ΐ,yٕ?sfn l%80vq:=qC"̡pjE5<%#i~HX&P8%&iBvb;Y:9/\7(f`M"Xd*u9k*Yd%Κ$H n(' TUiB 0SWfkӎ`Q;kY8ܱ(wq5<`k伈 ָ91kkxi73B7|$qίKF/W22vZ0[_n!ᅧ79SYfҭglNgCf]n;rKԻX_<$Bd3PGYKf6z4](se6\b]^ j;'}F._k){?Nb{Q\>&{PS[-"C:^k6׵J{T y Md!4ڵ8r|> -; 7X}Pif[pRPy0" lF$hҵv> - >> ->> -endobj - -5275 0 obj -<< - /Title (A Programming Paradigm for Spatiotemporal Composability) - /Author (Yifan Shi, Wei Zhang, Tianyi Cui) - /Creator (Typst 0.14.2) - /ModDate (D:20260731154505+08'00) - /CreationDate (D:20260731154505+08'00) ->> -endobj - -5276 0 obj -<< - /Length 1223 - /Type /Metadata - /Subtype /XML ->> -stream -A Programming Paradigm for Spatiotemporal ComposabilityYifan Shi, Wei Zhang, Tianyi CuiTypst 0.14.2en2026-07-31T15:45:05+08:002026-07-31T15:45:05+08:0048application/pdf8/8Hb0n3/ti5Ewx/bKL9Ww==HHwsV4w2OKoHWq5hDV/GeA==proof1.7 -endstream -endobj - -5277 0 obj -<< - /Type /Catalog - /Pages 1 0 R - /Metadata 5276 0 R - /PageLabels 53 0 R - /Lang (en) - /StructTreeRoot 54 0 R - /MarkInfo << - /Marked true - /Suspects false - >> - /ViewerPreferences << - /Direction /L2R - >> - /Outlines 2 0 R - /Names << - /Dests << - /Names [(sec:conclusion) 4454 0 R (sec:discussion) 4448 0 R (sec:introduction) 4412 0 R (sec:preliminary) 4416 0 R (sec:related) 4453 0 R (sec:system) 4442 0 R (sec:theory) 4432 0 R (subsec:capabilities) 4444 0 R (subsec:coeffects) 4414 0 R (subsec:component-lifecycle) 4428 0 R (subsec:composability) 4406 0 R (subsec:context-paradigm) 4431 0 R (subsec:contributions) 4411 0 R (subsec:core-impl) 4437 0 R (subsec:effects) 4413 0 R (subsec:granularity) 4446 0 R (subsec:koishi) 4441 0 R (subsec:language) 4445 0 R (subsec:loader-hmr) 4440 0 R (subsec:motivation) 4410 0 R (subsec:reactive-coeffects) 4423 0 R (subsec:revertible-effects) 4419 0 R (subsec:rw-effects) 4449 0 R (subsec:rw-paradigms) 4450 0 R (subsec:rw-spatial) 4452 0 R (subsec:rw-temporal) 4451 0 R (subsec:scaling) 4443 0 R (subsec:versioning) 4447 0 R (subsubsec:coeff-context) 4420 0 R (subsubsec:coeff-isolate-intercept) 4422 0 R (subsubsec:coeff-reactive) 4421 0 R (subsubsec:coeffect-api) 4434 0 R (subsubsec:component-api) 4435 0 R (subsubsec:config-layer) 4438 0 R (subsubsec:context-access) 4436 0 R (subsubsec:context-situating) 4430 0 R (subsubsec:eff-composition) 4418 0 R (subsubsec:eff-formalization) 4417 0 R (subsubsec:eff-idempotent) 4424 0 R (subsubsec:effect-api) 4433 0 R (subsubsec:hmr) 4439 0 R (subsubsec:lifecycle-asynchrony) 4427 0 R (subsubsec:lifecycle-coherence) 4426 0 R (subsubsec:lifecycle-iteration) 4425 0 R (subsubsec:motivation-harnesses) 4408 0 R (subsubsec:motivation-plugins) 4407 0 R (subsubsec:motivation-workaround) 4409 0 R (subsubsec:unified-context) 4429 0 R] - >> - >> ->> -endobj - -xref -0 5278 -0000000000 65535 f -0000000016 00000 n -0000000507 00000 n -0000000588 00000 n -0000000726 00000 n -0000000839 00000 n -0000000999 00000 n -0000001101 00000 n -0000001232 00000 n -0000001349 00000 n -0000001448 00000 n -0000001604 00000 n -0000001700 00000 n -0000001813 00000 n -0000001939 00000 n -0000002124 00000 n -0000002274 00000 n -0000002379 00000 n -0000002497 00000 n -0000002662 00000 n -0000002769 00000 n -0000002905 00000 n -0000003022 00000 n -0000003188 00000 n -0000003298 00000 n -0000003413 00000 n -0000003528 00000 n -0000003629 00000 n -0000003781 00000 n -0000003887 00000 n -0000004008 00000 n -0000004181 00000 n -0000004325 00000 n -0000004431 00000 n -0000004556 00000 n -0000004681 00000 n -0000004786 00000 n -0000004949 00000 n -0000005071 00000 n -0000005184 00000 n -0000005291 00000 n -0000005445 00000 n -0000005554 00000 n -0000005687 00000 n -0000005826 00000 n -0000005975 00000 n -0000006096 00000 n -0000006252 00000 n -0000006368 00000 n -0000006493 00000 n -0000006619 00000 n -0000006729 00000 n -0000006840 00000 n -0000006933 00000 n -0000007532 00000 n -0000014516 00000 n -0000014895 00000 n -0000015760 00000 n -0000016283 00000 n -0000017013 00000 n -0000017878 00000 n -0000018842 00000 n -0000020661 00000 n -0000022246 00000 n -0000023804 00000 n -0000026919 00000 n -0000029386 00000 n -0000031583 00000 n -0000034005 00000 n -0000035860 00000 n -0000039569 00000 n -0000042567 00000 n -0000045664 00000 n -0000047951 00000 n -0000049707 00000 n -0000050941 00000 n -0000051905 00000 n -0000052914 00000 n -0000054697 00000 n -0000057011 00000 n -0000058857 00000 n -0000060550 00000 n -0000061991 00000 n -0000062973 00000 n -0000064522 00000 n -0000065900 00000 n -0000066648 00000 n -0000067333 00000 n -0000068036 00000 n -0000069120 00000 n -0000069715 00000 n -0000070670 00000 n -0000071433 00000 n -0000072180 00000 n -0000073255 00000 n -0000074402 00000 n -0000075061 00000 n -0000075968 00000 n -0000076875 00000 n -0000077694 00000 n -0000078577 00000 n -0000079485 00000 n -0000080409 00000 n -0000080909 00000 n -0000083583 00000 n -0000084559 00000 n -0000084648 00000 n -0000084732 00000 n -0000084854 00000 n -0000085006 00000 n -0000085097 00000 n -0000085179 00000 n -0000085331 00000 n -0000085420 00000 n -0000085504 00000 n -0000085612 00000 n -0000085826 00000 n -0000085908 00000 n -0000086060 00000 n -0000086149 00000 n -0000086233 00000 n -0000086358 00000 n -0000086510 00000 n -0000086601 00000 n -0000086683 00000 n -0000086835 00000 n -0000086924 00000 n -0000087008 00000 n -0000087130 00000 n -0000087282 00000 n -0000087376 00000 n -0000087458 00000 n -0000087610 00000 n -0000087699 00000 n -0000087783 00000 n -0000087905 00000 n -0000088057 00000 n -0000088151 00000 n -0000088233 00000 n -0000088385 00000 n -0000088474 00000 n -0000088558 00000 n -0000088686 00000 n -0000088838 00000 n -0000088929 00000 n -0000089011 00000 n -0000089163 00000 n -0000089252 00000 n -0000089336 00000 n -0000089444 00000 n -0000089535 00000 n -0000089617 00000 n -0000089769 00000 n -0000089858 00000 n -0000089942 00000 n -0000090039 00000 n -0000090121 00000 n -0000090272 00000 n -0000090361 00000 n -0000090445 00000 n -0000090563 00000 n -0000090714 00000 n -0000090808 00000 n -0000090890 00000 n -0000091041 00000 n -0000091130 00000 n -0000091214 00000 n -0000091336 00000 n -0000091489 00000 n -0000091589 00000 n -0000091671 00000 n -0000091824 00000 n -0000091913 00000 n -0000091997 00000 n -0000092118 00000 n -0000092271 00000 n -0000092370 00000 n -0000092452 00000 n -0000092604 00000 n -0000092693 00000 n -0000092777 00000 n -0000092899 00000 n -0000093051 00000 n -0000093145 00000 n -0000093227 00000 n -0000093379 00000 n -0000093468 00000 n -0000093552 00000 n -0000093677 00000 n -0000093829 00000 n -0000093923 00000 n -0000094005 00000 n -0000094157 00000 n -0000094246 00000 n -0000094330 00000 n -0000094452 00000 n -0000094604 00000 n -0000094701 00000 n -0000094783 00000 n -0000094935 00000 n -0000095024 00000 n -0000095108 00000 n -0000095227 00000 n -0000095379 00000 n -0000095470 00000 n -0000095552 00000 n -0000095704 00000 n -0000095793 00000 n -0000095877 00000 n -0000095974 00000 n -0000096056 00000 n -0000096208 00000 n -0000096297 00000 n -0000096381 00000 n -0000096481 00000 n -0000096563 00000 n -0000096715 00000 n -0000096804 00000 n -0000096888 00000 n -0000096996 00000 n -0000097090 00000 n -0000097172 00000 n -0000097324 00000 n -0000097413 00000 n -0000097497 00000 n -0000097619 00000 n -0000097771 00000 n -0000097865 00000 n -0000097947 00000 n -0000098099 00000 n -0000098188 00000 n -0000098272 00000 n -0000098397 00000 n -0000098549 00000 n -0000098640 00000 n -0000098722 00000 n -0000098874 00000 n -0000098963 00000 n -0000099047 00000 n -0000099172 00000 n -0000099324 00000 n -0000099418 00000 n -0000099500 00000 n -0000099652 00000 n -0000099741 00000 n -0000099825 00000 n -0000099947 00000 n -0000100099 00000 n -0000100193 00000 n -0000100275 00000 n -0000100427 00000 n -0000100516 00000 n -0000100600 00000 n -0000100722 00000 n -0000100874 00000 n -0000100968 00000 n -0000101050 00000 n -0000101202 00000 n -0000101291 00000 n -0000101375 00000 n -0000101497 00000 n -0000101649 00000 n -0000101742 00000 n -0000101824 00000 n -0000101975 00000 n -0000102064 00000 n -0000102148 00000 n -0000102422 00000 n -0000102573 00000 n -0000102717 00000 n -0000102799 00000 n -0000102952 00000 n -0000103041 00000 n -0000103125 00000 n -0000103262 00000 n -0000103415 00000 n -0000103511 00000 n -0000103602 00000 n -0000103684 00000 n -0000103836 00000 n -0000103925 00000 n -0000104009 00000 n -0000104134 00000 n -0000104286 00000 n -0000104377 00000 n -0000104459 00000 n -0000104611 00000 n -0000104700 00000 n -0000104784 00000 n -0000104906 00000 n -0000105058 00000 n -0000105152 00000 n -0000105234 00000 n -0000105386 00000 n -0000105475 00000 n -0000105559 00000 n -0000105678 00000 n -0000105830 00000 n -0000105924 00000 n -0000106006 00000 n -0000106158 00000 n -0000106247 00000 n -0000106331 00000 n -0000106456 00000 n -0000106608 00000 n -0000106699 00000 n -0000106781 00000 n -0000106933 00000 n -0000107022 00000 n -0000107106 00000 n -0000107231 00000 n -0000107445 00000 n -0000107536 00000 n -0000107618 00000 n -0000107770 00000 n -0000107859 00000 n -0000107943 00000 n -0000108065 00000 n -0000108217 00000 n -0000108308 00000 n -0000108390 00000 n -0000108542 00000 n -0000108631 00000 n -0000108715 00000 n -0000108837 00000 n -0000108989 00000 n -0000109080 00000 n -0000109162 00000 n -0000109314 00000 n -0000109403 00000 n -0000109487 00000 n -0000109609 00000 n -0000109761 00000 n -0000109855 00000 n -0000109937 00000 n -0000110089 00000 n -0000110178 00000 n -0000110262 00000 n -0000110373 00000 n -0000110525 00000 n -0000110607 00000 n -0000110759 00000 n -0000110848 00000 n -0000110932 00000 n -0000111054 00000 n -0000111206 00000 n -0000111300 00000 n -0000111382 00000 n -0000111534 00000 n -0000111623 00000 n -0000111707 00000 n -0000111832 00000 n -0000111984 00000 n -0000112075 00000 n -0000112157 00000 n -0000112309 00000 n -0000112398 00000 n -0000112482 00000 n -0000112603 00000 n -0000112755 00000 n -0000112845 00000 n -0000112927 00000 n -0000113078 00000 n -0000113167 00000 n -0000113251 00000 n -0000113369 00000 n -0000113520 00000 n -0000113610 00000 n -0000113692 00000 n -0000113843 00000 n -0000113932 00000 n -0000114016 00000 n -0000114142 00000 n -0000114295 00000 n -0000114391 00000 n -0000114473 00000 n -0000114626 00000 n -0000114715 00000 n -0000114799 00000 n -0000114924 00000 n -0000115076 00000 n -0000115167 00000 n -0000115249 00000 n -0000115401 00000 n -0000115490 00000 n -0000115574 00000 n -0000115699 00000 n -0000115851 00000 n -0000115945 00000 n -0000116027 00000 n -0000116179 00000 n -0000116268 00000 n -0000116352 00000 n -0000116477 00000 n -0000116629 00000 n -0000116720 00000 n -0000116802 00000 n -0000116954 00000 n -0000117043 00000 n -0000117127 00000 n -0000117246 00000 n -0000117398 00000 n -0000117492 00000 n -0000117574 00000 n -0000117726 00000 n -0000117815 00000 n -0000117899 00000 n -0000118021 00000 n -0000118235 00000 n -0000118326 00000 n -0000118408 00000 n -0000118560 00000 n -0000118649 00000 n -0000118733 00000 n -0000118855 00000 n -0000119007 00000 n -0000119107 00000 n -0000119189 00000 n -0000119341 00000 n -0000119430 00000 n -0000119514 00000 n -0000119636 00000 n -0000119788 00000 n -0000119882 00000 n -0000119964 00000 n -0000120116 00000 n -0000120205 00000 n -0000120289 00000 n -0000120394 00000 n -0000120608 00000 n -0000120690 00000 n -0000120842 00000 n -0000120931 00000 n -0000121015 00000 n -0000121140 00000 n -0000121292 00000 n -0000121383 00000 n -0000121465 00000 n -0000121617 00000 n -0000121706 00000 n -0000121790 00000 n -0000121895 00000 n -0000122109 00000 n -0000122191 00000 n -0000122343 00000 n -0000122432 00000 n -0000122516 00000 n -0000122635 00000 n -0000122787 00000 n -0000122881 00000 n -0000122963 00000 n -0000123115 00000 n -0000123204 00000 n -0000123288 00000 n -0000123396 00000 n -0000123490 00000 n -0000123572 00000 n -0000123724 00000 n -0000123813 00000 n -0000123897 00000 n -0000124015 00000 n -0000124167 00000 n -0000124260 00000 n -0000124342 00000 n -0000124493 00000 n -0000124582 00000 n -0000124666 00000 n -0000124782 00000 n -0000124933 00000 n -0000125025 00000 n -0000125107 00000 n -0000125258 00000 n -0000125347 00000 n -0000125431 00000 n -0000125542 00000 n -0000125636 00000 n -0000125718 00000 n -0000125870 00000 n -0000125959 00000 n -0000126043 00000 n -0000126168 00000 n -0000126320 00000 n -0000126411 00000 n -0000126493 00000 n -0000126645 00000 n -0000126734 00000 n -0000126818 00000 n -0000126932 00000 n -0000127023 00000 n -0000127105 00000 n -0000127257 00000 n -0000127346 00000 n -0000127430 00000 n -0000127538 00000 n -0000127632 00000 n -0000127714 00000 n -0000127866 00000 n -0000127955 00000 n -0000128039 00000 n -0000128150 00000 n -0000128241 00000 n -0000128323 00000 n -0000128475 00000 n -0000128564 00000 n -0000128648 00000 n -0000128770 00000 n -0000128922 00000 n -0000129016 00000 n -0000129098 00000 n -0000129250 00000 n -0000129339 00000 n -0000129423 00000 n -0000129545 00000 n -0000129697 00000 n -0000129791 00000 n -0000129873 00000 n -0000130025 00000 n -0000130114 00000 n -0000130198 00000 n -0000130326 00000 n -0000130478 00000 n -0000130569 00000 n -0000130651 00000 n -0000130803 00000 n -0000130892 00000 n -0000130976 00000 n -0000131084 00000 n -0000131175 00000 n -0000131257 00000 n -0000131409 00000 n -0000131498 00000 n -0000131582 00000 n -0000131687 00000 n -0000131839 00000 n -0000131921 00000 n -0000132073 00000 n -0000132162 00000 n -0000132246 00000 n -0000132351 00000 n -0000132565 00000 n -0000132647 00000 n -0000132799 00000 n -0000132888 00000 n -0000132972 00000 n -0000133083 00000 n -0000133180 00000 n -0000133262 00000 n -0000133414 00000 n -0000133503 00000 n -0000133587 00000 n -0000133712 00000 n -0000133864 00000 n -0000133958 00000 n -0000134040 00000 n -0000134192 00000 n -0000134281 00000 n -0000134365 00000 n -0000134476 00000 n -0000134628 00000 n -0000134710 00000 n -0000134862 00000 n -0000134951 00000 n -0000135035 00000 n -0000135142 00000 n -0000135238 00000 n -0000135320 00000 n -0000135471 00000 n -0000135560 00000 n -0000135644 00000 n -0000135760 00000 n -0000135911 00000 n -0000136003 00000 n -0000136085 00000 n -0000136236 00000 n -0000136325 00000 n -0000136409 00000 n -0000136531 00000 n -0000136684 00000 n -0000136780 00000 n -0000136862 00000 n -0000137015 00000 n -0000137104 00000 n -0000137188 00000 n -0000137313 00000 n -0000137466 00000 n -0000137557 00000 n -0000137639 00000 n -0000137791 00000 n -0000137880 00000 n -0000137964 00000 n -0000138086 00000 n -0000138238 00000 n -0000138332 00000 n -0000138414 00000 n -0000138566 00000 n -0000138655 00000 n -0000138739 00000 n -0000138861 00000 n -0000139013 00000 n -0000139104 00000 n -0000139186 00000 n -0000139338 00000 n -0000139427 00000 n -0000139511 00000 n -0000139633 00000 n -0000139785 00000 n -0000139879 00000 n -0000139961 00000 n -0000140113 00000 n -0000140202 00000 n -0000140286 00000 n -0000140405 00000 n -0000140557 00000 n -0000140654 00000 n -0000140736 00000 n -0000140888 00000 n -0000140977 00000 n -0000141061 00000 n -0000141186 00000 n -0000141338 00000 n -0000141432 00000 n -0000141514 00000 n -0000141666 00000 n -0000141755 00000 n -0000141839 00000 n -0000141969 00000 n -0000142121 00000 n -0000142215 00000 n -0000142306 00000 n -0000142388 00000 n -0000142540 00000 n -0000142629 00000 n -0000142713 00000 n -0000142832 00000 n -0000142984 00000 n -0000143078 00000 n -0000143160 00000 n -0000143312 00000 n -0000143401 00000 n -0000143485 00000 n -0000143607 00000 n -0000143759 00000 n -0000143853 00000 n -0000143935 00000 n -0000144087 00000 n -0000144176 00000 n -0000144260 00000 n -0000144379 00000 n -0000144593 00000 n -0000144690 00000 n -0000144772 00000 n -0000144924 00000 n -0000145013 00000 n -0000145097 00000 n -0000145216 00000 n -0000145430 00000 n -0000145521 00000 n -0000145603 00000 n -0000145755 00000 n -0000145844 00000 n -0000145928 00000 n -0000146050 00000 n -0000146202 00000 n -0000146296 00000 n -0000146378 00000 n -0000146529 00000 n -0000146618 00000 n -0000146702 00000 n -0000146822 00000 n -0000146973 00000 n -0000147065 00000 n -0000147147 00000 n -0000147298 00000 n -0000147387 00000 n -0000147471 00000 n -0000147585 00000 n -0000147677 00000 n -0000147759 00000 n -0000147912 00000 n -0000148001 00000 n -0000148085 00000 n -0000148214 00000 n -0000148367 00000 n -0000148462 00000 n -0000148544 00000 n -0000148696 00000 n -0000148785 00000 n -0000148869 00000 n -0000148977 00000 n -0000149068 00000 n -0000149150 00000 n -0000149302 00000 n -0000149391 00000 n -0000149475 00000 n -0000149597 00000 n -0000149749 00000 n -0000149840 00000 n -0000149922 00000 n -0000150074 00000 n -0000150163 00000 n -0000150247 00000 n -0000150375 00000 n -0000150527 00000 n -0000150621 00000 n -0000150703 00000 n -0000150855 00000 n -0000150944 00000 n -0000151028 00000 n -0000151153 00000 n -0000151305 00000 n -0000151399 00000 n -0000151481 00000 n -0000151633 00000 n -0000151722 00000 n -0000151806 00000 n -0000151917 00000 n -0000152011 00000 n -0000152093 00000 n -0000152245 00000 n -0000152334 00000 n -0000152418 00000 n -0000152540 00000 n -0000152692 00000 n -0000152783 00000 n -0000152865 00000 n -0000153017 00000 n -0000153106 00000 n -0000153190 00000 n -0000153290 00000 n -0000153372 00000 n -0000153524 00000 n -0000153613 00000 n -0000153697 00000 n -0000153811 00000 n -0000153902 00000 n -0000153984 00000 n -0000154136 00000 n -0000154225 00000 n -0000154309 00000 n -0000154442 00000 n -0000154594 00000 n -0000154688 00000 n -0000154779 00000 n -0000154861 00000 n -0000155013 00000 n -0000155102 00000 n -0000155186 00000 n -0000155297 00000 n -0000155388 00000 n -0000155470 00000 n -0000155622 00000 n -0000155711 00000 n -0000155795 00000 n -0000155928 00000 n -0000156080 00000 n -0000156171 00000 n -0000156262 00000 n -0000156344 00000 n -0000156496 00000 n -0000156585 00000 n -0000156669 00000 n -0000156799 00000 n -0000156951 00000 n -0000157048 00000 n -0000157139 00000 n -0000157221 00000 n -0000157373 00000 n -0000157462 00000 n -0000157546 00000 n -0000157654 00000 n -0000157867 00000 n -0000157949 00000 n -0000158100 00000 n -0000158189 00000 n -0000158273 00000 n -0000158381 00000 n -0000158532 00000 n -0000158614 00000 n -0000158765 00000 n -0000158854 00000 n -0000158938 00000 n -0000159049 00000 n -0000159140 00000 n -0000159222 00000 n -0000159374 00000 n -0000159463 00000 n -0000159547 00000 n -0000159672 00000 n -0000159824 00000 n -0000159918 00000 n -0000160000 00000 n -0000160152 00000 n -0000160241 00000 n -0000160325 00000 n -0000160433 00000 n -0000160524 00000 n -0000160606 00000 n -0000160758 00000 n -0000160847 00000 n -0000160931 00000 n -0000161056 00000 n -0000161208 00000 n -0000161299 00000 n -0000161381 00000 n -0000161533 00000 n -0000161622 00000 n -0000161706 00000 n -0000161828 00000 n -0000161980 00000 n -0000162071 00000 n -0000162153 00000 n -0000162305 00000 n -0000162394 00000 n -0000162478 00000 n -0000162597 00000 n -0000162749 00000 n -0000162846 00000 n -0000162928 00000 n -0000163080 00000 n -0000163189 00000 n -0000163311 00000 n -0000163463 00000 n -0000163628 00000 n -0000163722 00000 n -0000163813 00000 n -0000163904 00000 n -0000163994 00000 n -0000164104 00000 n -0000164531 00000 n -0000164621 00000 n -0000164713 00000 n -0000164866 00000 n -0000164958 00000 n -0000165111 00000 n -0000165264 00000 n -0000165417 00000 n -0000165513 00000 n -0000165787 00000 n -0000165940 00000 n -0000166034 00000 n -0000166187 00000 n -0000166339 00000 n -0000166432 00000 n -0000166525 00000 n -0000166677 00000 n -0000166829 00000 n -0000166981 00000 n -0000167076 00000 n -0000167271 00000 n -0000167423 00000 n -0000167516 00000 n -0000167609 00000 n -0000167761 00000 n -0000167913 00000 n -0000168008 00000 n -0000168107 00000 n -0000168230 00000 n -0000168492 00000 n -0000168644 00000 n -0000168796 00000 n -0000168948 00000 n -0000169100 00000 n -0000169252 00000 n -0000169404 00000 n -0000169556 00000 n -0000169707 00000 n -0000169858 00000 n -0000169952 00000 n -0000170272 00000 n -0000170425 00000 n -0000170519 00000 n -0000170672 00000 n -0000170825 00000 n -0000170978 00000 n -0000171130 00000 n -0000171223 00000 n -0000171375 00000 n -0000171527 00000 n -0000171622 00000 n -0000172020 00000 n -0000172172 00000 n -0000172265 00000 n -0000172358 00000 n -0000172510 00000 n -0000172662 00000 n -0000172755 00000 n -0000172907 00000 n -0000173059 00000 n -0000173211 00000 n -0000173363 00000 n -0000173515 00000 n -0000173667 00000 n -0000173819 00000 n -0000173910 00000 n -0000174062 00000 n -0000174152 00000 n -0000174246 00000 n -0000174495 00000 n -0000174619 00000 n -0000174887 00000 n -0000175039 00000 n -0000175191 00000 n -0000175282 00000 n -0000175376 00000 n -0000175467 00000 n -0000175558 00000 n -0000175649 00000 n -0000175740 00000 n -0000175892 00000 n -0000176044 00000 n -0000176139 00000 n -0000176365 00000 n -0000176517 00000 n -0000176616 00000 n -0000176768 00000 n -0000176859 00000 n -0000177011 00000 n -0000177163 00000 n -0000177257 00000 n -0000177358 00000 n -0000177509 00000 n -0000177630 00000 n -0000177923 00000 n -0000178075 00000 n -0000178227 00000 n -0000178379 00000 n -0000178473 00000 n -0000178625 00000 n -0000178720 00000 n -0000178898 00000 n -0000179050 00000 n -0000179141 00000 n -0000179232 00000 n -0000179384 00000 n -0000179479 00000 n -0000179711 00000 n -0000179802 00000 n -0000179893 00000 n -0000180045 00000 n -0000180197 00000 n -0000180349 00000 n -0000180440 00000 n -0000180592 00000 n -0000180687 00000 n -0000180791 00000 n -0000180942 00000 n -0000181069 00000 n -0000181160 00000 n -0000181272 00000 n -0000181371 00000 n -0000181586 00000 n -0000181739 00000 n -0000181892 00000 n -0000182045 00000 n -0000182197 00000 n -0000182308 00000 n -0000182403 00000 n -0000182562 00000 n -0000182653 00000 n -0000182805 00000 n -0000182900 00000 n -0000183043 00000 n -0000183139 00000 n -0000183241 00000 n -0000183337 00000 n -0000183432 00000 n -0000183578 00000 n -0000183730 00000 n -0000183821 00000 n -0000183912 00000 n -0000184003 00000 n -0000184127 00000 n -0000184223 00000 n -0000184318 00000 n -0000184479 00000 n -0000184631 00000 n -0000184742 00000 n -0000184837 00000 n -0000184932 00000 n -0000185026 00000 n -0000185256 00000 n -0000185355 00000 n -0000185451 00000 n -0000185547 00000 n -0000185681 00000 n -0000185792 00000 n -0000185934 00000 n -0000186030 00000 n -0000186126 00000 n -0000186249 00000 n -0000186414 00000 n -0000186510 00000 n -0000186606 00000 n -0000186702 00000 n -0000186798 00000 n -0000186894 00000 n -0000186990 00000 n -0000187135 00000 n -0000187622 00000 n -0000187773 00000 n -0000187926 00000 n -0000188128 00000 n -0000188283 00000 n -0000188438 00000 n -0000188592 00000 n -0000188687 00000 n -0000188841 00000 n -0000188936 00000 n -0000189150 00000 n -0000189304 00000 n -0000189458 00000 n -0000189553 00000 n -0000189648 00000 n -0000189802 00000 n -0000189956 00000 n -0000190110 00000 n -0000190261 00000 n -0000190354 00000 n -0000190447 00000 n -0000190601 00000 n -0000190698 00000 n -0000190906 00000 n -0000191060 00000 n -0000191155 00000 n -0000191250 00000 n -0000191345 00000 n -0000191440 00000 n -0000191577 00000 n -0000191673 00000 n -0000191758 00000 n -0000191903 00000 n -0000192076 00000 n -0000192161 00000 n -0000192306 00000 n -0000192478 00000 n -0000192599 00000 n -0000192692 00000 n -0000192789 00000 n -0000192886 00000 n -0000193022 00000 n -0000193396 00000 n -0000193549 00000 n -0000193703 00000 n -0000193857 00000 n -0000193954 00000 n -0000194087 00000 n -0000194241 00000 n -0000194419 00000 n -0000194514 00000 n -0000194668 00000 n -0000194822 00000 n -0000194976 00000 n -0000195073 00000 n -0000195176 00000 n -0000195308 00000 n -0000195442 00000 n -0000195596 00000 n -0000195692 00000 n -0000196146 00000 n -0000196240 00000 n -0000196394 00000 n -0000196548 00000 n -0000196645 00000 n -0000196760 00000 n -0000196857 00000 n -0000196951 00000 n -0000197180 00000 n -0000197273 00000 n -0000197366 00000 n -0000197459 00000 n -0000197554 00000 n -0000197647 00000 n -0000197742 00000 n -0000197835 00000 n -0000197989 00000 n -0000198112 00000 n -0000198215 00000 n -0000198328 00000 n -0000198445 00000 n -0000198541 00000 n -0000199035 00000 n -0000199188 00000 n -0000199342 00000 n -0000199439 00000 n -0000199605 00000 n -0000199759 00000 n -0000199913 00000 n -0000200067 00000 n -0000200164 00000 n -0000200315 00000 n -0000200469 00000 n -0000200623 00000 n -0000200720 00000 n -0000200865 00000 n -0000201008 00000 n -0000201101 00000 n -0000201194 00000 n -0000201279 00000 n -0000201424 00000 n -0000201596 00000 n -0000201681 00000 n -0000201826 00000 n -0000201998 00000 n -0000202120 00000 n -0000202205 00000 n -0000202350 00000 n -0000202522 00000 n -0000202607 00000 n -0000202752 00000 n -0000202924 00000 n -0000203045 00000 n -0000203157 00000 n -0000203252 00000 n -0000203397 00000 n -0000203959 00000 n -0000204036 00000 n -0000204130 00000 n -0000204277 00000 n -0000204426 00000 n -0000204503 00000 n -0000204580 00000 n -0000204665 00000 n -0000204812 00000 n -0000204915 00000 n -0000205062 00000 n -0000205212 00000 n -0000205358 00000 n -0000205435 00000 n -0000205512 00000 n -0000205589 00000 n -0000205674 00000 n -0000205820 00000 n -0000205905 00000 n -0000206051 00000 n -0000206128 00000 n -0000206205 00000 n -0000206282 00000 n -0000206359 00000 n -0000206444 00000 n -0000206590 00000 n -0000206702 00000 n -0000206850 00000 n -0000206998 00000 n -0000207146 00000 n -0000207294 00000 n -0000207371 00000 n -0000207448 00000 n -0000207533 00000 n -0000207679 00000 n -0000207764 00000 n -0000207912 00000 n -0000207989 00000 n -0000208066 00000 n -0000208143 00000 n -0000208228 00000 n -0000208376 00000 n -0000208470 00000 n -0000208618 00000 n -0000208768 00000 n -0000208845 00000 n -0000208930 00000 n -0000209078 00000 n -0000209181 00000 n -0000209329 00000 n -0000209480 00000 n -0000209628 00000 n -0000209705 00000 n -0000209782 00000 n -0000209859 00000 n -0000209944 00000 n -0000210092 00000 n -0000210177 00000 n -0000210325 00000 n -0000210402 00000 n -0000210479 00000 n -0000210556 00000 n -0000210633 00000 n -0000210718 00000 n -0000210866 00000 n -0000210978 00000 n -0000211130 00000 n -0000211280 00000 n -0000211430 00000 n -0000211580 00000 n -0000211657 00000 n -0000211734 00000 n -0000211811 00000 n -0000211896 00000 n -0000212044 00000 n -0000212129 00000 n -0000212279 00000 n -0000212356 00000 n -0000212441 00000 n -0000212589 00000 n -0000212692 00000 n -0000212840 00000 n -0000212991 00000 n -0000213139 00000 n -0000213216 00000 n -0000213293 00000 n -0000213378 00000 n -0000213526 00000 n -0000213620 00000 n -0000213768 00000 n -0000213918 00000 n -0000214003 00000 n -0000214151 00000 n -0000214228 00000 n -0000214330 00000 n -0000214428 00000 n -0000214572 00000 n -0000214668 00000 n -0000214792 00000 n -0000214877 00000 n -0000215022 00000 n -0000215195 00000 n -0000215280 00000 n -0000215425 00000 n -0000215598 00000 n -0000215696 00000 n -0000215814 00000 n -0000215910 00000 n -0000216006 00000 n -0000216151 00000 n -0000216785 00000 n -0000216862 00000 n -0000216956 00000 n -0000217104 00000 n -0000217254 00000 n -0000217331 00000 n -0000217416 00000 n -0000217564 00000 n -0000217685 00000 n -0000217833 00000 n -0000217984 00000 n -0000218132 00000 n -0000218283 00000 n -0000218430 00000 n -0000218507 00000 n -0000218584 00000 n -0000218661 00000 n -0000218746 00000 n -0000218893 00000 n -0000219014 00000 n -0000219161 00000 n -0000219311 00000 n -0000219458 00000 n -0000219608 00000 n -0000219755 00000 n -0000219832 00000 n -0000219909 00000 n -0000219986 00000 n -0000220063 00000 n -0000220148 00000 n -0000220295 00000 n -0000220452 00000 n -0000220599 00000 n -0000220748 00000 n -0000220898 00000 n -0000221045 00000 n -0000221195 00000 n -0000221342 00000 n -0000221492 00000 n -0000221639 00000 n -0000221788 00000 n -0000221865 00000 n -0000221942 00000 n -0000222027 00000 n -0000222174 00000 n -0000222277 00000 n -0000222424 00000 n -0000222574 00000 n -0000222721 00000 n -0000222798 00000 n -0000222875 00000 n -0000222952 00000 n -0000223037 00000 n -0000223184 00000 n -0000223296 00000 n -0000223446 00000 n -0000223595 00000 n -0000223744 00000 n -0000223893 00000 n -0000223970 00000 n -0000224055 00000 n -0000224202 00000 n -0000224314 00000 n -0000224464 00000 n -0000224611 00000 n -0000224761 00000 n -0000224908 00000 n -0000224985 00000 n -0000225062 00000 n -0000225147 00000 n -0000225294 00000 n -0000225388 00000 n -0000225535 00000 n -0000225684 00000 n -0000225769 00000 n -0000225916 00000 n -0000226010 00000 n -0000226157 00000 n -0000226306 00000 n -0000226383 00000 n -0000226468 00000 n -0000226615 00000 n -0000226700 00000 n -0000226847 00000 n -0000226924 00000 n -0000227009 00000 n -0000227156 00000 n -0000227268 00000 n -0000227421 00000 n -0000227570 00000 n -0000227719 00000 n -0000227868 00000 n -0000227945 00000 n -0000228022 00000 n -0000228107 00000 n -0000228254 00000 n -0000228375 00000 n -0000228522 00000 n -0000228672 00000 n -0000228819 00000 n -0000228969 00000 n -0000229116 00000 n -0000229193 00000 n -0000229270 00000 n -0000229355 00000 n -0000229502 00000 n -0000229659 00000 n -0000229809 00000 n -0000229958 00000 n -0000230107 00000 n -0000230257 00000 n -0000230407 00000 n -0000230556 00000 n -0000230706 00000 n -0000230853 00000 n -0000231002 00000 n -0000231079 00000 n -0000231156 00000 n -0000231233 00000 n -0000231318 00000 n -0000231465 00000 n -0000231559 00000 n -0000231706 00000 n -0000231855 00000 n -0000231932 00000 n -0000232017 00000 n -0000232164 00000 n -0000232276 00000 n -0000232426 00000 n -0000232573 00000 n -0000232723 00000 n -0000232870 00000 n -0000232947 00000 n -0000233024 00000 n -0000233109 00000 n -0000233256 00000 n -0000233350 00000 n -0000233497 00000 n -0000233646 00000 n -0000233731 00000 n -0000233878 00000 n -0000233955 00000 n -0000234056 00000 n -0000234153 00000 n -0000234320 00000 n -0000234415 00000 n -0000234510 00000 n -0000234603 00000 n -0000234698 00000 n -0000234792 00000 n -0000234888 00000 n -0000234982 00000 n -0000235127 00000 n -0000236139 00000 n -0000236216 00000 n -0000236310 00000 n -0000236456 00000 n -0000236604 00000 n -0000236681 00000 n -0000236766 00000 n -0000236912 00000 n -0000237033 00000 n -0000237181 00000 n -0000237332 00000 n -0000237480 00000 n -0000237631 00000 n -0000237779 00000 n -0000237856 00000 n -0000237941 00000 n -0000238089 00000 n -0000238183 00000 n -0000238331 00000 n -0000238481 00000 n -0000238558 00000 n -0000238643 00000 n -0000238791 00000 n -0000238948 00000 n -0000239096 00000 n -0000239247 00000 n -0000239395 00000 n -0000239546 00000 n -0000239694 00000 n -0000239845 00000 n -0000239993 00000 n -0000240144 00000 n -0000240292 00000 n -0000240369 00000 n -0000240446 00000 n -0000240523 00000 n -0000240600 00000 n -0000240677 00000 n -0000240762 00000 n -0000240910 00000 n -0000240995 00000 n -0000241145 00000 n -0000241222 00000 n -0000241299 00000 n -0000241376 00000 n -0000241461 00000 n -0000241609 00000 n -0000241712 00000 n -0000241860 00000 n -0000242011 00000 n -0000242159 00000 n -0000242236 00000 n -0000242313 00000 n -0000242390 00000 n -0000242467 00000 n -0000242552 00000 n -0000242700 00000 n -0000242821 00000 n -0000242969 00000 n -0000243120 00000 n -0000243268 00000 n -0000243419 00000 n -0000243567 00000 n -0000243644 00000 n -0000243721 00000 n -0000243798 00000 n -0000243875 00000 n -0000243960 00000 n -0000244108 00000 n -0000244229 00000 n -0000244377 00000 n -0000244528 00000 n -0000244676 00000 n -0000244827 00000 n -0000244975 00000 n -0000245052 00000 n -0000245129 00000 n -0000245206 00000 n -0000245283 00000 n -0000245360 00000 n -0000245445 00000 n -0000245593 00000 n -0000245714 00000 n -0000245862 00000 n -0000246012 00000 n -0000246163 00000 n -0000246311 00000 n -0000246461 00000 n -0000246538 00000 n -0000246615 00000 n -0000246692 00000 n -0000246777 00000 n -0000246925 00000 n -0000247028 00000 n -0000247176 00000 n -0000247327 00000 n -0000247475 00000 n -0000247552 00000 n -0000247629 00000 n -0000247706 00000 n -0000247783 00000 n -0000247868 00000 n -0000248016 00000 n -0000248137 00000 n -0000248285 00000 n -0000248436 00000 n -0000248584 00000 n -0000248735 00000 n -0000248883 00000 n -0000248960 00000 n -0000249037 00000 n -0000249114 00000 n -0000249191 00000 n -0000249276 00000 n -0000249424 00000 n -0000249545 00000 n -0000249693 00000 n -0000249844 00000 n -0000249992 00000 n -0000250143 00000 n -0000250291 00000 n -0000250368 00000 n -0000250445 00000 n -0000250522 00000 n -0000250599 00000 n -0000250676 00000 n -0000250761 00000 n -0000250909 00000 n -0000251066 00000 n -0000251214 00000 n -0000251364 00000 n -0000251515 00000 n -0000251663 00000 n -0000251814 00000 n -0000251962 00000 n -0000252113 00000 n -0000252261 00000 n -0000252411 00000 n -0000252488 00000 n -0000252565 00000 n -0000252642 00000 n -0000252719 00000 n -0000252804 00000 n -0000252952 00000 n -0000253064 00000 n -0000253214 00000 n -0000253364 00000 n -0000253513 00000 n -0000253662 00000 n -0000253739 00000 n -0000253816 00000 n -0000253901 00000 n -0000254048 00000 n -0000254151 00000 n -0000254298 00000 n -0000254448 00000 n -0000254595 00000 n -0000254672 00000 n -0000254749 00000 n -0000254826 00000 n -0000254911 00000 n -0000255058 00000 n -0000255143 00000 n -0000255292 00000 n -0000255369 00000 n -0000255454 00000 n -0000255601 00000 n -0000255758 00000 n -0000255905 00000 n -0000256055 00000 n -0000256202 00000 n -0000256352 00000 n -0000256499 00000 n -0000256649 00000 n -0000256796 00000 n -0000256946 00000 n -0000257093 00000 n -0000257170 00000 n -0000257247 00000 n -0000257324 00000 n -0000257409 00000 n -0000257556 00000 n -0000257668 00000 n -0000257818 00000 n -0000257967 00000 n -0000258116 00000 n -0000258265 00000 n -0000258342 00000 n -0000258427 00000 n -0000258574 00000 n -0000258686 00000 n -0000258836 00000 n -0000258983 00000 n -0000259133 00000 n -0000259280 00000 n -0000259357 00000 n -0000259442 00000 n -0000259589 00000 n -0000259692 00000 n -0000259839 00000 n -0000259989 00000 n -0000260136 00000 n -0000260213 00000 n -0000260298 00000 n -0000260445 00000 n -0000260548 00000 n -0000260695 00000 n -0000260845 00000 n -0000260992 00000 n -0000261069 00000 n -0000261146 00000 n -0000261231 00000 n -0000261378 00000 n -0000261472 00000 n -0000261619 00000 n -0000261768 00000 n -0000261853 00000 n -0000262000 00000 n -0000262077 00000 n -0000262178 00000 n -0000262275 00000 n -0000262456 00000 n -0000262551 00000 n -0000262646 00000 n -0000262741 00000 n -0000262836 00000 n -0000262929 00000 n -0000263022 00000 n -0000263119 00000 n -0000263234 00000 n -0000263327 00000 n -0000263422 00000 n -0000263582 00000 n -0000263736 00000 n -0000263890 00000 n -0000263983 00000 n -0000264108 00000 n -0000264216 00000 n -0000264310 00000 n -0000264483 00000 n -0000264576 00000 n -0000264680 00000 n -0000264774 00000 n -0000264867 00000 n -0000264960 00000 n -0000265317 00000 n -0000265411 00000 n -0000265507 00000 n -0000265603 00000 n -0000265698 00000 n -0000265792 00000 n -0000265885 00000 n -0000265993 00000 n -0000266088 00000 n -0000266182 00000 n -0000266275 00000 n -0000266383 00000 n -0000266478 00000 n -0000266572 00000 n -0000266665 00000 n -0000266782 00000 n -0000266877 00000 n -0000266972 00000 n -0000267066 00000 n -0000267163 00000 n -0000267305 00000 n -0000267400 00000 n -0000267495 00000 n -0000267588 00000 n -0000267742 00000 n -0000267837 00000 n -0000268020 00000 n -0000268113 00000 n -0000268218 00000 n -0000268313 00000 n -0000268407 00000 n -0000268500 00000 n -0000268617 00000 n -0000268712 00000 n -0000268807 00000 n -0000268901 00000 n -0000268994 00000 n -0000269099 00000 n -0000269194 00000 n -0000269288 00000 n -0000269381 00000 n -0000269486 00000 n -0000269581 00000 n -0000269675 00000 n -0000269768 00000 n -0000269873 00000 n -0000269968 00000 n -0000270062 00000 n -0000270155 00000 n -0000270260 00000 n -0000270355 00000 n -0000270449 00000 n -0000270562 00000 n -0000270655 00000 n -0000270758 00000 n -0000270882 00000 n -0000270975 00000 n -0000271129 00000 n -0000271263 00000 n -0000271447 00000 n -0000271540 00000 n -0000271636 00000 n -0000271731 00000 n -0000271826 00000 n -0000271921 00000 n -0000272014 00000 n -0000272132 00000 n -0000272593 00000 n -0000272746 00000 n -0000272843 00000 n -0000272937 00000 n -0000273036 00000 n -0000273130 00000 n -0000273389 00000 n -0000273544 00000 n -0000273640 00000 n -0000273739 00000 n -0000273833 00000 n -0000273929 00000 n -0000274025 00000 n -0000274180 00000 n -0000274276 00000 n -0000274372 00000 n -0000274468 00000 n -0000274623 00000 n -0000274768 00000 n -0000275060 00000 n -0000275137 00000 n -0000275240 00000 n -0000275388 00000 n -0000275539 00000 n -0000275687 00000 n -0000275764 00000 n -0000275841 00000 n -0000275926 00000 n -0000276074 00000 n -0000276213 00000 n -0000276361 00000 n -0000276517 00000 n -0000276667 00000 n -0000276817 00000 n -0000276968 00000 n -0000277116 00000 n -0000277266 00000 n -0000277343 00000 n -0000277420 00000 n -0000277505 00000 n -0000277653 00000 n -0000277783 00000 n -0000277939 00000 n -0000278089 00000 n -0000278239 00000 n -0000278390 00000 n -0000278538 00000 n -0000278688 00000 n -0000278765 00000 n -0000278842 00000 n -0000278919 00000 n -0000279004 00000 n -0000279152 00000 n -0000279237 00000 n -0000279386 00000 n -0000279463 00000 n -0000279548 00000 n -0000279695 00000 n -0000279798 00000 n -0000279945 00000 n -0000280095 00000 n -0000280242 00000 n -0000280319 00000 n -0000280396 00000 n -0000280481 00000 n -0000280628 00000 n -0000280722 00000 n -0000280869 00000 n -0000281018 00000 n -0000281103 00000 n -0000281250 00000 n -0000281327 00000 n -0000281428 00000 n -0000281525 00000 n -0000281763 00000 n -0000281917 00000 n -0000282012 00000 n -0000282166 00000 n -0000282261 00000 n -0000282356 00000 n -0000282451 00000 n -0000282544 00000 n -0000282639 00000 n -0000282734 00000 n -0000282827 00000 n -0000282981 00000 n -0000283098 00000 n -0000283270 00000 n -0000283424 00000 n -0000283578 00000 n -0000283671 00000 n -0000283766 00000 n -0000283861 00000 n -0000283954 00000 n -0000284087 00000 n -0000284241 00000 n -0000284336 00000 n -0000284490 00000 n -0000284635 00000 n -0000285485 00000 n -0000285562 00000 n -0000285665 00000 n -0000285812 00000 n -0000285962 00000 n -0000286109 00000 n -0000286186 00000 n -0000286263 00000 n -0000286340 00000 n -0000286425 00000 n -0000286572 00000 n -0000286657 00000 n -0000286806 00000 n -0000286883 00000 n -0000286968 00000 n -0000287115 00000 n -0000287218 00000 n -0000287365 00000 n -0000287515 00000 n -0000287662 00000 n -0000287739 00000 n -0000287816 00000 n -0000287893 00000 n -0000287978 00000 n -0000288125 00000 n -0000288264 00000 n -0000288411 00000 n -0000288560 00000 n -0000288710 00000 n -0000288857 00000 n -0000289007 00000 n -0000289154 00000 n -0000289303 00000 n -0000289380 00000 n -0000289465 00000 n -0000289612 00000 n -0000289715 00000 n -0000289862 00000 n -0000290012 00000 n -0000290159 00000 n -0000290236 00000 n -0000290321 00000 n -0000290468 00000 n -0000290562 00000 n -0000290709 00000 n -0000290858 00000 n -0000290935 00000 n -0000291012 00000 n -0000291097 00000 n -0000291243 00000 n -0000291337 00000 n -0000291483 00000 n -0000291631 00000 n -0000291716 00000 n -0000291862 00000 n -0000291965 00000 n -0000292111 00000 n -0000292260 00000 n -0000292406 00000 n -0000292483 00000 n -0000292560 00000 n -0000292637 00000 n -0000292722 00000 n -0000292868 00000 n -0000292953 00000 n -0000293101 00000 n -0000293178 00000 n -0000293263 00000 n -0000293409 00000 n -0000293512 00000 n -0000293660 00000 n -0000293811 00000 n -0000293959 00000 n -0000294036 00000 n -0000294113 00000 n -0000294190 00000 n -0000294275 00000 n -0000294423 00000 n -0000294553 00000 n -0000294705 00000 n -0000294855 00000 n -0000295054 00000 n -0000295205 00000 n -0000295353 00000 n -0000295503 00000 n -0000295580 00000 n -0000295665 00000 n -0000295813 00000 n -0000295916 00000 n -0000296064 00000 n -0000296215 00000 n -0000296363 00000 n -0000296440 00000 n -0000296525 00000 n -0000296673 00000 n -0000296830 00000 n -0000296982 00000 n -0000297181 00000 n -0000297332 00000 n -0000297480 00000 n -0000297631 00000 n -0000297783 00000 n -0000297933 00000 n -0000298084 00000 n -0000298232 00000 n -0000298309 00000 n -0000298394 00000 n -0000298542 00000 n -0000298654 00000 n -0000298802 00000 n -0000298953 00000 n -0000299105 00000 n -0000299304 00000 n -0000299381 00000 n -0000299458 00000 n -0000299543 00000 n -0000299691 00000 n -0000299785 00000 n -0000299933 00000 n -0000300083 00000 n -0000300168 00000 n -0000300316 00000 n -0000300419 00000 n -0000300567 00000 n -0000300718 00000 n -0000300866 00000 n -0000300943 00000 n -0000301020 00000 n -0000301097 00000 n -0000301182 00000 n -0000301330 00000 n -0000301415 00000 n -0000301565 00000 n -0000301642 00000 n -0000301727 00000 n -0000301875 00000 n -0000301978 00000 n -0000302126 00000 n -0000302277 00000 n -0000302425 00000 n -0000302502 00000 n -0000302579 00000 n -0000302656 00000 n -0000302741 00000 n -0000302889 00000 n -0000303028 00000 n -0000303176 00000 n -0000303326 00000 n -0000303477 00000 n -0000303625 00000 n -0000303776 00000 n -0000303924 00000 n -0000304074 00000 n -0000304151 00000 n -0000304236 00000 n -0000304384 00000 n -0000304496 00000 n -0000304648 00000 n -0000304798 00000 n -0000304948 00000 n -0000305098 00000 n -0000305175 00000 n -0000305260 00000 n -0000305408 00000 n -0000305511 00000 n -0000305659 00000 n -0000305810 00000 n -0000305958 00000 n -0000306035 00000 n -0000306120 00000 n -0000306268 00000 n -0000306398 00000 n -0000306550 00000 n -0000306700 00000 n -0000306850 00000 n -0000307001 00000 n -0000307149 00000 n -0000307299 00000 n -0000307376 00000 n -0000307461 00000 n -0000307609 00000 n -0000307721 00000 n -0000307888 00000 n -0000308035 00000 n -0000308185 00000 n -0000308332 00000 n -0000308409 00000 n -0000308486 00000 n -0000308571 00000 n -0000308718 00000 n -0000308812 00000 n -0000308959 00000 n -0000309108 00000 n -0000309193 00000 n -0000309340 00000 n -0000309417 00000 n -0000309518 00000 n -0000309615 00000 n -0000309928 00000 n -0000310023 00000 n -0000310118 00000 n -0000310213 00000 n -0000310308 00000 n -0000310406 00000 n -0000310501 00000 n -0000310596 00000 n -0000310691 00000 n -0000310845 00000 n -0000310941 00000 n -0000311037 00000 n -0000311122 00000 n -0000311267 00000 n -0000311440 00000 n -0000311525 00000 n -0000311670 00000 n -0000311842 00000 n -0000311937 00000 n -0000312032 00000 n -0000312127 00000 n -0000312222 00000 n -0000312317 00000 n -0000312471 00000 n -0000312625 00000 n -0000312770 00000 n -0000313233 00000 n -0000313310 00000 n -0000313404 00000 n -0000313551 00000 n -0000313700 00000 n -0000313777 00000 n -0000313862 00000 n -0000314009 00000 n -0000314094 00000 n -0000314241 00000 n -0000314318 00000 n -0000314403 00000 n -0000314550 00000 n -0000314671 00000 n -0000314818 00000 n -0000314968 00000 n -0000315115 00000 n -0000315265 00000 n -0000315412 00000 n -0000315489 00000 n -0000315583 00000 n -0000315730 00000 n -0000315859 00000 n -0000315980 00000 n -0000316127 00000 n -0000316277 00000 n -0000316424 00000 n -0000316574 00000 n -0000316721 00000 n -0000316798 00000 n -0000316883 00000 n -0000317030 00000 n -0000317133 00000 n -0000317280 00000 n -0000317430 00000 n -0000317577 00000 n -0000317654 00000 n -0000317739 00000 n -0000317886 00000 n -0000317971 00000 n -0000318118 00000 n -0000318195 00000 n -0000318272 00000 n -0000318349 00000 n -0000318434 00000 n -0000318581 00000 n -0000318693 00000 n -0000318843 00000 n -0000318990 00000 n -0000319140 00000 n -0000319287 00000 n -0000319364 00000 n -0000319441 00000 n -0000319518 00000 n -0000319595 00000 n -0000319680 00000 n -0000319827 00000 n -0000319930 00000 n -0000320080 00000 n -0000320229 00000 n -0000320378 00000 n -0000320455 00000 n -0000320532 00000 n -0000320617 00000 n -0000320764 00000 n -0000320849 00000 n -0000320996 00000 n -0000321073 00000 n -0000321150 00000 n -0000321227 00000 n -0000321312 00000 n -0000321459 00000 n -0000321553 00000 n -0000321700 00000 n -0000321849 00000 n -0000321926 00000 n -0000322003 00000 n -0000322097 00000 n -0000322244 00000 n -0000322373 00000 n -0000322467 00000 n -0000322614 00000 n -0000322763 00000 n -0000322848 00000 n -0000322995 00000 n -0000323072 00000 n -0000323172 00000 n -0000323268 00000 n -0000323837 00000 n -0000323934 00000 n -0000324028 00000 n -0000324125 00000 n -0000324280 00000 n -0000324376 00000 n -0000324470 00000 n -0000324625 00000 n -0000324721 00000 n -0000324820 00000 n -0000324975 00000 n -0000325071 00000 n -0000325167 00000 n -0000325263 00000 n -0000325362 00000 n -0000325458 00000 n -0000325552 00000 n -0000325707 00000 n -0000325928 00000 n -0000326024 00000 n -0000326179 00000 n -0000326282 00000 n -0000326378 00000 n -0000326474 00000 n -0000326629 00000 n -0000326784 00000 n -0000326880 00000 n -0000326974 00000 n -0000327098 00000 n -0000327383 00000 n -0000327479 00000 n -0000327634 00000 n -0000327733 00000 n -0000327832 00000 n -0000327928 00000 n -0000328024 00000 n -0000328179 00000 n -0000328278 00000 n -0000328374 00000 n -0000328473 00000 n -0000328569 00000 n -0000328665 00000 n -0000328763 00000 n -0000328908 00000 n -0000329272 00000 n -0000329349 00000 n -0000329434 00000 n -0000329584 00000 n -0000329661 00000 n -0000329738 00000 n -0000329815 00000 n -0000329892 00000 n -0000329977 00000 n -0000330125 00000 n -0000330210 00000 n -0000330358 00000 n -0000330435 00000 n -0000330512 00000 n -0000330589 00000 n -0000330666 00000 n -0000330743 00000 n -0000330828 00000 n -0000330976 00000 n -0000331160 00000 n -0000331308 00000 n -0000331458 00000 n -0000331606 00000 n -0000331754 00000 n -0000331905 00000 n -0000332053 00000 n -0000332201 00000 n -0000332353 00000 n -0000332503 00000 n -0000332653 00000 n -0000332800 00000 n -0000332949 00000 n -0000333026 00000 n -0000333103 00000 n -0000333180 00000 n -0000333257 00000 n -0000333342 00000 n -0000333489 00000 n -0000333601 00000 n -0000333751 00000 n -0000333900 00000 n -0000334049 00000 n -0000334198 00000 n -0000334275 00000 n -0000334352 00000 n -0000334429 00000 n -0000334514 00000 n -0000334661 00000 n -0000334773 00000 n -0000334923 00000 n -0000335072 00000 n -0000335221 00000 n -0000335370 00000 n -0000335447 00000 n -0000335524 00000 n -0000335609 00000 n -0000335756 00000 n -0000335850 00000 n -0000335997 00000 n -0000336146 00000 n -0000336231 00000 n -0000336378 00000 n -0000336455 00000 n -0000336556 00000 n -0000336653 00000 n -0000336849 00000 n -0000337003 00000 n -0000337098 00000 n -0000337202 00000 n -0000337356 00000 n -0000337510 00000 n -0000337605 00000 n -0000337700 00000 n -0000337854 00000 n -0000337999 00000 n -0000338507 00000 n -0000338584 00000 n -0000338678 00000 n -0000338825 00000 n -0000338974 00000 n -0000339051 00000 n -0000339136 00000 n -0000339283 00000 n -0000339368 00000 n -0000339515 00000 n -0000339592 00000 n -0000339669 00000 n -0000339746 00000 n -0000339831 00000 n -0000339978 00000 n -0000340099 00000 n -0000340264 00000 n -0000340414 00000 n -0000340561 00000 n -0000340708 00000 n -0000340857 00000 n -0000340934 00000 n -0000341011 00000 n -0000341088 00000 n -0000341165 00000 n -0000341250 00000 n -0000341397 00000 n -0000341500 00000 n -0000341650 00000 n -0000341799 00000 n -0000341948 00000 n -0000342025 00000 n -0000342102 00000 n -0000342187 00000 n -0000342334 00000 n -0000342419 00000 n -0000342566 00000 n -0000342643 00000 n -0000342720 00000 n -0000342805 00000 n -0000342952 00000 n -0000343082 00000 n -0000343256 00000 n -0000343406 00000 n -0000343556 00000 n -0000343703 00000 n -0000343850 00000 n -0000343997 00000 n -0000344074 00000 n -0000344151 00000 n -0000344236 00000 n -0000344383 00000 n -0000344513 00000 n -0000344672 00000 n -0000344822 00000 n -0000344969 00000 n -0000345115 00000 n -0000345264 00000 n -0000345410 00000 n -0000345487 00000 n -0000345564 00000 n -0000345641 00000 n -0000345726 00000 n -0000345872 00000 n -0000345966 00000 n -0000346112 00000 n -0000346260 00000 n -0000346337 00000 n -0000346414 00000 n -0000346499 00000 n -0000346645 00000 n -0000346739 00000 n -0000346885 00000 n -0000347033 00000 n -0000347118 00000 n -0000347264 00000 n -0000347385 00000 n -0000347560 00000 n -0000347712 00000 n -0000347860 00000 n -0000348008 00000 n -0000348158 00000 n -0000348235 00000 n -0000348320 00000 n -0000348468 00000 n -0000348598 00000 n -0000348761 00000 n -0000348913 00000 n -0000349061 00000 n -0000349209 00000 n -0000349360 00000 n -0000349508 00000 n -0000349585 00000 n -0000349662 00000 n -0000349747 00000 n -0000349895 00000 n -0000349989 00000 n -0000350137 00000 n -0000350287 00000 n -0000350372 00000 n -0000350520 00000 n -0000350597 00000 n -0000350699 00000 n -0000350797 00000 n -0000351027 00000 n -0000351123 00000 n -0000351234 00000 n -0000351353 00000 n -0000351449 00000 n -0000351604 00000 n -0000351700 00000 n -0000351855 00000 n -0000351958 00000 n -0000352077 00000 n -0000352175 00000 n -0000352422 00000 n -0000352520 00000 n -0000352614 00000 n -0000352710 00000 n -0000352809 00000 n -0000352905 00000 n -0000353028 00000 n -0000353124 00000 n -0000353235 00000 n -0000353390 00000 n -0000353486 00000 n -0000353637 00000 n -0000353792 00000 n -0000353885 00000 n -0000354004 00000 n -0000354139 00000 n -0000354235 00000 n -0000354330 00000 n -0000354423 00000 n -0000354542 00000 n -0000354669 00000 n -0000354765 00000 n -0000354860 00000 n -0000354953 00000 n -0000355072 00000 n -0000355207 00000 n -0000355303 00000 n -0000355398 00000 n -0000355504 00000 n -0000355658 00000 n -0000355780 00000 n -0000356039 00000 n -0000356134 00000 n -0000356229 00000 n -0000356383 00000 n -0000356487 00000 n -0000356582 00000 n -0000356677 00000 n -0000356772 00000 n -0000356867 00000 n -0000356962 00000 n -0000357116 00000 n -0000357214 00000 n -0000357309 00000 n -0000357404 00000 n -0000357612 00000 n -0000357707 00000 n -0000357802 00000 n -0000357909 00000 n -0000358004 00000 n -0000358158 00000 n -0000358253 00000 n -0000358407 00000 n -0000358511 00000 n -0000358606 00000 n -0000358751 00000 n -0000359412 00000 n -0000359489 00000 n -0000359583 00000 n -0000359730 00000 n -0000359879 00000 n -0000359956 00000 n -0000360041 00000 n -0000360188 00000 n -0000360291 00000 n -0000360438 00000 n -0000360588 00000 n -0000360735 00000 n -0000360812 00000 n -0000360897 00000 n -0000361044 00000 n -0000361129 00000 n -0000361276 00000 n -0000361353 00000 n -0000361430 00000 n -0000361515 00000 n -0000361662 00000 n -0000361774 00000 n -0000361924 00000 n -0000362073 00000 n -0000362223 00000 n -0000362370 00000 n -0000362447 00000 n -0000362524 00000 n -0000362609 00000 n -0000362756 00000 n -0000362859 00000 n -0000363006 00000 n -0000363156 00000 n -0000363303 00000 n -0000363380 00000 n -0000363457 00000 n -0000363542 00000 n -0000363689 00000 n -0000363801 00000 n -0000363951 00000 n -0000364100 00000 n -0000364249 00000 n -0000364398 00000 n -0000364475 00000 n -0000364552 00000 n -0000364629 00000 n -0000364714 00000 n -0000364860 00000 n -0000364954 00000 n -0000365100 00000 n -0000365248 00000 n -0000365325 00000 n -0000365410 00000 n -0000365556 00000 n -0000365677 00000 n -0000365823 00000 n -0000365972 00000 n -0000366118 00000 n -0000366267 00000 n -0000366413 00000 n -0000366490 00000 n -0000366575 00000 n -0000366721 00000 n -0000366824 00000 n -0000366972 00000 n -0000367123 00000 n -0000367271 00000 n -0000367348 00000 n -0000367425 00000 n -0000367510 00000 n -0000367658 00000 n -0000367752 00000 n -0000367900 00000 n -0000368050 00000 n -0000368135 00000 n -0000368283 00000 n -0000368377 00000 n -0000368525 00000 n -0000368675 00000 n -0000368752 00000 n -0000368837 00000 n -0000368985 00000 n -0000369097 00000 n -0000369249 00000 n -0000369399 00000 n -0000369549 00000 n -0000369699 00000 n -0000369776 00000 n -0000369853 00000 n -0000369938 00000 n -0000370086 00000 n -0000370207 00000 n -0000370355 00000 n -0000370506 00000 n -0000370658 00000 n -0000370808 00000 n -0000370958 00000 n -0000371035 00000 n -0000371112 00000 n -0000371197 00000 n -0000371345 00000 n -0000371457 00000 n -0000371609 00000 n -0000371759 00000 n -0000371910 00000 n -0000372058 00000 n -0000372135 00000 n -0000372212 00000 n -0000372289 00000 n -0000372374 00000 n -0000372522 00000 n -0000372616 00000 n -0000372764 00000 n -0000372914 00000 n -0000372991 00000 n -0000373076 00000 n -0000373224 00000 n -0000373327 00000 n -0000373475 00000 n -0000373626 00000 n -0000373774 00000 n -0000373851 00000 n -0000373936 00000 n -0000374084 00000 n -0000374187 00000 n -0000374335 00000 n -0000374486 00000 n -0000374634 00000 n -0000374711 00000 n -0000374788 00000 n -0000374873 00000 n -0000375021 00000 n -0000375115 00000 n -0000375263 00000 n -0000375413 00000 n -0000375498 00000 n -0000375646 00000 n -0000375723 00000 n -0000375825 00000 n -0000375923 00000 n -0000376089 00000 n -0000376185 00000 n -0000376284 00000 n -0000376383 00000 n -0000376490 00000 n -0000376586 00000 n -0000376741 00000 n -0000376994 00000 n -0000377101 00000 n -0000377204 00000 n -0000377315 00000 n -0000377422 00000 n -0000377577 00000 n -0000377684 00000 n -0000377780 00000 n -0000377876 00000 n -0000377972 00000 n -0000378126 00000 n -0000378244 00000 n -0000378389 00000 n -0000378543 00000 n -0000378697 00000 n -0000378851 00000 n -0000379005 00000 n -0000379098 00000 n -0000379235 00000 n -0000379340 00000 n -0000379553 00000 n -0000379637 00000 n -0000379915 00000 n -0000380008 00000 n -0000380163 00000 n -0000380258 00000 n -0000380395 00000 n -0000380493 00000 n -0000380586 00000 n -0000380723 00000 n -0000380818 00000 n -0000380955 00000 n -0000381065 00000 n -0000381158 00000 n -0000381295 00000 n -0000381390 00000 n -0000381527 00000 n -0000381634 00000 n -0000381727 00000 n -0000381864 00000 n -0000381959 00000 n -0000382096 00000 n -0000382203 00000 n -0000382296 00000 n -0000382451 00000 n -0000382546 00000 n -0000382683 00000 n -0000382784 00000 n -0000382877 00000 n -0000383014 00000 n -0000383109 00000 n -0000383246 00000 n -0000383359 00000 n -0000383452 00000 n -0000383589 00000 n -0000383684 00000 n -0000383821 00000 n -0000383934 00000 n -0000384027 00000 n -0000384191 00000 n -0000384286 00000 n -0000384381 00000 n -0000384545 00000 n -0000384658 00000 n -0000384765 00000 n -0000384858 00000 n -0000385034 00000 n -0000385129 00000 n -0000385224 00000 n -0000385319 00000 n -0000385495 00000 n -0000385596 00000 n -0000385697 00000 n -0000385795 00000 n -0000385888 00000 n -0000386025 00000 n -0000386120 00000 n -0000386257 00000 n -0000386367 00000 n -0000386460 00000 n -0000386606 00000 n -0000386770 00000 n -0000386874 00000 n -0000386973 00000 n -0000387066 00000 n -0000387220 00000 n -0000387314 00000 n -0000387451 00000 n -0000387550 00000 n -0000387634 00000 n -0000387912 00000 n -0000387996 00000 n -0000388274 00000 n -0000388361 00000 n -0000388454 00000 n -0000388617 00000 n -0000388713 00000 n -0000388894 00000 n -0000388990 00000 n -0000389135 00000 n -0000389231 00000 n -0000389327 00000 n -0000389414 00000 n -0000389498 00000 n -0000389759 00000 n -0000389848 00000 n -0000389995 00000 n -0000390323 00000 n -0000390478 00000 n -0000390574 00000 n -0000390670 00000 n -0000390769 00000 n -0000390879 00000 n -0000390974 00000 n -0000391072 00000 n -0000391167 00000 n -0000391321 00000 n -0000391416 00000 n -0000391511 00000 n -0000391609 00000 n -0000391704 00000 n -0000391802 00000 n -0000391897 00000 n -0000392051 00000 n -0000392144 00000 n -0000392280 00000 n -0000392375 00000 n -0000392470 00000 n -0000392624 00000 n -0000392739 00000 n -0000392965 00000 n -0000393119 00000 n -0000393212 00000 n -0000393366 00000 n -0000393459 00000 n -0000393613 00000 n -0000393706 00000 n -0000393799 00000 n -0000393953 00000 n -0000394046 00000 n -0000394178 00000 n -0000394316 00000 n -0000394470 00000 n -0000394624 00000 n -0000394720 00000 n -0000394991 00000 n -0000395087 00000 n -0000395182 00000 n -0000395277 00000 n -0000395374 00000 n -0000395537 00000 n -0000395691 00000 n -0000395807 00000 n -0000395902 00000 n -0000395999 00000 n -0000396093 00000 n -0000396226 00000 n -0000396332 00000 n -0000396486 00000 n -0000396631 00000 n -0000396778 00000 n -0000396871 00000 n -0000396991 00000 n -0000397092 00000 n -0000397185 00000 n -0000397279 00000 n -0000397372 00000 n -0000397480 00000 n -0000397573 00000 n -0000397667 00000 n -0000397792 00000 n -0000397885 00000 n -0000397995 00000 n -0000398098 00000 n -0000398240 00000 n -0000398333 00000 n -0000398426 00000 n -0000398527 00000 n -0000398624 00000 n -0000398779 00000 n -0000398872 00000 n -0000398977 00000 n -0000399071 00000 n -0000399164 00000 n -0000399263 00000 n -0000399357 00000 n -0000399450 00000 n -0000399546 00000 n -0000399640 00000 n -0000399772 00000 n -0000399869 00000 n -0000399968 00000 n -0000400064 00000 n -0000400414 00000 n -0000400513 00000 n -0000400612 00000 n -0000400711 00000 n -0000400810 00000 n -0000400909 00000 n -0000401008 00000 n -0000401107 00000 n -0000401206 00000 n -0000401309 00000 n -0000401408 00000 n -0000401571 00000 n -0000401727 00000 n -0000401820 00000 n -0000401926 00000 n -0000402025 00000 n -0000402120 00000 n -0000402213 00000 n -0000402319 00000 n -0000402426 00000 n -0000402520 00000 n -0000402613 00000 n -0000402718 00000 n -0000402816 00000 n -0000402910 00000 n -0000403002 00000 n -0000403197 00000 n -0000403310 00000 n -0000403411 00000 n -0000403514 00000 n -0000403659 00000 n -0000403757 00000 n -0000403911 00000 n -0000404012 00000 n -0000404110 00000 n -0000404228 00000 n -0000404352 00000 n -0000404450 00000 n -0000404604 00000 n -0000404727 00000 n -0000404827 00000 n -0000404982 00000 n -0000405075 00000 n -0000405174 00000 n -0000405268 00000 n -0000405361 00000 n -0000405538 00000 n -0000405633 00000 n -0000405728 00000 n -0000405823 00000 n -0000405918 00000 n -0000406013 00000 n -0000406108 00000 n -0000406202 00000 n -0000406295 00000 n -0000406479 00000 n -0000406574 00000 n -0000406669 00000 n -0000406764 00000 n -0000406859 00000 n -0000406954 00000 n -0000407049 00000 n -0000407143 00000 n -0000407236 00000 n -0000407326 00000 n -0000407419 00000 n -0000407556 00000 n -0000407666 00000 n -0000407760 00000 n -0000407854 00000 n -0000407948 00000 n -0000408042 00000 n -0000408131 00000 n -0000408277 00000 n -0000408484 00000 n -0000408639 00000 n -0000408733 00000 n -0000408829 00000 n -0000408925 00000 n -0000409021 00000 n -0000409117 00000 n -0000409213 00000 n -0000409351 00000 n -0000409450 00000 n -0000409561 00000 n -0000409676 00000 n -0000409769 00000 n -0000409906 00000 n -0000410106 00000 n -0000410237 00000 n -0000410333 00000 n -0000410464 00000 n -0000410560 00000 n -0000410691 00000 n -0000410787 00000 n -0000410918 00000 n -0000411014 00000 n -0000411145 00000 n -0000411241 00000 n -0000411369 00000 n -0000411464 00000 n -0000411562 00000 n -0000411657 00000 n -0000411746 00000 n -0000411894 00000 n -0000412051 00000 n -0000412205 00000 n -0000412300 00000 n -0000412395 00000 n -0000412490 00000 n -0000412585 00000 n -0000412733 00000 n -0000412834 00000 n -0000412935 00000 n -0000413036 00000 n -0000413137 00000 n -0000413264 00000 n -0000413365 00000 n -0000413460 00000 n -0000413639 00000 n -0000413836 00000 n -0000413963 00000 n -0000414061 00000 n -0000414168 00000 n -0000414260 00000 n -0000414512 00000 n -0000414608 00000 n -0000414704 00000 n -0000414803 00000 n -0000414899 00000 n -0000414995 00000 n -0000415091 00000 n -0000415187 00000 n -0000415283 00000 n -0000415382 00000 n -0000415478 00000 n -0000415577 00000 n -0000415673 00000 n -0000415787 00000 n -0000416003 00000 n -0000416099 00000 n -0000416195 00000 n -0000416294 00000 n -0000416393 00000 n -0000416516 00000 n -0000416679 00000 n -0000416773 00000 n -0000416880 00000 n -0000417006 00000 n -0000417102 00000 n -0000417205 00000 n -0000417298 00000 n -0000417435 00000 n -0000417545 00000 n -0000417641 00000 n -0000417737 00000 n -0000417833 00000 n -0000417929 00000 n -0000418018 00000 n -0000418166 00000 n -0000418368 00000 n -0000418523 00000 n -0000418619 00000 n -0000418774 00000 n -0000418885 00000 n -0000418981 00000 n -0000419075 00000 n -0000419214 00000 n -0000419345 00000 n -0000419444 00000 n -0000419543 00000 n -0000419688 00000 n -0000419890 00000 n -0000420011 00000 n -0000420202 00000 n -0000420443 00000 n -0000420644 00000 n -0000420797 00000 n -0000420986 00000 n -0000421071 00000 n -0000421221 00000 n -0000421306 00000 n -0000421468 00000 n -0000421553 00000 n -0000421703 00000 n -0000421788 00000 n -0000421938 00000 n -0000422023 00000 n -0000422173 00000 n -0000422258 00000 n -0000422414 00000 n -0000422499 00000 n -0000422655 00000 n -0000422740 00000 n -0000422890 00000 n -0000422975 00000 n -0000423128 00000 n -0000423213 00000 n -0000423363 00000 n -0000423448 00000 n -0000423604 00000 n -0000423689 00000 n -0000423839 00000 n -0000423924 00000 n -0000424080 00000 n -0000424193 00000 n -0000424297 00000 n -0000424400 00000 n -0000424517 00000 n -0000424618 00000 n -0000424722 00000 n -0000424885 00000 n -0000425050 00000 n -0000425197 00000 n -0000425290 00000 n -0000425394 00000 n -0000425497 00000 n -0000425590 00000 n -0000425683 00000 n -0000425787 00000 n -0000425884 00000 n -0000425977 00000 n -0000426070 00000 n -0000426157 00000 n -0000426259 00000 n -0000426358 00000 n -0000426453 00000 n -0000426546 00000 n -0000426652 00000 n -0000426751 00000 n -0000426846 00000 n -0000426939 00000 n -0000427045 00000 n -0000427144 00000 n -0000427239 00000 n -0000427358 00000 n -0000427481 00000 n -0000427592 00000 n -0000428055 00000 n -0000428187 00000 n -0000428298 00000 n -0000428405 00000 n -0000428511 00000 n -0000428650 00000 n -0000428744 00000 n -0000428840 00000 n -0000428936 00000 n -0000429050 00000 n -0000429172 00000 n -0000429327 00000 n -0000429426 00000 n -0000429627 00000 n -0000429721 00000 n -0000429940 00000 n -0000430135 00000 n -0000430220 00000 n -0000430371 00000 n -0000430456 00000 n -0000430623 00000 n -0000430708 00000 n -0000430859 00000 n -0000430944 00000 n -0000431095 00000 n -0000431180 00000 n -0000431331 00000 n -0000431416 00000 n -0000431575 00000 n -0000431660 00000 n -0000431819 00000 n -0000431904 00000 n -0000432055 00000 n -0000432140 00000 n -0000432295 00000 n -0000432380 00000 n -0000432531 00000 n -0000432616 00000 n -0000432771 00000 n -0000432856 00000 n -0000433007 00000 n -0000433092 00000 n -0000433251 00000 n -0000433429 00000 n -0000433528 00000 n -0000433635 00000 n -0000433734 00000 n -0000433849 00000 n -0000434004 00000 n -0000434107 00000 n -0000434261 00000 n -0000434410 00000 n -0000434513 00000 n -0000434620 00000 n -0000434723 00000 n -0000434822 00000 n -0000435101 00000 n -0000435283 00000 n -0000435381 00000 n -0000435479 00000 n -0000435577 00000 n -0000435678 00000 n -0000435812 00000 n -0000435905 00000 n -0000436008 00000 n -0000436189 00000 n -0000436284 00000 n -0000436379 00000 n -0000436533 00000 n -0000436626 00000 n -0000436724 00000 n -0000436817 00000 n -0000437714 00000 n -0000437807 00000 n -0000437905 00000 n -0000438059 00000 n -0000438172 00000 n -0000438270 00000 n -0000438362 00000 n -0000438459 00000 n -0000438558 00000 n -0000438655 00000 n -0000438984 00000 n -0000439083 00000 n -0000439179 00000 n -0000439303 00000 n -0000439396 00000 n -0000439533 00000 n -0000439643 00000 n -0000439739 00000 n -0000439835 00000 n -0000439931 00000 n -0000440027 00000 n -0000440116 00000 n -0000440264 00000 n -0000440522 00000 n -0000440677 00000 n -0000440773 00000 n -0000440872 00000 n -0000440968 00000 n -0000441062 00000 n -0000441158 00000 n -0000441254 00000 n -0000441361 00000 n -0000441455 00000 n -0000441549 00000 n -0000441712 00000 n -0000441859 00000 n -0000441952 00000 n -0000442058 00000 n -0000442169 00000 n -0000442264 00000 n -0000442357 00000 n -0000442471 00000 n -0000442582 00000 n -0000442677 00000 n -0000442783 00000 n -0000442898 00000 n -0000443081 00000 n -0000443209 00000 n -0000443308 00000 n -0000443402 00000 n -0000443508 00000 n -0000443651 00000 n -0000443806 00000 n -0000443905 00000 n -0000443999 00000 n -0000444123 00000 n -0000444313 00000 n -0000444468 00000 n -0000444579 00000 n -0000444678 00000 n -0000444837 00000 n -0000444936 00000 n -0000445035 00000 n -0000445180 00000 n -0000445634 00000 n -0000445719 00000 n -0000446038 00000 n -0000446123 00000 n -0000446274 00000 n -0000446359 00000 n -0000446526 00000 n -0000446611 00000 n -0000446762 00000 n -0000446847 00000 n -0000447014 00000 n -0000447099 00000 n -0000447250 00000 n -0000447335 00000 n -0000447486 00000 n -0000447571 00000 n -0000447758 00000 n -0000447843 00000 n -0000447994 00000 n -0000448079 00000 n -0000448234 00000 n -0000448319 00000 n -0000448470 00000 n -0000448555 00000 n -0000448734 00000 n -0000448819 00000 n -0000448970 00000 n -0000449055 00000 n -0000449206 00000 n -0000449291 00000 n -0000449548 00000 n -0000449633 00000 n -0000449783 00000 n -0000449868 00000 n -0000450030 00000 n -0000450115 00000 n -0000450265 00000 n -0000450350 00000 n -0000450512 00000 n -0000450597 00000 n -0000450747 00000 n -0000450832 00000 n -0000450982 00000 n -0000451067 00000 n -0000451244 00000 n -0000451329 00000 n -0000451479 00000 n -0000451564 00000 n -0000451717 00000 n -0000451802 00000 n -0000451952 00000 n -0000452037 00000 n -0000452223 00000 n -0000452308 00000 n -0000452458 00000 n -0000452543 00000 n -0000452693 00000 n -0000452778 00000 n -0000452964 00000 n -0000453049 00000 n -0000453199 00000 n -0000453284 00000 n -0000453446 00000 n -0000453531 00000 n -0000453681 00000 n -0000453766 00000 n -0000453928 00000 n -0000454013 00000 n -0000454163 00000 n -0000454248 00000 n -0000454398 00000 n -0000454483 00000 n -0000454636 00000 n -0000454721 00000 n -0000454871 00000 n -0000454956 00000 n -0000455109 00000 n -0000455194 00000 n -0000455344 00000 n -0000455429 00000 n -0000455592 00000 n -0000455677 00000 n -0000455826 00000 n -0000455911 00000 n -0000456060 00000 n -0000456214 00000 n -0000456317 00000 n -0000456416 00000 n -0000456515 00000 n -0000456614 00000 n -0000456720 00000 n -0000456874 00000 n -0000457200 00000 n -0000457303 00000 n -0000457406 00000 n -0000457541 00000 n -0000457652 00000 n -0000457763 00000 n -0000457857 00000 n -0000457968 00000 n -0000458071 00000 n -0000458174 00000 n -0000458268 00000 n -0000458367 00000 n -0000458466 00000 n -0000458569 00000 n -0000458663 00000 n -0000458762 00000 n -0000458877 00000 n -0000458980 00000 n -0000459291 00000 n -0000459393 00000 n -0000459499 00000 n -0000459625 00000 n -0000459719 00000 n -0000459817 00000 n -0000459942 00000 n -0000460049 00000 n -0000460194 00000 n -0000460648 00000 n -0000460733 00000 n -0000461004 00000 n -0000461089 00000 n -0000461240 00000 n -0000461325 00000 n -0000461492 00000 n -0000461577 00000 n -0000461728 00000 n -0000461813 00000 n -0000461980 00000 n -0000462065 00000 n -0000462216 00000 n -0000462301 00000 n -0000462452 00000 n -0000462537 00000 n -0000462724 00000 n -0000462809 00000 n -0000462960 00000 n -0000463045 00000 n -0000463200 00000 n -0000463285 00000 n -0000463436 00000 n -0000463521 00000 n -0000463680 00000 n -0000463765 00000 n -0000463916 00000 n -0000464001 00000 n -0000464152 00000 n -0000464237 00000 n -0000464536 00000 n -0000464621 00000 n -0000464772 00000 n -0000464857 00000 n -0000465024 00000 n -0000465109 00000 n -0000465260 00000 n -0000465345 00000 n -0000465512 00000 n -0000465597 00000 n -0000465748 00000 n -0000465833 00000 n -0000465984 00000 n -0000466069 00000 n -0000466256 00000 n -0000466341 00000 n -0000466492 00000 n -0000466577 00000 n -0000466732 00000 n -0000466817 00000 n -0000466968 00000 n -0000467053 00000 n -0000467244 00000 n -0000467329 00000 n -0000467480 00000 n -0000467565 00000 n -0000467716 00000 n -0000467801 00000 n -0000467976 00000 n -0000468061 00000 n -0000468212 00000 n -0000468297 00000 n -0000468464 00000 n -0000468549 00000 n -0000468700 00000 n -0000468785 00000 n -0000468936 00000 n -0000469021 00000 n -0000469172 00000 n -0000469257 00000 n -0000469408 00000 n -0000469493 00000 n -0000469660 00000 n -0000469745 00000 n -0000469896 00000 n -0000469981 00000 n -0000470136 00000 n -0000470221 00000 n -0000470372 00000 n -0000470457 00000 n -0000470619 00000 n -0000470704 00000 n -0000470854 00000 n -0000470939 00000 n -0000471089 00000 n -0000471238 00000 n -0000471339 00000 n -0000471437 00000 n -0000471535 00000 n -0000471633 00000 n -0000471736 00000 n -0000471881 00000 n -0000471988 00000 n -0000472086 00000 n -0000472193 00000 n -0000472291 00000 n -0000472454 00000 n -0000472601 00000 n -0000472694 00000 n -0000472805 00000 n -0000472930 00000 n -0000473024 00000 n -0000473117 00000 n -0000473222 00000 n -0000473341 00000 n -0000473435 00000 n -0000473539 00000 n -0000473649 00000 n -0000473859 00000 n -0000473960 00000 n -0000474060 00000 n -0000474176 00000 n -0000474268 00000 n -0000474364 00000 n -0000474511 00000 n -0000474605 00000 n -0000474699 00000 n -0000474798 00000 n -0000474929 00000 n -0000475271 00000 n -0000475370 00000 n -0000475469 00000 n -0000475568 00000 n -0000475679 00000 n -0000475778 00000 n -0000475877 00000 n -0000475996 00000 n -0000476107 00000 n -0000476206 00000 n -0000476305 00000 n -0000476404 00000 n -0000476515 00000 n -0000476614 00000 n -0000476733 00000 n -0000476832 00000 n -0000476931 00000 n -0000477030 00000 n -0000477129 00000 n -0000477263 00000 n -0000477418 00000 n -0000477525 00000 n -0000477670 00000 n -0000477936 00000 n -0000478061 00000 n -0000478174 00000 n -0000478278 00000 n -0000478381 00000 n -0000478529 00000 n -0000478627 00000 n -0000478734 00000 n -0000478835 00000 n -0000478933 00000 n -0000479087 00000 n -0000479179 00000 n -0000479350 00000 n -0000479463 00000 n -0000479556 00000 n -0000479659 00000 n -0000479783 00000 n -0000479881 00000 n -0000479988 00000 n -0000480182 00000 n -0000480775 00000 n -0000480868 00000 n -0000480970 00000 n -0000481067 00000 n -0000481202 00000 n -0000481362 00000 n -0000481465 00000 n -0000481620 00000 n -0000481723 00000 n -0000481842 00000 n -0000481996 00000 n -0000482141 00000 n -0000482260 00000 n -0000482379 00000 n -0000482498 00000 n -0000482609 00000 n -0000482937 00000 n -0000483022 00000 n -0000483237 00000 n -0000483322 00000 n -0000483473 00000 n -0000483558 00000 n -0000483709 00000 n -0000483794 00000 n -0000483945 00000 n -0000484030 00000 n -0000484197 00000 n -0000484282 00000 n -0000484433 00000 n -0000484518 00000 n -0000484669 00000 n -0000484754 00000 n -0000484929 00000 n -0000485014 00000 n -0000485165 00000 n -0000485250 00000 n -0000485401 00000 n -0000485486 00000 n -0000485637 00000 n -0000485722 00000 n -0000485901 00000 n -0000485986 00000 n -0000486137 00000 n -0000486222 00000 n -0000486373 00000 n -0000486458 00000 n -0000486621 00000 n -0000486706 00000 n -0000486857 00000 n -0000486942 00000 n -0000487093 00000 n -0000487178 00000 n -0000487329 00000 n -0000487414 00000 n -0000487565 00000 n -0000487650 00000 n -0000487801 00000 n -0000487886 00000 n -0000488037 00000 n -0000488122 00000 n -0000488277 00000 n -0000488362 00000 n -0000488513 00000 n -0000488598 00000 n -0000488749 00000 n -0000488834 00000 n -0000488985 00000 n -0000489070 00000 n -0000489237 00000 n -0000489322 00000 n -0000489473 00000 n -0000489558 00000 n -0000489709 00000 n -0000489850 00000 n -0000489949 00000 n -0000490048 00000 n -0000490147 00000 n -0000490253 00000 n -0000490422 00000 n -0000490541 00000 n -0000490660 00000 n -0000490763 00000 n -0000490862 00000 n -0000490961 00000 n -0000491124 00000 n -0000491289 00000 n -0000491382 00000 n -0000491488 00000 n -0000491607 00000 n -0000491702 00000 n -0000491795 00000 n -0000491913 00000 n -0000492029 00000 n -0000492133 00000 n -0000492227 00000 n -0000492320 00000 n -0000492437 00000 n -0000492550 00000 n -0000492663 00000 n -0000492757 00000 n -0000492850 00000 n -0000492967 00000 n -0000493080 00000 n -0000493187 00000 n -0000493281 00000 n -0000493412 00000 n -0000493513 00000 n -0000493632 00000 n -0000493736 00000 n -0000493916 00000 n -0000494044 00000 n -0000494137 00000 n -0000494247 00000 n -0000494350 00000 n -0000494477 00000 n -0000494631 00000 n -0000494785 00000 n -0000494904 00000 n -0000495543 00000 n -0000495635 00000 n -0000495729 00000 n -0000495852 00000 n -0000496038 00000 n -0000496193 00000 n -0000496348 00000 n -0000496447 00000 n -0000496546 00000 n -0000496669 00000 n -0000496768 00000 n -0000496971 00000 n -0000497070 00000 n -0000497169 00000 n -0000497268 00000 n -0000497371 00000 n -0000497470 00000 n -0000497577 00000 n -0000497671 00000 n -0000497816 00000 n -0000498043 00000 n -0000498184 00000 n -0000498307 00000 n -0000498406 00000 n -0000498505 00000 n -0000498611 00000 n -0000498716 00000 n -0000498815 00000 n -0000499014 00000 n -0000499162 00000 n -0000499373 00000 n -0000499521 00000 n -0000499676 00000 n -0000499824 00000 n -0000499975 00000 n -0000500123 00000 n -0000500281 00000 n -0000500426 00000 n -0000500592 00000 n -0000500695 00000 n -0000500870 00000 n -0000501065 00000 n -0000501254 00000 n -0000501339 00000 n -0000501489 00000 n -0000501574 00000 n -0000501724 00000 n -0000501809 00000 n -0000501959 00000 n -0000502044 00000 n -0000502200 00000 n -0000502285 00000 n -0000502438 00000 n -0000502523 00000 n -0000502673 00000 n -0000502758 00000 n -0000502908 00000 n -0000502993 00000 n -0000503143 00000 n -0000503228 00000 n -0000503384 00000 n -0000503509 00000 n -0000503613 00000 n -0000503726 00000 n -0000503829 00000 n -0000503935 00000 n -0000504036 00000 n -0000504235 00000 n -0000504382 00000 n -0000504580 00000 n -0000504727 00000 n -0000504880 00000 n -0000505027 00000 n -0000505177 00000 n -0000505324 00000 n -0000505479 00000 n -0000505714 00000 n -0000505818 00000 n -0000505919 00000 n -0000506020 00000 n -0000506118 00000 n -0000506216 00000 n -0000506317 00000 n -0000506418 00000 n -0000506519 00000 n -0000506620 00000 n -0000506721 00000 n -0000506822 00000 n -0000506920 00000 n -0000507023 00000 n -0000507124 00000 n -0000507223 00000 n -0000507320 00000 n -0000507442 00000 n -0000507549 00000 n -0000507652 00000 n -0000507797 00000 n -0000507999 00000 n -0000508093 00000 n -0000508300 00000 n -0000508495 00000 n -0000508580 00000 n -0000508731 00000 n -0000508816 00000 n -0000508983 00000 n -0000509068 00000 n -0000509219 00000 n -0000509304 00000 n -0000509455 00000 n -0000509540 00000 n -0000509691 00000 n -0000509776 00000 n -0000509931 00000 n -0000510016 00000 n -0000510175 00000 n -0000510260 00000 n -0000510411 00000 n -0000510496 00000 n -0000510651 00000 n -0000510736 00000 n -0000510887 00000 n -0000510972 00000 n -0000511127 00000 n -0000511212 00000 n -0000511363 00000 n -0000511448 00000 n -0000511603 00000 n -0000511718 00000 n -0000511821 00000 n -0000511927 00000 n -0000512071 00000 n -0000512178 00000 n -0000512281 00000 n -0000512388 00000 n -0000512491 00000 n -0000512636 00000 n -0000512739 00000 n -0000512838 00000 n -0000512937 00000 n -0000513040 00000 n -0000513143 00000 n -0000513242 00000 n -0000513349 00000 n -0000513448 00000 n -0000513565 00000 n -0000513684 00000 n -0000513847 00000 n -0000513994 00000 n -0000514087 00000 n -0000514193 00000 n -0000514308 00000 n -0000514403 00000 n -0000514496 00000 n -0000514602 00000 n -0000514709 00000 n -0000514804 00000 n -0000514923 00000 n -0000515038 00000 n -0000515149 00000 n -0000515516 00000 n -0000515641 00000 n -0000515745 00000 n -0000515846 00000 n -0000515949 00000 n -0000516082 00000 n -0000516186 00000 n -0000516287 00000 n -0000516388 00000 n -0000516535 00000 n -0000516628 00000 n -0000516763 00000 n -0000516876 00000 n -0000517010 00000 n -0000517111 00000 n -0000517205 00000 n -0000517298 00000 n -0000517433 00000 n -0000517540 00000 n -0000517662 00000 n -0000517760 00000 n -0000517854 00000 n -0000517988 00000 n -0000518085 00000 n -0000518182 00000 n -0000518279 00000 n -0000518407 00000 n -0000518624 00000 n -0000518727 00000 n -0000518830 00000 n -0000518933 00000 n -0000519036 00000 n -0000519135 00000 n -0000519234 00000 n -0000519333 00000 n -0000519432 00000 n -0000519531 00000 n -0000519630 00000 n -0000519729 00000 n -0000519828 00000 n -0000519935 00000 n -0000520042 00000 n -0000520145 00000 n -0000520248 00000 n -0000520443 00000 n -0000520546 00000 n -0000520693 00000 n -0000520792 00000 n -0000520891 00000 n -0000520990 00000 n -0000521089 00000 n -0000521188 00000 n -0000521333 00000 n -0000521499 00000 n -0000521584 00000 n -0000521767 00000 n -0000521852 00000 n -0000522003 00000 n -0000522088 00000 n -0000522255 00000 n -0000522340 00000 n -0000522491 00000 n -0000522576 00000 n -0000522731 00000 n -0000522816 00000 n -0000522971 00000 n -0000523056 00000 n -0000523207 00000 n -0000523292 00000 n -0000523447 00000 n -0000523532 00000 n -0000523683 00000 n -0000523768 00000 n -0000523923 00000 n -0000524051 00000 n -0000524154 00000 n -0000524257 00000 n -0000524363 00000 n -0000524498 00000 n -0000524601 00000 n -0000524700 00000 n -0000524803 00000 n -0000524948 00000 n -0000525175 00000 n -0000525316 00000 n -0000525439 00000 n -0000525538 00000 n -0000525637 00000 n -0000525743 00000 n -0000525897 00000 n -0000526000 00000 n -0000526103 00000 n -0000526202 00000 n -0000526301 00000 n -0000526400 00000 n -0000526503 00000 n -0000526606 00000 n -0000526709 00000 n -0000526808 00000 n -0000526971 00000 n -0000527119 00000 n -0000527342 00000 n -0000527490 00000 n -0000527648 00000 n -0000527954 00000 n -0000528057 00000 n -0000528172 00000 n -0000528327 00000 n -0000528462 00000 n -0000528565 00000 n -0000528748 00000 n -0000528851 00000 n -0000528966 00000 n -0000529065 00000 n -0000529164 00000 n -0000529263 00000 n -0000529374 00000 n -0000529484 00000 n -0000529585 00000 n -0000529683 00000 n -0000529790 00000 n -0000529935 00000 n -0000530137 00000 n -0000530222 00000 n -0000530405 00000 n -0000530490 00000 n -0000530640 00000 n -0000530725 00000 n -0000530887 00000 n -0000530972 00000 n -0000531122 00000 n -0000531207 00000 n -0000531357 00000 n -0000531442 00000 n -0000531592 00000 n -0000531677 00000 n -0000531830 00000 n -0000531915 00000 n -0000532068 00000 n -0000532153 00000 n -0000532303 00000 n -0000532388 00000 n -0000532541 00000 n -0000532626 00000 n -0000532776 00000 n -0000532861 00000 n -0000533023 00000 n -0000533108 00000 n -0000533258 00000 n -0000533343 00000 n -0000533496 00000 n -0000533633 00000 n -0000533737 00000 n -0000533838 00000 n -0000533939 00000 n -0000534042 00000 n -0000534160 00000 n -0000534261 00000 n -0000534359 00000 n -0000534531 00000 n -0000534635 00000 n -0000534751 00000 n -0000534898 00000 n -0000534991 00000 n -0000535096 00000 n -0000535199 00000 n -0000535292 00000 n -0000535385 00000 n -0000535489 00000 n -0000535590 00000 n -0000535683 00000 n -0000535789 00000 n -0000535904 00000 n -0000536083 00000 n -0000536211 00000 n -0000536305 00000 n -0000536404 00000 n -0000536510 00000 n -0000536602 00000 n -0000536783 00000 n -0000536938 00000 n -0000537041 00000 n -0000537144 00000 n -0000537243 00000 n -0000537342 00000 n -0000537497 00000 n -0000537590 00000 n -0000537730 00000 n -0000537849 00000 n -0000537960 00000 n -0000538054 00000 n -0000538149 00000 n -0000538242 00000 n -0000538374 00000 n -0000538473 00000 n -0000538576 00000 n -0000538670 00000 n -0000538765 00000 n -0000538858 00000 n -0000538964 00000 n -0000539058 00000 n -0000539153 00000 n -0000539373 00000 n -0000539471 00000 n -0000539587 00000 n -0000539685 00000 n -0000539783 00000 n -0000539914 00000 n -0000540018 00000 n -0000540116 00000 n -0000540214 00000 n -0000540336 00000 n -0000540449 00000 n -0000540566 00000 n -0000540711 00000 n -0000540804 00000 n -0000540926 00000 n -0000541019 00000 n -0000541140 00000 n -0000541291 00000 n -0000541384 00000 n -0000541476 00000 n -0000541629 00000 n -0000541771 00000 n -0000541892 00000 n -0000542047 00000 n -0000542163 00000 n -0000542309 00000 n -0000542402 00000 n -0000542520 00000 n -0000542618 00000 n -0000542713 00000 n -0000542806 00000 n -0000542928 00000 n -0000543026 00000 n -0000543121 00000 n -0000543268 00000 n -0000543423 00000 n -0000543517 00000 n -0000543611 00000 n -0000543753 00000 n -0000544107 00000 n -0000544262 00000 n -0000544417 00000 n -0000544572 00000 n -0000544727 00000 n -0000544826 00000 n -0000544925 00000 n -0000545024 00000 n -0000545123 00000 n -0000545222 00000 n -0000545321 00000 n -0000545420 00000 n -0000545574 00000 n -0000545728 00000 n -0000545868 00000 n -0000545961 00000 n -0000546058 00000 n -0000546281 00000 n -0000546400 00000 n -0000546498 00000 n -0000546617 00000 n -0000546754 00000 n -0000546873 00000 n -0000546989 00000 n -0000547143 00000 n -0000547296 00000 n -0000547392 00000 n -0000547592 00000 n -0000547766 00000 n -0000547909 00000 n -0000548064 00000 n -0000548219 00000 n -0000548313 00000 n -0000548427 00000 n -0000548654 00000 n -0000548809 00000 n -0000548964 00000 n -0000549119 00000 n -0000549274 00000 n -0000549429 00000 n -0000549528 00000 n -0000549627 00000 n -0000549829 00000 n -0000550061 00000 n -0000550155 00000 n -0000550310 00000 n -0000550429 00000 n -0000550548 00000 n -0000550647 00000 n -0000550802 00000 n -0000550957 00000 n -0000551055 00000 n -0000551268 00000 n -0000551406 00000 n -0000551525 00000 n -0000551632 00000 n -0000551730 00000 n -0000551846 00000 n -0000552000 00000 n -0000552154 00000 n -0000552251 00000 n -0000552372 00000 n -0000552526 00000 n -0000552693 00000 n -0000552880 00000 n -0000552973 00000 n -0000553071 00000 n -0000553169 00000 n -0000553267 00000 n -0000553377 00000 n -0000553531 00000 n -0000553685 00000 n -0000553793 00000 n -0000553900 00000 n -0000554053 00000 n -0000554167 00000 n -0000554332 00000 n -0000554425 00000 n -0000554565 00000 n -0000554719 00000 n -0000554816 00000 n -0000554910 00000 n -0000555003 00000 n -0000555159 00000 n -0000555313 00000 n -0000555410 00000 n -0000555564 00000 n -0000555661 00000 n -0000555755 00000 n -0000555848 00000 n -0000555980 00000 n -0000556134 00000 n -0000556231 00000 n -0000556325 00000 n -0000556418 00000 n -0000556565 00000 n -0000556658 00000 n -0000556812 00000 n -0000556909 00000 n -0000557003 00000 n -0000557229 00000 n -0000557383 00000 n -0000557537 00000 n -0000557630 00000 n -0000557784 00000 n -0000557938 00000 n -0000558034 00000 n -0000558127 00000 n -0000558220 00000 n -0000558336 00000 n -0000558476 00000 n -0000558630 00000 n -0000559103 00000 n -0000559256 00000 n -0000559388 00000 n -0000559503 00000 n -0000559723 00000 n -0000559877 00000 n -0000560031 00000 n -0000560185 00000 n -0000560339 00000 n -0000560493 00000 n -0000560647 00000 n -0000560779 00000 n -0000560900 00000 n -0000561054 00000 n -0000561208 00000 n -0000561404 00000 n -0000561499 00000 n -0000561594 00000 n -0000561679 00000 n -0000561824 00000 n -0000561996 00000 n -0000562091 00000 n -0000562186 00000 n -0000562283 00000 n -0000562913 00000 n -0000563007 00000 n -0000563101 00000 n -0000563220 00000 n -0000563305 00000 n -0000563450 00000 n -0000563622 00000 n -0000563707 00000 n -0000563852 00000 n -0000564023 00000 n -0000564118 00000 n -0000564215 00000 n -0000564309 00000 n -0000564426 00000 n -0000564548 00000 n -0000564690 00000 n -0000564844 00000 n -0000564998 00000 n -0000565144 00000 n -0000565237 00000 n -0000565366 00000 n -0000565459 00000 n -0000565556 00000 n -0000565650 00000 n -0000565743 00000 n -0000565872 00000 n -0000565965 00000 n -0000566062 00000 n -0000566156 00000 n -0000566253 00000 n -0000566383 00000 n -0000566573 00000 n -0000566727 00000 n -0000566881 00000 n -0000566974 00000 n -0000567066 00000 n -0000567219 00000 n -0000567332 00000 n -0000567533 00000 n -0000567619 00000 n -0000567762 00000 n -0000567919 00000 n -0000568005 00000 n -0000568148 00000 n -0000568314 00000 n -0000568408 00000 n -0000568520 00000 n -0000568606 00000 n -0000568749 00000 n -0000568915 00000 n -0000569009 00000 n -0000569095 00000 n -0000569238 00000 n -0000569404 00000 n -0000569498 00000 n -0000569584 00000 n -0000569727 00000 n -0000569893 00000 n -0000569987 00000 n -0000570073 00000 n -0000570216 00000 n -0000570382 00000 n -0000570476 00000 n -0000570562 00000 n -0000570705 00000 n -0000570871 00000 n -0000570965 00000 n -0000571086 00000 n -0000571172 00000 n -0000571315 00000 n -0000571481 00000 n -0000571575 00000 n -0000571661 00000 n -0000571804 00000 n -0000571970 00000 n -0000572064 00000 n -0000572150 00000 n -0000572293 00000 n -0000572459 00000 n -0000572553 00000 n -0000572639 00000 n -0000572782 00000 n -0000572948 00000 n -0000573042 00000 n -0000573128 00000 n -0000573271 00000 n -0000573437 00000 n -0000573531 00000 n -0000573617 00000 n -0000573760 00000 n -0000573926 00000 n -0000574020 00000 n -0000574141 00000 n -0000574227 00000 n -0000574370 00000 n -0000574536 00000 n -0000574630 00000 n -0000574724 00000 n -0000574810 00000 n -0000574953 00000 n -0000575119 00000 n -0000575213 00000 n -0000575299 00000 n -0000575442 00000 n -0000575608 00000 n -0000575701 00000 n -0000575787 00000 n -0000575930 00000 n -0000576094 00000 n -0000576187 00000 n -0000576299 00000 n -0000576385 00000 n -0000576528 00000 n -0000576692 00000 n -0000576785 00000 n -0000576871 00000 n -0000577014 00000 n -0000577237 00000 n -0000577330 00000 n -0000577416 00000 n -0000577559 00000 n -0000577725 00000 n -0000577819 00000 n -0000577905 00000 n -0000578048 00000 n -0000578214 00000 n -0000578308 00000 n -0000578394 00000 n -0000578537 00000 n -0000578703 00000 n -0000578797 00000 n -0000578883 00000 n -0000579026 00000 n -0000579192 00000 n -0000579286 00000 n -0000579434 00000 n -0000579528 00000 n -0000579614 00000 n -0000579757 00000 n -0000579923 00000 n -0000580017 00000 n -0000580103 00000 n -0000580246 00000 n -0000580412 00000 n -0000580506 00000 n -0000580592 00000 n -0000580735 00000 n -0000580901 00000 n -0000580995 00000 n -0000581107 00000 n -0000581193 00000 n -0000581336 00000 n -0000581502 00000 n -0000581596 00000 n -0000581682 00000 n -0000581825 00000 n -0000581991 00000 n -0000582085 00000 n -0000582171 00000 n -0000582314 00000 n -0000582480 00000 n -0000582574 00000 n -0000582660 00000 n -0000582803 00000 n -0000582969 00000 n -0000583063 00000 n -0000583149 00000 n -0000583292 00000 n -0000583458 00000 n -0000583552 00000 n -0000583655 00000 n -0000583741 00000 n -0000583884 00000 n -0000584050 00000 n -0000584144 00000 n -0000584230 00000 n -0000584373 00000 n -0000584539 00000 n -0000584633 00000 n -0000584719 00000 n -0000584862 00000 n -0000585028 00000 n -0000585122 00000 n -0000585208 00000 n -0000585351 00000 n -0000585517 00000 n -0000585611 00000 n -0000585705 00000 n -0000585791 00000 n -0000585934 00000 n -0000586100 00000 n -0000586194 00000 n -0000586280 00000 n -0000586423 00000 n -0000586589 00000 n -0000586683 00000 n -0000586769 00000 n -0000586912 00000 n -0000587078 00000 n -0000587172 00000 n -0000587258 00000 n -0000587401 00000 n -0000587567 00000 n -0000587661 00000 n -0000587764 00000 n -0000587850 00000 n -0000587993 00000 n -0000588159 00000 n -0000588253 00000 n -0000588339 00000 n -0000588482 00000 n -0000588648 00000 n -0000588742 00000 n -0000588828 00000 n -0000588971 00000 n -0000589137 00000 n -0000589231 00000 n -0000589317 00000 n -0000589460 00000 n -0000589626 00000 n -0000589720 00000 n -0000589832 00000 n -0000589918 00000 n -0000590061 00000 n -0000590227 00000 n -0000590321 00000 n -0000590424 00000 n -0000590510 00000 n -0000590653 00000 n -0000590819 00000 n -0000590913 00000 n -0000590999 00000 n -0000591142 00000 n -0000591308 00000 n -0000591402 00000 n -0000591488 00000 n -0000591631 00000 n -0000591797 00000 n -0000591891 00000 n -0000591977 00000 n -0000592120 00000 n -0000592284 00000 n -0000592377 00000 n -0000592463 00000 n -0000592606 00000 n -0000592770 00000 n -0000592863 00000 n -0000592949 00000 n -0000593092 00000 n -0000593256 00000 n -0000593349 00000 n -0000593456 00000 n -0000593664 00000 n -0000593757 00000 n -0000593850 00000 n -0000593943 00000 n -0000594036 00000 n -0000594129 00000 n -0000594222 00000 n -0000594313 00000 n -0000594424 00000 n -0000594595 00000 n -0000594766 00000 n -0000594887 00000 n -0000595058 00000 n -0000595229 00000 n -0000595400 00000 n -0000595490 00000 n -0000595550 00000 n -0000595610 00000 n -0000595670 00000 n -0000595730 00000 n -0000595790 00000 n -0000595850 00000 n -0000595910 00000 n -0000595970 00000 n -0000596030 00000 n -0000596091 00000 n -0000596152 00000 n -0000596213 00000 n -0000596274 00000 n -0000596335 00000 n -0000596396 00000 n -0000596457 00000 n -0000596518 00000 n -0000596579 00000 n -0000596640 00000 n -0000596701 00000 n -0000596762 00000 n -0000596823 00000 n -0000596884 00000 n -0000596945 00000 n -0000597006 00000 n -0000597067 00000 n -0000597128 00000 n -0000597189 00000 n -0000597250 00000 n -0000597311 00000 n -0000597372 00000 n -0000597433 00000 n -0000597494 00000 n -0000597555 00000 n -0000597616 00000 n -0000597677 00000 n -0000597738 00000 n -0000597799 00000 n -0000597860 00000 n -0000597921 00000 n -0000597982 00000 n -0000598043 00000 n -0000598104 00000 n -0000598165 00000 n -0000598226 00000 n -0000598287 00000 n -0000598348 00000 n -0000598409 00000 n -0000598593 00000 n -0000599339 00000 n -0000599431 00000 n -0000599686 00000 n -0000601251 00000 n -0000607801 00000 n -0000607988 00000 n -0000609151 00000 n -0000609243 00000 n -0000609502 00000 n -0000611612 00000 n -0000620396 00000 n -0000620582 00000 n -0000621445 00000 n -0000621537 00000 n -0000621798 00000 n -0000623535 00000 n -0000632415 00000 n -0000632605 00000 n -0000633280 00000 n -0000633372 00000 n -0000633638 00000 n -0000635021 00000 n -0000641745 00000 n -0000641913 00000 n -0000642183 00000 n -0000642275 00000 n -0000642555 00000 n -0000643972 00000 n -0000653610 00000 n -0000653789 00000 n -0000655702 00000 n -0000655794 00000 n -0000656046 00000 n -0000659375 00000 n -0000680853 00000 n -0000681041 00000 n -0000681297 00000 n -0000681384 00000 n -0000681638 00000 n -0000682339 00000 n -0000682789 00000 n -0000682962 00000 n -0000683236 00000 n -0000683325 00000 n -0000683619 00000 n -0000684418 00000 n -0000688825 00000 n -0000688865 00000 n -0000688905 00000 n -0000689265 00000 n -0000689689 00000 n -0000689744 00000 n -0000689799 00000 n -0000689854 00000 n -0000689910 00000 n -0000689965 00000 n -0000690020 00000 n -0000690075 00000 n -0000690130 00000 n -0000690185 00000 n -0000690240 00000 n -0000690295 00000 n -0000690350 00000 n -0000690405 00000 n -0000690461 00000 n -0000690516 00000 n -0000690572 00000 n -0000690628 00000 n -0000690684 00000 n -0000690740 00000 n -0000690795 00000 n -0000690851 00000 n -0000690906 00000 n -0000690961 00000 n -0000691017 00000 n -0000691071 00000 n -0000691124 00000 n -0000691179 00000 n -0000691234 00000 n -0000691289 00000 n -0000691344 00000 n -0000691399 00000 n -0000691454 00000 n -0000691509 00000 n -0000691564 00000 n -0000691620 00000 n -0000691675 00000 n -0000691730 00000 n -0000691785 00000 n -0000691840 00000 n -0000691896 00000 n -0000691951 00000 n -0000692006 00000 n -0000692061 00000 n -0000692116 00000 n -0000692171 00000 n -0000692227 00000 n -0000692282 00000 n -0000692337 00000 n -0000692392 00000 n -0000692447 00000 n -0000692503 00000 n -0000692558 00000 n -0000692614 00000 n -0000692670 00000 n -0000692726 00000 n -0000692783 00000 n -0000692839 00000 n -0000692894 00000 n -0000692949 00000 n -0000693004 00000 n -0000693059 00000 n -0000693115 00000 n -0000693170 00000 n -0000693226 00000 n -0000693281 00000 n -0000693336 00000 n -0000693391 00000 n -0000693446 00000 n -0000693501 00000 n -0000693556 00000 n -0000693612 00000 n -0000693668 00000 n -0000693724 00000 n -0000693779 00000 n -0000693834 00000 n -0000693889 00000 n -0000693945 00000 n -0000694000 00000 n -0000694055 00000 n -0000694110 00000 n -0000694165 00000 n -0000694220 00000 n -0000694275 00000 n -0000694331 00000 n -0000694387 00000 n -0000694443 00000 n -0000694498 00000 n -0000694553 00000 n -0000694608 00000 n -0000694663 00000 n -0000694718 00000 n -0000694774 00000 n -0000694830 00000 n -0000694885 00000 n -0000694940 00000 n -0000694995 00000 n -0000695050 00000 n -0000695104 00000 n -0000695159 00000 n -0000695214 00000 n -0000695269 00000 n -0000695324 00000 n -0000695379 00000 n -0000695435 00000 n -0000695490 00000 n -0000695545 00000 n -0000695600 00000 n -0000695655 00000 n -0000695710 00000 n -0000695766 00000 n -0000695822 00000 n -0000695877 00000 n -0000695932 00000 n -0000695987 00000 n -0000696043 00000 n -0000696099 00000 n -0000696154 00000 n -0000696209 00000 n -0000696264 00000 n -0000696320 00000 n -0000696376 00000 n -0000696432 00000 n -0000696489 00000 n -0000696545 00000 n -0000696601 00000 n -0000696656 00000 n -0000696711 00000 n -0000696766 00000 n -0000696821 00000 n -0000696876 00000 n -0000696932 00000 n -0000696987 00000 n -0000697042 00000 n -0000697098 00000 n -0000697154 00000 n -0000697209 00000 n -0000697264 00000 n -0000697319 00000 n -0000697374 00000 n -0000697429 00000 n -0000697484 00000 n -0000697540 00000 n -0000697595 00000 n -0000697650 00000 n -0000697705 00000 n -0000697761 00000 n -0000697816 00000 n -0000697872 00000 n -0000697927 00000 n -0000697983 00000 n -0000698038 00000 n -0000698093 00000 n -0000698148 00000 n -0000698203 00000 n -0000698258 00000 n -0000698313 00000 n -0000698368 00000 n -0000698423 00000 n -0000698478 00000 n -0000698533 00000 n -0000698588 00000 n -0000698643 00000 n -0000698699 00000 n -0000698755 00000 n -0000698811 00000 n -0000698866 00000 n -0000698921 00000 n -0000698976 00000 n -0000699031 00000 n -0000699086 00000 n -0000699141 00000 n -0000699196 00000 n -0000699251 00000 n -0000699306 00000 n -0000699361 00000 n -0000699416 00000 n -0000699471 00000 n -0000699526 00000 n -0000699582 00000 n -0000699638 00000 n -0000699694 00000 n -0000699749 00000 n -0000699804 00000 n -0000699859 00000 n -0000699914 00000 n -0000699969 00000 n -0000700024 00000 n -0000700080 00000 n -0000700135 00000 n -0000700190 00000 n -0000700245 00000 n -0000700301 00000 n -0000700357 00000 n -0000700413 00000 n -0000700469 00000 n -0000700524 00000 n -0000700580 00000 n -0000700635 00000 n -0000700691 00000 n -0000700747 00000 n -0000700803 00000 n -0000700860 00000 n -0000700916 00000 n -0000700972 00000 n -0000701027 00000 n -0000701083 00000 n -0000701138 00000 n -0000701193 00000 n -0000701249 00000 n -0000701306 00000 n -0000701362 00000 n -0000701419 00000 n -0000701476 00000 n -0000701533 00000 n -0000701589 00000 n -0000701645 00000 n -0000701701 00000 n -0000701757 00000 n -0000701813 00000 n -0000701870 00000 n -0000701927 00000 n -0000701984 00000 n -0000702039 00000 n -0000702095 00000 n -0000702151 00000 n -0000702206 00000 n -0000702263 00000 n -0000702318 00000 n -0000702373 00000 n -0000702431 00000 n -0000702488 00000 n -0000702544 00000 n -0000702601 00000 n -0000702658 00000 n -0000702714 00000 n -0000702770 00000 n -0000702826 00000 n -0000702882 00000 n -0000702937 00000 n -0000702993 00000 n -0000703049 00000 n -0000703105 00000 n -0000703159 00000 n -0000703215 00000 n -0000703273 00000 n -0000703330 00000 n -0000703387 00000 n -0000703442 00000 n -0000703498 00000 n -0000703554 00000 n -0000703609 00000 n -0000703666 00000 n -0000703722 00000 n -0000703777 00000 n -0000703833 00000 n -0000703889 00000 n -0000703946 00000 n -0000704002 00000 n -0000704058 00000 n -0000704114 00000 n -0000704170 00000 n -0000704225 00000 n -0000704282 00000 n -0000704339 00000 n -0000704395 00000 n -0000704451 00000 n -0000704507 00000 n -0000704562 00000 n -0000704618 00000 n -0000704674 00000 n -0000704730 00000 n -0000704786 00000 n -0000704842 00000 n -0000704898 00000 n -0000704955 00000 n -0000705313 00000 n -0000708227 00000 n -0000708515 00000 n -0000708875 00000 n -0000709200 00000 n -0000709524 00000 n -0000709911 00000 n -0000710298 00000 n -0000710602 00000 n -0000710893 00000 n -0000711167 00000 n -0000711452 00000 n -0000711839 00000 n -0000712238 00000 n -0000712568 00000 n -0000712892 00000 n -0000713270 00000 n -0000713604 00000 n -0000713936 00000 n -0000714325 00000 n -0000714707 00000 n -0000715048 00000 n -0000715393 00000 n -0000715703 00000 n -0000716015 00000 n -0000716332 00000 n -0000716674 00000 n -0000717004 00000 n -0000717398 00000 n -0000717754 00000 n -0000718055 00000 n -0000718382 00000 n -0000718727 00000 n -0000719071 00000 n -0000719680 00000 n -0000735800 00000 n -0000736144 00000 n -0000736469 00000 n -0000736788 00000 n -0000737179 00000 n -0000737525 00000 n -0000737847 00000 n -0000738130 00000 n -0000738461 00000 n -0000738833 00000 n -0000739226 00000 n -0000739662 00000 n -0000740044 00000 n -0000740332 00000 n -0000740694 00000 n -0000741034 00000 n -0000741377 00000 n -0000741715 00000 n -0000741998 00000 n -0000742265 00000 n -0000742757 00000 n -0000752615 00000 n -0000752795 00000 n -0000752977 00000 n -0000753159 00000 n -0000753339 00000 n -0000753521 00000 n -0000753944 00000 n -0000758522 00000 n -0000758713 00000 n -0000758905 00000 n -0000759085 00000 n -0000759265 00000 n -0000759447 00000 n -0000759629 00000 n -0000759810 00000 n -0000759993 00000 n -0000760176 00000 n -0000760359 00000 n -0000760540 00000 n -0000760998 00000 n -0000766535 00000 n -0000766718 00000 n -0000766901 00000 n -0000767086 00000 n -0000767269 00000 n -0000767452 00000 n -0000767633 00000 n -0000767844 00000 n -0000768056 00000 n -0000768268 00000 n -0000768478 00000 n -0000768671 00000 n -0000769110 00000 n -0000774558 00000 n -0000774752 00000 n -0000774933 00000 n -0000775116 00000 n -0000775300 00000 n -0000775483 00000 n -0000775664 00000 n -0000775845 00000 n -0000776026 00000 n -0000776209 00000 n -0000776393 00000 n -0000776577 00000 n -0000776761 00000 n -0000776945 00000 n -0000777128 00000 n -0000777312 00000 n -0000777496 00000 n -0000778000 00000 n -0000783888 00000 n -0000784073 00000 n -0000784255 00000 n -0000784438 00000 n -0000784623 00000 n -0000784808 00000 n -0000784993 00000 n -0000785176 00000 n -0000785361 00000 n -0000785562 00000 n -0000785758 00000 n -0000786208 00000 n -0000792215 00000 n -0000792414 00000 n -0000792599 00000 n -0000792996 00000 n -0000799004 00000 n -0000799194 00000 n -0000799544 00000 n -0000806569 00000 n -0000806906 00000 n -0000813126 00000 n -0000813340 00000 n -0000813554 00000 n -0000813951 00000 n -0000820546 00000 n -0000820728 00000 n -0000820910 00000 n -0000821123 00000 n -0000821529 00000 n -0000827821 00000 n -0000828034 00000 n -0000828422 00000 n -0000834403 00000 n -0000834740 00000 n -0000842762 00000 n -0000842969 00000 n -0000843179 00000 n -0000843371 00000 n -0000843563 00000 n -0000843755 00000 n -0000844198 00000 n -0000851556 00000 n -0000851750 00000 n -0000851943 00000 n -0000852127 00000 n -0000852320 00000 n -0000852534 00000 n -0000852977 00000 n -0000860386 00000 n -0000860577 00000 n -0000860759 00000 n -0000861194 00000 n -0000868220 00000 n -0000868409 00000 n -0000868601 00000 n -0000868998 00000 n -0000874886 00000 n -0000875101 00000 n -0000875310 00000 n -0000875745 00000 n -0000880996 00000 n -0000881206 00000 n -0000881390 00000 n -0000881806 00000 n -0000887252 00000 n -0000887464 00000 n -0000887676 00000 n -0000887870 00000 n -0000888073 00000 n -0000888277 00000 n -0000888476 00000 n -0000888665 00000 n -0000888879 00000 n -0000889074 00000 n -0000889264 00000 n -0000889733 00000 n -0000895270 00000 n -0000895465 00000 n -0000895672 00000 n -0000895881 00000 n -0000896093 00000 n -0000896305 00000 n -0000896516 00000 n -0000896711 00000 n -0000896904 00000 n -0000897355 00000 n -0000902759 00000 n -0000902953 00000 n -0000903170 00000 n -0000903366 00000 n -0000903578 00000 n -0000903790 00000 n -0000903982 00000 n -0000904195 00000 n -0000904386 00000 n -0000904856 00000 n -0000911913 00000 n -0000912105 00000 n -0000912318 00000 n -0000912513 00000 n -0000912726 00000 n -0000912920 00000 n -0000913115 00000 n -0000913319 00000 n -0000913540 00000 n -0000913755 00000 n -0000913949 00000 n -0000914136 00000 n -0000914326 00000 n -0000914520 00000 n -0000915035 00000 n -0000921333 00000 n -0000921526 00000 n -0000921746 00000 n -0000921939 00000 n -0000922123 00000 n -0000922519 00000 n -0000927813 00000 n -0000928031 00000 n -0000928242 00000 n -0000928434 00000 n -0000928652 00000 n -0000928863 00000 n -0000929056 00000 n -0000929266 00000 n -0000929457 00000 n -0000929651 00000 n -0000929865 00000 n -0000930353 00000 n -0000935931 00000 n -0000936132 00000 n -0000936346 00000 n -0000936762 00000 n -0000941877 00000 n -0000942062 00000 n -0000942247 00000 n -0000942663 00000 n -0000947793 00000 n -0000947987 00000 n -0000948170 00000 n -0000948567 00000 n -0000953113 00000 n -0000953305 00000 n -0000953497 00000 n -0000953700 00000 n -0000953892 00000 n -0000954108 00000 n -0000954321 00000 n -0000954539 00000 n -0000954757 00000 n -0000954940 00000 n -0000955122 00000 n -0000955591 00000 n -0000961222 00000 n -0000961433 00000 n -0000961616 00000 n -0000961802 00000 n -0000961986 00000 n -0000962382 00000 n -0000967555 00000 n -0000967737 00000 n -0000967950 00000 n -0000968132 00000 n -0000968314 00000 n -0000968511 00000 n -0000968697 00000 n -0000968882 00000 n -0000969286 00000 n -0000974760 00000 n -0000974962 00000 n -0000975154 00000 n -0000975338 00000 n -0000975520 00000 n -0000975732 00000 n -0000975916 00000 n -0000976100 00000 n -0000976285 00000 n -0000976470 00000 n -0000976654 00000 n -0000976838 00000 n -0000977024 00000 n -0000977208 00000 n -0000977394 00000 n -0000977577 00000 n -0000978072 00000 n -0000984103 00000 n -0000984287 00000 n -0000984637 00000 n -0000989591 00000 n -0000989775 00000 n -0000989959 00000 n -0000990143 00000 n -0000990329 00000 n -0000990514 00000 n -0000990699 00000 n -0000990884 00000 n -0000991307 00000 n -0000997203 00000 n -0000997403 00000 n -0000997603 00000 n -0000997785 00000 n -0000997969 00000 n -0000998151 00000 n -0000998335 00000 n -0000998548 00000 n -0000998732 00000 n -0000998916 00000 n -0000999102 00000 n -0000999286 00000 n -0000999726 00000 n -0001005417 00000 n -0001005632 00000 n -0001005817 00000 n -0001006002 00000 n -0001006186 00000 n -0001006398 00000 n -0001006582 00000 n -0001006766 00000 n -0001006951 00000 n -0001007136 00000 n -0001007577 00000 n -0001013135 00000 n -0001013317 00000 n -0001013501 00000 n -0001013701 00000 n -0001013881 00000 n -0001014064 00000 n -0001014248 00000 n -0001014432 00000 n -0001014616 00000 n -0001014800 00000 n -0001014984 00000 n -0001015188 00000 n -0001015370 00000 n -0001015553 00000 n -0001015739 00000 n -0001015924 00000 n -0001016109 00000 n -0001016328 00000 n -0001016512 00000 n -0001017034 00000 n -0001023952 00000 n -0001024136 00000 n -0001024319 00000 n -0001024503 00000 n -0001024687 00000 n -0001024870 00000 n -0001025054 00000 n -0001025238 00000 n -0001025421 00000 n -0001025604 00000 n -0001025788 00000 n -0001025972 00000 n -0001026184 00000 n -0001026367 00000 n -0001026550 00000 n -0001026737 00000 n -0001026919 00000 n -0001027121 00000 n -0001027341 00000 n -0001027525 00000 n -0001027712 00000 n -0001027897 00000 n -0001028084 00000 n -0001028642 00000 n -0001035182 00000 n -0001035399 00000 n -0001035582 00000 n -0001035877 00000 n -0001036062 00000 n -0001036361 00000 n -0001036546 00000 n -0001036830 00000 n -0001037014 00000 n -0001037199 00000 n -0001037496 00000 n -0001037680 00000 n -0001038120 00000 n -0001043245 00000 n -0001043429 00000 n -0001043739 00000 n -0001043922 00000 n -0001044282 00000 n -0001044644 00000 n -0001044827 00000 n -0001045131 00000 n -0001045316 00000 n -0001045598 00000 n -0001045782 00000 n -0001045966 00000 n -0001046264 00000 n -0001046448 00000 n -0001046632 00000 n -0001046816 00000 n -0001047124 00000 n -0001047308 00000 n -0001047492 00000 n -0001047801 00000 n -0001047987 00000 n -0001048286 00000 n -0001048472 00000 n -0001048755 00000 n -0001048940 00000 n -0001049126 00000 n -0001049418 00000 n -0001049605 00000 n -0001050170 00000 n -0001055552 00000 n -0001055737 00000 n -0001056037 00000 n -0001056222 00000 n -0001056528 00000 n -0001056712 00000 n -0001057017 00000 n -0001057324 00000 n -0001057508 00000 n -0001057797 00000 n -0001058088 00000 n -0001058273 00000 n -0001058573 00000 n -0001058757 00000 n -0001059064 00000 n -0001059248 00000 n -0001059530 00000 n -0001059714 00000 n -0001060012 00000 n -0001060196 00000 n -0001060502 00000 n -0001060686 00000 n -0001060997 00000 n -0001061181 00000 n -0001061482 00000 n -0001061667 00000 n -0001061963 00000 n -0001062148 00000 n -0001062443 00000 n -0001062630 00000 n -0001062914 00000 n -0001063506 00000 n -0001068805 00000 n -0001068990 00000 n -0001069281 00000 n -0001069466 00000 n -0001069650 00000 n -0001069966 00000 n -0001070151 00000 n -0001070453 00000 n -0001070639 00000 n -0001070824 00000 n -0001071144 00000 n -0001071466 00000 n -0001071650 00000 n -0001071930 00000 n -0001072114 00000 n -0001072298 00000 n -0001072582 00000 n -0001072766 00000 n -0001073062 00000 n -0001073246 00000 n -0001073554 00000 n -0001073740 00000 n -0001073925 00000 n -0001074110 00000 n -0001074296 00000 n -0001074591 00000 n -0001074777 00000 n -0001075333 00000 n -0001080520 00000 n -0001080705 00000 n -0001081001 00000 n -0001081185 00000 n -0001081476 00000 n -0001081660 00000 n -0001081845 00000 n -0001082143 00000 n -0001082328 00000 n -0001082687 00000 n -0001083048 00000 n -0001083232 00000 n -0001083531 00000 n -0001083715 00000 n -0001084028 00000 n -0001084343 00000 n -0001084527 00000 n -0001084817 00000 n -0001085001 00000 n -0001085299 00000 n -0001085483 00000 n -0001085784 00000 n -0001086087 00000 n -0001086272 00000 n -0001086572 00000 n -0001086757 00000 n -0001087060 00000 n -0001087246 00000 n -0001087546 00000 n -0001087732 00000 n -0001088035 00000 n -0001088221 00000 n -0001088511 00000 n -0001089121 00000 n -0001094471 00000 n -0001094656 00000 n -0001094940 00000 n -0001095124 00000 n -0001095421 00000 n -0001095605 00000 n -0001095887 00000 n -0001096072 00000 n -0001096354 00000 n -0001096539 00000 n -0001096807 00000 n -0001096991 00000 n -0001097298 00000 n -0001097482 00000 n -0001097765 00000 n -0001097949 00000 n -0001098232 00000 n -0001098416 00000 n -0001098750 00000 n -0001099085 00000 n -0001099269 00000 n -0001099551 00000 n -0001099737 00000 n -0001100037 00000 n -0001100221 00000 n -0001100521 00000 n -0001100706 00000 n -0001101010 00000 n -0001101196 00000 n -0001101485 00000 n -0001101671 00000 n -0001102263 00000 n -0001107462 00000 n -0001107762 00000 n -0001107946 00000 n -0001108241 00000 n -0001108425 00000 n -0001108719 00000 n -0001108903 00000 n -0001109197 00000 n -0001109383 00000 n -0001109682 00000 n -0001109867 00000 n -0001110149 00000 n -0001110333 00000 n -0001110636 00000 n -0001110820 00000 n -0001111004 00000 n -0001111188 00000 n -0001111372 00000 n -0001111655 00000 n -0001111841 00000 n -0001112135 00000 n -0001112321 00000 n -0001112620 00000 n -0001112805 00000 n -0001113101 00000 n -0001113286 00000 n -0001113575 00000 n -0001113762 00000 n -0001114053 00000 n -0001114627 00000 n -0001120096 00000 n -0001120281 00000 n -0001120580 00000 n -0001120765 00000 n -0001120950 00000 n -0001121136 00000 n -0001121426 00000 n -0001121611 00000 n -0001121915 00000 n -0001122100 00000 n -0001122395 00000 n -0001122580 00000 n -0001122870 00000 n -0001123055 00000 n -0001123356 00000 n -0001123659 00000 n -0001123844 00000 n -0001124143 00000 n -0001124618 00000 n -0001127994 00000 n -0001129714 00000 n -0001131985 00000 n -0001132073 00000 n -0001132313 00000 n -0001133628 00000 n -trailer -<< - /Size 5278 - /Root 5277 0 R - /Info 5275 0 R - /ID [(HHwsV4w2OKoHWq5hDV/GeA==) (8/8Hb0n3/ti5Ewx/bKL9Ww==)] ->> -startxref -1135503 -%%EOF \ No newline at end of file diff --git a/scripts/snapshots/translation-prompt-v4/request-response.expected.json b/scripts/snapshots/translation-prompt-v4/request-response.expected.json index c5f0822791..286c07b62a 100644 --- a/scripts/snapshots/translation-prompt-v4/request-response.expected.json +++ b/scripts/snapshots/translation-prompt-v4/request-response.expected.json @@ -8,11 +8,11 @@ }, { "role": "user", - "content": "# DeepSeek Harness\n\nEnglish | [中文](README.zh.md)\n\nDeepSeek Harness (`dsh`) is an open-source agent harness developed by [DeepSeek AI](https://deepseek.com).\n\nIt uses an architecture where **everything is a plugin**, and is powered by [Cordis](https://github.com/cordiverse/cordis).\n\n## Developer preview\n\nDeepSeek Harness is currently in _developer preview_ and is iterating rapidly. **THERE WILL BE COMPATIBILITY-BREAKING CHANGES.**\n\n## Run\n\n### Run from `npm`\n\nInstall `Node.js`, then run:\n\n```sh\nnpx @deepseek-ai/dsh web\n```\n\nThe command starts the Web UI, served at `http://127.0.0.1:3080` by default. See [Web UI guide](docs/user/guide/index.md).\n\n### Run from source\n\nTo run from a repository checkout:\n\n```sh\ngit clone https://github.com/deepseek-ai/deepseek-harness.git\ncd deepseek-harness\npnpm install\npnpm run build\npnpm dsh web\n```\n\n## Community and support\n\n- Feel free to submit feedback or bug reports through [GitHub Discussions](https://github.com/deepseek-ai/deepseek-harness/discussions).\n- Add the [`dsh-plugin`](https://github.com/topics/dsh-plugin) topic to your plugin repository for discoverability.\n- Join DeepSeek Harness Discord community.\n\n## Contributing\n\nSee [CONTRIBUTING.md](CONTRIBUTING.md).\n\n## Development\n\nStart with the [development guide](docs/development.md) and [architecture documentation](docs/architecture.md).\n\nFor agents, follow [AGENTS.md](AGENTS.md).\n\n## License\n\n[MIT](LICENSE)\n\nThird-party dependencies and their licenses are disclosed in [THIRD_PARTY_NOTICES.md](THIRD_PARTY_NOTICES.md).\n" + "content": "# DeepSeek Harness\n\nEnglish | [中文](README.zh.md)\n\nDeepSeek Harness (`dsh`) is an open-source agent harness developed by [DeepSeek AI](https://deepseek.com).\n\nIt uses an architecture where **everything is a plugin**, and is powered by [Cordis](https://github.com/cordiverse/cordis), whose design is described in [_A Programming Paradigm for Spatiotemporal Composability_](https://github.com/cordiverse/paper).\n\n## Developer preview\n\nDeepSeek Harness is currently in _developer preview_ and is iterating rapidly. **THERE WILL BE COMPATIBILITY-BREAKING CHANGES.**\n\n## Run\n\n### Run from `npm`\n\nInstall `Node.js`, then run:\n\n```sh\nnpx @deepseek-ai/dsh web\n```\n\nThe command starts the Web UI, served at `http://127.0.0.1:3080` by default. See [Web UI guide](docs/user/guide/index.md).\n\n### Run from source\n\nTo run from a repository checkout:\n\n```sh\ngit clone https://github.com/deepseek-ai/deepseek-harness.git\ncd deepseek-harness\npnpm install\npnpm run build\npnpm dsh web\n```\n\n## Community and support\n\n- Feel free to submit feedback or bug reports through [GitHub Discussions](https://github.com/deepseek-ai/deepseek-harness/discussions).\n- Add the [`dsh-plugin`](https://github.com/topics/dsh-plugin) topic to your plugin repository for discoverability.\n- Join DeepSeek Harness Discord community.\n\n## Contributing\n\nSee [CONTRIBUTING.md](CONTRIBUTING.md).\n\n## Development\n\nStart with the [development guide](docs/development.md) and [architecture documentation](docs/architecture.md).\n\nFor agents, follow [AGENTS.md](AGENTS.md).\n\n## License\n\n[MIT](LICENSE)\n\nThird-party dependencies and their licenses are disclosed in [THIRD_PARTY_NOTICES.md](THIRD_PARTY_NOTICES.md).\n" }, { "role": "assistant", - "content": "# DeepSeek Harness\n\n[English](README.md) | 中文\n\nDeepSeek Harness(`dsh`)是由 [DeepSeek AI](https://deepseek.com) 开发的开源 agent harness(智能体框架)。\n\n它采用**一切皆插件**的架构,并由 [Cordis](https://github.com/cordiverse/cordis) 驱动。\n\n## 开发者预览\n\nDeepSeek Harness 目前处于 _开发者预览_ 阶段,正在快速迭代。**未来将出现破坏兼容性的变更。**\n\n## 运行\n\n### 通过 `npm` 运行\n\n安装 `Node.js`,然后运行:\n\n```sh\nnpx @deepseek-ai/dsh web\n```\n\n该命令会启动 Web UI,默认地址为 `http://127.0.0.1:3080`。详见 [Web UI 指南](docs/user/guide/index.md)。\n\n### 从源码运行\n\n如需从仓库源码运行:\n\n```sh\ngit clone https://github.com/deepseek-ai/deepseek-harness.git\ncd deepseek-harness\npnpm install\npnpm run build\npnpm dsh web\n```\n\n## 社区与支持\n\n- 欢迎通过 [GitHub Discussions](https://github.com/deepseek-ai/deepseek-harness/discussions) 提交反馈或 bug 报告。\n- 为你的插件仓库添加 [`dsh-plugin`](https://github.com/topics/dsh-plugin) 话题,便于被发现。\n- 欢迎加入 DeepSeek Harness 企微群:扫码添加企微小助手并填写入群问卷,完成后小助手会邀请你入群。\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
企微小助手入群问卷微信公众号
\"DeepSeek\"DeepSeek\"DeepSeek
\n\n## 参与贡献\n\n参见 [CONTRIBUTING.md](CONTRIBUTING.md)。\n\n## 开发\n\n请先阅读[开发指南](docs/development.md)与[架构文档](docs/architecture.md)。\n\n面向 agent:请遵循 [AGENTS.md](AGENTS.md)。\n\n## 许可证\n\n[MIT](LICENSE)\n\n第三方依赖及其许可证见 [THIRD_PARTY_NOTICES.md](THIRD_PARTY_NOTICES.md)。\n" + "content": "# DeepSeek Harness\n\n[English](README.md) | 中文\n\nDeepSeek Harness(`dsh`)是由 [DeepSeek AI](https://deepseek.com) 开发的开源 agent harness(智能体框架)。\n\n它采用**一切皆插件**的架构,并由 [Cordis](https://github.com/cordiverse/cordis) 驱动,其设计参见论文 [_A Programming Paradigm for Spatiotemporal Composability_](https://github.com/cordiverse/paper)。\n\n## 开发者预览\n\nDeepSeek Harness 目前处于 _开发者预览_ 阶段,正在快速迭代。**未来将出现破坏兼容性的变更。**\n\n## 运行\n\n### 通过 `npm` 运行\n\n安装 `Node.js`,然后运行:\n\n```sh\nnpx @deepseek-ai/dsh web\n```\n\n该命令会启动 Web UI,默认地址为 `http://127.0.0.1:3080`。详见 [Web UI 指南](docs/user/guide/index.md)。\n\n### 从源码运行\n\n如需从仓库源码运行:\n\n```sh\ngit clone https://github.com/deepseek-ai/deepseek-harness.git\ncd deepseek-harness\npnpm install\npnpm run build\npnpm dsh web\n```\n\n## 社区与支持\n\n- 欢迎通过 [GitHub Discussions](https://github.com/deepseek-ai/deepseek-harness/discussions) 提交反馈或 bug 报告。\n- 为你的插件仓库添加 [`dsh-plugin`](https://github.com/topics/dsh-plugin) 话题,便于被发现。\n- 欢迎加入 DeepSeek Harness 企微群:扫码添加企微小助手并填写入群问卷,完成后小助手会邀请你入群。\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
企微小助手入群问卷微信公众号
\"DeepSeek\"DeepSeek\"DeepSeek
\n\n## 参与贡献\n\n参见 [CONTRIBUTING.md](CONTRIBUTING.md)。\n\n## 开发\n\n请先阅读[开发指南](docs/development.md)与[架构文档](docs/architecture.md)。\n\n面向 agent:请遵循 [AGENTS.md](AGENTS.md)。\n\n## 许可证\n\n[MIT](LICENSE)\n\n第三方依赖及其许可证见 [THIRD_PARTY_NOTICES.md](THIRD_PARTY_NOTICES.md)。\n" }, { "role": "user", From 8a954b2eca50e4aa77c928d7ada40c0bff6135eb Mon Sep 17 00:00:00 2001 From: imccyu Date: Thu, 13 Aug 2026 18:39:06 +0800 Subject: [PATCH 22/22] release(dsh): 0.1.0-rc.3 --- apps/cli/package.json | 2 +- apps/web/package.json | 2 +- package.json | 2 +- packages/acp/acp/package.json | 2 +- packages/api/gateway/package.json | 2 +- packages/api/remotes/package.json | 2 +- packages/attachment/attachment-local/package.json | 2 +- packages/attachment/attachment/package.json | 2 +- packages/boot/app-boot/package.json | 2 +- packages/boot/cmdline/package.json | 2 +- packages/bundle/base/package.json | 2 +- packages/bundle/headless/package.json | 2 +- packages/bundle/web-app/package.json | 2 +- packages/client/connection/package.json | 2 +- packages/client/hmr/package.json | 2 +- packages/client/locale/package.json | 2 +- packages/client/modules/package.json | 2 +- packages/client/runtime/package.json | 2 +- packages/client/schema-form/package.json | 2 +- packages/client/ui-agent-preset/package.json | 2 +- packages/client/ui-attachment/package.json | 2 +- packages/client/ui-commands/package.json | 2 +- packages/client/ui-conversation/package.json | 2 +- packages/client/ui-deliverables/package.json | 2 +- packages/client/ui-directory-picker-browse/package.json | 2 +- packages/client/ui-directory-picker-native/package.json | 2 +- packages/client/ui-goal/package.json | 2 +- packages/client/ui-input-trigger/package.json | 2 +- packages/client/ui-jobs/package.json | 2 +- packages/client/ui-layout/package.json | 2 +- packages/client/ui-message-feedback/package.json | 2 +- packages/client/ui-model-selection/package.json | 2 +- packages/client/ui-permission-presets/package.json | 2 +- packages/client/ui-plan/package.json | 2 +- packages/client/ui-primitives/package.json | 2 +- packages/client/ui-settings-general/package.json | 2 +- packages/client/ui-settings-models/package.json | 2 +- packages/client/ui-settings-plugin-inventory/package.json | 2 +- packages/client/ui-settings-plugins/package.json | 2 +- packages/client/ui-settings/package.json | 2 +- packages/client/ui-sidebar/package.json | 2 +- packages/client/ui-skill/package.json | 2 +- packages/client/ui-slots/package.json | 2 +- packages/client/ui-subagent/package.json | 2 +- packages/client/ui-theme/package.json | 2 +- packages/client/ui-tool/package.json | 2 +- packages/client/ui-trajectory/package.json | 2 +- packages/client/ui-user-questions/package.json | 2 +- packages/client/ui-workflow-run/package.json | 2 +- packages/client/ui-workspace/package.json | 2 +- packages/client/web-react/package.json | 2 +- packages/client/web/package.json | 2 +- packages/code-runtime/code-runtime-worker-thread/package.json | 2 +- packages/code-runtime/code-runtime/package.json | 2 +- packages/compaction/command-compact/package.json | 2 +- packages/compaction/compaction-basic/package.json | 2 +- packages/compaction/compaction-tool-result-pruner/package.json | 2 +- packages/compaction/compaction/package.json | 2 +- packages/context/agent-instructions/package.json | 2 +- packages/context/session-reference/package.json | 2 +- packages/context/time-context/package.json | 2 +- packages/context/tmux-context/package.json | 2 +- packages/core/agent-default-model/package.json | 2 +- packages/core/agent-loop/package.json | 2 +- packages/core/agent-tool-presentation/package.json | 2 +- packages/core/agent/package.json | 2 +- packages/core/scope/package.json | 2 +- packages/core/session/package.json | 2 +- packages/core/system-prompt/package.json | 2 +- packages/core/tools/package.json | 2 +- packages/credentials/credentials-local/package.json | 2 +- packages/credentials/credentials/package.json | 2 +- packages/e2b/e2b/package.json | 2 +- packages/e2b/fs-e2b/package.json | 2 +- packages/e2b/subprocess-e2b/package.json | 2 +- packages/examples/acp-demo/package.json | 2 +- packages/examples/agent-spine-demo/package.json | 2 +- packages/examples/jsonrpc-demo/package.json | 2 +- packages/extensions/cordis-client-runner/package.json | 2 +- packages/extensions/cordis-host-runner/package.json | 2 +- packages/extensions/tool-cordis/package.json | 2 +- packages/extensions/ui-cordis/package.json | 2 +- packages/feedback/command-feedback/package.json | 2 +- packages/feedback/message-feedback/package.json | 2 +- packages/fs/fs-local/package.json | 2 +- packages/fs/fs-observation-policy/package.json | 2 +- packages/fs/fs-sandbox/package.json | 2 +- packages/fs/fs/package.json | 2 +- packages/fs/tool-fs-search/package.json | 2 +- packages/fs/tool-fs/package.json | 2 +- packages/fs/tool-str-replace-editor/package.json | 2 +- packages/goal/command-goal/package.json | 2 +- packages/goal/goal-round-driver/package.json | 2 +- packages/goal/goal/package.json | 2 +- packages/goal/tool-goal/package.json | 2 +- packages/guard/repeat-tool-reminder/package.json | 2 +- packages/guard/timeout-policy/package.json | 2 +- packages/hooks/hook-protocol/package.json | 2 +- packages/hooks/hooks-claude-code/package.json | 2 +- packages/hooks/hooks-codex/package.json | 2 +- packages/host/apiproxy/package.json | 2 +- packages/host/directory-picker-auto/package.json | 2 +- packages/host/directory-picker-browse/package.json | 2 +- packages/host/directory-picker-native/package.json | 2 +- packages/host/directory-picker/package.json | 2 +- packages/host/frontend-static/package.json | 2 +- packages/host/plugin-inventory/package.json | 2 +- packages/host/webserver/package.json | 2 +- packages/identity/anonymous-user-id/package.json | 2 +- packages/interaction/commands/package.json | 2 +- packages/interaction/permission-presets/package.json | 2 +- packages/interaction/tool-ask-user/package.json | 2 +- packages/interaction/user-approval/package.json | 2 +- packages/interaction/user-questions/package.json | 2 +- packages/jobs/jobs-local/package.json | 2 +- packages/jobs/jobs/package.json | 2 +- packages/jobs/tool-jobs/package.json | 2 +- packages/llm/llm-deepseek/package.json | 2 +- packages/llm/llm-pi-ai/package.json | 2 +- packages/llm/llm-retry/package.json | 2 +- packages/llm/llm/package.json | 2 +- packages/llm/token-meter/package.json | 2 +- packages/lsp/lsp-stdio/package.json | 2 +- packages/lsp/lsp/package.json | 2 +- packages/lsp/tool-lsp/package.json | 2 +- packages/mcp/mcp-client/package.json | 2 +- packages/plan/plan-mode/package.json | 2 +- packages/preset/agent-presets/package.json | 2 +- packages/preset/persona/package.json | 2 +- packages/runtime-diagnostics/invariants/package.json | 2 +- packages/sandbox/sandbox-local/package.json | 2 +- packages/sandbox/sandbox-policy/package.json | 2 +- packages/sandbox/sandbox-windows-acl/package.json | 2 +- packages/sandbox/sandbox/package.json | 2 +- packages/schedule/schedule/package.json | 2 +- packages/sdk/client/package.json | 2 +- packages/sdk/protocol/package.json | 2 +- packages/sdk/server/package.json | 2 +- packages/session-query/session-log-export/package.json | 2 +- packages/session-query/session-query-sqlite/package.json | 2 +- packages/session-query/session-query/package.json | 2 +- packages/session-query/tool-session-query/package.json | 2 +- packages/session/session-checkpoint-policy/package.json | 2 +- packages/session/session-persistence-jsonl/package.json | 2 +- packages/session/session-persistence-sqlite/package.json | 2 +- packages/session/session-persistence/package.json | 2 +- packages/session/session-projection-cache/package.json | 2 +- packages/session/session-projection/package.json | 2 +- packages/session/session-stats/package.json | 2 +- packages/session/session-telemetry-otel/package.json | 2 +- packages/session/session-telemetry/package.json | 2 +- packages/session/session-title-all-prompts-llm/package.json | 2 +- packages/session/session-title-first-prompt-llm/package.json | 2 +- packages/session/session-title-llm/package.json | 2 +- packages/session/session-title/package.json | 2 +- packages/settings/settings-file/package.json | 2 +- packages/settings/settings/package.json | 2 +- packages/shell/bash-local/package.json | 2 +- packages/shell/bash-sandbox/package.json | 2 +- packages/shell/pwsh-local/package.json | 2 +- packages/shell/pwsh-sandbox/package.json | 2 +- packages/shell/shell-env/package.json | 2 +- packages/shell/shell/package.json | 2 +- packages/shell/tool-bash-persistent/package.json | 2 +- packages/shell/tool-bash/package.json | 2 +- packages/shell/tool-pwsh/package.json | 2 +- packages/skill/skill-badge/package.json | 2 +- packages/skill/skill-filesystem/package.json | 2 +- packages/skill/skill/package.json | 2 +- packages/skill/tool-skill/package.json | 2 +- packages/spill/spill-local/package.json | 2 +- packages/spill/spill-policy/package.json | 2 +- packages/spill/spill/package.json | 2 +- packages/storage/storage-domain/package.json | 2 +- packages/storage/storage-json/package.json | 2 +- packages/storage/storage-sqlite/package.json | 2 +- packages/storage/storage/package.json | 2 +- packages/subagent/subagent-acp/package.json | 2 +- packages/subagent/subagent-claude-code/package.json | 2 +- packages/subagent/subagent-codex/package.json | 2 +- packages/subagent/subagent-dsh-sdk/package.json | 2 +- packages/subagent/subagent-fork-in-process/package.json | 2 +- packages/subagent/subagent-in-process-driver/package.json | 2 +- packages/subagent/subagent-spawn-in-process/package.json | 2 +- packages/subagent/subagent/package.json | 2 +- packages/subagent/tool-subagent-control/package.json | 2 +- packages/subagent/tool-subagent-report/package.json | 2 +- packages/subagent/tool-subagent/package.json | 2 +- packages/subprocess/subprocess-local/package.json | 2 +- packages/subprocess/subprocess/package.json | 2 +- packages/terminal/terminal-bash/package.json | 2 +- packages/terminal/terminal/package.json | 2 +- packages/terminal/tool-terminal/package.json | 2 +- packages/test-support/acp-snapshot/package.json | 2 +- packages/test-support/agent-loop-testkit/package.json | 2 +- packages/test-support/client-runtime/package.json | 2 +- packages/test-support/llm-mock-server/package.json | 2 +- packages/test-support/llm-replay/package.json | 2 +- packages/test-support/loader-smoke/package.json | 2 +- packages/todo/tool-todo/package.json | 2 +- packages/typert/generator/package.json | 2 +- packages/typert/loader/package.json | 2 +- packages/typert/protocol/package.json | 2 +- packages/typert/registry/package.json | 2 +- packages/util/atomic-write/package.json | 2 +- packages/util/brand/package.json | 2 +- packages/util/home-paths/package.json | 2 +- packages/util/launch-environment/package.json | 2 +- packages/util/native-command/package.json | 2 +- packages/util/output-retention/package.json | 2 +- packages/util/timeout/package.json | 2 +- packages/web/tool-web/package.json | 2 +- packages/web/web-fetch-http/package.json | 2 +- packages/web/web-search-deepseek/package.json | 2 +- packages/web/web-search-exa/package.json | 2 +- packages/web/web-search-perplexity/package.json | 2 +- packages/web/web/package.json | 2 +- packages/workflow/tool-ralph/package.json | 2 +- packages/workflow/tool-workflow/package.json | 2 +- packages/workflow/workflow-worker-thread/package.json | 2 +- packages/workflow/workflow/package.json | 2 +- packages/workspace/workspace/package.json | 2 +- 222 files changed, 222 insertions(+), 222 deletions(-) diff --git a/apps/cli/package.json b/apps/cli/package.json index eddb8a4ad7..35cf0db4d2 100644 --- a/apps/cli/package.json +++ b/apps/cli/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh", "description": "dsh CLI: profile boot, plugin management, and the browser UI alias", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/apps/web/package.json b/apps/web/package.json index f1f808b55e..e80564061c 100644 --- a/apps/web/package.json +++ b/apps/web/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-web-frontend", "description": "Web application entry: vite build over the @deepseek-ai/dsh-client-web shell library; dist/ served by apps/cli's dsh web", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/package.json b/package.json index e9a8d4d86c..db7a5906ce 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@deepseek-ai/dsh-root", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "license": "MIT", "private": true, "type": "module", diff --git a/packages/acp/acp/package.json b/packages/acp/acp/package.json index da4944efb8..cd8b9f7aff 100644 --- a/packages/acp/acp/package.json +++ b/packages/acp/acp/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-acp", "description": "Automation-only Agent Client Protocol server for driving DeepSeek Harness agents over JSON-RPC stdio", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/api/gateway/package.json b/packages/api/gateway/package.json index ec0296f7c8..7fab738249 100644 --- a/packages/api/gateway/package.json +++ b/packages/api/gateway/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-api-gateway", "description": "Typert Remote Host dispatcher and Client API endpoint", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/api/remotes/package.json b/packages/api/remotes/package.json index a0f43738b5..9e37b93a98 100644 --- a/packages/api/remotes/package.json +++ b/packages/api/remotes/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-api-remotes", "description": "Remote BFF assembly and Host Agent/Session lookup policy", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/attachment/attachment-local/package.json b/packages/attachment/attachment-local/package.json index ddbe0af2e4..646e228e24 100644 --- a/packages/attachment/attachment-local/package.json +++ b/packages/attachment/attachment-local/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-attachment-local", "description": "Private content-addressed DSH_HOME attachment storage", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/attachment/attachment/package.json b/packages/attachment/attachment/package.json index 792f94011f..06ff35a5f4 100644 --- a/packages/attachment/attachment/package.json +++ b/packages/attachment/attachment/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-attachment", "description": "Durable immutable attachment storage seam for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/boot/app-boot/package.json b/packages/boot/app-boot/package.json index fde0fb71b7..c6b15efa93 100644 --- a/packages/boot/app-boot/package.json +++ b/packages/boot/app-boot/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-app-boot", "description": "Shared boot glue for the app bins: .env loading, fail-loud Loader guards, snapshot-aware config resolution, and the Loader boot sequence", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/boot/cmdline/package.json b/packages/boot/cmdline/package.json index a18bcf1169..5654d706a7 100644 --- a/packages/boot/cmdline/package.json +++ b/packages/boot/cmdline/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-cmdline", "description": "Immutable command-line handoff from a dsh launcher to any app plugin that injects cmdlineArgs", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/bundle/base/package.json b/packages/bundle/base/package.json index ce21f68eec..3be7faca39 100644 --- a/packages/bundle/base/package.json +++ b/packages/bundle/base/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-base", "description": "The shared dsh core as a profile bundle: every profile's first patch layer, inserting the base plugin rows over the empty profile root", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/bundle/headless/package.json b/packages/bundle/headless/package.json index 46fb8dd207..f865671c2e 100644 --- a/packages/bundle/headless/package.json +++ b/packages/bundle/headless/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-headless", "description": "The dsh one-shot bundle: a direct core Agent/Session runner over dsh-base with no Host, HTTP, or browser layer", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/bundle/web-app/package.json b/packages/bundle/web-app/package.json index 660b8fc2a7..1193ebdc5e 100644 --- a/packages/bundle/web-app/package.json +++ b/packages/bundle/web-app/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-web-app", "description": "The dsh browser-surface bundle: the web patch layer over dsh-base plus the runtime glue plugin (frontend dist serving, web-surface prompt, bash runtime variables, URL line)", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/connection/package.json b/packages/client/connection/package.json index 107d452465..00c4e4192c 100644 --- a/packages/client/connection/package.json +++ b/packages/client/connection/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-connection", "description": "Wire consumer layer: HTTP-up/WebSocket-down client, ConnectionController dual streams with reconnect, and fixture api", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/hmr/package.json b/packages/client/hmr/package.json index 3b559386cd..a864242f37 100644 --- a/packages/client/hmr/package.json +++ b/packages/client/hmr/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-hmr", "description": "Dev-only hot-reload driver for script-loaded client entries: SSE rebuilt frames → invalidate/prefetch → fiber swap through the vendored Loader entry", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/locale/package.json b/packages/client/locale/package.json index e59a558449..db90c32eb9 100644 --- a/packages/client/locale/package.json +++ b/packages/client/locale/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-locale", "description": "Locale plugin: Host-backed zh/en preference, browser-derived fallback, locale snapshots, and typed namespace dictionaries", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/modules/package.json b/packages/client/modules/package.json index fc9408e807..85ebb312f4 100644 --- a/packages/client/modules/package.json +++ b/packages/client/modules/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-modules", "description": "Client module system, dual-face: node half composes the __DSH_BOOT__ entry graph (incremental dsh.client scan, bundle route, index tap, webPlugins service); browser half is the lazy-CJS module table the vendored cordis Loader consumes as its internal seam", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/runtime/package.json b/packages/client/runtime/package.json index 82a7bc48fc..c527e93fb3 100644 --- a/packages/client/runtime/package.json +++ b/packages/client/runtime/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-runtime", "description": "Client core services: SlotRegistry, SessionRuntime (scope tree + object layer)", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/schema-form/package.json b/packages/client/schema-form/package.json index 4bab5feb6e..348aea9b67 100644 --- a/packages/client/schema-form/package.json +++ b/packages/client/schema-form/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-schema-form", "description": "Schema/draft model layer for settings editors: rehydrates a serialized schemastery schema, validates drafts, and edits them immutably by path", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-agent-preset/package.json b/packages/client/ui-agent-preset/package.json index e841e71c3b..af20fd2fa8 100644 --- a/packages/client/ui-agent-preset/package.json +++ b/packages/client/ui-agent-preset/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-agent-preset", "description": "Agent-preset surfaces: the default for later sessions, this session's seat, and the composition editor", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-attachment/package.json b/packages/client/ui-attachment/package.json index 1f21f5fe46..862c03dd5e 100644 --- a/packages/client/ui-attachment/package.json +++ b/packages/client/ui-attachment/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-attachment", "description": "Pure React attachment atoms for the dsh web UI: draft-image rail, message image gallery, and original-image lightbox (zero cordis)", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-commands/package.json b/packages/client/ui-commands/package.json index f035e7cc98..8737f3c557 100644 --- a/packages/client/ui-commands/package.json +++ b/packages/client/ui-commands/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-commands", "description": "Client command surface: global directory cache, '/' source, three command UI kinds, popupSelect registry", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-conversation/package.json b/packages/client/ui-conversation/package.json index 96a8c3b33c..a3a2ed8ebb 100644 --- a/packages/client/ui-conversation/package.json +++ b/packages/client/ui-conversation/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-conversation", "description": "Conversation domain: skeleton, ordered chat flow, composer with the Host-backed busy-Enter preference, and details host", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-deliverables/package.json b/packages/client/ui-deliverables/package.json index ad76a0d057..0a5fdbfed0 100644 --- a/packages/client/ui-deliverables/package.json +++ b/packages/client/ui-deliverables/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-deliverables", "description": "Produced-files turn tail and clickable final-response file references for Web", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-directory-picker-browse/package.json b/packages/client/ui-directory-picker-browse/package.json index 141a52d776..f8e8a1cc22 100644 --- a/packages/client/ui-directory-picker-browse/package.json +++ b/packages/client/ui-directory-picker-browse/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-directory-picker-browse", "description": "In-app directory browsing surface: the workspace directory-flow owner rendering the host's listing and creation primitives", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-directory-picker-native/package.json b/packages/client/ui-directory-picker-native/package.json index d2edd0ef92..0490ee9f60 100644 --- a/packages/client/ui-directory-picker-native/package.json +++ b/packages/client/ui-directory-picker-native/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-directory-picker-native", "description": "Native directory-picker surface: the renderless workspace directory-flow occupant driving the host's OS chooser", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-goal/package.json b/packages/client/ui-goal/package.json index e822e253ea..da15f6ec8a 100644 --- a/packages/client/ui-goal/package.json +++ b/packages/client/ui-goal/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-goal", "description": "Session goal surface: GoalBar docked above the composer, read from the goal session projection", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-input-trigger/package.json b/packages/client/ui-input-trigger/package.json index 27bb4435cf..88b182b261 100644 --- a/packages/client/ui-input-trigger/package.json +++ b/packages/client/ui-input-trigger/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-input-trigger", "description": "Input trigger pipeline: '/' and '@' detection, candidate menu, pick routing to registered sources", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-jobs/package.json b/packages/client/ui-jobs/package.json index d9ca8dd4f8..2ea29ad1d8 100644 --- a/packages/client/ui-jobs/package.json +++ b/packages/client/ui-jobs/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-jobs", "description": "Session-header background-job list: live registry state mirrored from session/jobs frames", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "type": "module", "main": "lib/index.js", "types": "lib/types/index.d.ts", diff --git a/packages/client/ui-layout/package.json b/packages/client/ui-layout/package.json index 06ff884982..969a2668b4 100644 --- a/packages/client/ui-layout/package.json +++ b/packages/client/ui-layout/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-layout", "description": "Shell plugin: three-column AppFrame with drag handles, ctx.layout viewing-state service (navigation + panels)", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-message-feedback/package.json b/packages/client/ui-message-feedback/package.json index 4dbd57dd1b..dc28b477a7 100644 --- a/packages/client/ui-message-feedback/package.json +++ b/packages/client/ui-message-feedback/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-message-feedback", "description": "Per-message feedback controls contributed to the assistant-message action strip, backed by the messageFeedback Host Remote", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-model-selection/package.json b/packages/client/ui-model-selection/package.json index 3cfe5e71cd..8eb23d05d7 100644 --- a/packages/client/ui-model-selection/package.json +++ b/packages/client/ui-model-selection/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-model-selection", "description": "Model selection: the /model popupSelect over session.models / session.selectModel", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-permission-presets/package.json b/packages/client/ui-permission-presets/package.json index e86e3fdbb1..9bd4e5033d 100644 --- a/packages/client/ui-permission-presets/package.json +++ b/packages/client/ui-permission-presets/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-permission-presets", "description": "Permission surfaces: a new-session default in General settings and a current-session /permission popup over the permissions projection", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-plan/package.json b/packages/client/ui-plan/package.json index aedf12b166..34de2b8ce5 100644 --- a/packages/client/ui-plan/package.json +++ b/packages/client/ui-plan/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-plan", "description": "Plan-mode composer control: the conversation.input.plan seat over the plan projection and the /plan command channel", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-primitives/package.json b/packages/client/ui-primitives/package.json index bc599663a1..8882d0f20a 100644 --- a/packages/client/ui-primitives/package.json +++ b/packages/client/ui-primitives/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-primitives", "description": "Pure React atoms for the dsh web UI: controls, icons, markdown, and JSON inspectors (zero cordis)", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-settings-general/package.json b/packages/client/ui-settings-general/package.json index c79c1882e7..812e1d72ee 100644 --- a/packages/client/ui-settings-general/package.json +++ b/packages/client/ui-settings-general/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-settings-general", "description": "Settings ownerless-copy and product onboarding plugin: the General section, shell trigger/header chrome content, settings dictionaries, and the versioned welcome notice", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-settings-models/package.json b/packages/client/ui-settings-models/package.json index 5660cf6dfc..8ef6eea50b 100644 --- a/packages/client/ui-settings-models/package.json +++ b/packages/client/ui-settings-models/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-settings-models", "description": "Models settings and shared product-onboarding dialogs over existing settings and credential joins", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-settings-plugin-inventory/package.json b/packages/client/ui-settings-plugin-inventory/package.json index 5d486e3fcd..4546499cc9 100644 --- a/packages/client/ui-settings-plugin-inventory/package.json +++ b/packages/client/ui-settings-plugin-inventory/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-settings-plugin-inventory", "description": "Read-only Cordis Loader inventory tab in Web Plugins settings", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-settings-plugins/package.json b/packages/client/ui-settings-plugins/package.json index ece83f4239..91964dbe05 100644 --- a/packages/client/ui-settings-plugins/package.json +++ b/packages/client/ui-settings-plugins/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-settings-plugins", "description": "Plugins settings section with feature-owned tabs and configurable host-plane plugin cards", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-settings/package.json b/packages/client/ui-settings/package.json index 8b20beeede..0d8a39a442 100644 --- a/packages/client/ui-settings/package.json +++ b/packages/client/ui-settings/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-settings", "description": "Settings domain base plugin: the settings-namespace scope service and the canonical settings slot-type contract", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-sidebar/package.json b/packages/client/ui-sidebar/package.json index 7c5eace021..b8846b531f 100644 --- a/packages/client/ui-sidebar/package.json +++ b/packages/client/ui-sidebar/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-sidebar", "description": "Sidebar plugin: session multi-level tree, search, grouping, state dots", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-skill/package.json b/packages/client/ui-skill/package.json index e7b9b82963..068e17ca77 100644 --- a/packages/client/ui-skill/package.json +++ b/packages/client/ui-skill/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-skill", "description": "Web skill references and the dedicated skill tool row", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-slots/package.json b/packages/client/ui-slots/package.json index 1778a2b500..bed532ef43 100644 --- a/packages/client/ui-slots/package.json +++ b/packages/client/ui-slots/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-slots", "description": "Slot registry pure core: SlotMap declaration merging, single register composition API, four-share props types, store-seat types, renderer install seam", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-subagent/package.json b/packages/client/ui-subagent/package.json index af795695e3..e23c279d7b 100644 --- a/packages/client/ui-subagent/package.json +++ b/packages/client/ui-subagent/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-subagent", "description": "Subagent conversation catalog, continuation routing UI, and '@' reference source", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-theme/package.json b/packages/client/ui-theme/package.json index fd83879158..83c1910181 100644 --- a/packages/client/ui-theme/package.json +++ b/packages/client/ui-theme/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-theme", "description": "Theme plugin: Host bootstrap for the pre-plugin palette; DOM-free ThemeRuntime for light/dark/system state; --dsw-* token styles and Appearance settings row", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-tool/package.json b/packages/client/ui-tool/package.json index 3095da5315..ddd3711a85 100644 --- a/packages/client/ui-tool/package.json +++ b/packages/client/ui-tool/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-tool", "description": "Client Tool call-tree renderer and keyed per-tool presentation slot", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-trajectory/package.json b/packages/client/ui-trajectory/package.json index 70c4ea896f..1b93dd1511 100644 --- a/packages/client/ui-trajectory/package.json +++ b/packages/client/ui-trajectory/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-trajectory", "description": "Trajectory event ledger with an interactive timing overview: pure-consumer plugin registering into the conversation ViewMap (no service)", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-user-questions/package.json b/packages/client/ui-user-questions/package.json index a784d45ee2..c2893aeb47 100644 --- a/packages/client/ui-user-questions/package.json +++ b/packages/client/ui-user-questions/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-user-questions", "description": "Web ask_user_question feature: host tool mount plus composer-takeover question UI", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-workflow-run/package.json b/packages/client/ui-workflow-run/package.json index 4b483790b1..f1c3b609ab 100644 --- a/packages/client/ui-workflow-run/package.json +++ b/packages/client/ui-workflow-run/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-workflow-run", "description": "Durable workflow-run Conversation Node and nested member disclosure for dsh web", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/ui-workspace/package.json b/packages/client/ui-workspace/package.json index d1853e9db0..796f1450d9 100644 --- a/packages/client/ui-workspace/package.json +++ b/packages/client/ui-workspace/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-workspace", "description": "Workspace picker plugin: one WorkspacePicker registered into the sidebar and empty-state workspace slots", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/web-react/package.json b/packages/client/web-react/package.json index c510265ecf..e112a1e9c0 100644 --- a/packages/client/web-react/package.json +++ b/packages/client/web-react/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-web-react", "description": "Shell-side React glue: createSlotRenderer, SessionProvider, bindSnapshotSelector (uSES bridge), useInvoke", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/client/web/package.json b/packages/client/web/package.json index 4b19398e98..3b676db1b7 100644 --- a/packages/client/web/package.json +++ b/packages/client/web/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-web", "description": "Web shell kernel: bootWebShell (module system holding + seed table + two-stage boot + AppRoot gate + app-shell assembly entry), consumed by the apps/web vite entry", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/code-runtime/code-runtime-worker-thread/package.json b/packages/code-runtime/code-runtime-worker-thread/package.json index 4959fe12be..03d7084062 100644 --- a/packages/code-runtime/code-runtime-worker-thread/package.json +++ b/packages/code-runtime/code-runtime-worker-thread/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-code-runtime-worker-thread", "description": "Worker-thread implementation of the DeepSeek Harness code-execution seam", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/code-runtime/code-runtime/package.json b/packages/code-runtime/code-runtime/package.json index 959d21ba51..8233b3aba9 100644 --- a/packages/code-runtime/code-runtime/package.json +++ b/packages/code-runtime/code-runtime/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-code-runtime", "description": "Abstract code-execution seam (ctx.codeRuntime) for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/compaction/command-compact/package.json b/packages/compaction/command-compact/package.json index 8854e8db63..67c0610b52 100644 --- a/packages/compaction/command-compact/package.json +++ b/packages/compaction/command-compact/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-command-compact", "description": "Human-facing slash command for explicit session compaction", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/compaction/compaction-basic/package.json b/packages/compaction/compaction-basic/package.json index 236b48e3fe..605b24bb31 100644 --- a/packages/compaction/compaction-basic/package.json +++ b/packages/compaction/compaction-basic/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-compaction-basic", "description": "Token-meter-driven compaction policy and LLM summarization backend for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/compaction/compaction-tool-result-pruner/package.json b/packages/compaction/compaction-tool-result-pruner/package.json index d89264fdb2..ffe84c4e9c 100644 --- a/packages/compaction/compaction-tool-result-pruner/package.json +++ b/packages/compaction/compaction-tool-result-pruner/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-compaction-tool-result-pruner", "description": "Replay-safe model-free head/middle/tail pruning for tool-result surface nodes", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/compaction/compaction/package.json b/packages/compaction/compaction/package.json index a8610e513d..a2a649a508 100644 --- a/packages/compaction/compaction/package.json +++ b/packages/compaction/compaction/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-compaction", "description": "Abstract compaction service seam (ctx.compaction) for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/context/agent-instructions/package.json b/packages/context/agent-instructions/package.json index ccd3112a31..5472ced4dd 100644 --- a/packages/context/agent-instructions/package.json +++ b/packages/context/agent-instructions/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-agent-instructions", "description": "Workspace context loader for AGENTS.md/CLAUDE.md instruction files", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/context/session-reference/package.json b/packages/context/session-reference/package.json index 296757922a..7840b2998e 100644 --- a/packages/context/session-reference/package.json +++ b/packages/context/session-reference/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-reference", "description": "Cross-session snapshot references and durable untrusted model context (ctx.sessionReferenceResolver)", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/context/time-context/package.json b/packages/context/time-context/package.json index 40765701ee..792c55a490 100644 --- a/packages/context/time-context/package.json +++ b/packages/context/time-context/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-time-context", "description": "Opt-in durable per-step context with the current time and elapsed time", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/context/tmux-context/package.json b/packages/context/tmux-context/package.json index 04697bf3a5..a36b7ba3d2 100644 --- a/packages/context/tmux-context/package.json +++ b/packages/context/tmux-context/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tmux-context", "description": "Opt-in durable per-step context with this agent's tmux pane and window location", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/core/agent-default-model/package.json b/packages/core/agent-default-model/package.json index aecd485f17..bf6158f8a8 100644 --- a/packages/core/agent-default-model/package.json +++ b/packages/core/agent-default-model/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-agent-default-model", "description": "Default model selection shared by Agent entry points", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/core/agent-loop/package.json b/packages/core/agent-loop/package.json index fa882280ef..077d952604 100644 --- a/packages/core/agent-loop/package.json +++ b/packages/core/agent-loop/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-agent-loop", "description": "The concrete agent loop plugin for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/core/agent-tool-presentation/package.json b/packages/core/agent-tool-presentation/package.json index 2c511c1541..2962be0612 100644 --- a/packages/core/agent-tool-presentation/package.json +++ b/packages/core/agent-tool-presentation/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-agent-tool-presentation", "description": "Agent-plane presentation selector: composes one agent's tools as Code Mode, native, or both", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/core/agent/package.json b/packages/core/agent/package.json index 118ac28d1f..22da562364 100644 --- a/packages/core/agent/package.json +++ b/packages/core/agent/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-agent", "description": "Agent interface, registry, initiator scope, and event vocabulary for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/core/scope/package.json b/packages/core/scope/package.json index 168ca36ea9..f3e9196064 100644 --- a/packages/core/scope/package.json +++ b/packages/core/scope/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-scope", "description": "Scoped-context registration primitive (scope tags, scope-filtered event dispatch) for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/core/session/package.json b/packages/core/session/package.json index 8b9e5457a9..ba3d3f76c6 100644 --- a/packages/core/session/package.json +++ b/packages/core/session/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session", "description": "Event-sourced session store for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/core/system-prompt/package.json b/packages/core/system-prompt/package.json index b28b528319..8a7de9b5af 100644 --- a/packages/core/system-prompt/package.json +++ b/packages/core/system-prompt/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-system-prompt", "description": "System prompt assembly registry for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/core/tools/package.json b/packages/core/tools/package.json index 5f27e77709..220d4008a6 100644 --- a/packages/core/tools/package.json +++ b/packages/core/tools/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tools", "description": "Tool registry and execution pipeline for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/credentials/credentials-local/package.json b/packages/credentials/credentials-local/package.json index 777c251ab4..b2bb85e461 100644 --- a/packages/credentials/credentials-local/package.json +++ b/packages/credentials/credentials-local/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-credentials-local", "description": "File-backed credentials provider ($DSH_HOME/.env under the live process environment) for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/credentials/credentials/package.json b/packages/credentials/credentials/package.json index 6ff436fca4..dba18e4e56 100644 --- a/packages/credentials/credentials/package.json +++ b/packages/credentials/credentials/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-credentials", "description": "Abstract credential seam (ctx.credentials): settings carry references to secrets, providers own the values", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/e2b/e2b/package.json b/packages/e2b/e2b/package.json index 0b59ecfba1..55b2da23f5 100644 --- a/packages/e2b/e2b/package.json +++ b/packages/e2b/e2b/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-e2b", "description": "Shared E2B sandbox lifecycle for DeepSeek Harness provider adapters", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/e2b/fs-e2b/package.json b/packages/e2b/fs-e2b/package.json index 247644144d..9aa5741a13 100644 --- a/packages/e2b/fs-e2b/package.json +++ b/packages/e2b/fs-e2b/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-fs-e2b", "description": "E2B filesystem implementation for DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/e2b/subprocess-e2b/package.json b/packages/e2b/subprocess-e2b/package.json index 2aeaab41ce..b29e21625b 100644 --- a/packages/e2b/subprocess-e2b/package.json +++ b/packages/e2b/subprocess-e2b/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subprocess-e2b", "description": "E2B subprocess implementation for DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/examples/acp-demo/package.json b/packages/examples/acp-demo/package.json index e49e3804a2..0c723466df 100644 --- a/packages/examples/acp-demo/package.json +++ b/packages/examples/acp-demo/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-acp-demo", "description": "ACP automation server app: agent spine + JSONL persistence + ACP transport, with a JSON-RPC stdio bin", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/examples/agent-spine-demo/package.json b/packages/examples/agent-spine-demo/package.json index 6c2bcadc8f..14172e579b 100644 --- a/packages/examples/agent-spine-demo/package.json +++ b/packages/examples/agent-spine-demo/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-agent-spine-demo", "description": "The default executor-less/UI-less agent spine with fallback session titles, provider-routed retry, and optional persisted goals", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/examples/jsonrpc-demo/package.json b/packages/examples/jsonrpc-demo/package.json index c40abc8c64..c9ee7b3cfb 100644 --- a/packages/examples/jsonrpc-demo/package.json +++ b/packages/examples/jsonrpc-demo/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-sdk-jsonrpc-demo", "description": "Bin that boots an external Cordis config for the stdio JSON-RPC SDK runtime", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/extensions/cordis-client-runner/package.json b/packages/extensions/cordis-client-runner/package.json index ababeff94e..23e1867c17 100644 --- a/packages/extensions/cordis-client-runner/package.json +++ b/packages/extensions/cordis-client-runner/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-cordis-client-runner", "description": "Browser half of dynamic dual-half plugin packages: event subscription, closure evaluation, guard facade, and loader entries", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/extensions/cordis-host-runner/package.json b/packages/extensions/cordis-host-runner/package.json index 5edfc35cb6..5abea4abf2 100644 --- a/packages/extensions/cordis-host-runner/package.json +++ b/packages/extensions/cordis-host-runner/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-cordis-host-runner", "description": "Dynamic package definition registry, host-half sandbox lifecycle, and invoke handler table for model-mounted dual-half packages", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/extensions/tool-cordis/package.json b/packages/extensions/tool-cordis/package.json index 63afbb3c9e..08ef69e353 100644 --- a/packages/extensions/tool-cordis/package.json +++ b/packages/extensions/tool-cordis/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-cordis", "description": "Self-referential cordis toolset: inspect the live runtime, mount and dispose model-written plugins", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/extensions/ui-cordis/package.json b/packages/extensions/ui-cordis/package.json index 8b28ce1999..409109a166 100644 --- a/packages/extensions/ui-cordis/package.json +++ b/packages/extensions/ui-cordis/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-ui-cordis", "description": "Cordis dynamic-plugin definition card: the keyed cordis_define tool row with its run/stop switch", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/feedback/command-feedback/package.json b/packages/feedback/command-feedback/package.json index 0993db9df3..f8fd2e0e0b 100644 --- a/packages/feedback/command-feedback/package.json +++ b/packages/feedback/command-feedback/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-command-feedback", "description": "Log-only session feedback producer and human-facing slash command", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/feedback/message-feedback/package.json b/packages/feedback/message-feedback/package.json index a77d665079..64dd9e64ca 100644 --- a/packages/feedback/message-feedback/package.json +++ b/packages/feedback/message-feedback/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-message-feedback", "description": "Lifecycle-bound per-message rating and note sidecar for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/fs/fs-local/package.json b/packages/fs/fs-local/package.json index c0fb7a43da..54f885e3bb 100644 --- a/packages/fs/fs-local/package.json +++ b/packages/fs/fs-local/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-fs-local", "description": "Local-filesystem implementation of the DeepSeek Harness filesystem seam (ctx.fs)", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/fs/fs-observation-policy/package.json b/packages/fs/fs-observation-policy/package.json index 88d8db9e90..3819108677 100644 --- a/packages/fs/fs-observation-policy/package.json +++ b/packages/fs/fs-observation-policy/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-fs-observation-policy", "description": "File-context policy plugin for the DeepSeek Harness — observed-state, read-before-edit, and version-guarded write/edit added over the ctx.fs provider seam through the fs/* event gate (no service API)", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/fs/fs-sandbox/package.json b/packages/fs/fs-sandbox/package.json index a492a10004..01fc46ea7a 100644 --- a/packages/fs/fs-sandbox/package.json +++ b/packages/fs/fs-sandbox/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-fs-sandbox", "description": "Sandbox-enforcing implementation of the DeepSeek Harness filesystem seam: fences write/edit by the per-call sandbox mode (read-only denies mutation, workspace-write contains it to the workspace + temp roots) while reads pass through", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/fs/fs/package.json b/packages/fs/fs/package.json index d4bb43ed0c..79b688f5ee 100644 --- a/packages/fs/fs/package.json +++ b/packages/fs/fs/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-fs", "description": "Abstract filesystem capability seam (ctx.fs) for the DeepSeek Harness — vocabulary types, the FileSystem service (text IO + optional version-guarded atomic mutations), and the fs/* policy event vocabulary", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/fs/tool-fs-search/package.json b/packages/fs/tool-fs-search/package.json index ace193ceca..85d8e37e24 100644 --- a/packages/fs/tool-fs-search/package.json +++ b/packages/fs/tool-fs-search/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-fs-search", "description": "Model-facing filesystem discovery tools (glob, grep) backed by the packaged ripgrep binary (@vscode/ripgrep)", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/fs/tool-fs/package.json b/packages/fs/tool-fs/package.json index 2275cf9133..9ea0b88864 100644 --- a/packages/fs/tool-fs/package.json +++ b/packages/fs/tool-fs/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-fs", "description": "Model-facing filesystem tools (read, write, edit) over the DeepSeek Harness filesystem seam (ctx.fs)", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/fs/tool-str-replace-editor/package.json b/packages/fs/tool-str-replace-editor/package.json index a9628c108b..f2a593e62a 100644 --- a/packages/fs/tool-str-replace-editor/package.json +++ b/packages/fs/tool-str-replace-editor/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-str-replace-editor", "description": "Model-facing view, create, literal replace, and line insert tool over the Harness filesystem service", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/goal/command-goal/package.json b/packages/goal/command-goal/package.json index e6849d82e6..2337a35c2c 100644 --- a/packages/goal/command-goal/package.json +++ b/packages/goal/command-goal/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-command-goal", "description": "Human-facing slash command for persisted same-session goals", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/goal/goal-round-driver/package.json b/packages/goal/goal-round-driver/package.json index 3660b717f6..bdce5bdcf2 100644 --- a/packages/goal/goal-round-driver/package.json +++ b/packages/goal/goal-round-driver/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-goal-round-driver", "description": "Race-fenced same-session goal-round driver", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/goal/goal/package.json b/packages/goal/goal/package.json index ddac8fd841..32f3b48708 100644 --- a/packages/goal/goal/package.json +++ b/packages/goal/goal/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-goal", "description": "Event-sourced same-session goal state and lifecycle service for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/goal/tool-goal/package.json b/packages/goal/tool-goal/package.json index 3514474923..a085c7f76a 100644 --- a/packages/goal/tool-goal/package.json +++ b/packages/goal/tool-goal/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-goal", "description": "Model-facing same-session goal tools with execution-time authority checks", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/guard/repeat-tool-reminder/package.json b/packages/guard/repeat-tool-reminder/package.json index 62d46dc385..320d6c43c7 100644 --- a/packages/guard/repeat-tool-reminder/package.json +++ b/packages/guard/repeat-tool-reminder/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-repeat-tool-reminder", "description": "Repeat-tool-call guard plugin: advisory reminders when an agent loops on identical tool calls", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/guard/timeout-policy/package.json b/packages/guard/timeout-policy/package.json index 1af9607ec3..106cbad2b8 100644 --- a/packages/guard/timeout-policy/package.json +++ b/packages/guard/timeout-policy/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-call-timeout-policy", "description": "Tool-call timeout policy: a tools/execute wrapper that arms a per-tool deadline on exec.signal and returns TOOL_TIMEOUT when it wins", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/hooks/hook-protocol/package.json b/packages/hooks/hook-protocol/package.json index 93301b0f98..97414e9f46 100644 --- a/packages/hooks/hook-protocol/package.json +++ b/packages/hooks/hook-protocol/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-hook-protocol", "description": "Shared Claude Code / Codex hook wire protocol: matcher engine, stdin/exit-code/stdout codec, multi-hook merge, and hook/* session events", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/hooks/hooks-claude-code/package.json b/packages/hooks/hooks-claude-code/package.json index 5d82313f31..37c6c63535 100644 --- a/packages/hooks/hooks-claude-code/package.json +++ b/packages/hooks/hooks-claude-code/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-hooks-claude-code", "description": "Bridge plugin: run a Claude Code hooks.json / settings hook config on the DeepSeek Harness interception seams", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/hooks/hooks-codex/package.json b/packages/hooks/hooks-codex/package.json index 594710190b..ee66349c0d 100644 --- a/packages/hooks/hooks-codex/package.json +++ b/packages/hooks/hooks-codex/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-hooks-codex", "description": "Bridge plugin: run a Codex hooks.json hook config on the DeepSeek Harness interception seams", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/host/apiproxy/package.json b/packages/host/apiproxy/package.json index 6af3b2ee18..23a1c76174 100644 --- a/packages/host/apiproxy/package.json +++ b/packages/host/apiproxy/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-host-apiproxy", "description": "API gateway: the ApiProxy contract (api/), the fetch carrier pair (fetch/), and the host-side gateway plugin providing ctx.apiProxy", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/host/directory-picker-auto/package.json b/packages/host/directory-picker-auto/package.json index 6d4f28ab66..fd9cc0b7b5 100644 --- a/packages/host/directory-picker-auto/package.json +++ b/packages/host/directory-picker-auto/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-host-directory-picker-auto", "description": "Adaptive chooser of the directory-picker seam: resolves the host situation at boot and mounts the native or browse backend for the DeepSeek Harness web GUI host", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/host/directory-picker-browse/package.json b/packages/host/directory-picker-browse/package.json index edac737c8e..fb07cfedaf 100644 --- a/packages/host/directory-picker-browse/package.json +++ b/packages/host/directory-picker-browse/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-host-directory-picker-browse", "description": "In-app browsing backend of the directory-picker seam (listing/creation primitives over the host filesystem)", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/host/directory-picker-native/package.json b/packages/host/directory-picker-native/package.json index 75642b724f..8ff37ffc2a 100644 --- a/packages/host/directory-picker-native/package.json +++ b/packages/host/directory-picker-native/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-host-directory-picker-native", "description": "Native-OS-chooser backend of the directory-picker seam for the DeepSeek Harness web GUI host", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/host/directory-picker/package.json b/packages/host/directory-picker/package.json index e9ec712ad8..2f84bed9c8 100644 --- a/packages/host/directory-picker/package.json +++ b/packages/host/directory-picker/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-host-directory-picker", "description": "Abstract workspace-directory picking seam (ctx.directoryPicker) for the DeepSeek Harness web GUI host", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/host/frontend-static/package.json b/packages/host/frontend-static/package.json index 4aa9d1621d..e1b18222dc 100644 --- a/packages/host/frontend-static/package.json +++ b/packages/host/frontend-static/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-host-frontend-static", "description": "SPA dist server for the Web shell: owns the webserver fallback seat, serving the built frontend with index-tap injection, traversal rejection, and SPA index fallback", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/host/plugin-inventory/package.json b/packages/host/plugin-inventory/package.json index 4639d18bc5..6ae5a80a06 100644 --- a/packages/host/plugin-inventory/package.json +++ b/packages/host/plugin-inventory/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-host-plugin-inventory", "description": "Read-only Remote projection of current Cordis Loader plugin state", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/host/webserver/package.json b/packages/host/webserver/package.json index f19d959473..f8aa400f8a 100644 --- a/packages/host/webserver/package.json +++ b/packages/host/webserver/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-host-webserver", "description": "Web route-registration plugin: HTTP and upgrade routes, index transform taps, and static dist fallback; knows no harness concepts", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/identity/anonymous-user-id/package.json b/packages/identity/anonymous-user-id/package.json index 49c286a5ef..3e540a776f 100644 --- a/packages/identity/anonymous-user-id/package.json +++ b/packages/identity/anonymous-user-id/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-anonymous-user-id", "description": "Shared anonymous user identity for DeepSeek Harness telemetry and feedback correlation", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/interaction/commands/package.json b/packages/interaction/commands/package.json index 3b7079f086..3daba8dba3 100644 --- a/packages/interaction/commands/package.json +++ b/packages/interaction/commands/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-commands", "description": "Plugin-owned human command registry for DeepSeek Harness UIs", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/interaction/permission-presets/package.json b/packages/interaction/permission-presets/package.json index d62c3c9d96..ed37d1e7ef 100644 --- a/packages/interaction/permission-presets/package.json +++ b/packages/interaction/permission-presets/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-permission-presets", "description": "User-facing permission presets (ctx.permissionPresets) for the DeepSeek Harness: one product-level Permissions select bundling the sandbox-mode and approval-policy knobs, written through to their own session events", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/interaction/tool-ask-user/package.json b/packages/interaction/tool-ask-user/package.json index 36fb55a70f..aa57ba0489 100644 --- a/packages/interaction/tool-ask-user/package.json +++ b/packages/interaction/tool-ask-user/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-ask-user", "description": "Model-facing ask_user_question tool over the ctx.userQuestions seam", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/interaction/user-approval/package.json b/packages/interaction/user-approval/package.json index 38f8597c8a..887aaaa754 100644 --- a/packages/interaction/user-approval/package.json +++ b/packages/interaction/user-approval/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-user-approval", "description": "User-approval seam (ctx.approval) for the DeepSeek Harness: one-shot permission decisions dispatched to composed answerers over the approval/request waterfall, fail-closed by default", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/interaction/user-questions/package.json b/packages/interaction/user-questions/package.json index 788be37e70..33a6029fab 100644 --- a/packages/interaction/user-questions/package.json +++ b/packages/interaction/user-questions/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-user-questions", "description": "Abstract user-questions seam (ctx.userQuestions) for asking the human during agent runs", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/jobs/jobs-local/package.json b/packages/jobs/jobs-local/package.json index 8e430bec1f..d149405cfa 100644 --- a/packages/jobs/jobs-local/package.json +++ b/packages/jobs/jobs-local/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-jobs-local", "description": "Process-local implementation of the DeepSeek Harness background job registry seam", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/jobs/jobs/package.json b/packages/jobs/jobs/package.json index 39da6cc9dc..99e9ee9d02 100644 --- a/packages/jobs/jobs/package.json +++ b/packages/jobs/jobs/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-jobs", "description": "Background job registry (ctx.jobs) for the DeepSeek Harness — shared ids, owner isolation, polling, cancellation, and completion listeners for long-running tool work", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/jobs/tool-jobs/package.json b/packages/jobs/tool-jobs/package.json index b845ff403e..46742c8938 100644 --- a/packages/jobs/tool-jobs/package.json +++ b/packages/jobs/tool-jobs/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-jobs", "description": "Model-facing background job control tools (job_output, job_list, job_kill) over the ctx.jobs registry", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/llm/llm-deepseek/package.json b/packages/llm/llm-deepseek/package.json index 5b6a211384..9f8893343a 100644 --- a/packages/llm/llm-deepseek/package.json +++ b/packages/llm/llm-deepseek/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-llm-deepseek", "description": "DeepSeek chat-completions adapter for the DeepSeek Harness LLM seam", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/llm/llm-pi-ai/package.json b/packages/llm/llm-pi-ai/package.json index 554e21912f..5398d8c6ab 100644 --- a/packages/llm/llm-pi-ai/package.json +++ b/packages/llm/llm-pi-ai/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-llm-pi-ai", "description": "pi-ai-backed DeepSeek adapter for the DeepSeek Harness LLM seam (design-verification twin of dsh-llm-deepseek)", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/llm/llm-retry/package.json b/packages/llm/llm-retry/package.json index 68752af10b..5dccc00233 100644 --- a/packages/llm/llm-retry/package.json +++ b/packages/llm/llm-retry/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-llm-retry", "description": "Provider-routed LLM request retry policy for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/llm/llm/package.json b/packages/llm/llm/package.json index 7761bdb067..eed4acd52f 100644 --- a/packages/llm/llm/package.json +++ b/packages/llm/llm/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-llm", "description": "Provider-neutral LLM service interface for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/llm/token-meter/package.json b/packages/llm/token-meter/package.json index 627843b9a3..05bfb1b6b6 100644 --- a/packages/llm/token-meter/package.json +++ b/packages/llm/token-meter/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-token-meter", "description": "Replay-aware token measurement service (ctx.tokenMeter) for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/lsp/lsp-stdio/package.json b/packages/lsp/lsp-stdio/package.json index 391c5e7a59..ad7fee6517 100644 --- a/packages/lsp/lsp-stdio/package.json +++ b/packages/lsp/lsp-stdio/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-lsp-stdio", "description": "Generic stdio language-server provider for the DeepSeek Harness LSP capability seam (ctx.lsp) — spawns configured servers, translates JSON-RPC, and serves transient-open goToDefinition/findReferences/goToImplementation/hover queries in the host filesystem namespace", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/lsp/lsp/package.json b/packages/lsp/lsp/package.json index bca11459ec..d818da7d15 100644 --- a/packages/lsp/lsp/package.json +++ b/packages/lsp/lsp/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-lsp", "description": "Abstract LSP capability seam (ctx.lsp) for the DeepSeek Harness — language-server provider registry keyed by branded id and extension mapping, order-independent per-query selection, normalized definition/references/implementation/hover requests and results, and the LspError taxonomy", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/lsp/tool-lsp/package.json b/packages/lsp/tool-lsp/package.json index be37fd3338..fa27206e9b 100644 --- a/packages/lsp/tool-lsp/package.json +++ b/packages/lsp/tool-lsp/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-lsp", "description": "Model-facing lsp tool over the DeepSeek Harness LSP capability seam (ctx.lsp) — one read-only tool with goToDefinition/findReferences/goToImplementation/hover operations, one-based UTF-16 cursor coordinates, bounded location rendering, and hover normalization", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/mcp/mcp-client/package.json b/packages/mcp/mcp-client/package.json index 715809d404..87dc047897 100644 --- a/packages/mcp/mcp-client/package.json +++ b/packages/mcp/mcp-client/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-mcp-client", "description": "MCP client bridge: connects to MCP servers and registers their tools on ctx.tools", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/plan/plan-mode/package.json b/packages/plan/plan-mode/package.json index 1b2ed4025c..61c034f45e 100644 --- a/packages/plan/plan-mode/package.json +++ b/packages/plan/plan-mode/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-plan-mode", "description": "Logged per-agent plan mode with deployment guidance, a direct slash command, and a user-reviewed exit", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/preset/agent-presets/package.json b/packages/preset/agent-presets/package.json index 8f83bc23dd..c2fb5d8a94 100644 --- a/packages/preset/agent-presets/package.json +++ b/packages/preset/agent-presets/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-agent-presets", "description": "Per-session agent composition from preset cordis.yml files for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/preset/persona/package.json b/packages/preset/persona/package.json index f5e3a6e622..ede7663288 100644 --- a/packages/preset/persona/package.json +++ b/packages/preset/persona/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-persona", "description": "Composition-authored deployment persona section for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/runtime-diagnostics/invariants/package.json b/packages/runtime-diagnostics/invariants/package.json index f6454f3f63..4f1f3ac4f2 100644 --- a/packages/runtime-diagnostics/invariants/package.json +++ b/packages/runtime-diagnostics/invariants/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-invariants", "description": "Registry service for package-owned DeepSeek Harness runtime invariants", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/sandbox/sandbox-local/package.json b/packages/sandbox/sandbox-local/package.json index e1ee18a333..0c53b6d5f1 100644 --- a/packages/sandbox/sandbox-local/package.json +++ b/packages/sandbox/sandbox-local/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-sandbox-local", "description": "Local process-sandbox backends for the DeepSeek Harness sandbox seam: bwrap, the npm-distributed landlock-run launcher, macOS Seatbelt, or the Windows ACL restricted-token runner — functionally probed, fail-closed", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/sandbox/sandbox-policy/package.json b/packages/sandbox/sandbox-policy/package.json index 3daa764872..781176a559 100644 --- a/packages/sandbox/sandbox-policy/package.json +++ b/packages/sandbox/sandbox-policy/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-sandbox-policy", "description": "Per-call sandbox policy resolver and current model context: deployment fallbacks plus each session's mode and workspace root, shared by every enforcing capability family", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/sandbox/sandbox-windows-acl/package.json b/packages/sandbox/sandbox-windows-acl/package.json index b7ce9b118d..55ef73f0d7 100644 --- a/packages/sandbox/sandbox-windows-acl/package.json +++ b/packages/sandbox/sandbox-windows-acl/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-sandbox-windows-acl", "description": "Windows ACL write-restriction sandbox backend (restricted-token spawn with capability-SID write allowlist) for the DeepSeek Harness sandbox seam", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/sandbox/sandbox/package.json b/packages/sandbox/sandbox/package.json index 2f039e800e..0c432d94dc 100644 --- a/packages/sandbox/sandbox/package.json +++ b/packages/sandbox/sandbox/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-sandbox", "description": "Abstract process-sandbox seam (ctx.sandbox) for the DeepSeek Harness: same-world confinement vocabulary and the SandboxProvider contract", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/schedule/schedule/package.json b/packages/schedule/schedule/package.json index baab56db27..4df4700c4f 100644 --- a/packages/schedule/schedule/package.json +++ b/packages/schedule/schedule/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-schedule", "description": "Agent-scoped durable after, at, and fixed-rate reminders over the session event log", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/sdk/client/package.json b/packages/sdk/client/package.json index 220c8dd808..24c1c4fbce 100644 --- a/packages/sdk/client/package.json +++ b/packages/sdk/client/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-sdk-client", "description": "TypeScript client SDK for driving a DeepSeek Harness runtime subprocess over stdio JSON-RPC: the DeepSeekHarness high-level turns API and the lower-level HarnessClient", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/sdk/protocol/package.json b/packages/sdk/protocol/package.json index 62cdcbd3ed..e1670074ec 100644 --- a/packages/sdk/protocol/package.json +++ b/packages/sdk/protocol/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-sdk-protocol", "description": "Shared wire protocol for the DeepSeek Harness SDK runtime: the newline-delimited JSON-RPC stdio transport and the named request, result, and notification types spoken between the runtime server and SDK clients", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/sdk/server/package.json b/packages/sdk/server/package.json index 3316a70452..e7d6d87131 100644 --- a/packages/sdk/server/package.json +++ b/packages/sdk/server/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-sdk-jsonrpc-server", "description": "Stdio JSON-RPC server plugin for out-of-process DeepSeek Harness SDK clients", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/session-query/session-log-export/package.json b/packages/session-query/session-log-export/package.json index d26b8e243b..3ff6f6778e 100644 --- a/packages/session-query/session-log-export/package.json +++ b/packages/session-query/session-log-export/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-log-export", "description": "Web Session-log export command and shared download dialog", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, "repository": { "type": "git", diff --git a/packages/session-query/session-query-sqlite/package.json b/packages/session-query/session-query-sqlite/package.json index 96559c1224..acf8da0d1c 100644 --- a/packages/session-query/session-query-sqlite/package.json +++ b/packages/session-query/session-query-sqlite/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-query-sqlite", "description": "Concrete ctx.sessionQuery backend with SQLite FTS5 search", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/session-query/session-query/package.json b/packages/session-query/session-query/package.json index b96aa1daeb..bf6aff4744 100644 --- a/packages/session-query/session-query/package.json +++ b/packages/session-query/session-query/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-query", "description": "Combined session query service contract with concrete reads, traces, and filters", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/session-query/tool-session-query/package.json b/packages/session-query/tool-session-query/package.json index ee4f69d1ca..82dee299e5 100644 --- a/packages/session-query/tool-session-query/package.json +++ b/packages/session-query/tool-session-query/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-session-query", "description": "Workspace-authorized model-facing session history search, trace, and event read tools", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-checkpoint-policy/package.json b/packages/session/session-checkpoint-policy/package.json index 54f80e2276..0703e5a094 100644 --- a/packages/session/session-checkpoint-policy/package.json +++ b/packages/session/session-checkpoint-policy/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-checkpoint-policy", "description": "Semantic session durability checkpoints before model requests and tool side effects", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-persistence-jsonl/package.json b/packages/session/session-persistence-jsonl/package.json index f59aa7400c..80307e6b33 100644 --- a/packages/session/session-persistence-jsonl/package.json +++ b/packages/session/session-persistence-jsonl/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-persistence-jsonl", "description": "JSONL durable session persistence backend for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-persistence-sqlite/package.json b/packages/session/session-persistence-sqlite/package.json index 0fe1be4139..68d183b203 100644 --- a/packages/session/session-persistence-sqlite/package.json +++ b/packages/session/session-persistence-sqlite/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-persistence-sqlite", "description": "SQLite durable session persistence backend for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-persistence/package.json b/packages/session/session-persistence/package.json index 198569e7cf..f8c2958bb0 100644 --- a/packages/session/session-persistence/package.json +++ b/packages/session/session-persistence/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-persistence", "description": "Abstract durable session persistence seam (ctx.sessionPersistence) for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-projection-cache/package.json b/packages/session/session-projection-cache/package.json index dc562efc04..d302d91bac 100644 --- a/packages/session/session-projection-cache/package.json +++ b/packages/session/session-projection-cache/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-projection-cache", "description": "Persisted projection cache (ctx.sessionProjectionCache): durable per-session projection checkpoints over the domain data form, throttled write-behind, and the cold-read ladder (cache row + persistence tail replay)", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-projection/package.json b/packages/session/session-projection/package.json index 53b2de2ee8..f5e4c769ea 100644 --- a/packages/session/session-projection/package.json +++ b/packages/session/session-projection/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-projection", "description": "Session-projection seam: the merge-extensible projection type table, the provider contract, and the ctx.sessionProjections registry serving whole current values of log-derived per-session state", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-stats/package.json b/packages/session/session-stats/package.json index 75cafa78d8..43180df5c2 100644 --- a/packages/session/session-stats/package.json +++ b/packages/session/session-stats/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-stats", "description": "Whole-log conversation counts and wall times projection (sessionStats) for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-telemetry-otel/package.json b/packages/session/session-telemetry-otel/package.json index 7ea1578dcc..228b9466f1 100644 --- a/packages/session/session-telemetry-otel/package.json +++ b/packages/session/session-telemetry-otel/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-telemetry-otel", "description": "OpenTelemetry backend for the DeepSeek Harness telemetry seam: hands captured session records to the OTel JS SDK's log pipeline", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-telemetry/package.json b/packages/session/session-telemetry/package.json index afb4fdd3dd..a44a737344 100644 --- a/packages/session/session-telemetry/package.json +++ b/packages/session/session-telemetry/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-telemetry", "description": "SessionTelemetryBackend seam for the DeepSeek Harness: session-event capture, projection, redaction, and handoff to a reporting backend", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-title-all-prompts-llm/package.json b/packages/session/session-title-all-prompts-llm/package.json index 178d84240a..04c06716ca 100644 --- a/packages/session/session-title-all-prompts-llm/package.json +++ b/packages/session/session-title-all-prompts-llm/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-title-all-prompts-llm", "description": "All-user-messages LLM provider plugin for DeepSeek Harness session titles", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-title-first-prompt-llm/package.json b/packages/session/session-title-first-prompt-llm/package.json index 6a316fd475..8a3ae97227 100644 --- a/packages/session/session-title-first-prompt-llm/package.json +++ b/packages/session/session-title-first-prompt-llm/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-title-first-prompt-llm", "description": "First-message LLM provider plugin for DeepSeek Harness session titles", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-title-llm/package.json b/packages/session/session-title-llm/package.json index 6106d524dd..12ccb931b3 100644 --- a/packages/session/session-title-llm/package.json +++ b/packages/session/session-title-llm/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-title-llm", "description": "Shared LLM generation policy for DeepSeek Harness session-title providers", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/session/session-title/package.json b/packages/session/session-title/package.json index 5fc6d03262..816f82b128 100644 --- a/packages/session/session-title/package.json +++ b/packages/session/session-title/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-session-title", "description": "Log-backed session title service and provider registry for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/settings/settings-file/package.json b/packages/settings/settings-file/package.json index 106f052544..1ebaee7306 100644 --- a/packages/settings/settings-file/package.json +++ b/packages/settings/settings-file/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-settings-file", "description": "File-backed settings provider (settings.yaml) for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/settings/settings/package.json b/packages/settings/settings/package.json index 194d36827a..1d951bf0fb 100644 --- a/packages/settings/settings/package.json +++ b/packages/settings/settings/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-settings", "description": "Abstract user-settings seam (ctx.settings) for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/shell/bash-local/package.json b/packages/shell/bash-local/package.json index 936590f662..e076002664 100644 --- a/packages/shell/bash-local/package.json +++ b/packages/shell/bash-local/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-bash-local", "description": "Local-subprocess implementation of the DeepSeek Harness bash executor seam", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/shell/bash-sandbox/package.json b/packages/shell/bash-sandbox/package.json index 19e95626e9..d2e1fc5a76 100644 --- a/packages/shell/bash-sandbox/package.json +++ b/packages/shell/bash-sandbox/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-bash-sandbox", "description": "Sandbox-consuming implementation of the DeepSeek Harness bash executor seam (confines every command via ctx.sandbox, reports denial/enforcement result facts)", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/shell/pwsh-local/package.json b/packages/shell/pwsh-local/package.json index 5e63c99924..2c6573459d 100644 --- a/packages/shell/pwsh-local/package.json +++ b/packages/shell/pwsh-local/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-pwsh-local", "description": "Local PowerShell implementation of the DeepSeek Harness bash executor seam", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/shell/pwsh-sandbox/package.json b/packages/shell/pwsh-sandbox/package.json index c62b9aa580..690bd274eb 100644 --- a/packages/shell/pwsh-sandbox/package.json +++ b/packages/shell/pwsh-sandbox/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-pwsh-sandbox", "description": "Sandbox-consuming implementation of the DeepSeek Harness PowerShell executor seam (confines every command via ctx.sandbox, reports denial/enforcement result facts)", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/shell/shell-env/package.json b/packages/shell/shell-env/package.json index 305f8e3fb5..494eadc19e 100644 --- a/packages/shell/shell-env/package.json +++ b/packages/shell/shell-env/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-shell-env", "description": "Tool-independent managed DSH_* shell environment registry", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/shell/shell/package.json b/packages/shell/shell/package.json index 7792bcedbb..b1857073b9 100644 --- a/packages/shell/shell/package.json +++ b/packages/shell/shell/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-shell", "description": "Abstract bash executor seam (ctx.shell) for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/shell/tool-bash-persistent/package.json b/packages/shell/tool-bash-persistent/package.json index d37d0db078..f424965e60 100644 --- a/packages/shell/tool-bash-persistent/package.json +++ b/packages/shell/tool-bash-persistent/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-bash-persistent", "description": "Model-facing owner-scoped persistent Bash tool backed by the Harness PTY service", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/shell/tool-bash/package.json b/packages/shell/tool-bash/package.json index e96bbdc0b1..1e451f1833 100644 --- a/packages/shell/tool-bash/package.json +++ b/packages/shell/tool-bash/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-bash", "description": "Model-facing bash tool with optional generic background-job and sandbox-escalation support", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/shell/tool-pwsh/package.json b/packages/shell/tool-pwsh/package.json index 2f46e77898..5233270514 100644 --- a/packages/shell/tool-pwsh/package.json +++ b/packages/shell/tool-pwsh/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-pwsh", "description": "Model-facing pwsh tool over the bash executor seam", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/skill/skill-badge/package.json b/packages/skill/skill-badge/package.json index 76bed1278c..da6abceb4c 100644 --- a/packages/skill/skill-badge/package.json +++ b/packages/skill/skill-badge/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-skill-badge", "description": "Bundled dsh badge skill provider for DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/skill/skill-filesystem/package.json b/packages/skill/skill-filesystem/package.json index 82a6674d49..851f955896 100644 --- a/packages/skill/skill-filesystem/package.json +++ b/packages/skill/skill-filesystem/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-skill-filesystem", "description": "Local filesystem skill provider for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/skill/skill/package.json b/packages/skill/skill/package.json index 849fe30585..8bc15021e5 100644 --- a/packages/skill/skill/package.json +++ b/packages/skill/skill/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-skill", "description": "Agent skill provider registry for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/skill/tool-skill/package.json b/packages/skill/tool-skill/package.json index f8de981868..9652462804 100644 --- a/packages/skill/tool-skill/package.json +++ b/packages/skill/tool-skill/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-skill", "description": "Model-facing skill loading tool for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/spill/spill-local/package.json b/packages/spill/spill-local/package.json index 6677860f64..de1896225f 100644 --- a/packages/spill/spill-local/package.json +++ b/packages/spill/spill-local/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-spill-local", "description": "Local-filesystem implementation of the DeepSeek Harness spill storage seam (private session-scoped files)", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/spill/spill-policy/package.json b/packages/spill/spill-policy/package.json index 5e54555275..016fa0fae0 100644 --- a/packages/spill/spill-policy/package.json +++ b/packages/spill/spill-policy/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-spill-policy", "description": "Tool-result spill policy for the DeepSeek Harness — replaces oversized plain-text tool results with a retained preview plus a spill-file path (no service API)", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/spill/spill/package.json b/packages/spill/spill/package.json index 5cc485a211..489002a09b 100644 --- a/packages/spill/spill/package.json +++ b/packages/spill/spill/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-spill", "description": "Abstract spill storage seam (ctx.spillStore) for the DeepSeek Harness — save oversized tool text and return a retrieval locator", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/storage/storage-domain/package.json b/packages/storage/storage-domain/package.json index ff9f54b4e4..ef1210c8b4 100644 --- a/packages/storage/storage-domain/package.json +++ b/packages/storage/storage-domain/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-storage-domain", "description": "Domain data form (ctx.storage.domain): schema-validated, event-emitting KV domains over storage backends for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/storage/storage-json/package.json b/packages/storage/storage-json/package.json index d74204fa58..ed71a2f5d2 100644 --- a/packages/storage/storage-json/package.json +++ b/packages/storage/storage-json/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-storage-json", "description": "JSON file KV storage backend for the DeepSeek Harness storage hub", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/storage/storage-sqlite/package.json b/packages/storage/storage-sqlite/package.json index 6fc0eecfd4..58467e56d6 100644 --- a/packages/storage/storage-sqlite/package.json +++ b/packages/storage/storage-sqlite/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-storage-sqlite", "description": "SQLite storage backend (kv facet) for the DeepSeek Harness storage hub", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/storage/storage/package.json b/packages/storage/storage/package.json index d2f8a2edd8..ad172e45b4 100644 --- a/packages/storage/storage/package.json +++ b/packages/storage/storage/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-storage", "description": "Storage hub (ctx.storage): named backend registry plus mounted data-form facilities for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/subagent-acp/package.json b/packages/subagent/subagent-acp/package.json index 2454b4d49c..6dd8d62f76 100644 --- a/packages/subagent/subagent-acp/package.json +++ b/packages/subagent/subagent-acp/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subagent-acp", "description": "Out-of-process ACP subagent backend: drives a child agent in a spawned subprocess over the Agent Client Protocol", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/subagent-claude-code/package.json b/packages/subagent/subagent-claude-code/package.json index a65e3b1f0f..a65f657b49 100644 --- a/packages/subagent/subagent-claude-code/package.json +++ b/packages/subagent/subagent-claude-code/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subagent-claude-code", "description": "One-shot Claude Code subagent provider over the official Agent SDK", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/subagent-codex/package.json b/packages/subagent/subagent-codex/package.json index 07c13c74bb..2e586419ad 100644 --- a/packages/subagent/subagent-codex/package.json +++ b/packages/subagent/subagent-codex/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subagent-codex", "description": "One-shot Codex subagent provider over the official app-server protocol", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/subagent-dsh-sdk/package.json b/packages/subagent/subagent-dsh-sdk/package.json index 09bd68a123..a035e63754 100644 --- a/packages/subagent/subagent-dsh-sdk/package.json +++ b/packages/subagent/subagent-dsh-sdk/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subagent-dsh-sdk", "description": "Out-of-process SDK subagent backend: drives a child DeepSeek Harness runtime subprocess over stdio JSON-RPC through the TypeScript SDK client", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/subagent-fork-in-process/package.json b/packages/subagent/subagent-fork-in-process/package.json index 52b228cb22..793bde04cb 100644 --- a/packages/subagent/subagent-fork-in-process/package.json +++ b/packages/subagent/subagent-fork-in-process/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subagent-fork-in-process", "description": "In-process fork subagent backend: runs a child agent seeded with a prefix of the parent's log", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/subagent-in-process-driver/package.json b/packages/subagent/subagent-in-process-driver/package.json index afc521e1be..302485b3ff 100644 --- a/packages/subagent/subagent-in-process-driver/package.json +++ b/packages/subagent/subagent-in-process-driver/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subagent-in-process-driver", "description": "Shared in-process subagent run driver: drives a child agent on ctx.agents (used by the spawn and fork backends)", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/subagent-spawn-in-process/package.json b/packages/subagent/subagent-spawn-in-process/package.json index c27794a1ea..e09461f8ba 100644 --- a/packages/subagent/subagent-spawn-in-process/package.json +++ b/packages/subagent/subagent-spawn-in-process/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subagent-spawn-in-process", "description": "In-process spawn subagent backend: runs a fresh child agent on ctx.agents", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/subagent/package.json b/packages/subagent/subagent/package.json index 2d15236c80..5d82109158 100644 --- a/packages/subagent/subagent/package.json +++ b/packages/subagent/subagent/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subagent", "description": "Abstract subagent seam (ctx.subagents): named-provider registry for delegating to child agents", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/tool-subagent-control/package.json b/packages/subagent/tool-subagent-control/package.json index 9f55b93434..78cc91691c 100644 --- a/packages/subagent/tool-subagent-control/package.json +++ b/packages/subagent/tool-subagent-control/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-subagent-control", "description": "Globally named send_message, interrupt_agent, and list_agents tools over ctx.subagents continuations", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/tool-subagent-report/package.json b/packages/subagent/tool-subagent-report/package.json index 1e08138c67..63b57647ba 100644 --- a/packages/subagent/tool-subagent-report/package.json +++ b/packages/subagent/tool-subagent-report/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-subagent-report", "description": "Child-scoped report tool over ctx.subagents continuations", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/subagent/tool-subagent/package.json b/packages/subagent/tool-subagent/package.json index ad4a75519b..98e0d688df 100644 --- a/packages/subagent/tool-subagent/package.json +++ b/packages/subagent/tool-subagent/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-subagent", "description": "Model-facing subagent delegation tool over the ctx.subagents seam", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/subprocess/subprocess-local/package.json b/packages/subprocess/subprocess-local/package.json index 74b480ae82..2536824f06 100644 --- a/packages/subprocess/subprocess-local/package.json +++ b/packages/subprocess/subprocess-local/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subprocess-local", "description": "Local-subprocess implementation of the DeepSeek Harness subprocess seam", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/subprocess/subprocess/package.json b/packages/subprocess/subprocess/package.json index 2465543770..36626758b2 100644 --- a/packages/subprocess/subprocess/package.json +++ b/packages/subprocess/subprocess/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-subprocess", "description": "Subprocess seam (ctx.subprocess) for the DeepSeek Harness — managed process groups, bounded spill-backed output, and escalated kills behind one abstract service", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/terminal/terminal-bash/package.json b/packages/terminal/terminal-bash/package.json index f3808f7d2b..ca04644d63 100644 --- a/packages/terminal/terminal-bash/package.json +++ b/packages/terminal/terminal-bash/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-terminal-bash", "description": "Persistent shell PTY backend over the DeepSeek Harness subprocess terminal primitive", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/terminal/terminal/package.json b/packages/terminal/terminal/package.json index e241e732ad..b816fdf310 100644 --- a/packages/terminal/terminal/package.json +++ b/packages/terminal/terminal/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-terminal", "description": "Persistent PTY session seam for the DeepSeek Harness — owner-scoped ids, backend registry, interactive sends, reads, signals, and awaited cleanup", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/terminal/tool-terminal/package.json b/packages/terminal/tool-terminal/package.json index 49ac22f6e1..1f021edbbe 100644 --- a/packages/terminal/tool-terminal/package.json +++ b/packages/terminal/tool-terminal/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-terminal", "description": "Six model-facing persistent PTY tools with owner isolation and generic background-job integration", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/test-support/acp-snapshot/package.json b/packages/test-support/acp-snapshot/package.json index 859b7d6465..0dde8c3b07 100644 --- a/packages/test-support/acp-snapshot/package.json +++ b/packages/test-support/acp-snapshot/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-acp-snapshot", "description": "ACP test kit: shared subprocess launcher, snapshot scenario harness, expected-output normalizers, and suite factory", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/test-support/agent-loop-testkit/package.json b/packages/test-support/agent-loop-testkit/package.json index 6badaa4209..99357186d5 100644 --- a/packages/test-support/agent-loop-testkit/package.json +++ b/packages/test-support/agent-loop-testkit/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-agent-loop-testkit", "description": "Shared prerequisite mounting for tests that exercise the concrete agent loop", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/test-support/client-runtime/package.json b/packages/test-support/client-runtime/package.json index 414ebfe9f8..55a25618d1 100644 --- a/packages/test-support/client-runtime/package.json +++ b/packages/test-support/client-runtime/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-client-test-runtime", "description": "jsdom slot test runtime: real Cordis Context + SlotRegistry + web-react renderer with test-owned session/workspace doubles for feature specs", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/test-support/llm-mock-server/package.json b/packages/test-support/llm-mock-server/package.json index 6e859fe18f..abee2220c6 100644 --- a/packages/test-support/llm-mock-server/package.json +++ b/packages/test-support/llm-mock-server/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-llm-mock-server", "description": "Scriptable OpenAI-compatible HTTP/SSE fault server for LLM recovery tests", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/test-support/llm-replay/package.json b/packages/test-support/llm-replay/package.json index 5521dbd452..113196f84d 100644 --- a/packages/test-support/llm-replay/package.json +++ b/packages/test-support/llm-replay/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-llm-replay", "description": "Replay LLM plugin: short-circuits llm/stream with model chunks reconstructed from a recorded session JSONL (keyless snapshot tests)", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/test-support/loader-smoke/package.json b/packages/test-support/loader-smoke/package.json index 5614a89df8..f75b81fd7c 100644 --- a/packages/test-support/loader-smoke/package.json +++ b/packages/test-support/loader-smoke/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-loader-smoke", "description": "Shared subprocess and direct-agent harness for keyless real-Loader example smoke tests", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/todo/tool-todo/package.json b/packages/todo/tool-todo/package.json index 37cd12a4de..25d70c2a47 100644 --- a/packages/todo/tool-todo/package.json +++ b/packages/todo/tool-todo/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-todo", "description": "Model-facing todo_write tool over the DeepSeek Harness event-sourced session log", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/typert/generator/package.json b/packages/typert/generator/package.json index bac004c701..e3f8ef6d8f 100644 --- a/packages/typert/generator/package.json +++ b/packages/typert/generator/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-typert-generator", "description": "TypeScript project analyzer and model-driven Typert artifact generator", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/typert/loader/package.json b/packages/typert/loader/package.json index ad412e2394..c720d44faf 100644 --- a/packages/typert/loader/package.json +++ b/packages/typert/loader/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-typert-loader", "description": "Loader integration for generated Typert package contributions", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/typert/protocol/package.json b/packages/typert/protocol/package.json index 7c4b26d240..412fb42fb1 100644 --- a/packages/typert/protocol/package.json +++ b/packages/typert/protocol/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-typert-protocol", "description": "Compiler-independent Remote metadata and Typert provider protocols", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/typert/registry/package.json b/packages/typert/registry/package.json index c9c9927246..e42229336c 100644 --- a/packages/typert/registry/package.json +++ b/packages/typert/registry/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-typert-registry", "description": "Runtime registry for generated package reflection and Zod schemas", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/util/atomic-write/package.json b/packages/util/atomic-write/package.json index f7945c29c9..ca034b8fac 100644 --- a/packages/util/atomic-write/package.json +++ b/packages/util/atomic-write/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-atomic-write", "description": "Zero-dependency atomic file replacement: exclusive-create random-suffix temp + rename carrying the caller-stated permissions (writeFileAtomic)", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/util/brand/package.json b/packages/util/brand/package.json index 025fa6b37e..4ce02e0f95 100644 --- a/packages/util/brand/package.json +++ b/packages/util/brand/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-brand", "description": "Type-only Branded nominal-typing primitive for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/util/home-paths/package.json b/packages/util/home-paths/package.json index d3bb01e1dc..ae0bc0a967 100644 --- a/packages/util/home-paths/package.json +++ b/packages/util/home-paths/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-home-paths", "description": "Shared filesystem path helpers for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/util/launch-environment/package.json b/packages/util/launch-environment/package.json index 6957da3460..969380f311 100644 --- a/packages/util/launch-environment/package.json +++ b/packages/util/launch-environment/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-launch-environment", "description": "Immutable DeepSeek Harness launch environment that records which layer supplied each value", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/util/native-command/package.json b/packages/util/native-command/package.json index af37c74ec6..101eec7b54 100644 --- a/packages/util/native-command/package.json +++ b/packages/util/native-command/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-native-command", "description": "Zero-dependency no-shell execFile runner for host-native OS integrations: utf8 stdio capture, abort propagation, Windows hide", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/util/output-retention/package.json b/packages/util/output-retention/package.json index 3fdab64947..894735bfb0 100644 --- a/packages/util/output-retention/package.json +++ b/packages/util/output-retention/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-output-retention", "description": "Zero-dependency bounded-retention primitive: ItemRetainer/TextRetainer + neutral notice helpers (what did we keep, what did we omit)", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/util/timeout/package.json b/packages/util/timeout/package.json index 9d7512feae..bd71474ba3 100644 --- a/packages/util/timeout/package.json +++ b/packages/util/timeout/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-timeout", "description": "Zero-dependency timeout/deadline primitive: clampTimeout, deadline, timeoutOf, TimeoutReason (timing + classification only, no termination)", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/web/tool-web/package.json b/packages/web/tool-web/package.json index 59355865b6..d8eef81ffd 100644 --- a/packages/web/tool-web/package.json +++ b/packages/web/tool-web/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-web", "description": "Model-facing web tools (web_search, web_fetch) over the DeepSeek Harness web capability seam (ctx.web)", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/web/web-fetch-http/package.json b/packages/web/web-fetch-http/package.json index 9dabdaed99..9646f059bf 100644 --- a/packages/web/web-fetch-http/package.json +++ b/packages/web/web-fetch-http/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-web-fetch-http", "description": "Anonymous public HTTP(S) fetch provider for the DeepSeek Harness web capability seam (ctx.web)", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/web/web-search-deepseek/package.json b/packages/web/web-search-deepseek/package.json index 591059cd1c..b003e20267 100644 --- a/packages/web/web-search-deepseek/package.json +++ b/packages/web/web-search-deepseek/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-web-search-deepseek", "description": "DeepSeek-backed search provider (native web_search via the Anthropic-compatible API) for the DeepSeek Harness web capability seam (ctx.web)", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/web/web-search-exa/package.json b/packages/web/web-search-exa/package.json index 82fc91317a..27f7b1d96a 100644 --- a/packages/web/web-search-exa/package.json +++ b/packages/web/web-search-exa/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-web-search-exa", "description": "Exa-backed search provider for the DeepSeek Harness web capability seam (ctx.web)", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/web/web-search-perplexity/package.json b/packages/web/web-search-perplexity/package.json index 67b13d7699..39f363600f 100644 --- a/packages/web/web-search-perplexity/package.json +++ b/packages/web/web-search-perplexity/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-web-search-perplexity", "description": "Perplexity-backed search provider for the DeepSeek Harness web capability seam (ctx.web)", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/web/web/package.json b/packages/web/web/package.json index 46c98ddebd..0911a67b0d 100644 --- a/packages/web/web/package.json +++ b/packages/web/web/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-web", "description": "Abstract web access capability seam (ctx.web) for the DeepSeek Harness — search/fetch provider registry, registration-order-independent selection, request/result vocabulary, and the WebError taxonomy", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/workflow/tool-ralph/package.json b/packages/workflow/tool-ralph/package.json index dfcd31d8b7..8eaad6fd9e 100644 --- a/packages/workflow/tool-ralph/package.json +++ b/packages/workflow/tool-ralph/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-ralph", "description": "Model-facing fresh-agent Ralph loop over the workflow and subagent seams", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/workflow/tool-workflow/package.json b/packages/workflow/tool-workflow/package.json index 6bf75815f9..259e4e054c 100644 --- a/packages/workflow/tool-workflow/package.json +++ b/packages/workflow/tool-workflow/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-tool-workflow", "description": "Model-facing workflow tool: run a JavaScript orchestration script over ctx.workflowEngine", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/workflow/workflow-worker-thread/package.json b/packages/workflow/workflow-worker-thread/package.json index 4d26500342..1234bc85fd 100644 --- a/packages/workflow/workflow-worker-thread/package.json +++ b/packages/workflow/workflow-worker-thread/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-workflow-worker-thread", "description": "worker-thread workflow engine: executes model-written orchestration scripts off the host event loop, bridging agent() calls back to ctx.subagents", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/workflow/workflow/package.json b/packages/workflow/workflow/package.json index 4ffd4ce86c..00d3ccf760 100644 --- a/packages/workflow/workflow/package.json +++ b/packages/workflow/workflow/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-workflow", "description": "Workflow capability seam: ctx.workflowEngine service, run vocabulary, and workflow/* events", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" }, diff --git a/packages/workspace/workspace/package.json b/packages/workspace/workspace/package.json index 9206b08dec..2672ae7246 100644 --- a/packages/workspace/workspace/package.json +++ b/packages/workspace/workspace/package.json @@ -1,7 +1,7 @@ { "name": "@deepseek-ai/dsh-workspace", "description": "Workspace entity registry (ctx.workspaceRegistry): durable workspace records with validated session attachment over the domain data form for the DeepSeek Harness", - "version": "0.1.0-rc.2", + "version": "0.1.0-rc.3", "publishConfig": { "access": "restricted" },