dsh-convert-core 0.1.0-alpha.2 → 0.1.0-alpha.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. package/README.md +45 -13
  2. package/lib/adapters/anydoc.d.ts.map +1 -1
  3. package/lib/adapters/anydoc.js +4 -3
  4. package/lib/adapters/anydoc.js.map +1 -1
  5. package/lib/adapters/index.d.ts +36 -2
  6. package/lib/adapters/index.d.ts.map +1 -1
  7. package/lib/adapters/index.js +62 -7
  8. package/lib/adapters/index.js.map +1 -1
  9. package/lib/adapters/types.d.ts +21 -1
  10. package/lib/adapters/types.d.ts.map +1 -1
  11. package/lib/adapters/types.js.map +1 -1
  12. package/lib/adapters/web.d.ts +29 -0
  13. package/lib/adapters/web.d.ts.map +1 -0
  14. package/lib/adapters/web.js +166 -0
  15. package/lib/adapters/web.js.map +1 -0
  16. package/lib/contract.d.ts +55 -3
  17. package/lib/contract.d.ts.map +1 -1
  18. package/lib/contract.js +11 -3
  19. package/lib/contract.js.map +1 -1
  20. package/lib/delivery.d.ts +6 -1
  21. package/lib/delivery.d.ts.map +1 -1
  22. package/lib/delivery.js +5 -0
  23. package/lib/delivery.js.map +1 -1
  24. package/lib/http.d.ts.map +1 -1
  25. package/lib/http.js +17 -1
  26. package/lib/http.js.map +1 -1
  27. package/lib/service.d.ts +44 -0
  28. package/lib/service.d.ts.map +1 -1
  29. package/lib/service.js +184 -17
  30. package/lib/service.js.map +1 -1
  31. package/lib/web/convert.d.ts +39 -0
  32. package/lib/web/convert.d.ts.map +1 -0
  33. package/lib/web/convert.js +368 -0
  34. package/lib/web/convert.js.map +1 -0
  35. package/lib/web/extract.d.ts +37 -0
  36. package/lib/web/extract.d.ts.map +1 -0
  37. package/lib/web/extract.js +210 -0
  38. package/lib/web/extract.js.map +1 -0
  39. package/lib/web/fetch.d.ts +37 -0
  40. package/lib/web/fetch.d.ts.map +1 -0
  41. package/lib/web/fetch.js +119 -0
  42. package/lib/web/fetch.js.map +1 -0
  43. package/lib/web/index.d.ts +15 -0
  44. package/lib/web/index.d.ts.map +1 -0
  45. package/lib/web/index.js +14 -0
  46. package/lib/web/index.js.map +1 -0
  47. package/lib/web/markdown.d.ts +46 -0
  48. package/lib/web/markdown.d.ts.map +1 -0
  49. package/lib/web/markdown.js +198 -0
  50. package/lib/web/markdown.js.map +1 -0
  51. package/lib/web/types.d.ts +96 -0
  52. package/lib/web/types.d.ts.map +1 -0
  53. package/lib/web/types.js +20 -0
  54. package/lib/web/types.js.map +1 -0
  55. package/lib/web/url.d.ts +21 -0
  56. package/lib/web/url.d.ts.map +1 -0
  57. package/lib/web/url.js +75 -0
  58. package/lib/web/url.js.map +1 -0
  59. package/package.json +8 -3
  60. package/src/adapters/anydoc.ts +4 -3
  61. package/src/adapters/index.ts +68 -7
  62. package/src/adapters/types.ts +17 -1
  63. package/src/adapters/web.ts +174 -0
  64. package/src/contract.ts +64 -3
  65. package/src/delivery.ts +11 -0
  66. package/src/http.ts +14 -1
  67. package/src/service.ts +186 -19
  68. package/src/types/turndown-plugin-gfm.d.ts +9 -0
  69. package/src/web/convert.ts +417 -0
  70. package/src/web/extract.ts +238 -0
  71. package/src/web/fetch.ts +144 -0
  72. package/src/web/index.ts +15 -0
  73. package/src/web/markdown.ts +222 -0
  74. package/src/web/types.ts +102 -0
  75. package/src/web/url.ts +75 -0
  76. package/web/app.js +12 -2
  77. package/web/index.html +11 -2
@@ -0,0 +1,166 @@
1
+ /**
2
+ * web —— 网页 / 微信公众号文章 adapter(issue 0017 的 web 档)。
3
+ *
4
+ * 与 `iddoc` / `scanned` 一样,这个文件**只做契约映射**:能力全在同包的 `src/web/`
5
+ * (静态抓取 → 正文抽取 → 图片落地 → Markdown)。内核的交付契约、图片写盘、front matter
6
+ * 都不在这里重新实现一遍。
7
+ *
8
+ * 两种输入,同一个引擎:
9
+ *
10
+ * - `kind=url`:内核自己去抓。快、零依赖,但遇到「风控/验证码」这类需要**真浏览器**的墙
11
+ * 就只能如实报错(见 `WECHAT_RATE_LIMITED` 的三条出路)。
12
+ * - `kind=file` + `.html/.htm`:**已经在手上的 HTML**(用户在浏览器里「另存为」下来的,
13
+ * 或浏览器自动化读出来交给本档的)。这条路的正文由页内脚本渲染过,验证码墙也绕过去了
14
+ * —— 不是绕过验证码,而是**用户自己的浏览器**把验证做完了。原始地址从页面自带的
15
+ * `og:url` / `canonical` 里读回来,所以相对地址、`source_url`、幂等身份都还在。
16
+ *
17
+ * 环境变量(全部是显式开关):
18
+ * WEB_TIMEOUT_MS 单次抓取超时(默认 30000)
19
+ * WEB_MAX_HTML_BYTES HTML 体积上限(默认 8 MiB)
20
+ * WEB_MAX_IMAGES 单篇最多下载几张图(默认 120)
21
+ * WEB_MAX_IMAGE_BYTES 单张图片体积上限(默认 12 MiB)
22
+ * WEB_SKIP_IMAGES=1 只要文字,不下载图片
23
+ * WEB_RESPECT_ROBOTS=1 命中 robots.txt Disallow 时直接拒绝(默认只记警告)
24
+ */
25
+ import { readFile, stat } from 'node:fs/promises';
26
+ import { basename } from 'node:path';
27
+ import { AdapterError } from './types.js';
28
+ import { WebToMarkdownError, convertWebPage } from '../web/index.js';
29
+ /** 本档能当「文件」处理的扩展名:另存下来的页面。 */
30
+ export const WEB_FILE_EXTENSIONS = ['.html', '.htm'];
31
+ function envInt(name) {
32
+ const parsed = Number.parseInt((process.env[name] ?? '').trim(), 10);
33
+ return Number.isFinite(parsed) && parsed > 0 ? parsed : undefined;
34
+ }
35
+ /** 不需要外部二进制,DOM 与 Markdown 渲染都是纯 JS 依赖。 */
36
+ function availabilitySync() {
37
+ return {
38
+ available: true,
39
+ versions: { linkedom: '0.18.x', readability: '0.6.x', turndown: '7.2.x' },
40
+ };
41
+ }
42
+ /** UTF-8 优先,解错再按页面自己声明的 charset 退一遍(同 `src/web/fetch.ts` 的 `decodeHtml`)。 */
43
+ function decodeFileHtml(buffer) {
44
+ const utf8 = buffer.toString('utf8');
45
+ if (!utf8.includes('\uFFFD'))
46
+ return utf8;
47
+ const declared = /<meta[^>]+charset=["']?([\w-]+)/i.exec(buffer.subarray(0, 2048).toString('latin1'))?.[1];
48
+ if (!declared)
49
+ return utf8;
50
+ const name = declared.toLowerCase() === 'gb2312' ? 'gbk' : declared.toLowerCase();
51
+ try {
52
+ return new TextDecoder(name).decode(buffer);
53
+ }
54
+ catch {
55
+ return utf8;
56
+ }
57
+ }
58
+ function toPreparedAssets(assets) {
59
+ return assets.map(asset => ({
60
+ rel: asset.rel,
61
+ data: asset.data,
62
+ ...(asset.contentType ? { contentType: asset.contentType } : {}),
63
+ }));
64
+ }
65
+ async function run(context) {
66
+ const source = await resolveSource(context);
67
+ let result;
68
+ try {
69
+ result = await convertWebPage({
70
+ ...source,
71
+ ...(context.request.title?.trim() ? { title: context.request.title.trim() } : {}),
72
+ ...(envInt('WEB_TIMEOUT_MS') ? { timeoutMs: envInt('WEB_TIMEOUT_MS') } : {}),
73
+ ...(envInt('WEB_MAX_HTML_BYTES') ? { maxHtmlBytes: envInt('WEB_MAX_HTML_BYTES') } : {}),
74
+ ...(envInt('WEB_MAX_IMAGES') ? { maxImages: envInt('WEB_MAX_IMAGES') } : {}),
75
+ ...(envInt('WEB_MAX_IMAGE_BYTES') ? { maxImageBytes: envInt('WEB_MAX_IMAGE_BYTES') } : {}),
76
+ ...(context.signal ? { signal: context.signal } : {}),
77
+ onProgress: progress => context.report(progress.progress, progress.stage, progress.message),
78
+ });
79
+ }
80
+ catch (cause) {
81
+ if (cause instanceof WebToMarkdownError) {
82
+ throw new AdapterError(cause.code, cause.message, cause.suggestion);
83
+ }
84
+ throw new AdapterError('ADAPTER_FAILED', cause instanceof Error ? cause.message : String(cause));
85
+ }
86
+ const warnings = result.warnings.map(warning => ({ code: warning.code, message: warning.message }));
87
+ if (source.html !== undefined && result.sourceUrl) {
88
+ warnings.push({
89
+ code: 'WEB_HTML_FILE',
90
+ message: `输入是本地 HTML,原始地址从页面自带的元标签读出来:${result.sourceUrl}。正文已按页内脚本渲染后的结果抽取。`,
91
+ });
92
+ }
93
+ if (result.extractor === 'wx_article') {
94
+ warnings.push({
95
+ code: 'WECHAT_ARTICLE',
96
+ message: `按微信公众号文章抽取:${result.siteName ?? '未知账号'}${result.author ? ` · ${result.author}` : ''}${result.publishedAt ? ` · ${result.publishedAt.slice(0, 10)}` : ''}。正文取自 #js_content,图片已落地为本地引用。`,
97
+ });
98
+ }
99
+ const assets = toPreparedAssets(result.assets);
100
+ /**
101
+ * 文档自身的元数据:页面里写着什么就记什么(0048)。
102
+ *
103
+ * 这些值 `extract.ts` 一直在读(`og:description`、`meta[name=author]`、
104
+ * `article:published_time`、公众号的 `var ct`),但适配器契约原先没有地方放,
105
+ * 于是抽出来就扔了 —— 结果是知识库里没有任何一份来源记得住作者与发布时间。
106
+ */
107
+ const document = {};
108
+ if (result.author)
109
+ document.author = result.author;
110
+ if (result.publishedAt)
111
+ document.publishedAt = result.publishedAt;
112
+ if (result.siteName)
113
+ document.siteName = result.siteName;
114
+ if (result.excerpt)
115
+ document.description = result.excerpt;
116
+ return {
117
+ title: result.title,
118
+ markdown: result.markdown,
119
+ sourceFormat: 'web_page',
120
+ parser: `web@1/${result.extractor}`,
121
+ ...(result.canonicalUrl ? { sourceUrl: result.canonicalUrl } : {}),
122
+ ...(source.path ? { sourcePath: source.path } : {}),
123
+ warnings,
124
+ dependencyVersions: result.dependencyVersions,
125
+ externalId: result.externalId,
126
+ // 底稿:本次真正解析的那份 HTML。本地文件用原文件名,抓下来的页面叫 page.html。
127
+ original: {
128
+ filename: source.path ? basename(source.path) : 'page.html',
129
+ data: Buffer.from(result.html, 'utf8'),
130
+ contentType: 'text/html; charset=utf-8',
131
+ },
132
+ ...(Object.keys(document).length > 0 ? { document } : {}),
133
+ ...(assets.length > 0 ? { assets } : {}),
134
+ };
135
+ }
136
+ /**
137
+ * 本次到底抓谁:一个地址,还是一份已经在手上的 HTML。
138
+ *
139
+ * `kind=url` 只认 `url`;`.html/.htm` 文件读进内存交给同一个引擎。文件路径由内核暂存
140
+ * (`context.inputPath`),本档不碰交付目录。
141
+ */
142
+ async function resolveSource(context) {
143
+ if (context.inputPath) {
144
+ const info = await stat(context.inputPath).catch(() => undefined);
145
+ if (!info?.isFile())
146
+ throw new AdapterError('INPUT_NOT_A_FILE', `输入不是文件:${context.inputPath}`);
147
+ const html = decodeFileHtml(await readFile(context.inputPath));
148
+ // 用户另外给的地址优先:页面里的元标签可能是被改写过的。
149
+ const baseUrl = (context.request.url ?? '').trim();
150
+ return { html, ...(baseUrl ? { baseUrl } : {}), path: context.inputPath };
151
+ }
152
+ const raw = (context.request.url ?? '').trim();
153
+ if (!raw) {
154
+ throw new AdapterError('URL_REQUIRED', 'web 适配器需要一个 http(s) 地址(kind=url 的 url),或一份本地 HTML(.html/.htm)。', '公众号被风控挡下时,在浏览器里正常打开这一页、另存为 HTML,再按「上传文件」提交。');
155
+ }
156
+ return { url: raw };
157
+ }
158
+ export const webAdapter = {
159
+ id: 'web',
160
+ description: '网页 / 微信公众号文章 → 知识就绪 Markdown + 本地图片(链接走静态抓取,`.html/.htm` 走已在手上的页面;公众号按 #js_content 专用抽取;图片按 sha1 落地)',
161
+ kinds: ['url', 'file'],
162
+ extensions: WEB_FILE_EXTENSIONS,
163
+ availability: availabilitySync,
164
+ run,
165
+ };
166
+ //# sourceMappingURL=web.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"web.js","sourceRoot":"","sources":["../../src/adapters/web.ts"],"names":[],"mappings":"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"}
package/lib/contract.d.ts CHANGED
@@ -18,10 +18,10 @@
18
18
  export declare const SOURCE_FORMATS: readonly ["markdown", "text", "html", "pdf", "office", "web_page", "video", "audio", "image"];
19
19
  export type SourceFormat = (typeof SOURCE_FORMATS)[number];
20
20
  /**
21
- * This version is documents-only (issue 0015 scope cut): web pages and video
22
- * moved to issues/0017, so only `file` and `text` can be requested.
21
+ * 0017 起 `url` 也进来了:网页(含微信公众号文章)由 `web` 适配器抓取并抽正文。
22
+ * 视频仍留在 0017 的后半段,`file` 就够用(本地音视频走 `iddoc`)。
23
23
  */
24
- export declare const CONVERT_INPUT_KINDS: readonly ["file", "text"];
24
+ export declare const CONVERT_INPUT_KINDS: readonly ["file", "text", "url"];
25
25
  export type ConvertInputKind = (typeof CONVERT_INPUT_KINDS)[number];
26
26
  export declare const TASK_STATES: readonly ["queued", "running", "succeeded", "failed", "cancelled"];
27
27
  export type TaskState = (typeof TASK_STATES)[number];
@@ -76,10 +76,52 @@ export interface ConvertAsset {
76
76
  /** `inline` when it came from a data: URI, `remote` when downloaded, `local` when copied. */
77
77
  origin: 'remote' | 'inline' | 'local';
78
78
  }
79
+ /**
80
+ * 这次转换的**原始输入**,原样保存在交付目录的 `source/` 下。
81
+ *
82
+ * 为什么留它:交付物是「知识就绪 Markdown」,而抽取是有损的 —— 正文外的元素、
83
+ * 内嵌音视频、被抽取器判为噪音的段落都不在里面。原始输入一旦丢掉,事后想换个抽取
84
+ * 规则重来一遍就没有素材了(0048:暂存目录在交付成功那一刻被删,而交付里没有它)。
85
+ *
86
+ * 它**不是**图片资产(`assets`):不进知识库、不参与 `assetCount`,只是可追溯的底稿。
87
+ */
88
+ export interface ConvertOriginal {
89
+ /** Path relative to the delivery directory, always under `source/`. */
90
+ rel: string;
91
+ path: string;
92
+ bytes: number;
93
+ sha256: string;
94
+ contentType?: string;
95
+ /** 输入从哪来:本地文件、抓下来的页面、还是内联文本。 */
96
+ kind: ConvertInputKind;
97
+ }
79
98
  export interface ConvertWarning {
80
99
  code: string;
81
100
  message: string;
82
101
  }
102
+ /**
103
+ * 文档自身的元数据(作者、发布时间、站点、描述…)。
104
+ *
105
+ * 适配器**能拿到多少写多少**,拿不到就不写这个键 —— 这里不允许出现猜出来的值。
106
+ * 它一路走到 SourceRaw 的 front matter(OKF v0.2 的 `sources[]` / `description`),
107
+ * 所以键名是固定的那几个,见 {@link DOCUMENT_METADATA_KEYS}。
108
+ */
109
+ export interface ConvertDocumentMetadata {
110
+ /** 作者或公众号账号名。 */
111
+ author?: string;
112
+ /** 发布时间(ISO 8601)。 */
113
+ publishedAt?: string;
114
+ /** 站点 / 公众号名。 */
115
+ siteName?: string;
116
+ /** 一句话摘要(`og:description` 或文档属性里的 subject)。 */
117
+ description?: string;
118
+ /** 逗号分隔的关键词,原样保留。 */
119
+ keywords?: string;
120
+ /** 文档语言(BCP 47),有就写。 */
121
+ language?: string;
122
+ }
123
+ /** `ConvertDocumentMetadata` 里被下游认识的键。其余键原样保留但不解释。 */
124
+ export declare const DOCUMENT_METADATA_KEYS: readonly ["author", "publishedAt", "siteName", "description", "keywords", "language"];
83
125
  /** Everything an ingestion side needs to file this bundle, without guessing. */
84
126
  export interface IngestPayload {
85
127
  /** Markdown body with a leading front matter block, ready for `add_source`. */
@@ -97,6 +139,10 @@ export interface IngestPayload {
97
139
  /** True when nobody supplied a `source_type` yet. */
98
140
  sourceTypeRequired: boolean;
99
141
  assets: ConvertAsset[];
142
+ /** 原始输入在交付目录里的位置(`source/…`)。没有底稿的输入不写。 */
143
+ original?: Pick<ConvertOriginal, 'rel' | 'bytes' | 'sha256'>;
144
+ /** 文档自身的元数据,写进 SourceRaw 的 front matter。 */
145
+ document?: ConvertDocumentMetadata;
100
146
  /**
101
147
  * Image references are relative to the delivery `index.md`. A wiki card lives
102
148
  * in `02_wiki/<type>/`, so ingestion must re-base them before a card can feed
@@ -118,6 +164,10 @@ export interface ConvertManifest {
118
164
  externalId: string;
119
165
  wordCount: number;
120
166
  assets: ConvertAsset[];
167
+ /** 原始输入(`source/…`)。拿不到原始字节的输入(如内联文本)不写这个键。 */
168
+ original?: ConvertOriginal;
169
+ /** 文档自身的元数据:作者、发布时间、站点、描述…。适配器拿不到就不写。 */
170
+ document?: ConvertDocumentMetadata;
121
171
  warnings: ConvertWarning[];
122
172
  /** Version of the external binary / service that did the work, when any. */
123
173
  dependencyVersions: Record<string, string>;
@@ -160,6 +210,8 @@ export interface ConvertRequest {
160
210
  filename?: string;
161
211
  /** Inline text (kind=text). */
162
212
  text?: string;
213
+ /** Page address (kind=url). Only http(s) is fetched; everything else is refused. */
214
+ url?: string;
163
215
  title?: string;
164
216
  /** Caller-supplied business classification; the kernel never invents one. */
165
217
  sourceType?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"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"}
package/lib/contract.js CHANGED
@@ -27,11 +27,13 @@ export const SOURCE_FORMATS = [
27
27
  'image',
28
28
  ];
29
29
  /**
30
- * This version is documents-only (issue 0015 scope cut): web pages and video
31
- * moved to issues/0017, so only `file` and `text` can be requested.
30
+ * 0017 起 `url` 也进来了:网页(含微信公众号文章)由 `web` 适配器抓取并抽正文。
31
+ * 视频仍留在 0017 的后半段,`file` 就够用(本地音视频走 `iddoc`)。
32
32
  */
33
- export const CONVERT_INPUT_KINDS = ['file', 'text'];
33
+ export const CONVERT_INPUT_KINDS = ['file', 'text', 'url'];
34
34
  export const TASK_STATES = ['queued', 'running', 'succeeded', 'failed', 'cancelled'];
35
+ /** `ConvertDocumentMetadata` 里被下游认识的键。其余键原样保留但不解释。 */
36
+ export const DOCUMENT_METADATA_KEYS = ['author', 'publishedAt', 'siteName', 'description', 'keywords', 'language'];
35
37
  export function isSourceFormat(value) {
36
38
  return typeof value === 'string' && SOURCE_FORMATS.includes(value);
37
39
  }
@@ -45,6 +47,12 @@ export function defaultSourceTypeCandidates(format) {
45
47
  case 'markdown':
46
48
  case 'text':
47
49
  return ['document', 'article'];
50
+ // 网页(0017):链接进来的东西天然更像「文章」,别默认落到 document。
51
+ // 候选必须落在知识库**注册表里真实存在**的 id 上(`BUILTIN_SOURCE_TYPES`),
52
+ // 否则录入段拿到一个匹配不上的候选,只能退回兜底分类。
53
+ case 'web_page':
54
+ case 'html':
55
+ return ['article', 'document'];
48
56
  // iddoc 档(issue 0017):音视频与图片的业务归类与文档不同,别让它们默认落到 "document"。
49
57
  case 'video':
50
58
  return ['video', 'course', 'interview', 'document'];
@@ -1 +1 @@
1
- {"version":3,"file":"contract.js","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,UAAU;IACV,MAAM;IACN,MAAM;IACN,KAAK;IACL,QAAQ;IACR,UAAU;IACV,OAAO;IACP,OAAO;IACP,OAAO;CACC,CAAA;AAIV;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,MAAM,EAAE,MAAM,CAAU,CAAA;AAI5D,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,CAAU,CAAA;AAqK7F,MAAM,UAAU,cAAc,CAAC,KAAc;IAC3C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAK,cAAoC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;AAC3F,CAAC;AAED,gEAAgE;AAChE,MAAM,UAAU,2BAA2B,CAAC,MAAoB;IAC9D,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,KAAK;YACR,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,CAAA;QAC/C,KAAK,QAAQ;YACX,OAAO,CAAC,KAAK,EAAE,UAAU,CAAC,CAAA;QAC5B,KAAK,UAAU,CAAC;QAChB,KAAK,MAAM;YACT,OAAO,CAAC,UAAU,EAAE,SAAS,CAAC,CAAA;QAChC,4DAA4D;QAC5D,KAAK,OAAO;YACV,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,CAAC,CAAA;QACrD,KAAK,OAAO;YACV,OAAO,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,CAAC,CAAA;QACtD,KAAK,OAAO;YACV,OAAO,CAAC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,CAAC,CAAA;QACvD;YACE,OAAO,CAAC,UAAU,CAAC,CAAA;IACvB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"contract.js","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,UAAU;IACV,MAAM;IACN,MAAM;IACN,KAAK;IACL,QAAQ;IACR,UAAU;IACV,OAAO;IACP,OAAO;IACP,OAAO;CACC,CAAA;AAIV;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAU,CAAA;AAInE,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,CAAU,CAAA;AA0G7F,sDAAsD;AACtD,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,aAAa,EAAE,UAAU,EAAE,UAAU,CAAU,CAAA;AAiH3H,MAAM,UAAU,cAAc,CAAC,KAAc;IAC3C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAK,cAAoC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;AAC3F,CAAC;AAED,gEAAgE;AAChE,MAAM,UAAU,2BAA2B,CAAC,MAAoB;IAC9D,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,KAAK;YACR,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,CAAA;QAC/C,KAAK,QAAQ;YACX,OAAO,CAAC,KAAK,EAAE,UAAU,CAAC,CAAA;QAC5B,KAAK,UAAU,CAAC;QAChB,KAAK,MAAM;YACT,OAAO,CAAC,UAAU,EAAE,SAAS,CAAC,CAAA;QAChC,2CAA2C;QAC3C,uDAAuD;QACvD,6BAA6B;QAC7B,KAAK,UAAU,CAAC;QAChB,KAAK,MAAM;YACT,OAAO,CAAC,SAAS,EAAE,UAAU,CAAC,CAAA;QAChC,4DAA4D;QAC5D,KAAK,OAAO;YACV,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,CAAC,CAAA;QACrD,KAAK,OAAO;YACV,OAAO,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,CAAC,CAAA;QACtD,KAAK,OAAO;YACV,OAAO,CAAC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,CAAC,CAAA;QACvD;YACE,OAAO,CAAC,UAAU,CAAC,CAAA;IACvB,CAAC;AACH,CAAC"}
package/lib/delivery.d.ts CHANGED
@@ -6,12 +6,13 @@
6
6
  * convert-out/<taskId>/
7
7
  * index.md front matter + body, images referenced as assets/…
8
8
  * assets/img-*.ext content-addressed local images
9
+ * source/… 原始输入(0048):抓下来的 HTML、上传的那份文件
9
10
  * manifest.json provenance, parser/version, warnings, ingest payload
10
11
  *
11
12
  * The kernel never writes into the knowledge store; it only produces this
12
13
  * directory plus the `ingest` payload that the DSH layer forwards.
13
14
  */
14
- import type { ConvertAsset, ConvertManifest, ConvertRequest, ConvertWarning, IngestPayload, SourceFormat, SourceTypeSource } from './contract.js';
15
+ import type { ConvertAsset, ConvertDocumentMetadata, ConvertManifest, ConvertOriginal, ConvertRequest, ConvertWarning, IngestPayload, SourceFormat, SourceTypeSource } from './contract.js';
15
16
  export interface DeliveryInput {
16
17
  taskId: string;
17
18
  title: string;
@@ -23,6 +24,10 @@ export interface DeliveryInput {
23
24
  sourceUrl?: string;
24
25
  sourcePath?: string;
25
26
  assets: ConvertAsset[];
27
+ /** 原始输入,已经落盘到 `source/`;没有原始字节的输入(内联文本)不传。 */
28
+ original?: ConvertOriginal;
29
+ /** 文档自身的元数据。 */
30
+ document?: ConvertDocumentMetadata;
26
31
  warnings: ConvertWarning[];
27
32
  dependencyVersions: Record<string, string>;
28
33
  externalId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"delivery.d.ts","sourceRoot":"","sources":["../src/delivery.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,OAAO,KAAK,EACV,YAAY,EACZ,eAAe,EACf,cAAc,EACd,cAAc,EACd,aAAa,EACb,YAAY,EACZ,gBAAgB,EACjB,MAAM,eAAe,CAAA;AAItB,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,cAAc,CAAA;IACvB,kEAAkE;IAClE,QAAQ,EAAE,MAAM,CAAA;IAChB,YAAY,EAAE,YAAY,CAAA;IAC1B,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,MAAM,EAAE,YAAY,EAAE,CAAA;IACtB,QAAQ,EAAE,cAAc,EAAE,CAAA;IAC1B,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC1C,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAsBnG;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,GAAG,aAAa,CAmB3F;AAED,wBAAsB,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,eAAe,CAAC,CA4BvG;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,gBAAgB,GAAG,SAAS,CAE1F"}
1
+ {"version":3,"file":"delivery.d.ts","sourceRoot":"","sources":["../src/delivery.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAIH,OAAO,KAAK,EACV,YAAY,EACZ,uBAAuB,EACvB,eAAe,EACf,eAAe,EACf,cAAc,EACd,cAAc,EACd,aAAa,EACb,YAAY,EACZ,gBAAgB,EACjB,MAAM,eAAe,CAAA;AAItB,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,cAAc,CAAA;IACvB,kEAAkE;IAClE,QAAQ,EAAE,MAAM,CAAA;IAChB,YAAY,EAAE,YAAY,CAAA;IAC1B,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,MAAM,EAAE,YAAY,EAAE,CAAA;IACtB,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,eAAe,CAAA;IAC1B,gBAAgB;IAChB,QAAQ,CAAC,EAAE,uBAAuB,CAAA;IAClC,QAAQ,EAAE,cAAc,EAAE,CAAA;IAC1B,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC1C,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAsBnG;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,GAAG,aAAa,CAqB3F;AAED,wBAAsB,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,eAAe,CAAC,CA8BvG;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,gBAAgB,GAAG,SAAS,CAE1F"}
package/lib/delivery.js CHANGED
@@ -6,6 +6,7 @@
6
6
  * convert-out/<taskId>/
7
7
  * index.md front matter + body, images referenced as assets/…
8
8
  * assets/img-*.ext content-addressed local images
9
+ * source/… 原始输入(0048):抓下来的 HTML、上传的那份文件
9
10
  * manifest.json provenance, parser/version, warnings, ingest payload
10
11
  *
11
12
  * The kernel never writes into the knowledge store; it only produces this
@@ -60,6 +61,8 @@ export function buildIngestPayload(input, contentHash) {
60
61
  sourceTypeCandidates: candidates,
61
62
  sourceTypeRequired: !input.request.sourceType,
62
63
  assets: input.assets,
64
+ ...(input.original ? { original: { rel: input.original.rel, bytes: input.original.bytes, sha256: input.original.sha256 } } : {}),
65
+ ...(input.document && Object.keys(input.document).length > 0 ? { document: input.document } : {}),
63
66
  assetRefBase: 'delivery',
64
67
  };
65
68
  }
@@ -83,6 +86,8 @@ export async function writeDelivery(deliveryDir, input) {
83
86
  externalId: input.externalId,
84
87
  wordCount: wordCount(input.markdown),
85
88
  assets: input.assets,
89
+ ...(input.original ? { original: input.original } : {}),
90
+ ...(input.document && Object.keys(input.document).length > 0 ? { document: input.document } : {}),
86
91
  warnings: input.warnings,
87
92
  dependencyVersions: input.dependencyVersions,
88
93
  ...(input.request.lineage ? { lineage: input.request.lineage } : {}),
@@ -1 +1 @@
1
- {"version":3,"file":"delivery.js","sourceRoot":"","sources":["../src/delivery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"delivery.js","sourceRoot":"","sources":["../src/delivery.ts"],"names":[],"mappings":"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"}
package/lib/http.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAIhE,OAAO,KAAK,EAAkB,WAAW,EAAE,MAAM,eAAe,CAAA;AAChE,OAAO,EAAE,cAAc,EAAiB,MAAM,cAAc,CAAA;AAE5D,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,cAAc,CAAA;IACvB,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,sFAAsF;IACtF,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,gFAAgF;IAChF,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAID,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAmCD,UAAU,aAAa;IACrB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,EAAE,MAAM,CAAA;CACb;AAED,qFAAqF;AACrF,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,aAAa,EAAE,CAyB9E;AAED,iBAAS,WAAW,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAyB/D;AAED,2EAA2E;AAC3E,iBAAS,UAAU,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAO9D;AAgBD,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,cAAc,GAAG,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,CA6J1H;AAqFD,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,CAAA"}
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAIhE,OAAO,KAAK,EAAkB,WAAW,EAAE,MAAM,eAAe,CAAA;AAChE,OAAO,EAAE,cAAc,EAA+B,MAAM,cAAc,CAAA;AAE1E,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,cAAc,CAAA;IACvB,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,sFAAsF;IACtF,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,gFAAgF;IAChF,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAID,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAmCD,UAAU,aAAa;IACrB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,EAAE,MAAM,CAAA;CACb;AAED,qFAAqF;AACrF,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,aAAa,EAAE,CAyB9E;AAED,iBAAS,WAAW,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA+B/D;AAED,2EAA2E;AAC3E,iBAAS,UAAU,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAO9D;AAkBD,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,cAAc,GAAG,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,CA6J1H;AA0FD,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,CAAA"}
package/lib/http.js CHANGED
@@ -9,7 +9,7 @@ import { readFile } from 'node:fs/promises';
9
9
  import { extname, normalize, resolve, sep } from 'node:path';
10
10
  import { fileURLToPath } from 'node:url';
11
11
  import { AdapterError } from './adapters/types.js';
12
- import { contentTypeOf } from './service.js';
12
+ import { canRetryTask, contentTypeOf } from './service.js';
13
13
  const MAX_BODY_BYTES = 512 * 1024 * 1024;
14
14
  export function defaultWebRoot() {
15
15
  return resolve(fileURLToPath(new URL('../web/', import.meta.url)));
@@ -98,6 +98,12 @@ function taskSummary(task) {
98
98
  contentHash: task.manifest?.contentHash,
99
99
  externalId: task.manifest?.externalId,
100
100
  title: task.manifest?.title ?? task.label,
101
+ /**
102
+ * 能不能重试 —— **由服务端算**,不让每个界面各写一遍状态条件。
103
+ * 判据与 `retry()` 的守卫同源(`canRetryTask`),所以「按钮画出来了但一定失败」
104
+ * 这件事不会再出现。
105
+ */
106
+ canRetry: canRetryTask(task).ok,
101
107
  };
102
108
  }
103
109
  /** Full task view, including the ingest payload the DSH layer forwards. */
@@ -121,6 +127,8 @@ function requestFromQuery(url) {
121
127
  set('sourceType', url.searchParams.get('source_type'));
122
128
  set('externalId', url.searchParams.get('external_id'));
123
129
  set('adapter', url.searchParams.get('adapter'));
130
+ // `?kind=url&url=...` —— 让「只给一个链接」也能走最简单的 GET/POST 表单路径。
131
+ set('url', url.searchParams.get('url'));
124
132
  return request;
125
133
  }
126
134
  export function createRequestHandler(options) {
@@ -291,6 +299,7 @@ async function createTask(service, req, url) {
291
299
  const request = {
292
300
  kind: body.kind ?? 'text',
293
301
  ...(typeof body.text === 'string' ? { text: body.text } : {}),
302
+ ...(typeof body.url === 'string' ? { url: body.url } : {}),
294
303
  ...(typeof body.title === 'string' ? { title: body.title } : {}),
295
304
  ...(typeof body.source_type === 'string' ? { sourceType: body.source_type } : {}),
296
305
  ...(typeof body.adapter === 'string' ? { adapter: body.adapter } : {}),
@@ -332,12 +341,17 @@ async function createTask(service, req, url) {
332
341
  request.adapter = value;
333
342
  else if (part.name === 'text')
334
343
  request.text = value;
344
+ else if (part.name === 'url')
345
+ request.url = value;
335
346
  else if (part.name === 'external_id')
336
347
  request.externalId = value;
337
348
  }
338
349
  if (!file) {
339
350
  if (request.kind === 'text' && request.text)
340
351
  return await service.submit(request);
352
+ // 链接也是「没有文件部件」的合法提交:正文由内核自己抓。
353
+ if (request.kind === 'url' && request.url)
354
+ return await service.submit(request);
341
355
  throw new AdapterError('INPUT_REQUIRED', 'multipart 请求没有文件部件。');
342
356
  }
343
357
  return await service.submit(request, { data: file.data, filename: file.filename ?? 'upload.bin' });
@@ -348,6 +362,8 @@ async function createTask(service, req, url) {
348
362
  if (data.length === 0) {
349
363
  if (request.kind === 'text')
350
364
  return await service.submit(request);
365
+ if (request.kind === 'url' && request.url)
366
+ return await service.submit(request);
351
367
  throw new AdapterError('INPUT_REQUIRED', '请求体为空。');
352
368
  }
353
369
  return await service.submit({ ...request, kind: 'file' }, { data, filename });
package/lib/http.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAE3C,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAElD,OAAO,EAAkB,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAY1E,MAAM,cAAc,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,CAAA;AAExC,MAAM,UAAU,cAAc;IAC5B,OAAO,OAAO,CAAC,aAAa,CAAC,IAAI,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;AACpE,CAAC;AAED,SAAS,QAAQ,CAAC,GAAmB,EAAE,MAAc,EAAE,IAAa;IAClE,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;IACpC,GAAG,CAAC,UAAU,GAAG,MAAM,CAAA;IACvB,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,iCAAiC,CAAC,CAAA;IAChE,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,UAAU,CAAC,CAAA;IAC1C,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;AAClB,CAAC;AAED,SAAS,SAAS,CAAC,GAAmB,EAAE,MAAc,EAAE,KAA2B;IACjF,MAAM,IAAI,GAAG,KAAK,YAAY,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAA;IAC1E,MAAM,UAAU,GAAG,KAAK,YAAY,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAA;IAC/E,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE;QACpB,EAAE,EAAE,KAAK;QACT,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;KAC/E,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,EAAE,CAAI,IAAO;IACpB,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;AAC3B,CAAC;AAED,KAAK,UAAU,QAAQ,CAAC,GAAoB,EAAE,KAAK,GAAG,cAAc;IAClE,MAAM,MAAM,GAAa,EAAE,CAAA;IAC3B,IAAI,KAAK,GAAG,CAAC,CAAA;IACb,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;QAC1E,KAAK,IAAI,MAAM,CAAC,MAAM,CAAA;QACtB,IAAI,KAAK,GAAG,KAAK;YAAE,MAAM,IAAI,YAAY,CAAC,mBAAmB,EAAE,WAAW,KAAK,MAAM,CAAC,CAAA;QACtF,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACrB,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;AAC9B,CAAC;AASD,qFAAqF;AACrF,MAAM,UAAU,cAAc,CAAC,IAAY,EAAE,QAAgB;IAC3D,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,QAAQ,EAAE,CAAC,CAAA;IAC9C,MAAM,KAAK,GAAoB,EAAE,CAAA;IACjC,IAAI,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;IACnC,OAAO,KAAK,IAAI,CAAC,EAAE,CAAC;QAClB,MAAM,KAAK,GAAG,KAAK,GAAG,SAAS,CAAC,MAAM,CAAA;QACtC,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,KAAK,IAAI;YAAE,MAAK;QAC9D,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,CAAA;QACjD,IAAI,SAAS,GAAG,CAAC;YAAE,MAAK;QACxB,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QACnE,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;QAC/C,IAAI,IAAI,GAAG,CAAC;YAAE,MAAK;QACnB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,CAAA;QACtD,MAAM,IAAI,GAAG,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;QACzD,MAAM,QAAQ,GAAG,oBAAoB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QAC3D,MAAM,WAAW,GAAG,6BAA6B,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAA;QAC/E,KAAK,CAAC,IAAI,CAAC;YACT,IAAI;YACJ,IAAI,EAAE,OAAO;YACb,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACxC,CAAC,CAAA;QACF,KAAK,GAAG,IAAI,CAAA;IACd,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,WAAW,CAAC,IAAiB;IACpC,OAAO;QACL,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,IAAI,CAAC;QAC7C,SAAS,EAAE,IAAI,CAAC,QAAQ,EAAE,SAAS,IAAI,CAAC;QACxC,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM;QAC7B,WAAW,EAAE,IAAI,CAAC,QAAQ,EAAE,WAAW;QACvC,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE,UAAU;QACrC,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,KAAK,IAAI,IAAI,CAAC,KAAK;QACzC;;;;WAIG;QACH,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE;KAChC,CAAA;AACH,CAAC;AAED,2EAA2E;AAC3E,SAAS,UAAU,CAAC,IAAiB;IACnC,OAAO;QACL,GAAG,WAAW,CAAC,IAAI,CAAC;QACpB,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,IAAI;QAC/B,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,IAAI,IAAI;QACrC,OAAO,EAAE,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE;KAC1G,CAAA;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAQ;IAChC,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,MAAM,CAA2B,CAAA;IAC/E,MAAM,OAAO,GAAmB,EAAE,IAAI,EAAE,CAAA;IACxC,MAAM,GAAG,GAAG,CAAC,GAAyB,EAAE,KAAoB,EAAQ,EAAE;QACpE,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE;YAAE,OACnC;QAAC,OAA8C,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;IAC/D,CAAC,CAAA;IACD,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAA;IAC3C,GAAG,CAAC,YAAY,EAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAA;IACtD,GAAG,CAAC,YAAY,EAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAA;IACtD,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAA;IAC/C,yDAAyD;IACzD,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAA;IACvC,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,OAAuB;IAC1D,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAA;IAC3B,MAAM,QAAQ,GAAG,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;IAC7D,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,cAAc,EAAE,CAAA;IAEnD,MAAM,WAAW,GAAG,KAAK,EAAE,GAAmB,EAAE,QAAgB,EAAoB,EAAE;QACpF,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,CAAA;QAC7E,IAAI,MAAM,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,GAAG,GAAG,CAAC;YAAE,OAAO,KAAK,CAAA;QACzE,IAAI,CAAC;YACH,IAAI,IAAI,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,CAAA;YACjC,sEAAsE;YACtE,uEAAuE;YACvE,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;gBAC9B,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,kBAAkB,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAA;YAC5F,CAAC;YACD,GAAG,CAAC,UAAU,GAAG,GAAG,CAAA;YACpB,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,aAAa,CAAC,MAAM,CAAC,KAAK,0BAA0B,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAA;YAClI,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,UAAU,CAAC,CAAA;YAC1C,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YACb,OAAO,IAAI,CAAA;QACb,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAA;QACd,CAAC;IACH,CAAC,CAAA;IAED,OAAO,KAAK,UAAU,MAAM,CAAC,GAAoB,EAAE,GAAmB;QACpE,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,EAAE,kBAAkB,CAAC,CAAA;QACvD,IAAI,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAA;QAC3B,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,QAAQ,KAAK,QAAQ;gBAAE,QAAQ,GAAG,GAAG,CAAA;iBACpC,IAAI,QAAQ,CAAC,UAAU,CAAC,GAAG,QAAQ,GAAG,CAAC;gBAAE,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;iBACnF,CAAC;gBACJ,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,QAAQ,IAAI,EAAE,EAAE,CAAC,CAAA;gBAC9F,OAAM;YACR,CAAC;QACH,CAAC;QAED,IAAI,CAAC;YACH,IAAI,OAAO,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC;gBAClG,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,mBAAmB,EAAE,EAAE,CAAC,CAAA;gBAChG,OAAM;YACR,CAAC;YAED,yEAAyE;YACzE,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,IAAI,CAAC,QAAQ,KAAK,GAAG,IAAI,QAAQ,KAAK,aAAa,CAAC,EAAE,CAAC;gBAC7E,IAAI,MAAM,WAAW,CAAC,GAAG,EAAE,YAAY,CAAC;oBAAE,OAAM;gBAChD,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,cAAc,OAAO,oBAAoB,EAAE,EAAE,CAAC,CAAA;gBACzH,OAAM;YACR,CAAC;YACD,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,IAAI,2CAA2C,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACvF,IAAI,MAAM,WAAW,CAAC,GAAG,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBAAE,OAAM;gBACrD,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAA;gBAClF,OAAM;YACR,CAAC;YAED,yEAAyE;YACzE,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,IAAI,QAAQ,KAAK,aAAa,EAAE,CAAC;gBACvD,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;oBACpB,OAAO,EAAE,kBAAkB;oBAC3B,OAAO,EAAE,OAAO;oBAChB,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,MAAM,EAAE,OAAO,CAAC,MAAM;oBACtB,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM;iBAC7B,CAAC,CAAC,CAAA;gBACH,OAAM;YACR,CAAC;YACD,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,IAAI,QAAQ,KAAK,mBAAmB,EAAE,CAAC;gBAC7D,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,MAAM,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,CAAA;gBACpD,OAAM;YACR,CAAC;YAED,yEAAyE;YACzE,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,IAAI,QAAQ,KAAK,aAAa,EAAE,CAAC;gBACvD,GAAG,CAAC,UAAU,GAAG,GAAG,CAAA;gBACpB,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,kCAAkC,CAAC,CAAA;gBACjE,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,UAAU,CAAC,CAAA;gBAC1C,GAAG,CAAC,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC,CAAA;gBACzC,GAAG,CAAC,KAAK,CAAC,uBAAuB,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,CAAA;gBAClG,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;oBAC3C,GAAG,CAAC,KAAK,CAAC,sBAAsB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAA;gBAC1E,CAAC,CAAC,CAAA;gBACF,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;gBACxE,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;oBACnB,aAAa,CAAC,SAAS,CAAC,CAAA;oBACxB,WAAW,EAAE,CAAA;gBACf,CAAC,CAAC,CAAA;gBACF,OAAM;YACR,CAAC;YAED,0EAA0E;YAC1E,IAAI,QAAQ,KAAK,YAAY,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;gBACtD,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAA;gBAClE,OAAM;YACR,CAAC;YAED,IAAI,QAAQ,KAAK,YAAY,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;gBACvD,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;gBAChD,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;gBACxC,OAAM;YACR,CAAC;YAED,MAAM,SAAS,GAAG,gCAAgC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YACjE,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,EAAE,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAE,CAAC,CAAA;gBAC5C,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;gBAC/B,IAAI,IAAI,KAAK,EAAE,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;oBACxC,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;oBAC5B,IAAI,CAAC,IAAI;wBAAE,MAAM,IAAI,YAAY,CAAC,gBAAgB,EAAE,SAAS,EAAE,EAAE,CAAC,CAAA;oBAClE,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;oBACxC,OAAM;gBACR,CAAC;gBACD,IAAI,IAAI,KAAK,SAAS,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;oBAChD,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;oBACvD,OAAM;gBACR,CAAC;gBACD,IAAI,IAAI,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;oBAC/C,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,WAAW,CAAC,MAAM,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;oBAC5D,OAAM;gBACR,CAAC;gBACD,IAAI,IAAI,KAAK,SAAS,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;oBAC/C,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,MAAM,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;oBACpD,OAAM;gBACR,CAAC;gBACD,IAAI,IAAI,KAAK,WAAW,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;oBACjD,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,gBAAgB,CAAC,EAAE,EAAE,UAAU,CAAC,CAAA;oBAC3D,IAAI,CAAC,IAAI;wBAAE,MAAM,IAAI,YAAY,CAAC,oBAAoB,EAAE,4BAA4B,CAAC,CAAA;oBACrF,GAAG,CAAC,UAAU,GAAG,GAAG,CAAA;oBACpB,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,8BAA8B,CAAC,CAAA;oBAC7D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;oBAClB,OAAM;gBACR,CAAC;gBACD,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;oBACvD,MAAM,QAAQ,GAAG,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAA;oBACjE,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,gBAAgB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;oBACzD,IAAI,CAAC,IAAI;wBAAE,MAAM,IAAI,YAAY,CAAC,oBAAoB,EAAE,cAAc,QAAQ,EAAE,CAAC,CAAA;oBACjF,GAAG,CAAC,UAAU,GAAG,GAAG,CAAA;oBACpB,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;oBAC/C,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,UAAU,CAAC,CAAA;oBAC1C,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;oBAClB,OAAM;gBACR,CAAC;gBACD,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC,MAAM,IAAI,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAA;gBAC9G,OAAM;YACR,CAAC;YAED,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAA;QACpF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,KAAK,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;YACvE,MAAM,MAAM,GAAG,KAAK,YAAY,YAAY;gBAC1C,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,gBAAgB,IAAI,KAAK,CAAC,IAAI,KAAK,oBAAoB,CAAC,CAAC,CAAC,GAAG;oBAC5E,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,mBAAmB,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB,CAAC,CAAC,CAAC,GAAG;wBAC5E,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,iBAAiB,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,CAAC,CAAC,CAAC,GAAG;4BAC5G,CAAC,CAAC,GAAG;gBACX,CAAC,CAAC,GAAG,CAAA;YACP,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,CAAA;QAC/B,CAAC;IACH,CAAC,CAAA;AACH,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,OAAuB,EAAE,GAAoB,EAAE,GAAQ;IAC/E,8EAA8E;IAC9E,uDAAuD;IACvD,MAAM,cAAc,GAAG,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,CAAA;IACxD,MAAM,WAAW,GAAG,cAAc,CAAC,WAAW,EAAE,CAAA;IAEhD,IAAI,WAAW,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE,CAAC;QAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAA4B,CAAA;QAC1F,MAAM,OAAO,GAAmB;YAC9B,IAAI,EAAG,IAAI,CAAC,IAA+B,IAAI,MAAM;YACrD,GAAG,CAAC,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7D,GAAG,CAAC,OAAO,IAAI,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1D,GAAG,CAAC,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAChE,GAAG,CAAC,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjF,GAAG,CAAC,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACtE,GAAG,CAAC,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/G,GAAG,CAAC,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjF,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxH,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAoC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACpH,CAAA;QACD,IAAI,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC;YAClE,OAAO,MAAM,OAAO,CAAC,MAAM,CAAC,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;gBACxD,GAAG,CAAC,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC1E,CAAC,CAAA;QACJ,CAAC;QACD,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1D,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;YAC7C,OAAO,MAAM,OAAO,CAAC,MAAM,CAAC,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;QAChK,CAAC;QACD,OAAO,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IACtC,CAAC;IAED,MAAM,OAAO,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAA;IAErC,IAAI,WAAW,CAAC,UAAU,CAAC,qBAAqB,CAAC,EAAE,CAAC;QAClD,MAAM,aAAa,GAAG,iCAAiC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;QAC5E,MAAM,QAAQ,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,IAAI,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAA;QACnE,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,YAAY,CAAC,iBAAiB,EAAE,0BAA0B,CAAC,CAAA;QACpF,MAAM,KAAK,GAAG,cAAc,CAAC,MAAM,QAAQ,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,CAAA;QAC3D,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC9C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,IAAI,CAAC,QAAQ;gBAAE,SAAQ;YAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;YACxC,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM;gBAAE,OAAO,CAAC,IAAI,GAAG,KAA+B,CAAA;iBACnE,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO;gBAAE,OAAO,CAAC,KAAK,GAAG,KAAK,CAAA;iBAChD,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa;gBAAE,OAAO,CAAC,UAAU,GAAG,KAAK,CAAA;iBAC3D,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS;gBAAE,OAAO,CAAC,OAAO,GAAG,KAAK,CAAA;iBACpD,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM;gBAAE,OAAO,CAAC,IAAI,GAAG,KAAK,CAAA;iBAC9C,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK;gBAAE,OAAO,CAAC,GAAG,GAAG,KAAK,CAAA;iBAC5C,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa;gBAAE,OAAO,CAAC,UAAU,GAAG,KAAK,CAAA;QAClE,CAAC;QACD,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,CAAC,IAAI;gBAAE,OAAO,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;YACjF,8BAA8B;YAC9B,IAAI,OAAO,CAAC,IAAI,KAAK,KAAK,IAAI,OAAO,CAAC,GAAG;gBAAE,OAAO,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;YAC/E,MAAM,IAAI,YAAY,CAAC,gBAAgB,EAAE,qBAAqB,CAAC,CAAA;QACjE,CAAC;QACD,OAAO,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,YAAY,EAAE,CAAC,CAAA;IACpG,CAAC;IAED,uDAAuD;IACvD,MAAM,QAAQ,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC,IAAI,YAAY,CAAA;IAC5H,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,CAAA;IAChC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM;YAAE,OAAO,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QACjE,IAAI,OAAO,CAAC,IAAI,KAAK,KAAK,IAAI,OAAO,CAAC,GAAG;YAAE,OAAO,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QAC/E,MAAM,IAAI,YAAY,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAA;IACpD,CAAC;IACD,OAAO,MAAM,OAAO,CAAC,MAAM,CAAC,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAA;AAC/E,CAAC;AAED,SAAS,mBAAmB,CAAC,MAA0B;IACrD,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAA;IAC7B,MAAM,KAAK,GAAG,uCAAuC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAClE,OAAO,KAAK,CAAC,CAAC,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;AAC1D,CAAC;AAED,SAAS,YAAY,CAAC,IAAY;IAChC,QAAQ,OAAO,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;QACpC,KAAK,OAAO,CAAC,CAAC,OAAO,0BAA0B,CAAA;QAC/C,KAAK,KAAK,CAAC,CAAC,OAAO,gCAAgC,CAAA;QACnD,KAAK,MAAM,CAAC,CAAC,OAAO,yBAAyB,CAAA;QAC7C,KAAK,MAAM,CAAC,CAAC,OAAO,eAAe,CAAA;QACnC,KAAK,OAAO,CAAC,CAAC,OAAO,iCAAiC,CAAA;QACtD,OAAO,CAAC,CAAC,OAAO,0BAA0B,CAAA;IAC5C,CAAC;AACH,CAAC;AAED,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,CAAA"}