diff --git a/.gitignore b/.gitignore
index 8c1ac98..93bd552 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,13 +2,15 @@
*.pdf
!resume-bp/sample.pdf
!resume-career/sample.pdf
-!feasibility/sample.pdf
+!tech-report/sample.pdf
!presentation/sample.pdf
+!travel-plan/sample.pdf
-# 本地定制简历(个人内容、照片、PDF,不提交)
+# 本地定制(个人内容、照片、PDF,不提交)
resume-bp/local/*
!resume-bp/local/README.md
resume-career/local/*
+travel-plan/local/*
# IDE / 编辑器本地配置
.cursor/
diff --git a/README.md b/README.md
index b948958..b2adb9a 100644
--- a/README.md
+++ b/README.md
@@ -6,8 +6,9 @@ GreLin 内部 Typst 模板库,按文档类型分目录维护。目录结构如
|--------|------|----------|
| [`resume-bp/`](resume-bp/) | 融资 BP 团队简历(完整版,含证件照) | `cv.typ` |
| [`resume-career/`](resume-career/) | 求职 / 个人主页简历(精简一页) | `cv.typ`(内容 `data/config.typ`) |
-| [`feasibility/`](feasibility/) | 可行性研究报告 | `report.typ`(正文编辑 `feasibility/content/report.md`) |
+| [`tech-report/`](tech-report/) | 技术报告 | `report.typ`(正文编辑 `tech-report/content/report.md`) |
| [`presentation/`](presentation/) | PPT 演示文稿(16:9,待完善) | `deck.typ`(内容 `data/config.typ`) |
+| [`travel-plan/`](travel-plan/) | 旅行计划(参考图、链接、行程) | `trips/<名>/` · 可选 `plan.typ` |
## 环境要求
@@ -16,8 +17,8 @@ GreLin 内部 Typst 模板库,按文档类型分目录维护。目录结构如
## 快速开始
-1. 用 VS Code / Cursor 打开本仓库,打开要编辑的入口文件,例如 `resume-bp/cv.typ`、`resume-career/cv.typ`、`presentation/deck.typ` 或 `feasibility/report.typ`
-2. 可行性报告正文在 `feasibility/content/report.md` 用 Markdown 编写,无需改 Typst 代码
+1. 用 VS Code / Cursor 打开本仓库,打开要编辑的入口文件,例如 `resume-bp/cv.typ`、`resume-career/cv.typ`、`presentation/deck.typ` 或 `tech-report/report.typ`
+2. 技术报告正文在 `tech-report/content/report.md` 用 Markdown 编写,无需改 Typst 代码
3. 看效果(预览):`Ctrl+Shift+P` → 输入 `Typst Preview` → 回车;侧边会实时显示排版效果
4. 导出 PDF:`Ctrl+Shift+P` → 输入 `Typst Export PDF` → 回车;PDF 默认生成在同目录
diff --git a/brand/colors.typ b/brand/colors.typ
index 03fa86f..40ead19 100644
--- a/brand/colors.typ
+++ b/brand/colors.typ
@@ -1,4 +1,4 @@
-// GreLin 品牌色板 — 全文档统一(resume-bp / resume-career / feasibility / presentation 等均 import 此文件)
+// GreLin 品牌色板 — 全文档统一(resume-bp / resume-career / tech-report / presentation 等均 import 此文件)
#let color-ink = rgb("#08090B")
#let color-body = rgb("#2D3135")
diff --git a/feasibility/README.md b/feasibility/README.md
deleted file mode 100644
index 6035e09..0000000
--- a/feasibility/README.md
+++ /dev/null
@@ -1,74 +0,0 @@
-# Feasibility Report · 可行性研究报告模板
-
-GreLin 可行性报告 Typst 模板,面向矿石分选项目论证与客户交付。同事用 **Markdown** 写正文,模板负责封面、页眉页脚与图表排版。
-
-## 快速开始
-
-1. 编辑 [`content/report.md`](content/report.md)(或从 [`content/report.template.md`](content/report.template.md) 复制)
-2. 用 VS Code / Cursor 打开 [`report.typ`](report.typ)
-3. `Ctrl+Shift+P` → **Typst Preview** 预览,或 **Typst Export PDF** 导出
-
-仓库根目录编译(共享 `brand/colors.typ`):
-
-```bash
-typst compile feasibility/report.typ feasibility/sample.pdf --root .
-```
-
-示例输出:[`sample.pdf`](sample.pdf)
-
-## 工作流
-
-| 文件 | 说明 |
-|------|------|
-| [`content/report.md`](content/report.md) | **主编辑入口**:YAML 元数据 + 正文 |
-| [`content/assets/`](content/assets/) | 图片资源(支持 `.jpg` / `.png` / `.svg`) |
-| [`data/config.typ`](data/config.typ) | 默认公司名、副标题等(YAML 未写时使用) |
-| [`data/theme.typ`](data/theme.typ) | 设计 token(字号、间距、表格) |
-| [`data/styling.typ`](data/styling.typ) | 标题 / 表格 / 图片 `#show` 规范 |
-| [`data/layout.typ`](data/layout.typ) | 封面、摘要、页眉组件 |
-| [`report.typ`](report.typ) | 编译入口(一般无需改动) |
-
-## YAML 元数据
-
-在 `report.md` 顶部填写:
-
-```yaml
----
-title: 某某矿山智能分选可行性研究
-brand: GreLin
-company: 西安高岭绿能科技有限公司
-date: 2026-06-22
-version: v1.0
-summary: |
- 摘要正文……
----
-```
-
-## Markdown 写法
-
-- 章节:`# 项目概述`(自动编号为 1. / 1.1 / 1.1.1,无需手写「一、二、三」)
-- 表格:标准 GFM 表格语法
-- 图片:`` 或 `assets/chart.png`,文件放在 `content/assets/`
-- 行内代码:`` `ONNX Runtime` ``(灰底、小圆角、品牌色文字)
-- 代码块:` ```python ` 围栏 + 语言名,由 [codly](https://typst.app/universe/package/codly) 自动语法高亮并显示语言标签
-- 下划线:`文字`(品牌色,线下移 5pt)
-- Emoji:正文可直接写 🐱 等符号(需系统字体支持)
-- 列表、加粗等均支持(基于 [cmarker](https://typst.app/universe/package/cmarker))
-
-## 依赖包
-
-| 包 | 用途 |
-|----|------|
-| [cmarker](https://typst.app/universe/package/cmarker) | Markdown → Typst 正文 |
-| [codly](https://typst.app/universe/package/codly) + [codly-languages](https://typst.app/universe/package/codly-languages) | 代码块高亮与语言标签 |
-
-可选扩展:[toutu](https://typst.app/universe/package/toutu)(目录)、[hydra](https://typst.app/universe/package/hydra)(页眉章节名)、[cetz](https://typst.app/universe/package/cetz)(矢量图表)。
-
-## 环境要求
-
-- **Typst ≥ 0.14.0**;请使用较新版本的 Tinymist 或 Typst CLI
-- 首次编译会自动下载 `cmarker`、`codly`、`codly-languages`(需网络)
-
-## 替换外部 MD
-
-将同事发来的 `.md` 覆盖 `content/report.md`,图片放入 `content/assets/` 并修正文内路径,重新预览即可。
diff --git a/feasibility/data/decor.typ b/feasibility/data/decor.typ
deleted file mode 100644
index 9ffa16e..0000000
--- a/feasibility/data/decor.typ
+++ /dev/null
@@ -1,51 +0,0 @@
-#import "theme.typ": *
-
-/// 点阵底纹
-#let tech-dots(width: 100%, height: 100%, step: 10pt) = box(width: width, height: height, clip: true)[
- #for x in range(40) {
- for y in range(40) {
- place(
- left + top,
- dx: x * step,
- dy: y * step,
- circle(radius: 0.35pt, fill: color-grid),
- )
- }
- }
-]
-
-/// 条形码条
-#let tech-barcode(width, height, bars: 28) = box(width: width, height: height, clip: true)[
- #for i in range(bars) {
- let w = if calc.rem(i, 4) == 0 { 2.2pt } else if calc.rem(i, 2) == 0 { 1.4pt } else { 0.8pt }
- place(
- left + top,
- dx: i * (width / bars),
- box(width: w, height: 100%, fill: color-ink),
- )
- }
-]
-
-/// 等宽标签
-#let tech-label(body, fill: color-ink, size: 7pt) = text(
- font: mono-font,
- size: size,
- fill: fill,
- tracking: 0.14em,
-)[#body]
-
-/// 章节编号
-#let section-tech-id(..nums) = {
- let n = nums.pos()
- let id = if n.len() == 1 {
- let num = n.first()
- if num < 10 { "0" + str(num) } else { str(num) }
- } else if n.len() == 2 {
- str(n.at(0)) + "." + str(n.at(1))
- } else {
- str(n.at(0)) + "." + str(n.at(1)) + "." + str(n.at(2))
- }
- box(fill: color-accent-surface, inset: (x: 5pt, y: 2pt))[
- #text(font: mono-font, size: 7pt, weight: "bold", fill: color-ink)[#id]
- ]
-}
diff --git a/feasibility/data/layout.typ b/feasibility/data/layout.typ
deleted file mode 100644
index 0b3df02..0000000
--- a/feasibility/data/layout.typ
+++ /dev/null
@@ -1,148 +0,0 @@
-#import "theme.typ": *
-#import "logo.typ": grelin-logo, cover-index-badge
-#import "decor.typ": tech-dots, tech-barcode, tech-label
-
-#let format-cover-date(date) = {
- let parts = date.split("-")
- if parts.len() == 3 {
- parts.at(0) + "." + parts.at(1) + "." + parts.at(2)
- } else {
- date
- }
-}
-
-#let cover-meta-strip(meta) = box(
- width: 100%,
- fill: color-ink,
- inset: (x: 12pt, y: 8pt),
-)[
- #grid(
- columns: (1fr, auto, 1fr, auto, 1fr),
- column-gutter: 12pt,
- align: horizon,
- tech-label("VERSION", fill: color-accent, size: 6.5pt),
- text(font: mono-font, size: 8pt, fill: white)[#meta.version],
- tech-label("DATE", fill: color-accent, size: 6.5pt),
- text(font: mono-font, size: 8pt, fill: white)[#format-cover-date(meta.date)],
- align(right)[
- tech-label("STATUS · DRAFT", fill: color-accent, size: 6.5pt)
- ],
- )
-]
-
-#let cover-block(meta) = {
- pagebreak(weak: true)
- block(width: 100%, below: space-chapter)[
- #box(width: 100%, height: cover-block-height, fill: white)[
- #place(top + left)[#grelin-logo()]
- #place(top + right)[#cover-index-badge("01")]
-
- #place(left + top, dy: 52pt)[#tech-barcode(14pt, 120pt, bars: 5)]
- #place(right + top, dy: 72pt)[
- #rotate(-90deg, reflow: true)[
- #tech-label("FEASIBILITY REPORT", fill: color-caption, size: 6.5pt)
- ]
- ]
-
- #place(left + top, dx: 28pt, dy: 100pt)[
- #box(width: 88%, height: 130pt, clip: true)[#tech-dots(width: 100%, height: 100%, step: 11pt)]
- ]
-
- #place(left + top, dx: 24pt, dy: 168pt)[
- #box(width: 92%, fill: color-accent-surface, inset: (x: 16pt, y: 18pt))[
- #text(
- font: heading-font,
- size: size-cover-title,
- weight: "black",
- fill: color-ink,
- hyphenate: false,
- )[#meta.title]
- ]
- ]
-
- #place(left + bottom, dy: -36pt)[
- #box(width: 100%)[#cover-meta-strip(meta)]
- ]
-
- #place(left + bottom, dy: -8pt)[
- #tech-barcode(100%, 10pt, bars: 48)
- ]
- ]
- ]
- pagebreak()
-}
-
-#let accent-line() = box(width: 100%, height: 2pt, fill: color-ink)
-
-#let summary-block(meta) = {
- if meta.summary != "" {
- block(width: 100%, above: space-block, below: space-chapter)[
- #box(
- width: 100%,
- fill: white,
- stroke: 1.5pt + color-ink,
- inset: summary-inset,
- )[
- #box(width: 100%, fill: color-accent-surface, inset: (x: 10pt, y: 5pt))[
- #tech-label("ABSTRACT", fill: color-ink, size: 7pt)
- ]
- #v(10pt)
- #text(font: heading-font, size: size-h2, weight: "black", fill: color-ink)[摘要]
- #v(space-block)
- #set par(leading: leading-summary, justify: true)
- #set text(size: size-body, fill: color-body)
- #meta.summary
- #v(space-section)
- #grid(
- columns: (auto, 1fr, auto, 1fr),
- column-gutter: 8pt,
- align: horizon,
- tech-label("DATE", size: 6.5pt),
- text(font: mono-font, size: size-meta, fill: color-body)[#meta.date],
- tech-label("ORG", size: 6.5pt),
- text(font: mono-font, size: size-meta, fill: color-body)[#meta.company],
- )
- ]
- ]
- }
-}
-
-#let page-footer() = context {
- grid(
- columns: (auto, 1fr, auto),
- align: horizon,
- tech-barcode(36pt, 8pt, bars: 10),
- box(width: 100%, height: 1pt, fill: color-ink),
- box(fill: color-ink, inset: (x: 8pt, y: 3pt))[
- #text(font: mono-font, size: 8pt, fill: color-accent)[
- #counter(page).display("1")
- #h(0.12em)
- #sym.slash
- #h(0.12em)
- #counter(page).final().first()
- ]
- ],
- )
-}
-
-#let page-accent-bar() = place(
- left + top,
- tech-barcode(page-accent-bar-width, 100%, bars: 4),
-)
-
-#let page-header(meta) = [
- #grid(
- columns: (auto, 1fr, auto),
- column-gutter: 8pt,
- align: horizon,
- box(fill: color-accent-surface, inset: (x: 6pt, y: 2pt))[
- #text(font: mono-font, size: 7pt, weight: "bold", fill: color-ink)[#upper(meta.brand)]
- ],
- box(width: 100%, height: 1pt, fill: color-ink),
- align(right)[
- #text(font: mono-font, size: 7pt, fill: color-caption)[#meta.title]
- ],
- )
- #v(6pt)
- #accent-line()
-]
diff --git a/feasibility/data/logo.typ b/feasibility/data/logo.typ
deleted file mode 100644
index e6a53e3..0000000
--- a/feasibility/data/logo.typ
+++ /dev/null
@@ -1,37 +0,0 @@
-#import "theme.typ": *
-#import "decor.typ": tech-label
-
-/// Logo:品牌蓝块 + 白色折线图形 + GreLin | Tech
-#let grelin-logo(
- primary: "GreLin",
- secondary: "Tech",
-) = grid(
- columns: (auto, auto),
- column-gutter: 10pt,
- align: horizon,
- box(width: 34pt, height: 34pt, fill: color-brand)[
- #place(left + top, dx: 7pt, dy: 8pt, box(width: 14pt, height: 3pt, fill: white))
- #place(left + top, dx: 7pt, dy: 14pt, box(width: 3pt, height: 14pt, fill: white))
- #place(left + top, dx: 18pt, dy: 14pt, box(width: 9pt, height: 3pt, fill: white))
- #place(left + top, dx: 18pt, dy: 17pt, box(width: 3pt, height: 11pt, fill: white))
- ],
- grid(
- columns: (auto, auto, auto),
- column-gutter: 7pt,
- align: horizon,
- text(font: heading-font, size: 12pt, weight: "black", fill: color-ink, tracking: 0.04em)[#primary],
- box(width: 1.2pt, height: 1em, fill: color-ink),
- text(font: heading-font, size: 12pt, weight: "black", fill: color-ink, tracking: 0.16em)[#secondary],
- ),
-)
-
-#let cover-index-badge(index) = box(
- width: 58pt,
- height: 58pt,
- stroke: 2pt + color-ink,
- fill: white,
-)[
- #align(center + horizon)[
- #text(font: mono-font, size: size-cover-index, weight: "black", fill: color-ink)[#index]
- ]
-]
diff --git a/feasibility/data/styling.typ b/feasibility/data/styling.typ
deleted file mode 100644
index c789b7a..0000000
--- a/feasibility/data/styling.typ
+++ /dev/null
@@ -1,160 +0,0 @@
-#import "theme.typ": *
-#import "decor.typ": section-tech-id, tech-label
-
-#let underline-accent(body) = underline(
- body,
- stroke: underline-stroke,
- offset: underline-offset,
- evade: true,
-)
-
-#let heading-number(it) = {
- if it.numbering != none {
- counter(heading).display(it.numbering)
- h(heading-number-gap)
- }
-}
-
-#let report-heading-numbering(..nums) = {
- let n = nums.pos()
- if n.len() == 1 {
- numbering("1.", n.first())
- } else if n.len() == 2 {
- numbering("1.1", n.at(0), n.at(1))
- } else {
- numbering("1.1.1", ..n)
- }
-}
-
-#let grelin-h1(it) = block(
- width: 100%,
- above: space-chapter,
- below: space-block,
-)[
- #grid(
- columns: (auto, 1fr),
- column-gutter: 8pt,
- align: horizon,
- context section-tech-id(..counter(heading).get()),
- box(width: 100%, fill: color-accent-surface, inset: (x: 8pt, y: 4pt))[
- #text(font: heading-font, size: size-h1, weight: "black", fill: color-ink)[
- #heading-number(it)
- #it.body
- ]
- ],
- )
-]
-
-#let grelin-h2(it) = block(width: 100%, above: space-section, below: space-inline)[
- #grid(
- columns: (auto, 1fr),
- column-gutter: 8pt,
- align: horizon,
- box(width: 3pt, height: 1em, fill: color-ink),
- text(font: heading-font, size: size-h2, weight: "bold", fill: color-ink)[
- #heading-number(it)
- #it.body
- ],
- )
-]
-
-#let grelin-h3(it) = block(width: 100%, above: space-block, below: space-micro)[
- #grid(
- columns: (auto, 1fr),
- column-gutter: 6pt,
- align: horizon,
- tech-label("///", size: 6.5pt),
- text(font: heading-font, size: size-h3, weight: "bold", fill: color-ink)[
- #heading-number(it)
- #it.body
- ],
- )
-]
-
-#let grelin-image(it) = block(
- width: 100%,
- above: space-figure-before,
- below: space-figure-after,
-)[
- #align(center)[
- #box(width: image-max-width, stroke: 1pt + color-ink)[
- #set image(width: 100%, fit: "contain")
- #it
- ]
- ]
-]
-
-#let grelin-table(it) = block(
- width: 100%,
- above: space-figure-before,
- below: space-figure-after,
-)[
- #it
-]
-
-#let grelin-figure(it) = block(
- width: 100%,
- above: space-figure-before,
- below: space-figure-after,
-)[
- #align(center)[
- #set image(width: image-max-width, fit: "contain")
- #set text(size: size-caption, fill: color-caption)
- #it
- ]
-]
-
-#let grelin-blockquote(it) = block(
- width: 100%,
- above: space-block,
- below: space-block,
- inset: (left: blockquote-inset),
- stroke: (left: blockquote-stroke),
- fill: white,
-)[
- #set par(leading: leading-body, justify: true)
- #set text(fill: color-quote)
- #it
-]
-
-#let grelin-inline-code(it) = box(
- fill: code-inline-fill,
- inset: code-inline-inset,
- stroke: 0.8pt + color-ink,
-)[
- #set text(font: mono-font, size: size-body, fill: color-code-inline)
- #it
-]
-
-#let apply-report-styling(body) = {
- set heading(numbering: report-heading-numbering)
- set text(size: size-table)
- set table(
- stroke: (x, y) => (
- top: if y == 0 { 1.5pt + color-ink } else { none },
- bottom: if y == 0 { 0.8pt + color-ink } else { none },
- ),
- inset: table-inset,
- align: (col, row) => if col == 0 { left + horizon } else { center + horizon },
- fill: (col, row) => {
- if row == 0 {
- table-header-fill
- } else if calc.rem(row, 2) == 0 {
- table-zebra-fill
- } else {
- white
- }
- },
- )
- show heading.where(level: 1): grelin-h1
- show heading.where(level: 2): grelin-h2
- show heading.where(level: 3): grelin-h3
- show image: grelin-image
- show table.cell: set text(fill: table-data-text)
- show table.cell.where(y: 0): set text(weight: "bold", fill: color-ink)
- show table: grelin-table
- show figure: grelin-figure
- show quote.where(block: true): grelin-blockquote
- show raw.where(block: false): grelin-inline-code
- body
-}
diff --git a/feasibility/data/theme.typ b/feasibility/data/theme.typ
deleted file mode 100644
index dd65a00..0000000
--- a/feasibility/data/theme.typ
+++ /dev/null
@@ -1,102 +0,0 @@
-#import "../../brand/colors.typ": *
-
-// 可行性报告配色:品牌蓝 · 纯黑 · 冷灰
-#let color-accent = color-brand
-#let color-accent-surface = color-brand-surface
-#let color-heading = color-brand
-#let color-accent-line = color-ink
-#let color-divider = rgb(205, 205, 205)
-#let color-caption = rgb(110, 110, 110)
-#let color-quote = rgb(90, 90, 90)
-#let color-code-lang = rgb(90, 90, 90)
-#let color-code-inline = color-ink
-#let color-header = color-ink
-#let color-page = rgb(238, 238, 238)
-#let color-bar-bg = rgb(248, 248, 248)
-#let color-grid = rgb(220, 220, 220)
-
-// 代码块语法高亮
-#let code-token-keyword = color-ink
-#let code-token-comment = rgb(130, 130, 130)
-#let code-token-string = rgb(40, 40, 40)
-#let code-token-number = rgb(70, 70, 70)
-#let code-token-function = color-ink
-#let code-token-operator = rgb(100, 100, 100)
-
-#let heading-font = ("Microsoft YaHei", "Segoe UI", "Segoe UI Emoji")
-#let body-font = ("Microsoft YaHei UI", "Microsoft YaHei", "Segoe UI", "Segoe UI Emoji")
-#let mono-font = ("Consolas", "Cascadia Mono", "Microsoft YaHei UI")
-
-// =====================================================================
-// GreLin Feasibility Report · Design Tokens
-// =====================================================================
-
-// --- 字号 ---
-#let size-title = 22pt
-#let size-cover-title = 34pt
-#let size-cover-index = 52pt
-#let size-h1 = 14pt
-#let size-h2 = 12pt
-#let size-h3 = 11pt
-#let size-body = 10.5pt
-#let size-meta = 9pt
-#let size-table = 9pt
-#let size-caption = size-meta
-
-// --- 行距 ---
-#let leading-body = 12.5pt
-#let leading-summary = leading-body
-
-// --- 间距 ---
-#let space-none = 0pt
-#let space-micro = 4pt
-#let space-inline = 6pt
-#let space-block = 10pt
-#let space-section = 12pt
-#let space-chapter = 18pt
-#let space-figure-before = space-block
-#let space-figure-after = space-section
-#let space-cover-line = 3pt
-#let space-cover-title = 3pt
-#let space-cover-meta = 6pt
-#let cover-block-height = 19.5cm
-
-// --- 线条 / 边框 ---
-#let underline-stroke = 2pt + color-accent
-#let underline-offset = 5pt
-#let heading-number-gap = 0.35em
-#let stroke-accent = 1.5pt + color-ink
-#let summary-radius = 0pt
-#let summary-inset = 14pt
-
-// --- 页面 ---
-#let page-margin = (
- top: 2.5cm,
- bottom: 2.5cm,
- left: 2.5cm,
- right: 2.5cm,
-)
-#let page-header-ascent = 1.0cm
-#let page-footer-descent = 0.8cm
-#let page-accent-bar-width = 10pt
-
-// --- 表格 ---
-#let table-zebra-fill = color-brand-tint
-#let table-header-fill = color-brand-surface
-#let table-data-text = rgb(50, 50, 50)
-#let table-inset = (x: 10pt, y: 6pt)
-
-// --- 图片 ---
-#let image-max-width = 100%
-
-// --- 代码 ---
-#let code-block-inset = 10pt
-#let code-block-radius = 0pt
-#let code-block-fill = rgb(255, 255, 255)
-#let code-inline-fill = rgb(255, 255, 255)
-#let code-inline-inset = (x: 5pt, y: 0.12em)
-#let code-inline-radius = 0pt
-
-// --- 引用 ---
-#let blockquote-inset = 10pt
-#let blockquote-stroke = 3pt + color-accent
diff --git a/feasibility/report.typ b/feasibility/report.typ
deleted file mode 100644
index 7df79a7..0000000
--- a/feasibility/report.typ
+++ /dev/null
@@ -1,53 +0,0 @@
-#import "data/config.typ": *
-#import "data/theme.typ": *
-#import "data/glossary.typ": init-glossary, print-glossary-block, register-report-glossary, gls-long, gls-short
-#import "data/diagrams.typ": ore-sorting-flow
-#import "data/code.typ": codly-init-rule, codly-config, code-token-highlight-init
-#import "data/styling.typ": apply-report-styling
-#import "data/layout.typ": cover-block, summary-block, page-header, page-footer, page-accent-bar
-#import "data/md.typ": load-report-md
-
-#show: codly-init-rule
-#show: code-token-highlight-init
-#show: init-glossary
-#codly-config
-
-#register-report-glossary()
-
-#let report = load-report-md(
- read(content-path),
- source-path: content-path,
- extra-scope: (
- ore-sorting-flow: ore-sorting-flow,
- gls-long: gls-long,
- gls-short: gls-short,
- ),
-)
-#let meta = report.metadata
-
-#set page(
- paper: "a4",
- margin: page-margin,
- header-ascent: page-header-ascent,
- footer-descent: page-footer-descent,
- fill: color-page,
- background: page-accent-bar(),
- header: context {
- if counter(page).get().first() > 1 {
- page-header(meta)
- }
- },
- footer: context {
- if counter(page).get().first() > 1 {
- page-footer()
- }
- },
-)
-
-#set text(font: body-font, lang: "zh", size: size-body, fill: color-body)
-#set par(leading: leading-body, justify: true)
-
-#cover-block(meta)
-#summary-block(meta)
-#apply-report-styling(report.body)
-#print-glossary-block()
diff --git a/tech-report/README.md b/tech-report/README.md
new file mode 100644
index 0000000..dd4c0bb
--- /dev/null
+++ b/tech-report/README.md
@@ -0,0 +1,51 @@
+# Tech Report · 技术报告模板
+
+GreLin 技术报告 Typst 模板,正文版式参考 [metropole-report](https://typst.app/universe/package/metropole-report);**封面**为自定义深蓝渐变 + 光斑 / 波纹 / 斜向色带(见 `data/cover.typ`)。
+
+## 快速开始
+
+1. 编辑 [`content/report.md`](content/report.md)
+2. 打开 [`report.typ`](report.typ) 预览或导出 PDF
+
+```bash
+typst compile tech-report/report.typ tech-report/sample.pdf --root .
+```
+
+## 目录结构
+
+| 文件 | 说明 |
+|------|------|
+| [`content/report.md`](content/report.md) | **主编辑入口**:YAML 元数据 + 正文 |
+| [`content/assets/`](content/assets/) | 图片资源 |
+| [`data/config.typ`](data/config.typ) | 默认公司名、标题等 |
+| [`data/theme.typ`](data/theme.typ) | 字号、行距、GreLin 品牌色 |
+| [`data/cover.typ`](data/cover.typ) | 封面装饰与版式 |
+| [`data/metropole-grelin.typ`](data/metropole-grelin.typ) | 正文 metropole 壳(跳过内联标题) |
+| [`report.typ`](report.typ) | 编译入口 |
+
+## YAML 元数据
+
+```yaml
+---
+title: 某某矿山智能分选技术报告
+brand: GreLin
+company: 西安高岭绿能科技有限公司
+date: 2026-06-22
+version: v1.0
+summary: |
+ 摘要正文……
+---
+```
+
+## 依赖
+
+| 包 | 用途 |
+|----|------|
+| [metropole-report](https://typst.app/universe/package/metropole-report) | 报告版式(封面、标题、表格、列表) |
+| [cmarker](https://typst.app/universe/package/cmarker) | Markdown → Typst |
+| [codly](https://typst.app/universe/package/codly) | 代码块高亮 |
+| [glossarium](https://typst.app/universe/package/glossarium) | 术语表 |
+
+## 样式参考
+
+整体风格对齐 `typst init @preview/metropole-report:0.1.0`;后续可引入 [grape-suite](https://typst.app/universe/package/grape-suite) 做更复杂的学术组件。
diff --git a/feasibility/content/assets/img.jpg b/tech-report/content/assets/img.jpg
similarity index 100%
rename from feasibility/content/assets/img.jpg
rename to tech-report/content/assets/img.jpg
diff --git a/feasibility/content/report.md b/tech-report/content/report.md
similarity index 98%
rename from feasibility/content/report.md
rename to tech-report/content/report.md
index b84aef0..3320e03 100644
--- a/feasibility/content/report.md
+++ b/tech-report/content/report.md
@@ -1,8 +1,8 @@
---
-title: 铝土矿可行性研究报告
+title: 铝土矿智能分选技术报告
company: 西安高岭绿能科技有限公司
date: 2026-06-22
-version: v1.0
+version: v2.0
summary: |
本项目拟在目标矿山建设智能矿石分选产线,以高光谱感知、深度学习推理与喷阀执行闭环为核心,实现铝土矿预选抛废与品位提升。经现场调研与算法验证,单线设计处理量 25 t/h,精矿 A/S 可达 4.0+,具备工程化落地条件。
---
diff --git a/feasibility/data/code.typ b/tech-report/data/code.typ
similarity index 100%
rename from feasibility/data/code.typ
rename to tech-report/data/code.typ
diff --git a/feasibility/data/config.typ b/tech-report/data/config.typ
similarity index 70%
rename from feasibility/data/config.typ
rename to tech-report/data/config.typ
index 1adebfe..731e8a1 100644
--- a/feasibility/data/config.typ
+++ b/tech-report/data/config.typ
@@ -1,10 +1,10 @@
// =============================================================================
-// 可行性报告 — 默认值(正文在 content/report.md,YAML 可覆盖下列字段)
+// 技术报告 — 默认值(正文在 content/report.md,YAML 可覆盖下列字段)
// =============================================================================
#let default-brand = "GreLin"
#let default-company = "西安高岭绿能科技有限公司"
-#let default-title = "智能矿石分选系统建设项目"
+#let default-title = "智能矿石分选系统技术报告"
#let default-version = "v1.0"
#let default-date = "2026 年 6 月"
diff --git a/tech-report/data/cover.typ b/tech-report/data/cover.typ
new file mode 100644
index 0000000..0213ed3
--- /dev/null
+++ b/tech-report/data/cover.typ
@@ -0,0 +1,257 @@
+#import "theme.typ": *
+
+#let format-cover-date(date, fallback) = {
+ if date != none {
+ date.display("[year].[month repr:numerical].[day]")
+ } else if type(fallback) == str {
+ fallback
+ } else {
+ str(fallback)
+ }
+}
+
+#let cover-title-lines(title) = {
+ let marker = "智能"
+ let m = title.match(regex(marker))
+ if m == none {
+ (title, none)
+ } else {
+ let end = m.end
+ let line-2 = title.slice(end)
+ if line-2.len() > 0 {
+ (title.slice(0, end), line-2)
+ } else {
+ (title, none)
+ }
+ }
+}
+
+#let cover-title-block(line-1, line-2) = {
+ block(breakable: false, spacing: 0pt)[
+ #text(
+ font: heading-font,
+ size: size-cover-title,
+ weight: "bold",
+ fill: cover-panel-title-color,
+ hyphenate: false,
+ top-edge: "cap-height",
+ bottom-edge: "baseline",
+ )[#line-1]
+ #if line-2 != none [
+ #move(dy: cover-panel-title-pull)[
+ #text(
+ font: heading-font,
+ size: size-cover-title-line2,
+ weight: "bold",
+ fill: cover-panel-title-color,
+ hyphenate: false,
+ top-edge: "cap-height",
+ bottom-edge: "baseline",
+ )[#line-2]
+ ]
+ ]
+ ]
+}
+
+#let cover-logo() = {
+ let mark = cover-logo-size * 0.64
+ let offset = cover-logo-size * 0.36
+ box(width: cover-logo-size, height: cover-logo-size)[
+ #place(left + top)[
+ #rect(width: mark, height: mark, fill: color-primary)
+ ]
+ #place(left + top, dx: offset, dy: offset)[
+ #rect(width: mark, height: mark, fill: none, stroke: 1.5pt + color-primary)
+ ]
+ ]
+}
+
+#let cover-quote-mark() = {
+ text(
+ font: heading-font,
+ size: cover-quote-size,
+ fill: cover-quote-color,
+ )[”]
+}
+
+#let cover-panel-footer(meta, date-text) = {
+ block(width: 100%, breakable: false)[
+ #text(font: heading-font, size: cover-panel-author-size, weight: "bold", fill: cover-panel-title-color)[
+ #meta.company
+ ]
+ #v(cover-panel-text-gap * 0.25)
+ #text(font: body-font, size: cover-panel-role-size, fill: cover-panel-subtitle-color)[
+ 技术报告 · #meta.version
+ ]
+ #v(cover-panel-role-gap-before-line)
+ #block(width: 100%, breakable: false)[
+ #place(right + top)[
+ #cover-quote-mark()
+ ]
+ #block(width: 100%, inset: (right: cover-quote-clearance))[
+ #line(length: cover-panel-footer-line-length, stroke: cover-panel-footer-rule-stroke + cover-panel-footer-line-color)
+ #v(cover-panel-meta-gap-after-line)
+ #grid(
+ columns: (auto, auto, auto),
+ column-gutter: cover-panel-meta-column-gap,
+ align: (left, center + horizon, left),
+ [
+ #text(font: body-font, size: cover-panel-meta-label, fill: cover-panel-meta-color)[
+ 报告版本
+ ]
+ #v(tw(0.5))
+ #text(font: body-font, size: cover-panel-meta-size, fill: cover-panel-title-color)[
+ #meta.version
+ ]
+ ],
+ box(width: cover-panel-meta-divider-width, height: tw(8), fill: cover-panel-footer-line-color),
+ [
+ #text(font: body-font, size: cover-panel-meta-label, fill: cover-panel-meta-color)[
+ 发布日期
+ ]
+ #v(tw(0.5))
+ #text(font: body-font, size: cover-panel-meta-size, fill: cover-panel-title-color)[
+ #date-text
+ ]
+ ],
+ )
+ ]
+ ]
+ ]
+}
+
+#let cover-panel-bottom(meta, date-text) = {
+ cover-panel-footer(meta, date-text)
+}
+
+#let cover-below-panel(meta, date-text) = {
+ block(height: cover-band-height)[
+ #pad(left: cover-footer-inset)[
+ #align(horizon)[
+ #grid(
+ columns: (auto, auto, auto),
+ column-gutter: cover-footer-column-gap,
+ align: bottom,
+ [
+ #text(font: heading-font, size: cover-footer-label, weight: "bold", fill: cover-footer-heading)[
+ 单位
+ ]
+ #v(cover-footer-line-gap)
+ #text(font: body-font, size: cover-footer-body, fill: cover-footer-text)[
+ #meta.company
+ ]
+ #v(cover-footer-line-gap-tight)
+ #text(font: body-font, size: cover-footer-note, fill: cover-text-muted)[
+ 智能矿石分选 · 技术方案与工程实施
+ ]
+ ],
+ box(width: 1pt, height: cover-footer-divider-height, fill: cover-footer-rule),
+ [
+ #text(font: heading-font, size: cover-footer-label, weight: "bold", fill: cover-footer-heading)[
+ 信息
+ ]
+ #v(cover-footer-line-gap)
+ #text(font: body-font, size: cover-footer-body, fill: cover-footer-text)[
+ 文档类型 技术报告
+ ]
+ #v(cover-footer-line-gap-tight)
+ #text(font: body-font, size: cover-footer-note, fill: cover-text-muted)[
+ #meta.brand · #meta.version · #date-text
+ ]
+ ],
+ )
+ ]
+ ]
+ ]
+}
+
+#let cover-page(meta, date: none) = {
+ let date-text = format-cover-date(date, meta.date)
+ let (title-line-1, title-line-2) = cover-title-lines(meta.title)
+
+ page(
+ paper: "a4",
+ margin: page-margin-cover,
+ fill: cover-bg,
+ header: none,
+ footer: none,
+ )[
+ #block(width: 100%, height: cover-body-height)[
+ #block(height: cover-band-height)[
+ #pad(left: cover-content-inset)[
+ #align(horizon)[
+ #grid(
+ columns: (auto, 1fr),
+ column-gutter: tw(3),
+ align: horizon,
+ cover-logo(),
+ [
+ #text(font: heading-font, size: cover-brand-size, weight: "bold", fill: cover-text)[
+ #meta.brand
+ ]
+ #v(cover-footer-line-gap)
+ #text(font: body-font, size: cover-tagline-size, fill: cover-text-muted)[
+ #meta.company
+ ]
+ ],
+ )
+ ]
+ ]
+ ]
+
+ #v(cover-header-gap)
+
+ #pad(right: cover-panel-right-gap)[
+ #block(width: 100%, height: cover-panel-height, fill: cover-panel-fill)[
+ #pad(
+ left: cover-content-inset,
+ right: cover-margin-right,
+ top: cover-panel-inset-y,
+ bottom: cover-panel-inset-bottom-y,
+ )[
+ #block(width: 100%, height: 100%)[
+ #place(top + left)[
+ #block(width: 100%)[
+ #text(
+ font: heading-font,
+ size: cover-panel-kicker,
+ weight: "medium",
+ fill: cover-panel-kicker-color,
+ tracking: 0.08em,
+ )[TECHNICAL REPORT · 技术报告]
+
+ #v(cover-panel-title-outer-gap)
+ #cover-title-block(title-line-1, title-line-2)
+
+ #v(cover-panel-title-outer-gap)
+ #text(
+ font: heading-font,
+ size: size-cover-subtitle,
+ fill: cover-panel-subtitle-color,
+ tracking: 0.04em,
+ )[INTELLIGENT ORE SORTING · 智能矿石分选]
+ ]
+ ]
+
+ #place(left + horizon)[
+ #line(
+ length: cover-panel-rule-width,
+ stroke: cover-panel-accent-stroke + cover-panel-divider-color,
+ )
+ ]
+
+ #place(bottom + left)[
+ #block(width: 100%, breakable: false)[
+ #cover-panel-bottom(meta, date-text)
+ ]
+ ]
+ ]
+ ]
+ ]
+ ]
+
+ #v(cover-below-gap)
+ #cover-below-panel(meta, date-text)
+ ]
+ ]
+}
diff --git a/feasibility/data/diagrams.typ b/tech-report/data/diagrams.typ
similarity index 91%
rename from feasibility/data/diagrams.typ
rename to tech-report/data/diagrams.typ
index b145416..e6b4e44 100644
--- a/feasibility/data/diagrams.typ
+++ b/tech-report/data/diagrams.typ
@@ -18,7 +18,7 @@
stroke: 1pt + color-brand,
)
content((x + w / 2, 0.5), align(center + horizon)[
- #text(font: body-font, size: 8pt, fill: color-body)[#label]
+ #text(font: body-font, size: text-xs, fill: color-body)[#label]
])
if i < labels.len() - 1 {
line(
diff --git a/feasibility/data/glossary.typ b/tech-report/data/glossary.typ
similarity index 67%
rename from feasibility/data/glossary.typ
rename to tech-report/data/glossary.typ
index 89005d2..c48de6e 100644
--- a/feasibility/data/glossary.typ
+++ b/tech-report/data/glossary.typ
@@ -30,14 +30,3 @@
#let register-report-glossary() = {
register-glossary(glossary-entries)
}
-
-#let print-glossary-block() = {
- pagebreak(weak: true)
- block(width: 100%, above: space-chapter)[
- #box(width: 100%, fill: color-accent-surface, inset: (x: 10pt, y: 6pt))[
- #text(font: heading-font, size: size-h1, weight: "black", fill: color-ink)[术语与缩写]
- ]
- #v(space-block)
- #print-glossary(glossary-entries, show-all: true)
- ]
-}
diff --git a/feasibility/data/md.typ b/tech-report/data/md.typ
similarity index 100%
rename from feasibility/data/md.typ
rename to tech-report/data/md.typ
diff --git a/tech-report/data/metropole-grelin.typ b/tech-report/data/metropole-grelin.typ
new file mode 100644
index 0000000..9ca30bc
--- /dev/null
+++ b/tech-report/data/metropole-grelin.typ
@@ -0,0 +1,444 @@
+#let transit-red = rgb("#c53a2f")
+#let metro-blue = rgb("#005f9e")
+#let deep-teal = rgb("#0f766e")
+#let burnt-orange = rgb("#c96b2c")
+#let emerald = rgb("#1f7a4f")
+#let deep-violet = rgb("#5a4fcf")
+
+#let page-numbering-started = state("page-numbering-started", false)
+
+#let start-body-page-numbering() = {
+ page-numbering-started.update(true)
+ counter(page).update(1)
+}
+
+#let metropole(
+ // -- Metadata --
+ title: none,
+ subtitle: none,
+ author: none,
+ date: none,
+ // -- Document --
+ paper-size: "a4",
+ language: "en",
+ date-format: "[day] [month repr:long] [year]",
+ cover-page: false,
+ inline-title: true,
+ // -- Page margins (override metropole defaults) --
+ margin-x: none,
+ margin-y: none,
+ header-skip: none,
+ // -- Fonts --
+ font-size: 11pt,
+ leading-ratio: 1.75,
+ body-font: "Source Serif 4",
+ heading-font: "Source Sans 3",
+ raw-font: "Source Code Pro",
+ // -- Colors --
+ background-color: rgb("#ffffff"),
+ foreground-color: rgb("000000"),
+ accent-color: transit-red,
+ // -- Body --
+ body,
+) = {
+ // ── Type scale (major third × 1.25) --
+ let scale = 1.25
+ let fine-size = font-size * calc.pow(scale, -2) // ~7pt
+ let caption-size = font-size * calc.pow(scale, -1) // ~8.8pt
+ let lead-size = font-size * calc.pow(scale, 1) // ~13.75pt
+ let heading-size = font-size * calc.pow(scale, 2) // ~17.2pt
+ let display-size = font-size * calc.pow(scale, 3) // ~21.5pt
+ let title-size = font-size * calc.pow(scale, 4) // ~26.8pt
+
+ // ── Derived colors --
+ let secondary-content-color = color.mix(
+ (foreground-color, 5),
+ (background-color, 3),
+ space: oklab,
+ )
+ let secondary-accent-color = color.mix(
+ (accent-color, 2),
+ (background-color, 1),
+ space: oklab,
+ )
+ let block-bg-color = color.mix(
+ (background-color, 20),
+ (foreground-color, 1),
+ space: oklab,
+ )
+ let link-color = color.mix(
+ (accent-color, 3),
+ (foreground-color, 1),
+ space: oklab,
+ )
+
+ // ── Baseline grid --
+ let line-height = font-size * leading-ratio
+
+ // ── Spatial system (multiples of line-height) --
+ let margin-vertical = if margin-y != none { margin-y } else { line-height * 2.2 }
+ let margin-horizontal = if margin-x != none { margin-x } else { line-height * 2.8 }
+ let header-gap = if header-skip != none { header-skip } else { line-height * 1.1 }
+
+ // ── Configure metadata --
+ set document(title: title, date: date)
+ if author != none {
+ set document(author: author)
+ }
+
+ // ── Configure text --
+ set text(
+ font: body-font,
+ size: font-size,
+ fill: foreground-color,
+ ligatures: true,
+ discretionary-ligatures: true,
+ lang: language,
+ )
+ show raw: set text(font: raw-font)
+
+ // ── Configure paragraphs --
+ set par(
+ leading: line-height - font-size,
+ spacing: line-height,
+ justify: true,
+ justification-limits: (
+ spacing: (
+ min: 100% * 2 / 3,
+ max: 100% * 3 / 2,
+ ),
+ tracking: (
+ min: -0.01em,
+ max: 0.01em,
+ ),
+ ),
+ )
+
+ // ── Configure page --
+ set page(
+ paper: paper-size,
+ fill: background-color,
+ margin: (
+ x: margin-horizontal,
+ top: margin-vertical,
+ bottom: margin-vertical,
+ ),
+ header: context {
+ if counter(page).get().first() > 1 {
+ v(header-gap)
+ grid(
+ columns: (1fr, 1fr),
+ align(left, text(
+ font: heading-font,
+ size: caption-size,
+ fill: secondary-content-color,
+ weight: "medium",
+ if author != none { author } else { "" },
+ )),
+ align(right, text(
+ font: heading-font,
+ size: caption-size,
+ fill: secondary-content-color,
+ weight: "medium",
+ title,
+ )),
+ )
+ v(line-height / 2)
+ }
+ },
+ header-ascent: line-height / 2,
+ footer: context {
+ v(line-height / 2)
+ if page-numbering-started.at(here()) {
+ align(right, text(
+ font: heading-font,
+ size: caption-size,
+ fill: secondary-content-color,
+ counter(page).display("1 / 1", both: true),
+ ))
+ }
+ },
+ footer-descent: line-height,
+ )
+
+ // ── Configure headings --
+ show heading.where(level: 1): it => context {
+ v(line-height * 2, weak: true)
+ text(
+ font: heading-font,
+ size: heading-size,
+ weight: "bold",
+ fill: accent-color,
+ it.body,
+ )
+ }
+
+ show heading.where(level: 2): it => context {
+ v(line-height * 2, weak: true)
+ text(
+ font: heading-font,
+ size: lead-size,
+ weight: "bold",
+ fill: foreground-color,
+ it.body,
+ )
+ }
+
+ show heading.where(level: 3): it => {
+ v(line-height, weak: true)
+ text(
+ font: heading-font,
+ size: font-size,
+ weight: "bold",
+ fill: foreground-color,
+ it.body,
+ )
+ v(line-height / 2, weak: true)
+ }
+
+ // ── Configure lists --
+ set list(
+ indent: 0pt,
+ body-indent: line-height / 2,
+ marker: (
+ text(
+ font: heading-font,
+ fill: accent-color,
+ weight: "bold",
+ )[•],
+ text(
+ font: heading-font,
+ fill: accent-color,
+ weight: "bold",
+ )[‣],
+ text(
+ font: heading-font,
+ fill: accent-color,
+ weight: "bold",
+ )[–],
+ ),
+ )
+ set enum(
+ indent: 0pt,
+ body-indent: line-height / 2,
+ numbering: (..nums) => text(
+ font: heading-font,
+ fill: accent-color,
+ weight: "medium",
+ numbering("1.a.i.", ..nums),
+ ),
+ )
+ set terms(
+ indent: 0pt,
+ separator: h(0.5em, weak: true),
+ )
+ show terms.item: it => par({
+ text(
+ font: heading-font,
+ weight: "medium",
+ fill: accent-color,
+ it.term,
+ )
+ h(0.5em)
+ it.description
+ })
+
+ // -- Configure block quotes --
+ show quote.where(block: true): it => {
+ v(line-height, weak: true)
+ block(width: 100%)[
+ #place(left + top, dy: -line-height / 2, text(
+ font: heading-font,
+ size: display-size * 2,
+ fill: block-bg-color,
+ weight: "bold",
+ ["],
+ ))
+ #pad(left: lead-size)[
+ #text(font: body-font, style: "italic", it.body)
+ #if it.attribution != none {
+ v(line-height / 2, weak: true)
+ align(right, text(
+ font: heading-font,
+ size: caption-size,
+ fill: secondary-content-color,
+ [— #it.attribution],
+ ))
+ }
+ ]
+ ]
+ v(line-height, weak: true)
+ }
+
+ // -- Configure tables --
+ set table(
+ stroke: none,
+ inset: (x: line-height / 2, y: line-height / 2),
+ fill: (x, y) => if y == 0 {
+ accent-color
+ } else if calc.odd(y) {
+ block-bg-color
+ } else {
+ none
+ },
+ )
+ show table.cell.where(y: 0): it => {
+ text(
+ font: heading-font,
+ weight: "bold",
+ size: caption-size,
+ fill: background-color,
+ it,
+ )
+ }
+
+ // ── Configure code --
+ show raw.where(block: true): block.with(
+ inset: (x: line-height, y: line-height / 2),
+ width: 100%,
+ fill: block-bg-color,
+ )
+ show raw.where(block: true): set par(justify: false)
+ show raw.where(block: false): box.with(
+ inset: (x: 3pt, y: 0pt),
+ outset: (y: 3pt),
+ fill: block-bg-color,
+ )
+
+ // ── Configure links --
+ show link: it => {
+ if type(it.dest) != str {
+ it
+ } else {
+ text(fill: link-color, it)
+ }
+ }
+
+ // ── Title --
+ if cover-page {
+ // Full cover page
+ page(
+ margin: 0pt,
+ header: none,
+ footer: none,
+ )[
+ #place(left + top, rect(
+ width: line-height,
+ height: 100%,
+ fill: accent-color,
+ ))
+ #pad(
+ left: line-height + margin-horizontal,
+ right: margin-horizontal,
+ top: margin-vertical * 2,
+ bottom: margin-vertical,
+ )[
+ #v(1fr)
+ #text(
+ font: heading-font,
+ size: title-size,
+ weight: "bold",
+ upper(title),
+ )
+ #v(line-height)
+ #if subtitle != none {
+ text(
+ font: heading-font,
+ size: heading-size,
+ weight: "light",
+ subtitle,
+ )
+ v(line-height)
+ }
+ #v(2fr)
+ #if author != none {
+ grid(
+ columns: (1fr, 1fr),
+ text(
+ font: heading-font,
+ size: caption-size,
+ weight: "medium",
+ author,
+ ),
+ align(right, if date != none {
+ text(
+ font: heading-font,
+ size: caption-size,
+ fill: secondary-content-color,
+ date.display(date-format),
+ )
+ }),
+ )
+ } else if date != none {
+ text(
+ font: heading-font,
+ size: caption-size,
+ fill: secondary-content-color,
+ date.display(date-format),
+ )
+ }
+ ]
+ ]
+ } else if inline-title {
+ // Inline title block on first page
+ // Accent bar bleeding to page edges
+ place(
+ left + top,
+ dx: -margin-horizontal,
+ dy: -margin-vertical,
+ rect(
+ width: line-height,
+ height: 100% + margin-vertical * 2,
+ fill: accent-color,
+ ),
+ )
+ // Title block
+ v(line-height)
+ text(
+ font: heading-font,
+ size: display-size,
+ weight: "bold",
+ upper(title),
+ )
+ v(line-height / 2)
+ if subtitle != none {
+ text(
+ font: heading-font,
+ size: lead-size,
+ weight: "light",
+ subtitle,
+ )
+ v(line-height / 2)
+ }
+ if author != none {
+ grid(
+ columns: (1fr, 1fr),
+ text(
+ font: heading-font,
+ size: caption-size,
+ weight: "medium",
+ author,
+ ),
+ align(right, if date != none {
+ text(
+ font: heading-font,
+ size: caption-size,
+ fill: secondary-content-color,
+ date.display("[day] [month repr:long] [year]"),
+ )
+ }),
+ )
+ } else if date != none {
+ text(
+ font: heading-font,
+ size: caption-size,
+ fill: secondary-content-color,
+ date.display("[day] [month repr:long] [year]"),
+ )
+ }
+ v(line-height * 2)
+ }
+
+ // ── Body --
+ body
+}
diff --git a/tech-report/data/styling.typ b/tech-report/data/styling.typ
new file mode 100644
index 0000000..eedd82a
--- /dev/null
+++ b/tech-report/data/styling.typ
@@ -0,0 +1,8 @@
+#import "theme.typ": *
+
+#let underline-accent(body) = underline(
+ body,
+ stroke: 1.5pt + color-accent,
+ offset: 4pt,
+ evade: true,
+)
diff --git a/tech-report/data/tailwind.typ b/tech-report/data/tailwind.typ
new file mode 100644
index 0000000..1e9c696
--- /dev/null
+++ b/tech-report/data/tailwind.typ
@@ -0,0 +1,28 @@
+// Tailwind CSS v3 默认刻度(1rem = 12pt,用于 Typst 印刷排版)
+#let tw-rem = 12pt
+
+// spacing:scale × 0.25rem(等同 Tailwind p-*, m-*, gap-*)
+#let tw(scale) = scale * 0.25 * tw-rem
+
+// font-size(等同 Tailwind text-*)
+#let text-xs = 0.75 * tw-rem
+#let text-sm = 0.875 * tw-rem
+#let text-base = 1 * tw-rem
+#let text-lg = 1.125 * tw-rem
+#let text-xl = 1.25 * tw-rem
+#let text-2xl = 1.5 * tw-rem
+#let text-3xl = 1.875 * tw-rem
+#let text-4xl = 2.25 * tw-rem
+#let text-5xl = 3 * tw-rem
+#let text-6xl = 3.75 * tw-rem
+#let text-7xl = 4.5 * tw-rem
+#let text-8xl = 6 * tw-rem
+#let text-9xl = 8 * tw-rem
+
+// line-height(等同 Tailwind leading-*,值为倍数)
+#let leading-none = 1
+#let leading-tight = 1.25
+#let leading-snug = 1.375
+#let leading-normal = 1.5
+#let leading-relaxed = 1.625
+#let leading-loose = 2
diff --git a/tech-report/data/theme.typ b/tech-report/data/theme.typ
new file mode 100644
index 0000000..1aa2957
--- /dev/null
+++ b/tech-report/data/theme.typ
@@ -0,0 +1,157 @@
+#import "../../brand/colors.typ": *
+#import "tailwind.typ": *
+
+// 技术报告 · 主色 #3052c8
+#let color-primary = rgb("#3052c8")
+#let color-accent = color-primary
+#let color-accent-surface = color-primary.lighten(88%)
+#let color-heading = color-ink
+#let color-caption = rgb(110, 110, 110)
+#let color-quote = rgb(90, 90, 90)
+#let color-code-inline = color-ink
+#let color-page = white
+#let color-block-bg = color.mix(
+ (white, 20),
+ (color-ink, 1),
+ space: oklab,
+)
+
+#let code-token-keyword = color-ink
+#let code-token-comment = rgb(130, 130, 130)
+#let code-token-string = rgb(40, 40, 40)
+#let code-token-number = rgb(70, 70, 70)
+#let code-token-function = color-ink
+#let code-token-operator = rgb(100, 100, 100)
+
+// 字体:微软雅黑
+#let report-font = ("Microsoft YaHei", "Microsoft YaHei UI")
+#let heading-font = report-font
+#let body-font = report-font
+#let mono-font = report-font
+
+// 正文(text-base · leading-normal)
+#let size-body = text-base
+#let leading-ratio = leading-normal
+#let leading-body = size-body * leading-ratio - size-body
+
+#let size-h1 = text-2xl
+#let size-caption = text-sm
+
+#let space-micro = tw(1)
+#let space-block = tw(4)
+#let space-section = tw(6)
+#let space-chapter = tw(12)
+
+#let image-max-width = 100%
+
+#let code-block-fill = color-block-bg
+#let code-block-radius = 0pt
+#let code-inline-fill = color-block-bg
+
+// --- 页面边距(A4 常用 2.5 cm)---
+#let page-margin-a4 = 2.5cm
+#let page-margin-x = page-margin-a4
+#let page-margin-y = page-margin-a4
+
+// --- 封面页边距(色块左贴边 · 上下等距)---
+#let cover-margin-y = tw(8)
+#let cover-margin-right = tw(8)
+#let cover-content-inset = tw(11)
+#let cover-footer-inset = cover-content-inset
+#let cover-band-height = tw(24)
+#let cover-header-est = cover-band-height
+#let cover-footer-est = cover-band-height
+#let cover-footer-line-gap-tight = tw(0.5)
+#let cover-footer-line-gap = tw(0.75)
+#let cover-footer-column-gap = tw(16)
+#let cover-panel-right-gap = tw(24)
+#let page-margin-cover = (
+ top: cover-margin-y,
+ bottom: cover-margin-y,
+ left: 0pt,
+ right: cover-margin-right,
+)
+
+// --- 封面(Proposal 色块布局 · 蓝色系)---
+#let cover-bg = white
+#let cover-text = color-ink
+#let cover-text-muted = color-muted
+#let cover-logo-size = tw(10)
+#let cover-brand-size = text-base
+#let cover-tagline-size = text-sm
+#let cover-body-height = 25.7cm
+#let cover-panel-gap-y = tw(6)
+#let cover-header-gap = cover-panel-gap-y + cover-footer-est - cover-header-est
+#let cover-below-gap = cover-panel-gap-y
+#let cover-panel-fill = color-primary
+#let cover-panel-height = cover-body-height - cover-header-est - cover-footer-est - cover-header-gap - cover-below-gap
+#let cover-panel-inset-y = tw(18)
+#let cover-panel-inset-bottom-y = tw(16)
+#let cover-panel-text-gap = tw(4)
+#let cover-panel-title-outer-gap = tw(5)
+#let cover-panel-title-pull = -tw(8)
+#let cover-quote-column-width = tw(40)
+#let cover-panel-footer-rule-stroke = 2pt
+#let cover-panel-meta-divider-width = 2pt
+#let cover-panel-kicker = text-sm
+#let cover-panel-kicker-color = white.transparentize(18%)
+#let cover-panel-title-color = white
+#let cover-panel-subtitle-color = white.transparentize(12%)
+#let cover-panel-divider-color = white
+#let cover-panel-accent-stroke = 3.5pt
+#let cover-panel-line-color = white.transparentize(45%)
+#let cover-panel-footer-line-color = white.transparentize(15%)
+#let cover-panel-rule-width = tw(22)
+#let cover-panel-meta-column-gap = tw(8)
+#let cover-panel-author-size = text-base
+#let cover-panel-role-size = text-sm
+#let cover-panel-meta-size = text-sm
+#let cover-panel-meta-label = text-xs
+#let cover-panel-meta-color = white.transparentize(12%)
+#let cover-quote-size = 16 * tw-rem
+#let cover-quote-color = white.transparentize(8%)
+#let cover-quote-clearance = cover-quote-column-width
+#let cover-quote-offset-y = tw(0)
+#let cover-panel-role-gap-before-line = tw(4)
+#let cover-panel-meta-gap-after-line = tw(3)
+#let cover-panel-footer-line-length = 78%
+#let cover-footer-divider-height = tw(7.5)
+#let cover-footer-label = text-sm
+#let cover-footer-body = text-sm
+#let cover-footer-note = text-xs
+#let cover-footer-heading = color-ink
+#let cover-footer-text = color-body
+#let cover-footer-rule = color-muted.transparentize(55%)
+#let size-cover-title = text-6xl
+#let size-cover-title-line2 = text-7xl
+#let size-cover-subtitle = text-lg
+
+// --- 目录页 ---
+#let toc-head-gap = tw(18)
+#let toc-content-indent = tw(12)
+#let summary-top-offset = tw(10)
+#let summary-body-gap = tw(8)
+#let toc-head-zh = text-4xl
+#let toc-l2-color = color-muted.lighten(28%)
+#let toc-head-color = toc-l2-color
+#let toc-classification-label = "C3 Confidential"
+#let toc-classification-size = text-xs
+#let toc-classification-color = toc-l2-color
+#let toc-classification-dx = -page-margin-x + tw(3)
+#let toc-classification-dy = page-margin-y - tw(7)
+#let toc-l1-number-width = tw(14)
+#let toc-l1-number-title-gap = tw(11)
+#let toc-l1-number-size = text-5xl
+#let toc-l1-number-color = color-primary
+#let toc-l1-size = text-base
+#let toc-l2-size = text-sm
+#let toc-page-size = text-sm
+#let toc-l1-color = color-primary
+#let toc-l1-leader-color = color-primary.lighten(22%)
+#let toc-l2-leader-color = toc-l2-color.transparentize(35%)
+#let toc-leader-dot-size = text-xs
+#let toc-leader-gap = tw(0.5)
+#let toc-l1-gap-above = tw(6)
+#let toc-l1-gap-below = tw(2.5)
+#let toc-l2-gap-above = tw(2.5)
+#let toc-l2-gap-below = tw(2)
diff --git a/tech-report/data/toc.typ b/tech-report/data/toc.typ
new file mode 100644
index 0000000..57c4d8c
--- /dev/null
+++ b/tech-report/data/toc.typ
@@ -0,0 +1,142 @@
+#import "theme.typ": *
+
+#let toc-unnumbered-bodies = ([摘要], [术语与缩写], [术语与缩略语])
+#let toc-chapter-counter = counter("toc-chapter")
+
+#let toc-is-unnumbered(body) = {
+ toc-unnumbered-bodies.contains(body)
+}
+
+#let toc-register-chapter-counter() = doc => {
+ show heading.where(level: 1): it => {
+ if not toc-is-unnumbered(it.body) {
+ toc-chapter-counter.step()
+ }
+ it
+ }
+ doc
+}
+
+#let toc-leader(leader-color) = {
+ box(
+ width: 1fr,
+ height: 0.9em,
+ clip: true,
+ align(horizon + left)[
+ #repeat[#text(size: toc-leader-dot-size, fill: leader-color)[·#h(toc-leader-gap)]]
+ ],
+ )
+}
+
+#let toc-format-num(n) = {
+ if n < 10 {
+ "0" + str(n)
+ } else {
+ str(n)
+ }
+}
+
+#let toc-l1-chapter-num(entry) = {
+ toc-format-num(toc-chapter-counter.at(entry.element.location()).first())
+}
+
+#let toc-number-cell(skip-number, entry) = {
+ box(width: toc-l1-number-width)[
+ #align(left)[
+ #if not skip-number [
+ #text(
+ font: heading-font,
+ size: toc-l1-number-size,
+ weight: "bold",
+ fill: toc-l1-number-color,
+ )[#toc-l1-chapter-num(entry)]
+ ]
+ ]
+ ]
+}
+
+#let toc-entry-show(it) = {
+ if it.level == 1 and toc-unnumbered-bodies.contains(it.body()) {
+ []
+ } else if it.level == 1 {
+ let skip-number = toc-unnumbered-bodies.contains(it.body())
+ block(width: 100%, above: toc-l1-gap-above, below: toc-l1-gap-below)[
+ #grid(
+ columns: (toc-l1-number-width, toc-l1-number-title-gap, auto, 1fr, auto),
+ column-gutter: tw(2),
+ align: (left + horizon, left, left + horizon, horizon, horizon),
+ toc-number-cell(skip-number, it),
+ [],
+ text(font: heading-font, size: toc-l1-size, weight: "bold", fill: toc-l1-color)[
+ #it.body()
+ ],
+ toc-leader(toc-l1-leader-color),
+ text(font: heading-font, size: toc-page-size, weight: "bold", fill: toc-l1-color)[
+ #it.page()
+ ],
+ )
+ ]
+ } else if it.level == 2 {
+ block(width: 100%, above: toc-l2-gap-above, below: toc-l2-gap-below)[
+ #grid(
+ columns: (toc-l1-number-width, toc-l1-number-title-gap, auto, 1fr, auto),
+ column-gutter: tw(2),
+ align: horizon,
+ [],
+ [],
+ text(font: body-font, size: toc-l2-size, weight: "regular", fill: toc-l2-color)[
+ #it.body()
+ ],
+ toc-leader(toc-l2-leader-color),
+ text(font: body-font, size: toc-page-size, fill: toc-l2-color)[#it.page()],
+ )
+ ]
+ }
+}
+
+#let toc-classification-mark() = {
+ place(left + bottom, dx: toc-classification-dx, dy: toc-classification-dy)[
+ #text(
+ font: body-font,
+ size: toc-classification-size,
+ fill: toc-classification-color,
+ tracking: 0.04em,
+ )[
+ #rotate(-90deg, reflow: true)[#toc-classification-label]
+ ]
+ ]
+}
+
+#let toc-page(meta) = {
+ let _ = meta
+ pagebreak(weak: true)
+
+ page(
+ header: none,
+ footer: none,
+ margin: (
+ top: page-margin-y,
+ bottom: page-margin-y,
+ left: page-margin-x,
+ right: page-margin-x,
+ ),
+ )[
+ #block(width: 100%, height: 100%)[
+ #toc-classification-mark()
+ #block(width: 100%, below: space-chapter)[
+ #text(font: heading-font, size: toc-head-zh, weight: "bold", fill: toc-head-color)[
+ 报告目录
+ ]
+
+ #v(toc-head-gap)
+
+ #pad(left: toc-content-indent)[
+ #show outline.entry: toc-entry-show
+ #outline(depth: 2, indent: 0pt, title: none)
+ ]
+ ]
+ ]
+ ]
+
+ pagebreak(weak: true)
+}
diff --git a/tech-report/report.typ b/tech-report/report.typ
new file mode 100644
index 0000000..33eb8f3
--- /dev/null
+++ b/tech-report/report.typ
@@ -0,0 +1,90 @@
+#import "data/config.typ": *
+#import "data/theme.typ": *
+#import "data/cover.typ": cover-page
+#import "data/toc.typ": toc-page, toc-register-chapter-counter
+#import "data/metropole-grelin.typ": metropole, start-body-page-numbering
+#import "data/glossary.typ": init-glossary, register-report-glossary, print-glossary, glossary-entries, gls-long, gls-short
+#import "data/diagrams.typ": ore-sorting-flow
+#import "data/code.typ": codly-init-rule, codly-config, code-token-highlight-init
+#import "data/md.typ": load-report-md
+
+#show: codly-init-rule
+#show: code-token-highlight-init
+#show: init-glossary
+#codly-config
+
+#register-report-glossary()
+
+#let report = load-report-md(
+ read(content-path),
+ source-path: content-path,
+ extra-scope: (
+ ore-sorting-flow: ore-sorting-flow,
+ gls-long: gls-long,
+ gls-short: gls-short,
+ ),
+)
+#let meta = report.metadata
+
+#let parse-report-date(raw) = {
+ if type(raw) == datetime {
+ raw
+ } else if type(raw) == str {
+ let parts = raw.split("-")
+ if parts.len() == 3 {
+ datetime(
+ year: int(parts.at(0)),
+ month: int(parts.at(1)),
+ day: int(parts.at(2)),
+ )
+ } else {
+ none
+ }
+ } else {
+ none
+ }
+}
+
+#let report-date = parse-report-date(meta.date)
+
+#cover-page(meta, date: report-date)
+
+#show: metropole.with(
+ title: meta.title,
+ subtitle: none,
+ author: meta.brand,
+ date: report-date,
+ language: "zh",
+ paper-size: "a4",
+ cover-page: false,
+ inline-title: false,
+ accent-color: color-primary,
+ body-font: body-font,
+ heading-font: heading-font,
+ raw-font: mono-font,
+ font-size: size-body,
+ leading-ratio: leading-ratio,
+ margin-x: page-margin-x,
+ margin-y: page-margin-y,
+)
+
+#set heading(numbering: "1.1.1")
+#show: toc-register-chapter-counter()
+
+#toc-page(meta)
+
+#if meta.summary != "" [
+ #v(summary-top-offset, weak: false)
+ #text(font: heading-font, size: size-h1, weight: "bold", fill: color-heading)[摘要]
+ #v(tw(3))
+ #meta.summary
+ #v(summary-body-gap)
+]
+
+#start-body-page-numbering()
+
+#report.body
+
+#pagebreak(weak: true)
+#heading(outlined: false, level: 1)[术语与缩写]
+#print-glossary(glossary-entries, show-all: true)
diff --git a/feasibility/sample.pdf b/tech-report/sample.pdf
similarity index 50%
rename from feasibility/sample.pdf
rename to tech-report/sample.pdf
index 13d667e..8eb70fa 100644
--- a/feasibility/sample.pdf
+++ b/tech-report/sample.pdf
@@ -2,3792 +2,3679 @@
%
1 0 obj
-<>
+<>
endobj
2 0 obj
-</Dest 284 0 R>>
+</Dest 348 0 R>>
endobj
3 0 obj
-</Dest 283 0 R>>
+</Dest 347 0 R>>
endobj
4 0 obj
-</Dest 285 0 R>>
+</Dest 349 0 R>>
endobj
5 0 obj
-</Dest 287 0 R>>
+</Dest 351 0 R>>
endobj
6 0 obj
-</Dest 286 0 R>>
+</Dest 350 0 R>>
endobj
7 0 obj
-</Dest 288 0 R>>
+</Dest 352 0 R>>
endobj
8 0 obj
-</Dest 289 0 R>>
+</Dest 353 0 R>>
endobj
9 0 obj
-</Dest 290 0 R>>
+</Dest 354 0 R>>
endobj
10 0 obj
-</Dest 291 0 R>>
+</Dest 355 0 R>>
endobj
11 0 obj
-</Dest 292 0 R>>
+</Dest 356 0 R>>
endobj
12 0 obj
<>
endobj
13 0 obj
-<>/K[280 0 R]/ParentTree<>/IDTree<>/ParentTreeNextKey 5>>
+<>/K[344 0 R]/ParentTree<>/IDTree<>/ParentTreeNextKey 6>>
endobj
14 0 obj
-[20 0 R 23 0 R 28 0 R 29 0 R 29 0 R 30 0 R 32 0 R 34 0 R 36 0 R 38 0 R 38 0 R 38 0 R]
+[21 0 R 22 0 R 25 0 R 25 0 R 26 0 R 27 0 R 28 0 R 28 0 R 29 0 R 30 0 R 30 0 R 31 0 R 32 0 R 33 0 R 36 0 R 37 0 R 40 0 R 41 0 R 42 0 R 45 0 R 46 0 R 47 0 R]
endobj
15 0 obj
-[41 0 R 42 0 R 43 0 R 43 0 R 43 0 R 43 0 R 43 0 R 43 0 R 43 0 R 44 0 R 46 0 R 48 0 R 50 0 R 53 0 R 55 0 R 55 0 R 59 0 R 59 0 R 60 0 R 60 0 R 60 0 R 62 0 R 62 0 R 62 0 R 64 0 R 65 0 R 67 0 R 66 0 R 69 0 R 70 0 R 71 0 R 73 0 R 74 0 R 75 0 R 77 0 R 78 0 R 79 0 R 81 0 R 82 0 R 82 0 R 82 0 R 82 0 R 82 0 R 82 0 R 84 0 R 87 0 R 85 0 R 87 0 R 86 0 R 90 0 R 90 0 R 90 0 R 93 0 R 97 0 R 97 0 R 97 0 R 97 0 R 97 0 R 97 0 R 97 0 R 97 0 R 100 0 R 100 0 R 100 0 R 100 0 R 100 0 R 100 0 R 100 0 R 100 0 R 100 0 R 100 0 R 100 0 R 103 0 R 103 0 R 103 0 R 103 0 R 103 0 R 103 0 R 103 0 R 110 0 R 110 0 R 114 0 R 115 0 R 117 0 R 117 0 R 121 0 R 121 0 R 122 0 R 124 0 R 124 0 R 128 0 R 128 0 R 128 0 R 128 0 R 128 0 R 131 0 R 131 0 R 131 0 R 131 0 R 129 0 R 129 0 R 129 0 R]
+[50 0 R 51 0 R 52 0 R 55 0 R 58 0 R 64 0 R 67 0 R 72 0 R 75 0 R 78 0 R 82 0 R 85 0 R 88 0 R 94 0 R 97 0 R 102 0 R 105 0 R 108 0 R 112 0 R 115 0 R 118 0 R 122 0 R 125 0 R 128 0 R 132 0 R 135 0 R 138 0 R 142 0 R 145 0 R 148 0 R]
endobj
16 0 obj
-[134 0 R 136 0 R 137 0 R 138 0 R 139 0 R 141 0 R 142 0 R 142 0 R 144 0 R 145 0 R 145 0 R 149 0 R 149 0 R 153 0 R 154 0 R 155 0 R 158 0 R 159 0 R 160 0 R 162 0 R 162 0 R 163 0 R 164 0 R 166 0 R 166 0 R 167 0 R 168 0 R 170 0 R 171 0 R 172 0 R]
+[153 0 R 154 0 R 154 0 R 154 0 R 154 0 R 154 0 R 154 0 R 154 0 R 155 0 R 157 0 R 157 0 R 157 0 R 158 0 R 159 0 R 159 0 R 159 0 R 159 0 R 161 0 R 161 0 R 161 0 R 163 0 R 164 0 R 166 0 R 165 0 R 168 0 R 169 0 R 170 0 R 172 0 R 173 0 R 174 0 R 176 0 R 177 0 R 178 0 R 180 0 R 181 0 R 181 0 R 181 0 R 181 0 R 181 0 R 181 0 R 183 0 R 186 0 R 184 0 R 186 0 R 185 0 R 189 0 R 189 0 R 192 0 R 196 0 R 196 0 R 196 0 R 196 0 R 196 0 R 196 0 R 196 0 R 196 0 R 199 0 R 199 0 R 199 0 R 199 0 R 199 0 R 199 0 R 199 0 R 199 0 R 199 0 R 199 0 R 199 0 R 202 0 R 202 0 R 202 0 R 202 0 R 202 0 R 202 0 R 202 0 R 208 0 R 210 0 R 210 0 R 211 0 R 213 0 R 213 0 R 213 0 R 214 0 R 216 0 R 216 0 R 216 0 R 216 0 R 216 0 R 216 0 R]
endobj
17 0 obj
-[176 0 R 178 0 R 178 0 R 182 0 R 183 0 R 184 0 R 186 0 R 187 0 R 188 0 R 190 0 R 191 0 R 192 0 R 195 0 R 197 0 R 197 0 R 201 0 R 201 0 R 202 0 R 204 0 R 204 0 R 208 0 R 209 0 R 210 0 R 212 0 R 213 0 R 214 0 R 216 0 R 217 0 R 218 0 R 221 0 R 223 0 R 223 0 R 227 0 R 228 0 R 231 0 R 232 0 R 234 0 R 235 0 R 237 0 R 238 0 R 242 0 R 244 0 R 244 0 R 248 0 R]
+[219 0 R 219 0 R 219 0 R 219 0 R 217 0 R 217 0 R 217 0 R 221 0 R 222 0 R 223 0 R 224 0 R 225 0 R 227 0 R 228 0 R 228 0 R 230 0 R 231 0 R 231 0 R 234 0 R]
endobj
18 0 obj
-[249 0 R 250 0 R 252 0 R 253 0 R 253 0 R 260 0 R 262 0 R 263 0 R 263 0 R 263 0 R 270 0 R 272 0 R 273 0 R 273 0 R 273 0 R]
+[236 0 R 237 0 R 238 0 R 241 0 R 242 0 R 243 0 R 245 0 R 245 0 R 246 0 R 247 0 R 249 0 R 249 0 R 250 0 R 251 0 R 253 0 R 254 0 R 255 0 R 259 0 R 261 0 R 262 0 R 263 0 R 265 0 R 266 0 R 267 0 R 269 0 R 270 0 R 271 0 R 274 0 R 276 0 R 276 0 R 277 0 R 279 0 R 280 0 R 281 0 R 283 0 R 284 0 R 285 0 R 287 0 R 288 0 R 289 0 R 292 0 R 294 0 R 295 0 R 298 0 R 299 0 R 301 0 R 302 0 R 304 0 R 305 0 R 309 0 R 311 0 R 311 0 R]
endobj
19 0 obj
-<>
+[312 0 R 314 0 R 316 0 R 317 0 R 317 0 R 324 0 R 326 0 R 327 0 R 327 0 R 327 0 R 334 0 R 336 0 R 337 0 R 337 0 R 337 0 R 337 0 R]
endobj
20 0 obj
-<>]/K[0]/Pg 865 0 R>>
+<>
endobj
21 0 obj
-<>
+<>
endobj
22 0 obj
-<>
+<>
endobj
23 0 obj
-<>]/K[1]/Pg 865 0 R>>
+<>
endobj
24 0 obj
-<>
+<>
endobj
25 0 obj
-<>
+<>
endobj
26 0 obj
-<>
+<>
endobj
27 0 obj
-<>
+<>]/K[5]/Pg 922 0 R>>
endobj
28 0 obj
-<>
+<>
endobj
29 0 obj
-<>]/K[3 4]/Pg 865 0 R>>
+<>
endobj
30 0 obj
-<>]/K[5]/Pg 865 0 R>>
+<>
endobj
31 0 obj
-<>
+<>]/K[11]/Pg 922 0 R>>
endobj
32 0 obj
-<>]/K[6]/Pg 865 0 R>>
+<>
endobj
33 0 obj
-<>
+<>
endobj
34 0 obj
-<>]/K[7]/Pg 865 0 R>>
+<>
endobj
35 0 obj
-<>
+<>
endobj
36 0 obj
-<>]/K[8]/Pg 865 0 R>>
+<>
endobj
37 0 obj
-<>
+<>
endobj
38 0 obj
-<>]/K[9 10 11]/Pg 865 0 R>>
+<>
endobj
39 0 obj
-<>
+<>
endobj
40 0 obj
-<>
+<>
endobj
41 0 obj
-<>
+<>
endobj
42 0 obj
-<>
+<>
endobj
43 0 obj
-<>
+<>
endobj
44 0 obj
-<>]/K[9]/Pg 866 0 R>>
+<>
endobj
45 0 obj
-<>
+<>
endobj
46 0 obj
-<>]/K[10]/Pg 866 0 R>>
+<>
endobj
47 0 obj
-<>
+<>
endobj
48 0 obj
-<>]/K[11]/Pg 866 0 R>>
+<>
endobj
49 0 obj
-<>
+<>
endobj
50 0 obj
-<>]/K[12]/Pg 866 0 R>>
+<>]/K[0]/Pg 923 0 R>>
endobj
51 0 obj
-<>
+<>
endobj
52 0 obj
-<>
+<>
endobj
53 0 obj
-<>]/K[13]/Pg 866 0 R>>
+<>
endobj
54 0 obj
-<>
+<>
endobj
55 0 obj
-<>]/K[14 15]/Pg 866 0 R>>
+<>]/K[3]/Pg 923 0 R>>
endobj
56 0 obj
-<>
+<>
endobj
57 0 obj
-<>
+<>
endobj
58 0 obj
-</K[57 0 R]>>
+<>]/K[4]/Pg 923 0 R>>
endobj
59 0 obj
-<>
+<>
endobj
60 0 obj
-<>
+<>
endobj
61 0 obj
-<>
+<>
endobj
62 0 obj
-<>
+<>
endobj
63 0 obj
-<>
+<>
endobj
64 0 obj
-<>
+<>]/K[5]/Pg 923 0 R>>
endobj
65 0 obj
-<>
+<>
endobj
66 0 obj
-<>
+<>
endobj
67 0 obj
-<>
+<>]/K[6]/Pg 923 0 R>>
endobj
68 0 obj
-<>
+<>
endobj
69 0 obj
-<>
+<>
endobj
70 0 obj
-<>
+<>
endobj
71 0 obj
-<>
+<>
endobj
72 0 obj
-<>
+<>
endobj
73 0 obj
-<>
+<>
endobj
74 0 obj
-<>]/K[32]/Pg 866 0 R>>
+<>
endobj
75 0 obj
-<>
+<>]/K[8]/Pg 923 0 R>>
endobj
76 0 obj
-<>
+<>
endobj
77 0 obj
-<>
+<>
endobj
78 0 obj
-<>]/K[35]/Pg 866 0 R>>
+<>]/K[9]/Pg 923 0 R>>
endobj
79 0 obj
-<>
+<>
endobj
80 0 obj
-<>
+<>
endobj
81 0 obj
-<>
+<>
endobj
82 0 obj
-<>
+<>
endobj
83 0 obj
-<>
+<>
endobj
84 0 obj
-<>
+<>
endobj
85 0 obj
-<>
+<>]/K[11]/Pg 923 0 R>>
endobj
86 0 obj
-<>
+<>
endobj
87 0 obj
-<>
+<>
endobj
88 0 obj
-<>
+<>]/K[12]/Pg 923 0 R>>
endobj
89 0 obj
-<>]/K[68 0 R 72 0 R 76 0 R 80 0 R 83 0 R 88 0 R]>>
+<>
endobj
90 0 obj
-<>
+<>
endobj
91 0 obj
-<>]/K[90 0 R]>>
+<>
endobj
92 0 obj
-<>
+<>
endobj
93 0 obj
-<>]/K[52]/Pg 866 0 R>>
+<>
endobj
94 0 obj
-<>
+<>]/K[13]/Pg 923 0 R>>
endobj
95 0 obj
-<>
+<>
endobj
96 0 obj
-<>
+<>
endobj
97 0 obj
-<>
+<>]/K[14]/Pg 923 0 R>>
endobj
98 0 obj
-<>]/K[97 0 R]>>
+<>
endobj
99 0 obj
-<>
+<>
endobj
100 0 obj
-<>
+<>
endobj
101 0 obj
-<>]/K[100 0 R]>>
+<>
endobj
102 0 obj
-<>
+<>
endobj
103 0 obj
-<>
+<>
endobj
104 0 obj
-<>]/K[103 0 R]>>
+<>
endobj
105 0 obj
-<>
+<>]/K[16]/Pg 923 0 R>>
endobj
106 0 obj
-<>
+<>
endobj
107 0 obj
-<>]/K[]>>
+<>
endobj
108 0 obj
-<>]/K[106 0 R 107 0 R]>>
+<>]/K[17]/Pg 923 0 R>>
endobj
109 0 obj
-<>
+<>
endobj
110 0 obj
-<>]/K[79 80]/Pg 866 0 R>>
+<>
endobj
111 0 obj
-<>
+<>
endobj
112 0 obj
-<>
+<>
endobj
113 0 obj
-</K[112 0 R]>>
+<>
endobj
114 0 obj
-<>
+<>
endobj
115 0 obj
-<>]/K[82]/Pg 866 0 R>>
+<>]/K[19]/Pg 923 0 R>>
endobj
116 0 obj
-<>
+<>
endobj
117 0 obj
-<>]/K[83 84]/Pg 866 0 R>>
+<>
endobj
118 0 obj
-<>
+<>]/K[20]/Pg 923 0 R>>
endobj
119 0 obj
-<>
+<>
endobj
120 0 obj
-</K[119 0 R]>>
+<>
endobj
121 0 obj
-<>
+<>
endobj
122 0 obj
-<>]/K[87]/Pg 866 0 R>>
+<>
endobj
123 0 obj
-<>
+<>
endobj
124 0 obj
-<>]/K[88 89]/Pg 866 0 R>>
+<>
endobj
125 0 obj
-<>
+<>]/K[22]/Pg 923 0 R>>
endobj
126 0 obj
-<>
+<>
endobj
127 0 obj
-</K[126 0 R]>>
+<>
endobj
128 0 obj
-<>
+<>]/K[23]/Pg 923 0 R>>
endobj
129 0 obj
-<>]/K[99 100 101]/Pg 866 0 R>>
+<>
endobj
130 0 obj
-<>
+<>
endobj
131 0 obj
-<>]/K[95 96 97 98]/Pg 866 0 R>>
+<>
endobj
132 0 obj
-<>]/K[131 0 R]>>
+<>
endobj
133 0 obj
-<>
+<>
endobj
134 0 obj
-<>
+<>
endobj
135 0 obj
-<>]/K[134 0 R]>>
+<>]/K[25]/Pg 923 0 R>>
endobj
136 0 obj
-<>
+<>
endobj
137 0 obj
-<>
+<>
endobj
138 0 obj
-<>
+<>]/K[26]/Pg 923 0 R>>
endobj
139 0 obj
-<>
+<>
endobj
140 0 obj
-<>
+<>
endobj
141 0 obj
-<>
+<>
endobj
142 0 obj
-<>
+<>
endobj
143 0 obj
-<>
+<>
endobj
144 0 obj
-<>
+<>
endobj
145 0 obj
-<>
+<>]/K[28]/Pg 923 0 R>>
endobj
146 0 obj
-<>
+<>
endobj
147 0 obj
-<>]/K[140 0 R 143 0 R 146 0 R]>>
+<>
endobj
148 0 obj
-<>
+<>]/K[29]/Pg 923 0 R>>
endobj
149 0 obj
-<>]/K[11 12]/Pg 867 0 R>>
+<>
endobj
150 0 obj
-<>
+<>
endobj
151 0 obj
-<>
+<>
endobj
152 0 obj
-</K[151 0 R]>>
+<>
endobj
153 0 obj
-<><>]/K[13]/Pg 867 0 R>>
+<>
endobj
154 0 obj
-<><>]/K[14]/Pg 867 0 R>>
+<>
endobj
155 0 obj
-<><>]/K[15]/Pg 867 0 R>>
+<>
endobj
156 0 obj
-<>
+</K[155 0 R]>>
endobj
157 0 obj
-<>
+<>
endobj
158 0 obj
-<><>]/K[16]/Pg 867 0 R>>
+<>]/K[12]/Pg 924 0 R>>
endobj
159 0 obj
-<><>]/K[17]/Pg 867 0 R>>
+<>
endobj
160 0 obj
-<><>]/K[18]/Pg 867 0 R>>
+<>
endobj
161 0 obj
-<>
+<>
endobj
162 0 obj
-<><>]/K[19 20]/Pg 867 0 R>>
+<>
endobj
163 0 obj
-<><>]/K[21]/Pg 867 0 R>>
+<>
endobj
164 0 obj
-<><>]/K[22]/Pg 867 0 R>>
+<>
endobj
165 0 obj
-<>
+<>
endobj
166 0 obj
-<><>]/K[23 24]/Pg 867 0 R>>
+<>
endobj
167 0 obj
-<><>]/K[25]/Pg 867 0 R>>
+<>
endobj
168 0 obj
-<><>]/K[26]/Pg 867 0 R>>
+<>
endobj
169 0 obj
-<>
+<>
endobj
170 0 obj
-<><>]/K[27]/Pg 867 0 R>>
+<>
endobj
171 0 obj
-<><>]/K[28]/Pg 867 0 R>>
+<>
endobj
172 0 obj
-<><>]/K[29]/Pg 867 0 R>>
+<>
endobj
173 0 obj
-<>
+<>]/K[28]/Pg 924 0 R>>
endobj
174 0 obj
-<>
+<>
endobj
175 0 obj
-<>
+<>
endobj
176 0 obj
-<>]/K[0]/Pg 868 0 R>>
+<>
endobj
177 0 obj
-<>
+<>]/K[31]/Pg 924 0 R>>
endobj
178 0 obj
-<>]/K[1 2]/Pg 868 0 R>>
+<>
endobj
179 0 obj
-<>
+<>
endobj
180 0 obj
-<>
+<>
endobj
181 0 obj
-</K[180 0 R]>>
+<>
endobj
182 0 obj
-<>
+<>
endobj
183 0 obj
-<>
+<>
endobj
184 0 obj
-<>
+<>
endobj
185 0 obj
-<>
+<>
endobj
186 0 obj
-<>
+<>
endobj
187 0 obj
-<>
+<>
endobj
188 0 obj
-<>
+<>]/K[167 0 R 171 0 R 175 0 R 179 0 R 182 0 R 187 0 R]>>
endobj
189 0 obj
-<>
+<>
endobj
190 0 obj
-<>
+<>]/K[189 0 R]>>
endobj
191 0 obj
-<>
+<>
endobj
192 0 obj
-<>
+<>]/K[47]/Pg 924 0 R>>
endobj
193 0 obj
-<>
+<>
endobj
194 0 obj
-<>]/K[185 0 R 189 0 R 193 0 R]>>
+<>
endobj
195 0 obj
-<>]/K[12]/Pg 868 0 R>>
+<>
endobj
196 0 obj
-<>
+<>
endobj
197 0 obj
-<>]/K[13 14]/Pg 868 0 R>>
+<>]/K[196 0 R]>>
endobj
198 0 obj
-<>
+<>
endobj
199 0 obj
-<>
+<>
endobj
200 0 obj
-</K[199 0 R]>>
+<>]/K[199 0 R]>>
endobj
201 0 obj
-<>
+<>
endobj
202 0 obj
-<>]/K[17]/Pg 868 0 R>>
+<>
endobj
203 0 obj
-<>
+<>]/K[202 0 R]>>
endobj
204 0 obj
-<>]/K[18 19]/Pg 868 0 R>>
+<>
endobj
205 0 obj
-<>
+<>
endobj
206 0 obj
-<>
+<>]/K[]>>
endobj
207 0 obj
-</K[206 0 R]>>
+<>]/K[205 0 R 206 0 R]>>
endobj
208 0 obj
-<>
+<>
endobj
209 0 obj
-<>
+</K[208 0 R]>>
endobj
210 0 obj
-<>
+<>
endobj
211 0 obj
-<>
+<>
endobj
212 0 obj
-<>
+</K[211 0 R]>>
endobj
213 0 obj
-<>
+<>
endobj
214 0 obj
-<>
+<>
endobj
215 0 obj
-<>
+</K[214 0 R]>>
endobj
216 0 obj
-<>
+<>
endobj
217 0 obj
-<>
+<>]/K[4 5 6]/Pg 925 0 R>>
endobj
218 0 obj
-<>
+<>
endobj
219 0 obj
-<>
+<>]/K[0 1 2 3]/Pg 925 0 R>>
endobj
220 0 obj
-<>]/K[211 0 R 215 0 R 219 0 R]>>
+<>
endobj
221 0 obj
-<>]/K[29]/Pg 868 0 R>>
+<>]/K[7]/Pg 925 0 R>>
endobj
222 0 obj
-<>
+<>
endobj
223 0 obj
-<>]/K[30 31]/Pg 868 0 R>>
+<>
endobj
224 0 obj
-<>
+<>
endobj
225 0 obj
-<>
+<>
endobj
226 0 obj
-</K[225 0 R]>>
+<>
endobj
227 0 obj
-<><>]/K[32]/Pg 868 0 R>>
+<>
endobj
228 0 obj
-<><>]/K[33]/Pg 868 0 R>>
+<>
endobj
229 0 obj
-<>
+<>
endobj
230 0 obj
-<>
+<>
endobj
231 0 obj
-<><>]/K[34]/Pg 868 0 R>>
+<>
endobj
232 0 obj
-<><>]/K[35]/Pg 868 0 R>>
+<>
endobj
233 0 obj
-<>
+<>]/K[226 0 R 229 0 R 232 0 R]>>
endobj
234 0 obj
-<><>]/K[36]/Pg 868 0 R>>
+<>
endobj
235 0 obj
-<><>]/K[37]/Pg 868 0 R>>
+</K[234 0 R]>>
endobj
236 0 obj
-<>
+<><>]/K[0]/Pg 926 0 R>>
endobj
237 0 obj
-<><>]/K[38]/Pg 868 0 R>>
+<><>]/K[1]/Pg 926 0 R>>
endobj
238 0 obj
-<><>]/K[39]/Pg 868 0 R>>
+<><>]/K[2]/Pg 926 0 R>>
endobj
239 0 obj
-<>
+<>
endobj
240 0 obj
-<>
+<>
endobj
241 0 obj
-<>
+<><>]/K[3]/Pg 926 0 R>>
endobj
242 0 obj
-<>]/K[40]/Pg 868 0 R>>
+<><>]/K[4]/Pg 926 0 R>>
endobj
243 0 obj
-<>
+<><>]/K[5]/Pg 926 0 R>>
endobj
244 0 obj
-<>]/K[41 42]/Pg 868 0 R>>
+<>
endobj
245 0 obj
-<>
+<>]/K[6 7]/Pg 926 0 R>>
endobj
246 0 obj
-<>
+<>]/K[8]/Pg 926 0 R>>
endobj
247 0 obj
-</K[246 0 R]>>
+<>]/K[9]/Pg 926 0 R>>
endobj
248 0 obj
-<>
+<>
endobj
249 0 obj
-<>
+<><>]/K[10 11]/Pg 926 0 R>>
endobj
250 0 obj
-<>
+<><>]/K[12]/Pg 926 0 R>>
endobj
251 0 obj
-<>
+<><>]/K[13]/Pg 926 0 R>>
endobj
252 0 obj
-<>
+<>
endobj
253 0 obj
-<>
+<>]/K[14]/Pg 926 0 R>>
endobj
254 0 obj
-<>]/K[253 0 R]>>
+<>]/K[15]/Pg 926 0 R>>
endobj
255 0 obj
-<>]/K[]>>
+<>]/K[16]/Pg 926 0 R>>
endobj
256 0 obj
-<>]/K[]>>
+<>
endobj
257 0 obj
-<>]/K[]>>
+<>
endobj
258 0 obj
-<>]/K[]>>
+<>
endobj
259 0 obj
-<>]/K[]>>
+<>
endobj
260 0 obj
-<>
+</K[259 0 R]>>
endobj
261 0 obj
-<>
+<>
endobj
262 0 obj
-<>
+<>
endobj
263 0 obj
-<>
+<>
endobj
264 0 obj
-<>]/K[263 0 R]>>
+<>
endobj
265 0 obj
-<>]/K[]>>
+<>
endobj
266 0 obj
-<>]/K[]>>
+<>
endobj
267 0 obj
-<>]/K[]>>
+<>
endobj
268 0 obj
-<>]/K[]>>
+<>
endobj
269 0 obj
-<>]/K[]>>
+<>
endobj
270 0 obj
-<>
+<>
endobj
271 0 obj
-<>
+<>
endobj
272 0 obj
-<>
+<>
endobj
273 0 obj
-<>
+<>]/K[264 0 R 268 0 R 272 0 R]>>
endobj
274 0 obj
-<>]/K[273 0 R]>>
+<>
endobj
275 0 obj
-<>]/K[]>>
+</K[274 0 R]>>
endobj
276 0 obj
-<>]/K[]>>
+<>
endobj
277 0 obj
-<>]/K[]>>
+<>
endobj
278 0 obj
-<>]/K[]>>
+</K[277 0 R]>>
endobj
279 0 obj
-<>]/K[]>>
+<>
endobj
280 0 obj
-<>
+<>
endobj
281 0 obj
-[/ICCBased 899 0 R]
+<>
endobj
282 0 obj
-[/ICCBased 900 0 R]
+<>
endobj
283 0 obj
-[866 0 R/XYZ 70.86614 582.4481 0]
+<>
endobj
284 0 obj
-[866 0 R/XYZ 70.86614 304.4151 0]
+<>
endobj
285 0 obj
-[866 0 R/XYZ 70.86614 262.80798 0]
+<>
endobj
286 0 obj
-[866 0 R/XYZ 70.86614 190.10486 0]
+<>
endobj
287 0 obj
-[867 0 R/XYZ 70.86614 231.00671 0]
+<>
endobj
288 0 obj
-[868 0 R/XYZ 70.86614 781.0236 0]
+<>
endobj
289 0 obj
-[868 0 R/XYZ 70.86614 689.01337 0]
+<>
endobj
290 0 obj
-[868 0 R/XYZ 70.86614 616.31024 0]
+<>
endobj
291 0 obj
-[868 0 R/XYZ 70.86614 524.3 0]
+<>]/K[282 0 R 286 0 R 290 0 R]>>
endobj
292 0 obj
-[868 0 R/XYZ 70.86614 402.4826 0]
+<>
endobj
293 0 obj
-<>
+</K[292 0 R]>>
endobj
294 0 obj
-<>
+<><>]/K[41]/Pg 926 0 R>>
endobj
295 0 obj
-<>
+<><>]/K[42]/Pg 926 0 R>>
endobj
296 0 obj
-<>
+<>
endobj
297 0 obj
-<>
+<>
endobj
298 0 obj
-<>
+<><>]/K[43]/Pg 926 0 R>>
endobj
299 0 obj
-<>
+<><>]/K[44]/Pg 926 0 R>>
endobj
300 0 obj
-<>
+<>
endobj
301 0 obj
-<>
+<>]/K[45]/Pg 926 0 R>>
endobj
302 0 obj
-<>
+<>]/K[46]/Pg 926 0 R>>
endobj
303 0 obj
-<>
+<>
endobj
304 0 obj
-<>
+<><>]/K[47]/Pg 926 0 R>>
endobj
305 0 obj
-<>
+<><>]/K[48]/Pg 926 0 R>>
endobj
306 0 obj
-<>
+<>
endobj
307 0 obj
-<>
+<>
endobj
308 0 obj
-<>
+<>
endobj
309 0 obj
-<>
+<>
endobj
310 0 obj
-<>
+</K[309 0 R]>>
endobj
311 0 obj
-<>
+<>
endobj
312 0 obj
-<>
+<>
endobj
313 0 obj
-<>
+</K[312 0 R]>>
endobj
314 0 obj
-<>
+<>
endobj
315 0 obj
-<>
+<>
endobj
316 0 obj
-<>
+<>
endobj
317 0 obj
-<>
+<>
endobj
318 0 obj
-<>
+<>]/K[317 0 R]>>
endobj
319 0 obj
-<>
+<>]/K[]>>
endobj
320 0 obj
-<>
+<>]/K[]>>
endobj
321 0 obj
-<>
+<>]/K[]>>
endobj
322 0 obj
-<>
+<>]/K[]>>
endobj
323 0 obj
-<>
+<>]/K[]>>
endobj
324 0 obj
-<>
+<>
endobj
325 0 obj
-<>
+<>
endobj
326 0 obj
-<>
+<>
endobj
327 0 obj
-<>
+<>
endobj
328 0 obj
-<>
+<>]/K[327 0 R]>>
endobj
329 0 obj
-<>
+<>]/K[]>>
endobj
330 0 obj
-<>
+<>]/K[]>>
endobj
331 0 obj
-<>
+<>]/K[]>>
endobj
332 0 obj
-<>
+<>]/K[]>>
endobj
333 0 obj
-<>
+<>]/K[]>>
endobj
334 0 obj
-<>
+<>
endobj
335 0 obj
-<>
+<>
endobj
336 0 obj
-<>
+<>
endobj
337 0 obj
-<>
+<>
endobj
338 0 obj
-<>
+<>]/K[337 0 R]>>
endobj
339 0 obj
-<>
+<>]/K[]>>
endobj
340 0 obj
-<>
+<>]/K[]>>
endobj
341 0 obj
-<>
+<>]/K[]>>
endobj
342 0 obj
-<>
+<>]/K[]>>
endobj
343 0 obj
-<>
+<>]/K[]>>
endobj
344 0 obj
-<>
+<>
endobj
345 0 obj
-<>
+[/ICCBased 943 0 R]
endobj
346 0 obj
-<>
+[/ICCBased 944 0 R]
endobj
347 0 obj
-<>
+[924 0 R/XYZ 70.86614 611.18085 0]
endobj
348 0 obj
-<>>>
+[924 0 R/XYZ 70.86614 257.25372 0]
endobj
349 0 obj
-<>>>
+[924 0 R/XYZ 70.86614 194.83234 0]
endobj
350 0 obj
-<>>>
+[924 0 R/XYZ 70.86614 114.498474 0]
endobj
351 0 obj
-<>>>
+[925 0 R/XYZ 70.86614 131.42535 0]
endobj
352 0 obj
-<>>>
+[926 0 R/XYZ 70.86614 611.458 0]
endobj
353 0 obj
-<>>>
+[926 0 R/XYZ 70.86614 516.048 0]
endobj
354 0 obj
-<>>>
+[926 0 R/XYZ 70.86614 450.79028 0]
endobj
355 0 obj
-<>>>
+[926 0 R/XYZ 70.86614 355.38025 0]
endobj
356 0 obj
-<>>>
+[926 0 R/XYZ 70.86614 180.70929 0]
endobj
357 0 obj
-<>>>
+<>
endobj
358 0 obj
-<>>>
+<>
endobj
359 0 obj
-<>>>
+<>
endobj
360 0 obj
-<>>>
+<>
endobj
361 0 obj
-<>>>
+<>
endobj
362 0 obj
-<>>>
+<>
endobj
363 0 obj
-<>>>
+<>
endobj
364 0 obj
-<>>>
+<>
endobj
365 0 obj
-<>>>
+<>
endobj
366 0 obj
-<>>>
+<>
endobj
367 0 obj
-<>>>
+<>
endobj
368 0 obj
-<>>>
+<>
endobj
369 0 obj
-<>>>
+<>
endobj
370 0 obj
-<>>>
+<>
endobj
371 0 obj
-<>>>
+<>
endobj
372 0 obj
-<>>>
+<>
endobj
373 0 obj
-<>>>
+<>
endobj
374 0 obj
-<>>>
+<>
endobj
375 0 obj
-<>>>
+<>
endobj
376 0 obj
-<>>>
+<>
endobj
377 0 obj
-<>>>
+<>
endobj
378 0 obj
-<>>>
+<>
endobj
379 0 obj
-<>>>
+<>
endobj
380 0 obj
-<>>>
+<>
endobj
381 0 obj
-<>>>
+<>
endobj
382 0 obj
-<>>>
+<>
endobj
383 0 obj
-<>>>
+<>
endobj
384 0 obj
-<>>>
+<>
endobj
385 0 obj
-<>>>
+<>
endobj
386 0 obj
-<>>>
+<>
endobj
387 0 obj
-<>>>
+<>
endobj
388 0 obj
-<>>>
+<>
endobj
389 0 obj
-<>>>
+<>
endobj
390 0 obj
-<>>>
+<>
endobj
391 0 obj
-<>>>
+<>
endobj
392 0 obj
-<>>>
+<>
endobj
393 0 obj
-<>>>
+<>
endobj
394 0 obj
-<>>>
+<>
endobj
395 0 obj
-<>>>
+<>
endobj
396 0 obj
-<>>>
+<>
endobj
397 0 obj
-<>/Pattern<>>>
+<>
endobj
398 0 obj
-<>>>
+<>
endobj
399 0 obj
-<>>>
+<>
endobj
400 0 obj
-<>>>
+<>
endobj
401 0 obj
-<>>>
+<>
endobj
402 0 obj
-<>>>
+<>
endobj
403 0 obj
-<>>>
+<>
endobj
404 0 obj
-<>/ExtGState<>/Pattern<>>>
+<>
endobj
405 0 obj
-<>>>
+<>
endobj
406 0 obj
-<>/Font<>>>
+<>
endobj
407 0 obj
-<>/Font<>>>
+<>
endobj
408 0 obj
-<>/XObject<>/Font<>>>
+<>
endobj
409 0 obj
-<>/Font<>>>
+<>
endobj
410 0 obj
-<>/Font<>>>
+<>
endobj
411 0 obj
-<>
+<>
endobj
412 0 obj
-<>
+<>
endobj
413 0 obj
-<>
+<>
endobj
414 0 obj
-<>
+<>
endobj
415 0 obj
-<>
+<>
endobj
416 0 obj
-<>
+<>
endobj
417 0 obj
-<>
+<>
endobj
418 0 obj
-<>
+<>
endobj
419 0 obj
-<>
+<>>>
endobj
420 0 obj
-<>
+<>>>
endobj
421 0 obj
-<>
+<>>>
endobj
422 0 obj
-<>
+<>>>
endobj
423 0 obj
-<>
+<>>>
endobj
424 0 obj
-<>
+<>>>
endobj
425 0 obj
-<>
+<>>>
endobj
426 0 obj
-<>
+<>>>
endobj
427 0 obj
-<>
+<>>>
endobj
428 0 obj
-<>
+<>>>
endobj
429 0 obj
-<>
+<>>>
endobj
430 0 obj
-<>
+<>>>
endobj
431 0 obj
-<>
+<>>>
endobj
432 0 obj
-<>
+<>>>
endobj
433 0 obj
-<>
+<>>>
endobj
434 0 obj
-<>
+<>>>
endobj
435 0 obj
-<>
+<>>>
endobj
436 0 obj
-<>
+<>>>
endobj
437 0 obj
-<>
+<>>>
endobj
438 0 obj
-<>
+<>>>
endobj
439 0 obj
-<>
+<>>>
endobj
440 0 obj
-<>
+<>>>
endobj
441 0 obj
-<>
+<>>>
endobj
442 0 obj
-<>
+<>>>
endobj
443 0 obj
-<>
+<>>>
endobj
444 0 obj
-<>
+<>>>
endobj
445 0 obj
-<>
+<>>>
endobj
446 0 obj
-<>
+<>>>
endobj
447 0 obj
-<>
+<>>>
endobj
448 0 obj
-<>
+<>>>
endobj
449 0 obj
-<>
+<>>>
endobj
450 0 obj
-<>
+<>>>
endobj
451 0 obj
-<>
+<>>>
endobj
452 0 obj
-<>
+<>>>
endobj
453 0 obj
-<>
+<>>>
endobj
454 0 obj
-<>
+<>>>
endobj
455 0 obj
-<>
+<>>>
endobj
456 0 obj
-<>
+<>>>
endobj
457 0 obj
-<>
+<>>>
endobj
458 0 obj
-<>
+<>>>
endobj
459 0 obj
-<>
+<>>>
endobj
460 0 obj
-<>
+<>>>
endobj
461 0 obj
-<>
+<>>>
endobj
462 0 obj
-<>
+<>>>
endobj
463 0 obj
-<>
+<>>>
endobj
464 0 obj
-<>
+<>>>
endobj
465 0 obj
-<>
+<>>>
endobj
466 0 obj
-<>
+<>>>
endobj
467 0 obj
-<>/FontDescriptor 468 0 R/DW 0/CIDToGIDMap/Identity/W[0 0 697.2656 1 1 765.1367 2 2 423.82812 3 3 582.03125 4 4 546.875 5 5 295.89844 6 6 647.9492 7 7 625.4883 8 8 516.60156 9 9 645.5078 10 21 1000 22 22 616.6992 23 23 285.64453 24 24 297.85156 25 28 1000 29 29 616.6992 30 37 1000 38 38 616.6992 39 49 1000 50 50 472.65625 51 52 1000 53 53 616.6992 54 56 1000 57 57 616.6992 58 64 1000 65 65 616.6992 66 67 1000 68 68 616.6992 69 72 1000 73 73 616.6992 74 78 1000]>>
+<>>>
endobj
468 0 obj
-<>
+<>/Pattern<>>>
endobj
469 0 obj
-<>
+<>>>
endobj
470 0 obj
-<>/FontDescriptor 471 0 R/DW 0/CIDToGIDMap/Identity/W[0 15 549.8047]>>
+<>>>
endobj
471 0 obj
-<>
+<>>>
endobj
472 0 obj
-<>
+<>>>
endobj
473 0 obj
-<>/FontDescriptor 474 0 R/DW 0/CIDToGIDMap/Identity/W[0 38 549.8047]>>
+<>>>
endobj
474 0 obj
-<>
+<>>>
endobj
475 0 obj
-<>
+<>/ExtGState<>/Pattern<>>>
endobj
476 0 obj
-<>/FontDescriptor 477 0 R/DW 0/CIDToGIDMap/Identity/W[0 0 697.2656 1 1 372.5586 2 2 567.3828 3 3 501.46484 4 4 615.72266 5 5 432.6172 6 6 266.11328 7 7 552.7344 8 8 638.6719 9 9 333.98438 10 10 376.95312 11 11 577.14844 12 12 573.2422 13 13 703.6133 14 14 746.58203 15 15 295.89844 16 16 240.72266 17 17 761.71875 18 18 652.83203 19 19 531.25 20 20 376.95312 21 21 240.72266 22 22 346.6797 23 23 266.11328 24 24 240.72266 25 25 635.7422 26 26 381.83594 27 27 616.21094 28 28 462.89062 29 29 491.69922 30 30 586.4258 31 31 240.72266 32 32 586.4258 33 33 638.6719 34 34 333.98438 35 104 1000 105 105 586.4258 106 106 427.2461 107 108 1000 109 110 586.4258 111 111 741.6992 112 134 1000 135 135 1080.0781 136 175 1000 176 176 544.4336 177 177 639.64844 178 178 616.21094 179 181 1000 182 182 439.45312 183 198 1000 199 199 549.8047 200 200 937.0117 201 201 267.08984 202 252 1000 253 253 814.9414 254 254 812.9883 255 255 645.01953 256 263 1000 264 264 586.4258 265 266 1000 267 267 668.9453 268 268 620.1172 269 280 1000 281 282 741.6992 283 283 586.4258 284 284 1000 285 285 586.4258 286 286 889.64844 287 287 540.03906 288 351 1000 352 352 773.4375 353 353 529.2969 354 354 293.9453 355 355 639.64844 356 360 1000 361 361 789.5508 362 362 506.83594 363 364 1000]>>
+<>>>
endobj
477 0 obj
-<>
+<>/ExtGState<>/Font<>>>
endobj
478 0 obj
-<>
+<>/ExtGState<>/Font<>>>
endobj
479 0 obj
-<>/FontDescriptor 480 0 R/DW 0/CIDToGIDMap/Identity/W[0 0 697.2656 1 2 1000 3 3 297.85156 4 4 1028.3203 5 5 577.6367 6 6 423.82812 7 7 596.1914 8 8 664.5508 9 9 657.22656 10 10 851.5625 11 11 647.9492 12 50 1000 51 51 751.9531 52 52 472.65625 53 53 601.5625 54 54 540.03906 55 57 1000 58 58 821.28906 59 59 335.44922 60 64 1000 65 65 818.3594 66 66 848.14453 67 67 700.1953 68 76 1000]>>
+<>/Font<>>>
endobj
480 0 obj
-<>
+<>/XObject<>/Font<>>>
endobj
481 0 obj
-<>
+<>/Font<>>>
endobj
482 0 obj
-<>/Encoding<>>>
+<>/Font<>>>
endobj
483 0 obj
-<>
+<>
endobj
484 0 obj
-<>/FontDescriptor 485 0 R/DW 0/CIDToGIDMap/Identity/W[0 27 602.0508]>>
+<>
endobj
485 0 obj
-<>
+<>
endobj
486 0 obj
-<>
+<>
endobj
487 0 obj
-<>/FontDescriptor 488 0 R/DW 0/CIDToGIDMap/Identity/W[0 6 1000]>>
+<>
endobj
488 0 obj
-<>
+<>
endobj
489 0 obj
-<>
+<>
endobj
490 0 obj
-<>
+<>
endobj
491 0 obj
-<>
+<>
endobj
492 0 obj
-<>
+<>
endobj
493 0 obj
-<>
+<>
endobj
494 0 obj
-<>
+<>
endobj
495 0 obj
-<>
+<>
endobj
496 0 obj
-<>
+<>
endobj
497 0 obj
-<>
+<>
endobj
498 0 obj
-<>
+<>
endobj
499 0 obj
-<>
+<>
endobj
500 0 obj
-<>
+<>
endobj
501 0 obj
-<>
+<>
endobj
502 0 obj
-<>
+<>
endobj
503 0 obj
-<>
+<>
endobj
504 0 obj
-<>
+<>
endobj
505 0 obj
-<>
+<>
endobj
506 0 obj
-<>
+<>
endobj
507 0 obj
-<>
+<>
endobj
508 0 obj
-<>
+<>
endobj
509 0 obj
-<>
+<>
endobj
510 0 obj
-<>
+<>
endobj
511 0 obj
-<>
+<>
endobj
512 0 obj
-<>
+<>
endobj
513 0 obj
-<>
+<>
endobj
514 0 obj
-<>
+<>
endobj
515 0 obj
-<>
+<>
endobj
516 0 obj
-<>
+<>
endobj
517 0 obj
-<>
+<>
endobj
518 0 obj
-<>
+<>
endobj
519 0 obj
-<>
+<>
endobj
520 0 obj
-<>
+<>
endobj
521 0 obj
-<>
+<>
endobj
522 0 obj
-<>
+<>
endobj
523 0 obj
-<>
+<>
endobj
524 0 obj
-<>
+<>
endobj
525 0 obj
-<>
+<>
endobj
526 0 obj
-<>
+<>
endobj
527 0 obj
-<>
+<>
endobj
528 0 obj
-<>
+<>
endobj
529 0 obj
-<>
+<>
endobj
530 0 obj
-<>
+<>
endobj
531 0 obj
-<>
+<>
endobj
532 0 obj
-<>
+<>
endobj
533 0 obj
-<>
+<>
endobj
534 0 obj
-<>
+<>
endobj
535 0 obj
-<>
+<>
endobj
536 0 obj
-<>
+<>
endobj
537 0 obj
-<>
+<>
endobj
538 0 obj
-<>
+<>
endobj
539 0 obj
-<>
+<>/FontDescriptor 540 0 R/DW 0/CIDToGIDMap/Identity/W[0 0 697.2656 1 1 765.1367 2 2 423.82812 3 3 582.03125 4 4 546.875 5 5 295.89844 6 6 647.9492 7 33 1000 34 34 616.6992 35 37 1000 38 38 616.6992 39 47 1000 48 48 616.6992 49 50 1000 51 51 616.6992 52 55 1000 56 56 616.6992 57 63 1000 64 64 616.6992 65 66 1000 67 67 616.6992 68 71 1000 72 72 616.6992 73 77 1000 78 78 297.85156 79 79 1028.3203 80 80 577.6367 81 81 596.1914 82 82 664.5508 83 83 657.22656 84 84 851.5625 85 89 1000 90 90 439.45312 91 98 1000 99 99 472.65625 100 123 1000 124 124 751.9531 125 125 601.5625 126 126 540.03906 127 128 1000 129 129 821.28906 130 130 335.44922 131 134 1000 135 135 818.3594 136 136 848.14453 137 137 700.1953 138 146 1000]>>
endobj
540 0 obj
-<>
+<>
endobj
541 0 obj
-<>
+<>
endobj
542 0 obj
-<>
+<>/FontDescriptor 543 0 R/DW 0/CIDToGIDMap/Identity/W[0 0 697.2656 1 12 1000 13 13 573.2422 14 14 549.8047 15 15 668.9453 16 16 773.4375 17 17 812.9883 18 18 293.9453 19 19 703.6133 20 20 513.1836 21 21 295.89844 22 22 652.83203 23 23 611.8164 24 24 814.9414 25 25 240.72266 26 28 1000 29 29 743.65234 30 30 577.14844 31 35 1000 36 36 524.90234 37 37 586.4258 38 38 240.72266 39 39 586.4258 40 46 1000 47 47 586.4258 48 59 1000 60 60 381.83594 61 61 567.3828 62 62 266.11328 63 63 616.21094 64 64 586.4258 65 65 635.7422 66 66 346.6797 67 67 639.64844 68 68 372.5586 69 69 552.7344 70 70 266.11328 71 74 1000 75 75 586.4258 76 81 1000 82 82 427.2461 83 133 1000 134 134 586.4258 135 135 615.72266 136 138 1000 139 139 586.4258 140 140 741.6992 141 151 1000 152 152 1080.0781 153 191 1000 192 192 638.6719 193 193 501.46484 194 194 544.4336 195 195 639.64844 196 196 616.21094 197 212 1000 213 213 937.0117 214 214 267.08984 215 222 1000 223 223 645.01953 224 224 638.1836 225 225 1000 226 226 529.2969 227 227 462.89062 228 228 638.6719 229 229 448.2422 230 230 240.72266 231 231 639.64844 232 232 741.6992 233 234 333.98438 235 286 1000 287 287 620.1172 288 297 1000 298 299 741.6992 300 300 586.4258 301 301 432.6172 302 302 1000 303 303 889.64844 304 304 540.03906 305 370 1000 371 371 789.5508 372 372 506.83594 373 374 1000]>>
endobj
543 0 obj
-<>
+<>
endobj
544 0 obj
-<>
+<>
endobj
545 0 obj
-<>
+<>/Encoding<>>>
endobj
546 0 obj
-<>
+<>
endobj
547 0 obj
-<>
+<>
endobj
548 0 obj
-<>
+<>
endobj
549 0 obj
-<>
+<>
endobj
550 0 obj
-<>
+<>
endobj
551 0 obj
-<>
+<>
endobj
552 0 obj
-<>
+<>
endobj
553 0 obj
-<>
+<>
endobj
554 0 obj
-<>
+<>
endobj
555 0 obj
-<>
+<>
endobj
556 0 obj
-<>
+<>
endobj
557 0 obj
-<>
+<>
endobj
558 0 obj
-<>
+<>
endobj
559 0 obj
-<>
+<>
endobj
560 0 obj
-<>
+<>
endobj
561 0 obj
-<>
+<>
endobj
562 0 obj
-<>
+<>
endobj
563 0 obj
-<>
+<>
endobj
564 0 obj
-<>
+<>
endobj
565 0 obj
-<>
+<>
endobj
566 0 obj
-<>
+<>
endobj
567 0 obj
-<>
+<>
endobj
568 0 obj
-<>
+<>
endobj
569 0 obj
-<>
+<>
endobj
570 0 obj
-<>
+<>
endobj
571 0 obj
-<>
+<>
endobj
572 0 obj
-<>
+<>
endobj
573 0 obj
-<>
+<>
endobj
574 0 obj
-<>
+<>
endobj
575 0 obj
-<>
+<>
endobj
576 0 obj
-<>
+<>
endobj
577 0 obj
<>
endobj
578 0 obj
-<>
+<>
endobj
579 0 obj
-<>
+<>
endobj
580 0 obj
-<>
+<>
endobj
581 0 obj
-<>
+<>
endobj
582 0 obj
-<>
+<>
endobj
583 0 obj
-<>
+<>
endobj
584 0 obj
-<>
+<>
endobj
585 0 obj
-<>
+<>
endobj
586 0 obj
-<>
+<>
endobj
587 0 obj
-<>
+<>
endobj
588 0 obj
-<>
+<>
endobj
589 0 obj
-<>
-endobj
-590 0 obj
-<>
-endobj
-591 0 obj
-<>
-endobj
-592 0 obj
-<>
-endobj
-593 0 obj
-<>
-endobj
-594 0 obj
-<>
-endobj
-595 0 obj
-<>
-endobj
-596 0 obj
-<>
-endobj
-597 0 obj
-<>
-endobj
-598 0 obj
-<>
-endobj
-599 0 obj
-<>
-endobj
-600 0 obj
-<>
-endobj
-601 0 obj
-<>
-endobj
-602 0 obj
-<>
-endobj
-603 0 obj
-<>
-endobj
-604 0 obj
-<>
-endobj
-605 0 obj
-<>
-endobj
-606 0 obj
-<>
-endobj
-607 0 obj
-<>
-endobj
-608 0 obj
-<>
-endobj
-609 0 obj
-<>
-endobj
-610 0 obj
-<>
-endobj
-611 0 obj
-<>
-endobj
-612 0 obj
-<>
-endobj
-613 0 obj
-<>
-endobj
-614 0 obj
-<>
-endobj
-615 0 obj
-<>
-endobj
-616 0 obj
-<>
-endobj
-617 0 obj
-<>
-endobj
-618 0 obj
-<>
-endobj
-619 0 obj
-<>
-endobj
-620 0 obj
-<>
-endobj
-621 0 obj
-<>
-endobj
-622 0 obj
-<>
-endobj
-623 0 obj
-<>
-endobj
-624 0 obj
-<>
-endobj
-625 0 obj
-<>
-endobj
-626 0 obj
-<>
-endobj
-627 0 obj
-<>
-endobj
-628 0 obj
-<>
-endobj
-629 0 obj
-<>
-endobj
-630 0 obj
-<>
-endobj
-631 0 obj
-<>
-endobj
-632 0 obj
-<>
-endobj
-633 0 obj
-<>
-endobj
-634 0 obj
-<>
-endobj
-635 0 obj
-<>
-endobj
-636 0 obj
-<>
-endobj
-637 0 obj
-<>
-endobj
-638 0 obj
-<>
-endobj
-639 0 obj
-<>
-endobj
-640 0 obj
-<>
-endobj
-641 0 obj
-<>
-endobj
-642 0 obj
-<>
-endobj
-643 0 obj
-<>
-endobj
-644 0 obj
-<>
-endobj
-645 0 obj
-<>
-endobj
-646 0 obj
-<>
-endobj
-647 0 obj
-<>
-endobj
-648 0 obj
-<>
-endobj
-649 0 obj
-<>
-endobj
-650 0 obj
-<>
-endobj
-651 0 obj
-<>
-endobj
-652 0 obj
-<>
-endobj
-653 0 obj
-<>
-endobj
-654 0 obj
-<>
-endobj
-655 0 obj
-<>
-endobj
-656 0 obj
-<>
-endobj
-657 0 obj
-<>
-endobj
-658 0 obj
-<>
-endobj
-659 0 obj
-<>
-endobj
-660 0 obj
-<>
-endobj
-661 0 obj
-<>
-endobj
-662 0 obj
-<>
-endobj
-663 0 obj
-<>
-endobj
-664 0 obj
-<>
-endobj
-665 0 obj
-<>
-endobj
-666 0 obj
-<>
-endobj
-667 0 obj
-<>
-endobj
-668 0 obj
-<>
-endobj
-669 0 obj
-<>
-endobj
-670 0 obj
-<>
-endobj
-671 0 obj
-<>
-endobj
-672 0 obj
-<>
-endobj
-673 0 obj
-<>
-endobj
-674 0 obj
-<>
-endobj
-675 0 obj
-<>
-endobj
-676 0 obj
-<>
-endobj
-677 0 obj
-<>
-endobj
-678 0 obj
-<>
-endobj
-679 0 obj
-<>
-endobj
-680 0 obj
-<>
-endobj
-681 0 obj
-<>
-endobj
-682 0 obj
-<>
-endobj
-683 0 obj
-<>
-endobj
-684 0 obj
-<>
-endobj
-685 0 obj
-<>
-endobj
-686 0 obj
-<>
-endobj
-687 0 obj
-<>
-endobj
-688 0 obj
-<>
-endobj
-689 0 obj
-<>
-endobj
-690 0 obj
-<>
-endobj
-691 0 obj
-<>
-endobj
-692 0 obj
-<>
-endobj
-693 0 obj
-<>
-endobj
-694 0 obj
-<>
-endobj
-695 0 obj
-<>
-endobj
-696 0 obj
-<>
-endobj
-697 0 obj
-<>
-endobj
-698 0 obj
-<>
-endobj
-699 0 obj
-<>
-endobj
-700 0 obj
-<>
-endobj
-701 0 obj
-<>
-endobj
-702 0 obj
<>
endobj
+590 0 obj
+<>
+endobj
+591 0 obj
+<>
+endobj
+592 0 obj
+<>
+endobj
+593 0 obj
+<>
+endobj
+594 0 obj
+<>
+endobj
+595 0 obj
+<>
+endobj
+596 0 obj
+<>
+endobj
+597 0 obj
+<>
+endobj
+598 0 obj
+<>
+endobj
+599 0 obj
+<>
+endobj
+600 0 obj
+<>
+endobj
+601 0 obj
+<>
+endobj
+602 0 obj
+<>
+endobj
+603 0 obj
+<>
+endobj
+604 0 obj
+<>
+endobj
+605 0 obj
+<>
+endobj
+606 0 obj
+<>
+endobj
+607 0 obj
+<>
+endobj
+608 0 obj
+<>
+endobj
+609 0 obj
+<>
+endobj
+610 0 obj
+<>
+endobj
+611 0 obj
+<>
+endobj
+612 0 obj
+<>
+endobj
+613 0 obj
+<>
+endobj
+614 0 obj
+<>
+endobj
+615 0 obj
+<>
+endobj
+616 0 obj
+<>
+endobj
+617 0 obj
+<>
+endobj
+618 0 obj
+<>
+endobj
+619 0 obj
+<>
+endobj
+620 0 obj
+<>
+endobj
+621 0 obj
+<>
+endobj
+622 0 obj
+<>
+endobj
+623 0 obj
+<>
+endobj
+624 0 obj
+<>
+endobj
+625 0 obj
+<>
+endobj
+626 0 obj
+<>
+endobj
+627 0 obj
+<>
+endobj
+628 0 obj
+<>
+endobj
+629 0 obj
+<>
+endobj
+630 0 obj
+<>
+endobj
+631 0 obj
+<>
+endobj
+632 0 obj
+<>
+endobj
+633 0 obj
+<>
+endobj
+634 0 obj
+<>
+endobj
+635 0 obj
+<>
+endobj
+636 0 obj
+<>
+endobj
+637 0 obj
+<>
+endobj
+638 0 obj
+<>
+endobj
+639 0 obj
+<>
+endobj
+640 0 obj
+<>
+endobj
+641 0 obj
+<>
+endobj
+642 0 obj
+<>
+endobj
+643 0 obj
+<>
+endobj
+644 0 obj
+<>
+endobj
+645 0 obj
+<>
+endobj
+646 0 obj
+<>
+endobj
+647 0 obj
+<>
+endobj
+648 0 obj
+<>
+endobj
+649 0 obj
+<>
+endobj
+650 0 obj
+<>
+endobj
+651 0 obj
+<>
+endobj
+652 0 obj
+<>
+endobj
+653 0 obj
+<>
+endobj
+654 0 obj
+<>
+endobj
+655 0 obj
+<>
+endobj
+656 0 obj
+<>
+endobj
+657 0 obj
+<>
+endobj
+658 0 obj
+<>
+endobj
+659 0 obj
+<>
+endobj
+660 0 obj
+<>
+endobj
+661 0 obj
+<>
+endobj
+662 0 obj
+<>
+endobj
+663 0 obj
+<>
+endobj
+664 0 obj
+<>
+endobj
+665 0 obj
+<>
+endobj
+666 0 obj
+<>
+endobj
+667 0 obj
+<>
+endobj
+668 0 obj
+<>
+endobj
+669 0 obj
+<>
+endobj
+670 0 obj
+<>
+endobj
+671 0 obj
+<>
+endobj
+672 0 obj
+<>
+endobj
+673 0 obj
+<>
+endobj
+674 0 obj
+<>
+endobj
+675 0 obj
+<>
+endobj
+676 0 obj
+<>
+endobj
+677 0 obj
+<>
+endobj
+678 0 obj
+<>
+endobj
+679 0 obj
+<>
+endobj
+680 0 obj
+<>
+endobj
+681 0 obj
+<>
+endobj
+682 0 obj
+<>
+endobj
+683 0 obj
+<>
+endobj
+684 0 obj
+<>
+endobj
+685 0 obj
+<>
+endobj
+686 0 obj
+<>
+endobj
+687 0 obj
+<>
+endobj
+688 0 obj
+<>
+endobj
+689 0 obj
+<>
+endobj
+690 0 obj
+<>
+endobj
+691 0 obj
+<>
+endobj
+692 0 obj
+<>
+endobj
+693 0 obj
+<>
+endobj
+694 0 obj
+<>
+endobj
+695 0 obj
+<>
+endobj
+696 0 obj
+<>
+endobj
+697 0 obj
+<>
+endobj
+698 0 obj
+<>
+endobj
+699 0 obj
+<>
+endobj
+700 0 obj
+<>
+endobj
+701 0 obj
+<>
+endobj
+702 0 obj
+<>
+endobj
703 0 obj
-<>
+<>
endobj
704 0 obj
-<>
+<>
endobj
705 0 obj
-<>
+<>
endobj
706 0 obj
-<>
+<>
endobj
707 0 obj
-<>
+<>
endobj
708 0 obj
-<>
+<>
endobj
709 0 obj
-<>
+<>
endobj
710 0 obj
-<>
+<>
endobj
711 0 obj
-<>
+<>
endobj
712 0 obj
-<>
+<>
endobj
713 0 obj
-<>
+<>
endobj
714 0 obj
-<>
+<>
endobj
715 0 obj
-<>
+<>
endobj
716 0 obj
-<>
+<>
endobj
717 0 obj
-<>
+<>
endobj
718 0 obj
-<>
+<>
endobj
719 0 obj
-<>
+<>
endobj
720 0 obj
-<>
+<>
endobj
721 0 obj
-<>
+<>
endobj
722 0 obj
-<>
+<>
endobj
723 0 obj
-<>
+<>
endobj
724 0 obj
-<>
+<>
endobj
725 0 obj
-<>
+<>
endobj
726 0 obj
-<>
+<>
endobj
727 0 obj
-<>
-endobj
-728 0 obj
-<>
-endobj
-729 0 obj
-<>
-endobj
-730 0 obj
-<>
-endobj
-731 0 obj
-<>
-endobj
-732 0 obj
-<>
-endobj
-733 0 obj
<>
endobj
+728 0 obj
+<>
+endobj
+729 0 obj
+<>
+endobj
+730 0 obj
+<>
+endobj
+731 0 obj
+<>
+endobj
+732 0 obj
+<>
+endobj
+733 0 obj
+<>
+endobj
734 0 obj
-<>
+<>
endobj
735 0 obj
-<>
+<>
endobj
736 0 obj
-<>
+<>
endobj
737 0 obj
-<>
+<>
endobj
738 0 obj
-<>
+<>
endobj
739 0 obj
-<>
+<>
endobj
740 0 obj
-<>
+<>
endobj
741 0 obj
-<>
+<>
endobj
742 0 obj
-<>
+<>
endobj
743 0 obj
<>
endobj
744 0 obj
-<>
+<>
endobj
745 0 obj
-<>
+<>
endobj
746 0 obj
-<>
+<>
endobj
747 0 obj
-<>
+<>
endobj
748 0 obj
-<>
+<>
endobj
749 0 obj
-<>
+<>
endobj
750 0 obj
-<>
+<>
endobj
751 0 obj
<>
endobj
752 0 obj
-<>
+<>
endobj
753 0 obj
-<>
+<>
endobj
754 0 obj
-<>
+<>
endobj
755 0 obj
<>
endobj
756 0 obj
-<>
+<>
endobj
757 0 obj
-<>
+<>
endobj
758 0 obj
-<>
+<>
endobj
759 0 obj
-<>
+<>
endobj
760 0 obj
-<>
+<>
endobj
761 0 obj
-<>
+<>
endobj
762 0 obj
-<>
+<>
endobj
763 0 obj
-<>
+<>
endobj
764 0 obj
-<>
+<>
endobj
765 0 obj
-<>
+<>
endobj
766 0 obj
-<>
+<>
endobj
767 0 obj
-<>
+<>
endobj
768 0 obj
-<>
+<>
endobj
769 0 obj
-<>
+<>
endobj
770 0 obj
-<>
+<>
endobj
771 0 obj
-<>
+<>
endobj
772 0 obj
-<>
+<>
endobj
773 0 obj
-<>
+<>
endobj
774 0 obj
-<>
+<>
endobj
775 0 obj
-<>
+<>
endobj
776 0 obj
-<>
+<>
endobj
777 0 obj
-<>
+<>
endobj
778 0 obj
-<>
-endobj
-779 0 obj
-<>
-endobj
-780 0 obj
-<>
-endobj
-781 0 obj
-<>
-endobj
-782 0 obj
-<>
-endobj
-783 0 obj
-<>
-endobj
-784 0 obj
-<>
-endobj
-785 0 obj
-<>
-endobj
-786 0 obj
<>
endobj
-787 0 obj
-<>
+779 0 obj
+<>
endobj
-788 0 obj
-<>
-endobj
-789 0 obj
-<>
-endobj
-790 0 obj
-<>
-endobj
-791 0 obj
-<>
-endobj
-792 0 obj
-<>
-endobj
-793 0 obj
+780 0 obj
<>
endobj
+781 0 obj
+<>
+endobj
+782 0 obj
+<>
+endobj
+783 0 obj
+<>
+endobj
+784 0 obj
+<>
+endobj
+785 0 obj
+<>
+endobj
+786 0 obj
+<>
+endobj
+787 0 obj
+<>
+endobj
+788 0 obj
+<>
+endobj
+789 0 obj
+<>
+endobj
+790 0 obj
+<>
+endobj
+791 0 obj
+<>
+endobj
+792 0 obj
+<>
+endobj
+793 0 obj
+<>
+endobj
794 0 obj
-<>
+<>
endobj
795 0 obj
-<>
+<>
endobj
796 0 obj
-<>
+<>
endobj
797 0 obj
-<>
+<>
endobj
798 0 obj
-<>
+<>
endobj
799 0 obj
-<>
+<>
endobj
800 0 obj
-<>
+<>
endobj
801 0 obj
-<>
+<>
endobj
802 0 obj
-<>
+<>
endobj
803 0 obj
-<>
+<>
endobj
804 0 obj
-<>
+<>
endobj
805 0 obj
-<>
+<>
endobj
806 0 obj
-<>
+<>
endobj
807 0 obj
-<>
+<>
endobj
808 0 obj
-<>
+<>
endobj
809 0 obj
-<>
+<>
endobj
810 0 obj
-<>
+<>
endobj
811 0 obj
-<>
+<>
endobj
812 0 obj
-<>
+<>
endobj
813 0 obj
-<>
+<>
endobj
814 0 obj
-<>
+<>
endobj
815 0 obj
-<>
+<>
endobj
816 0 obj
-<>
+<>
endobj
817 0 obj
-<>
+<>
endobj
818 0 obj
-<>
+<>
endobj
819 0 obj
-<>
+<>
endobj
820 0 obj
-<>
+<>
endobj
821 0 obj
-<>
+<>
endobj
822 0 obj
-<>
+<>
endobj
823 0 obj
-<>
+<>
endobj
824 0 obj
-<>
+<>
endobj
825 0 obj
-<>
+<>
endobj
826 0 obj
-<>
+<>
endobj
827 0 obj
-<>
+<>
endobj
828 0 obj
-<>
+<>
endobj
829 0 obj
-<>
+<>
endobj
830 0 obj
-<>
+<>
endobj
831 0 obj
-<>
+<>
endobj
832 0 obj
-<>
+<>
endobj
833 0 obj
-<>
+<>
endobj
834 0 obj
-<>
+<>
endobj
835 0 obj
-<>
+<>
endobj
836 0 obj
-<>
+<>
endobj
837 0 obj
-<>
+<>
endobj
838 0 obj
-<>
+<>
endobj
839 0 obj
-<>
+<>
endobj
840 0 obj
-<>
+<>
endobj
841 0 obj
-<>
+<>
endobj
842 0 obj
-<>
+<>
endobj
843 0 obj
-<>
+<>
endobj
844 0 obj
-<>
+<>
endobj
845 0 obj
-<>
+<>
endobj
846 0 obj
-<>
+<>
endobj
847 0 obj
-<>
+<>
endobj
848 0 obj
-<>
+<>
endobj
849 0 obj
-<>
+<>
endobj
850 0 obj
-<>
+<>
endobj
851 0 obj
-<>
+<>
endobj
852 0 obj
-<>
+<>
endobj
853 0 obj
-<>
+<>
endobj
854 0 obj
-<>
+<>
endobj
855 0 obj
-<>
+<>
endobj
856 0 obj
-<>
+<>
endobj
857 0 obj
-<>
+<>
endobj
858 0 obj
-<>
+<>
endobj
859 0 obj
-<>
+<>
endobj
860 0 obj
-<>
+<>
endobj
861 0 obj
-<>
+<>
endobj
862 0 obj
-<>
+<>
endobj
863 0 obj
-<>
+<>
endobj
864 0 obj
-<>
+<>
endobj
865 0 obj
-<>
+<>
endobj
866 0 obj
-<>
+<>
endobj
867 0 obj
-<>
+<>
endobj
868 0 obj
-<>
+<>
endobj
869 0 obj
-<>
+<>
endobj
870 0 obj
-<>
-stream
-x
- 6
-endstream
+<>
endobj
871 0 obj
-<>
-stream
-xmn:~
-v! ]wR!E^kGbR$"o_:)6~͐3h\|x裏xGLץ͗Ӽ)]q\fSsd2\ݥ>>>m2/_ιՁlͪ[.b;%yY(r"A|F=Ym >_z>$h$";Em$>[zTW!#>UiCΌ|]I|&4`ħ[mgZ[ds
-H3+]f>H>ۈ:K⳦$>5j&{tE&A$Y#I|qJ|u "E|ޣ
-sQT<||1g|Gf|*TW%>YfE|ħщ%#3|J)tE4:x"h+}*i+m~5:dE|69B|]'п5Ӊ/|gOQimB놶~5-մhs
c|4өIkA[ӡ9
-endstream
+<>
endobj
872 0 obj
-<>
-stream
-xܼ}|?|]ξfg}dwoIv7!D !""$H)R*QHZkz㱶,q})XN(Xkpɱȡ<{vyx6gyٙ{} # 57nNYe7}C Q 5w??Z `~kU7-_Yrz'
Vݴڦ} ` UmdtJ ; nͺKw
- |Ӑanjn* Cnߠ ~Z]s? nb 0_3/" eoL) gbɿ0ҫg?ҝ 8o {p\]_j6`78vc^nF*8B>G+|uᗨEp'@?|7M l2xv6 pއ+P2ppi` @v`-|/`9ZJ w7`|^xV8#: ?CsȢhC7b9F0W/>ܷ'\ɫ 7,-f9]mWK-f^5.ITcѪʊH8~_YSRv9v""Ѡi9
3ՙ)kzĀşJYM4{o~Sg5g
eP{L>1 >.XO=ʐМ0OԚ9KvT@({2/S6+!_ ǜۅT&LE4CBBfwDeЖA5~+e'At\\yK}6Ϸ߾ϒs3G77x
-o0ڍ"c
-GS9c?]Q%;9Mt3p]_VUUW3pm_xHaP-#N {
-r<&tݟ`E<&fFs DTΐAzdl:zdd1sϽ#WvKoZnWfe'/4etM1R"n?3㊪6TD@Ff4}c_dX&_!՝`283NZ*q5e6-<
-`n6$2kQU4u%=5Æ匙2>;3@wW;T5 {NjIOZEd\Gd!e*1gpP-
-ӔjC_ǧ[qٺs}aǦ$4O~?s]5fj%}KxߵKh{A ߷ A>&}^Hj-Źz `D=ʪY. ܘ%:!Ea$ pcfƬ._7֩@_L2h$Lx#:t/"Ygi_Vgqd^=J'_}ݒgMPu-rci mʳ]7#Gsn, {R!0fqƨVfqdIk4z6
3HDMYDKHϲɧ9Ë%{'a5r(eRƻ|.]eVDlebh`Eݲu[5MksZ~95jB;en5!NE 1鲄rpحdEG<<,]^U&N*_]'-_R彳U+] f{@o"3z> 圃~#ՐJEW-Z{slg{\˟n4?\0h&Ǥv0<