@okrapdf/cli 0.4.6 → 0.5.0

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 (95) hide show
  1. package/dist/cli.d.ts.map +1 -1
  2. package/dist/cli.js +14 -2
  3. package/dist/cli.js.map +1 -1
  4. package/dist/commands/auth.d.ts.map +1 -1
  5. package/dist/commands/auth.js +94 -26
  6. package/dist/commands/auth.js.map +1 -1
  7. package/dist/commands/chat.d.ts +6 -17
  8. package/dist/commands/chat.d.ts.map +1 -1
  9. package/dist/commands/chat.js +349 -318
  10. package/dist/commands/chat.js.map +1 -1
  11. package/dist/commands/chat.test.js +4 -0
  12. package/dist/commands/chat.test.js.map +1 -1
  13. package/dist/commands/elements.d.ts.map +1 -1
  14. package/dist/commands/elements.js +15 -12
  15. package/dist/commands/elements.js.map +1 -1
  16. package/dist/commands/jobs.d.ts.map +1 -1
  17. package/dist/commands/jobs.js +228 -13
  18. package/dist/commands/jobs.js.map +1 -1
  19. package/dist/commands/plugins.d.ts +3 -0
  20. package/dist/commands/plugins.d.ts.map +1 -0
  21. package/dist/commands/plugins.js +26 -0
  22. package/dist/commands/plugins.js.map +1 -0
  23. package/dist/commands/read.d.ts.map +1 -1
  24. package/dist/commands/read.js +11 -9
  25. package/dist/commands/read.js.map +1 -1
  26. package/dist/commands/search.d.ts +16 -0
  27. package/dist/commands/search.d.ts.map +1 -0
  28. package/dist/commands/search.js +246 -0
  29. package/dist/commands/search.js.map +1 -0
  30. package/dist/commands/shortcuts.js +2 -2
  31. package/dist/commands/shortcuts.js.map +1 -1
  32. package/dist/commands/task.d.ts +0 -8
  33. package/dist/commands/task.d.ts.map +1 -1
  34. package/dist/commands/task.js +9 -190
  35. package/dist/commands/task.js.map +1 -1
  36. package/dist/lib/agent-renderer.d.ts.map +1 -1
  37. package/dist/lib/agent-renderer.js +17 -1
  38. package/dist/lib/agent-renderer.js.map +1 -1
  39. package/dist/lib/backends/do-adapters.test.d.ts +6 -0
  40. package/dist/lib/backends/do-adapters.test.d.ts.map +1 -0
  41. package/dist/lib/backends/do-adapters.test.js +311 -0
  42. package/dist/lib/backends/do-adapters.test.js.map +1 -0
  43. package/dist/lib/backends/do.d.ts +23 -0
  44. package/dist/lib/backends/do.d.ts.map +1 -0
  45. package/dist/lib/backends/do.js +340 -0
  46. package/dist/lib/backends/do.js.map +1 -0
  47. package/dist/lib/backends/index.d.ts +7 -0
  48. package/dist/lib/backends/index.d.ts.map +1 -0
  49. package/dist/lib/backends/index.js +8 -0
  50. package/dist/lib/backends/index.js.map +1 -0
  51. package/dist/lib/backends/okrapdf.d.ts +9 -0
  52. package/dist/lib/backends/okrapdf.d.ts.map +1 -0
  53. package/dist/lib/backends/okrapdf.js +50 -0
  54. package/dist/lib/backends/okrapdf.js.map +1 -0
  55. package/dist/lib/backends/types.d.ts +205 -0
  56. package/dist/lib/backends/types.d.ts.map +1 -0
  57. package/dist/lib/backends/types.js +7 -0
  58. package/dist/lib/backends/types.js.map +1 -0
  59. package/dist/lib/completion-stream.d.ts +22 -0
  60. package/dist/lib/completion-stream.d.ts.map +1 -0
  61. package/dist/lib/completion-stream.js +69 -0
  62. package/dist/lib/completion-stream.js.map +1 -0
  63. package/dist/lib/config.d.ts +4 -0
  64. package/dist/lib/config.d.ts.map +1 -1
  65. package/dist/lib/config.js +6 -0
  66. package/dist/lib/config.js.map +1 -1
  67. package/dist/lib/federation.d.ts +14 -0
  68. package/dist/lib/federation.d.ts.map +1 -0
  69. package/dist/lib/federation.js +51 -0
  70. package/dist/lib/federation.js.map +1 -0
  71. package/dist/lib/general-chat.d.ts +11 -0
  72. package/dist/lib/general-chat.d.ts.map +1 -0
  73. package/dist/lib/general-chat.js +69 -0
  74. package/dist/lib/general-chat.js.map +1 -0
  75. package/dist/lib/multi-doc-chat.d.ts +20 -0
  76. package/dist/lib/multi-doc-chat.d.ts.map +1 -0
  77. package/dist/lib/multi-doc-chat.js +152 -0
  78. package/dist/lib/multi-doc-chat.js.map +1 -0
  79. package/dist/lib/plugins.d.ts +24 -0
  80. package/dist/lib/plugins.d.ts.map +1 -0
  81. package/dist/lib/plugins.js +55 -0
  82. package/dist/lib/plugins.js.map +1 -0
  83. package/dist/lib/runtime.js +1 -1
  84. package/dist/lib/runtime.js.map +1 -1
  85. package/dist/lib/single-doc-chat.d.ts +14 -0
  86. package/dist/lib/single-doc-chat.d.ts.map +1 -0
  87. package/dist/lib/single-doc-chat.js +165 -0
  88. package/dist/lib/single-doc-chat.js.map +1 -0
  89. package/dist/lib/task-agent.d.ts +11 -0
  90. package/dist/lib/task-agent.d.ts.map +1 -0
  91. package/dist/lib/task-agent.js +200 -0
  92. package/dist/lib/task-agent.js.map +1 -0
  93. package/dist/types.d.ts +32 -0
  94. package/dist/types.d.ts.map +1 -1
  95. package/package.json +3 -1
@@ -0,0 +1,246 @@
1
+ /**
2
+ * `okra search` — two-phase search like Context7/DeepWiki.
3
+ *
4
+ * Phase 1 (resolve): find documents by name/metadata via worker shadow index
5
+ * Phase 2 (query): search content in a specific DocumentAgent DO via FTS5
6
+ *
7
+ * Subcommands:
8
+ * okra search resolve <query> Find documents by name
9
+ * okra search query <query> --doc <id> Search content in a specific doc
10
+ * okra search <query> Shortcut: resolve → query all matches
11
+ * okra search browse <docId> Structure view of a single doc
12
+ * okra search list List all registered documents
13
+ */
14
+ import { Command } from 'commander';
15
+ import chalk from 'chalk';
16
+ import { getSearchSources } from '../lib/plugins.js';
17
+ import { federatedSearch } from '../lib/federation.js';
18
+ import { formatOutput } from '../lib/output.js';
19
+ import { withSpinner } from '../lib/progress.js';
20
+ import { getDefaultFormat } from '../lib/config.js';
21
+ import { workerDocFetch, workerFetch } from '../lib/backends/do.js';
22
+ // ---------------------------------------------------------------------------
23
+ // Adapters — convert DO responses → SearchHit[]
24
+ // ---------------------------------------------------------------------------
25
+ function doResultsToHits(docId, resp) {
26
+ const sorted = [...resp.results].sort((a, b) => a.rank - b.rank);
27
+ return sorted.map((r, i) => ({
28
+ sourceId: docId,
29
+ title: r.label ?? docId,
30
+ snippet: r.snippet ?? '',
31
+ rank: i + 1,
32
+ source: 'local',
33
+ }));
34
+ }
35
+ async function searchDoc(docId, query) {
36
+ const resp = await workerFetch(`/search/query?q=${encodeURIComponent(query)}&doc=${encodeURIComponent(docId)}`);
37
+ return doResultsToHits(docId, resp);
38
+ }
39
+ // ---------------------------------------------------------------------------
40
+ // Formatters
41
+ // ---------------------------------------------------------------------------
42
+ function renderFederatedResults(results, jsonMode) {
43
+ if (jsonMode) {
44
+ console.log(formatOutput(results, 'json'));
45
+ return;
46
+ }
47
+ if (results.length === 0) {
48
+ console.log(chalk.dim('No results'));
49
+ return;
50
+ }
51
+ const grouped = new Map();
52
+ for (const r of results) {
53
+ const group = grouped.get(r.source) ?? [];
54
+ group.push(r);
55
+ grouped.set(r.source, group);
56
+ }
57
+ for (const [source, hits] of grouped) {
58
+ console.log(chalk.bold.underline(source.toUpperCase()));
59
+ for (const hit of hits) {
60
+ const loc = hit.page != null ? ` p${hit.page}` : '';
61
+ const id = chalk.cyan(`[${hit.sourceId}${loc}]`);
62
+ const snippet = hit.snippet.slice(0, 80);
63
+ const score = chalk.dim(`(${hit.score.toFixed(4)})`);
64
+ console.log(` ${id} ${snippet} ${score}`);
65
+ }
66
+ console.log();
67
+ }
68
+ }
69
+ function renderDocs(docs, jsonMode) {
70
+ if (jsonMode) {
71
+ console.log(formatOutput(docs, 'json'));
72
+ return;
73
+ }
74
+ if (docs.length === 0) {
75
+ console.log(chalk.dim('No documents registered'));
76
+ return;
77
+ }
78
+ for (const d of docs) {
79
+ const name = d.file_name ?? d.doc_id;
80
+ const age = chalk.dim(new Date(d.updated_at).toISOString().slice(0, 10));
81
+ console.log(` ${chalk.cyan(d.doc_id)} ${name} [${d.phase}, ${d.pages_total}p, ${d.total_nodes} nodes] ${age}`);
82
+ }
83
+ }
84
+ function renderBrowse(docId, status, nodes, jsonMode) {
85
+ if (jsonMode) {
86
+ console.log(formatOutput({ docId, status, nodes }, 'json'));
87
+ return;
88
+ }
89
+ const typeCounts = new Map();
90
+ for (const n of nodes)
91
+ typeCounts.set(n.type, (typeCounts.get(n.type) ?? 0) + 1);
92
+ const tables = typeCounts.get('table') ?? 0;
93
+ const texts = typeCounts.get('text') ?? 0;
94
+ console.log(chalk.bold(status.fileName ?? docId) +
95
+ ` [${status.phase}] ${status.pagesTotal}p | ${tables} tables | ${texts} text blocks`);
96
+ console.log(chalk.dim('─'.repeat(60)));
97
+ const pageNodes = new Map();
98
+ for (const n of nodes) {
99
+ if (n.page_number != null) {
100
+ const group = pageNodes.get(n.page_number) ?? [];
101
+ group.push(n);
102
+ pageNodes.set(n.page_number, group);
103
+ }
104
+ }
105
+ for (const page of Array.from(pageNodes.keys()).sort((a, b) => a - b)) {
106
+ const pNodes = pageNodes.get(page);
107
+ const types = [...new Set(pNodes.map((n) => n.type))];
108
+ const tableCt = pNodes.filter((n) => n.type === 'table').length;
109
+ const preview = pNodes.find((n) => n.value)?.value?.slice(0, 60) ?? '';
110
+ const extra = tableCt > 0 ? chalk.yellow(` (${tableCt} table${tableCt > 1 ? 's' : ''})`) : '';
111
+ console.log(` ${chalk.dim(`p${String(page).padStart(2)}`)}`
112
+ + ` ${chalk.dim(types.join(', '))}${extra}`
113
+ + (preview ? ` ${chalk.dim(preview)}` : ''));
114
+ }
115
+ }
116
+ // ---------------------------------------------------------------------------
117
+ // Command
118
+ // ---------------------------------------------------------------------------
119
+ export function createSearchCommand() {
120
+ const search = new Command('search')
121
+ .description('Two-phase document search: resolve by name, then query content');
122
+ // --- okra search <query> (default) — resolve + federated query -----------
123
+ search
124
+ .command('query <query>', { isDefault: true })
125
+ .description('Federated search: resolve docs by name, then query content')
126
+ .option('--doc <id>', 'Search a single document by ID (skip resolve)')
127
+ .option('--source <name>', 'Search only a specific source plugin')
128
+ .option('-n, --limit <n>', 'Max results', '20')
129
+ .option('-o, --output <format>', 'Output format', getDefaultFormat())
130
+ .action(async (query, opts) => {
131
+ const jsonMode = opts.output === 'json';
132
+ const limit = parseInt(opts.limit, 10);
133
+ // Single-doc mode — skip resolve, go straight to content search
134
+ if (opts.doc) {
135
+ const hits = await withSpinner('Searching document', () => searchDoc(opts.doc, query));
136
+ renderFederatedResults(hits.map((h) => ({ ...h, score: 1 / (60 + h.rank) })), jsonMode);
137
+ return;
138
+ }
139
+ // Phase 1: resolve — find matching docs by name
140
+ const allSources = getSearchSources();
141
+ const sources = opts.source
142
+ ? allSources.filter((s) => s.name === opts.source)
143
+ : allSources;
144
+ let docIds = [];
145
+ if (!opts.source) {
146
+ // Try resolve first, fall back to listing all docs
147
+ try {
148
+ const resolved = await workerFetch(`/search/resolve?q=${encodeURIComponent(query)}&limit=${limit}`);
149
+ docIds = resolved.results.map((r) => r.doc_id);
150
+ }
151
+ catch {
152
+ // If resolve finds nothing, search all registered docs
153
+ try {
154
+ const all = await workerFetch('/search/list?limit=50');
155
+ docIds = all.results.map((r) => r.doc_id);
156
+ }
157
+ catch {
158
+ // Worker not reachable
159
+ }
160
+ }
161
+ }
162
+ if (docIds.length === 0 && sources.length === 0) {
163
+ console.log(chalk.yellow('No documents found in the document registry.'));
164
+ return;
165
+ }
166
+ // Phase 2: federated content search across resolved docs + plugins
167
+ const results = await withSpinner('Searching', () => federatedSearch(query, sources, searchDoc, docIds, limit));
168
+ renderFederatedResults(results, jsonMode);
169
+ });
170
+ // --- okra search resolve <query> -----------------------------------------
171
+ search
172
+ .command('resolve <query>')
173
+ .description('Find documents by name/metadata (phase 1)')
174
+ .option('-o, --output <format>', 'Output format', getDefaultFormat())
175
+ .action(async (query, opts) => {
176
+ const jsonMode = opts.output === 'json';
177
+ // Worker registry resolve
178
+ const [resolved, sources] = await Promise.all([
179
+ workerFetch(`/search/resolve?q=${encodeURIComponent(query)}`).catch(() => ({ query, count: 0, results: [] })),
180
+ Promise.resolve(getSearchSources()),
181
+ ]);
182
+ // Also check source plugins
183
+ const sourceResults = await Promise.all(sources.map(async (s) => ({
184
+ source: s.name,
185
+ results: await s.resolve(query).catch(() => []),
186
+ })));
187
+ if (jsonMode) {
188
+ console.log(formatOutput({ documents: resolved.results, sources: sourceResults }, 'json'));
189
+ return;
190
+ }
191
+ let idx = 1;
192
+ if (resolved.results.length > 0) {
193
+ console.log(chalk.bold.underline('DOCUMENTS'));
194
+ for (const d of resolved.results) {
195
+ const name = d.file_name ?? d.doc_id;
196
+ console.log(` ${chalk.dim(`${idx}.`)} ${chalk.cyan(d.doc_id)} ${name} [${d.phase}, ${d.pages_total}p]`);
197
+ idx++;
198
+ }
199
+ console.log();
200
+ }
201
+ for (const { source, results } of sourceResults) {
202
+ if (results.length === 0)
203
+ continue;
204
+ console.log(chalk.bold.underline(source.toUpperCase()));
205
+ for (const r of results) {
206
+ console.log(` ${chalk.dim(`${idx}.`)} ${chalk.cyan(r.sourceId)} ${r.title} [${source}]`);
207
+ idx++;
208
+ }
209
+ console.log();
210
+ }
211
+ if (idx === 1)
212
+ console.log(chalk.dim('No results'));
213
+ });
214
+ // --- okra search browse <docId> ------------------------------------------
215
+ search
216
+ .command('browse <docId>')
217
+ .description('Structure view of a single document')
218
+ .option('-o, --output <format>', 'Output format', getDefaultFormat())
219
+ .action(async (docId, opts) => {
220
+ const jsonMode = opts.output === 'json';
221
+ const fetchDoc = (path) => workerDocFetch(docId, path);
222
+ const [status, nodesResp] = jsonMode
223
+ ? await Promise.all([
224
+ fetchDoc('/status'),
225
+ fetchDoc('/nodes'),
226
+ ])
227
+ : await Promise.all([
228
+ withSpinner('Fetching status', () => fetchDoc('/status')),
229
+ withSpinner('Fetching structure', () => fetchDoc('/nodes')),
230
+ ]);
231
+ renderBrowse(docId, status, nodesResp.nodes, jsonMode);
232
+ });
233
+ // --- okra search list — show all registered docs -------------------------
234
+ search
235
+ .command('list')
236
+ .alias('ls')
237
+ .description('List all registered documents')
238
+ .option('-o, --output <format>', 'Output format', getDefaultFormat())
239
+ .action(async (opts) => {
240
+ const jsonMode = opts.output === 'json';
241
+ const resp = await workerFetch('/search/list?limit=100');
242
+ renderDocs(resp.results, jsonMode);
243
+ });
244
+ return search;
245
+ }
246
+ //# sourceMappingURL=search.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/commands/search.ts"],"names":[],"mappings":"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"}
@@ -116,7 +116,7 @@ export function createExtractCommand() {
116
116
  .option('--text-only', 'Only return extracted text')
117
117
  .option('--timeout <seconds>', 'Job timeout in seconds (default: 600)', '600')
118
118
  .option('--wait-for <stage>', 'Wait for pipeline stage: ocr (default), entities, index')
119
- .option('-q, --quiet', 'Minimal output (just the results) - ideal for piping')
119
+ .option('--quiet', 'Minimal output (just the results) - ideal for piping')
120
120
  .option('-p, --prompt <task>', 'Add task context for piping to agent CLIs (claude, aider, etc)')
121
121
  .action(async (source, options) => {
122
122
  let documentUuid;
@@ -432,7 +432,7 @@ export function createRunCommand() {
432
432
  .argument('<source>', 'PDF file path, URL, or job ID')
433
433
  .argument('<query>', 'Question to ask about the document')
434
434
  .option('-o, --output <format>', 'Output format (text, json)', 'text')
435
- .option('-q, --quiet', 'Minimal output (just the answer)')
435
+ .option('--quiet', 'Minimal output (just the answer)')
436
436
  .option('--timeout <seconds>', 'Extraction timeout in seconds', '600')
437
437
  .action(async (source, query, options) => {
438
438
  let jobId;
@@ -1 +1 @@
1
- {"version":3,"file":"shortcuts.js","sourceRoot":"","sources":["../../src/commands/shortcuts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shortcuts.js","sourceRoot":"","sources":["../../src/commands/shortcuts.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAClF,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC/C,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC3H,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAClF,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAqB,MAAM,qBAAqB,CAAC;AAEhF;;GAEG;AACH,SAAS,cAAc,CAAC,QAA2B,EAAE,UAAmB;IACtE,MAAM,IAAI,GAAG,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC;QAClE,CAAC,CAAC,UAAU;QACZ,CAAC,CAAC,6DAA6D,CAAC;IAElE,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM;QACvC,CAAC,CAAC,sBAAsB,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,oCAAoC;QAClG,CAAC,CAAC,EAAE,CAAC;IAEP,OAAO,kBAAkB,QAAQ,CAAC,MAAM,CAAC,QAAQ,KAAK,QAAQ,CAAC,MAAM,CAAC,KAAK;qBACxD,QAAQ,CAAC,WAAW;;;YAG7B,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,YAAY,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM;eAC1F,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,GAAG,UAAU;;QAEjD,IAAI;;EAEV,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;AACtC,CAAC;AAED;;GAEG;AACH,SAAS,cAAc,CAAC,QAA2B,EAAE,MAAe;IAClE,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;IAChD,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACjD,CAAC;AACH,CAAC;AA8CD,MAAM,YAAY,GAAmC;IACnD,GAAG,EAAE;QACH,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,eAAe,KAAK,EAAE;QAC3C,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE;YACZ,MAAM,GAAG,GAAG,CAAQ,CAAC;YACrB,OAAO,CAAC,WAAW,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACnE,CAAC;QACD,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;YACb,MAAM,GAAG,GAAG,CAAQ,CAAC;YACrB,OAAO,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACtD,CAAC;QACD,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE;YACjB,MAAM,GAAG,GAAG,CAAQ,CAAC;YACrB,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,eAAe,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,WAAW,IAAI,SAAS,EAAE,CAAC;QACpF,CAAC;QACD,KAAK,EAAE,gBAAgB;KACxB;IACD,QAAQ,EAAE;QACR,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,gBAAgB,KAAK,WAAW;QACrD,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE;YACZ,MAAM,IAAI,GAAG,CAAqB,CAAC;YACnC,OAAO,IAAI,CAAC,gBAAgB,KAAK,WAAW,CAAC;QAC/C,CAAC;QACD,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;YACb,MAAM,IAAI,GAAG,CAAqB,CAAC;YACnC,OAAO,IAAI,CAAC,gBAAgB,KAAK,QAAQ,IAAI,IAAI,CAAC,gBAAgB,KAAK,WAAW,CAAC;QACrF,CAAC;QACD,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE;YACjB,MAAM,IAAI,GAAG,CAAqB,CAAC;YACnC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC;QACnE,CAAC;QACD,KAAK,EAAE,mBAAmB;KAC3B;IACD,KAAK,EAAE;QACL,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,gBAAgB,KAAK,+BAA+B;QACzE,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE;YACZ,MAAM,IAAI,GAAG,CAAyB,CAAC;YACvC,OAAO,IAAI,CAAC,eAAe,EAAE,eAAe,KAAK,SAAS,CAAC;QAC7D,CAAC;QACD,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;YACb,MAAM,IAAI,GAAG,CAAyB,CAAC;YACvC,OAAO,IAAI,CAAC,eAAe,EAAE,eAAe,KAAK,OAAO,CAAC;QAC3D,CAAC;QACD,KAAK,EAAE,iBAAiB;KACzB;CACF,CAAC;AAEF;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB;IAClC,OAAO,IAAI,OAAO,CAAC,SAAS,CAAC;SAC1B,WAAW,CAAC,8DAA8D,CAAC;SAC3E,QAAQ,CAAC,UAAU,EAAE,sCAAsC,CAAC;SAC5D,MAAM,CAAC,uBAAuB,EAAE,uCAAuC,EAAE,gBAAgB,EAAE,CAAC;SAC5F,MAAM,CAAC,yBAAyB,EAAE,8DAA8D,CAAC;SACjG,MAAM,CAAC,UAAU,EAAE,iEAAiE,CAAC;SACrF,MAAM,CAAC,aAAa,EAAE,wCAAwC,EAAE,GAAG,CAAC;SACpE,MAAM,CAAC,oBAAoB,EAAE,0DAA0D,CAAC;SACxF,MAAM,CAAC,uBAAuB,EAAE,iEAAiE,CAAC;SAClG,MAAM,CAAC,gBAAgB,EAAE,qDAAqD,CAAC;SAC/E,MAAM,CAAC,eAAe,EAAE,2DAA2D,CAAC;SACpF,MAAM,CAAC,eAAe,EAAE,8BAA8B,CAAC;SACvD,MAAM,CAAC,aAAa,EAAE,4BAA4B,CAAC;SACnD,MAAM,CAAC,qBAAqB,EAAE,uCAAuC,EAAE,KAAK,CAAC;SAC7E,MAAM,CAAC,oBAAoB,EAAE,yDAAyD,CAAC;SACvF,MAAM,CAAC,SAAS,EAAE,sDAAsD,CAAC;SACzE,MAAM,CAAC,qBAAqB,EAAE,gEAAgE,CAAC;SAC/F,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE;QAChC,IAAI,YAAoB,CAAC;QACzB,IAAI,QAAgB,CAAC;QACrB,IAAI,SAA6B,CAAC;QAElC,MAAM,SAAS,GAAc,OAAO,CAAC,OAAO;YAC1C,CAAC,CAAE,OAAO,CAAC,OAAqB;YAChC,CAAC,CAAC,OAAO,CAAC,MAAM;gBACd,CAAC,CAAC,UAAU;gBACZ,CAAC,CAAC,KAAK,CAAC;QAEZ,IAAI,SAAS,KAAK,KAAK,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YAC1C,IAAI,CAAC,kBAAkB,YAAY,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QAC1D,CAAC;QAED,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,IAAI,aAAa,EAAE,CAAC;QACjD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,IAAI,aAAa,EAAE,CAAC;QAEhD,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACnB,IAAI,SAAS;gBAAE,IAAI,CAAC,eAAe,SAAS,EAAE,CAAC,CAAC;YAChD,IAAI,QAAQ;gBAAE,IAAI,CAAC,cAAc,QAAQ,EAAE,CAAC,CAAC;QAC/C,CAAC;QAED,mEAAmE;QACnE,IAAI,WAA+B,CAAC;QACpC,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;YACtB,WAAW,GAAG,gBAAgB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAClD,MAAM,IAAI,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;YACvC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,KAAK,CAAC,sBAAsB,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;gBACjD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,wDAAwD,CAAC,CAAC,CAAC;gBACjF,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;YACxC,CAAC;YACD,IAAI,CAAC,OAAO,CAAC,KAAK;gBAAE,IAAI,CAAC,oBAAoB,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAC5D,CAAC;QAED,6BAA6B;QAC7B,IAAI,QAAyC,CAAC;QAC9C,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACrB,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC1C,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,KAAK,CAAC,qBAAqB,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAC/C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,sDAAsD,CAAC,CAAC,CAAC;gBAC/E,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;YACxC,CAAC;YACD,IAAI,CAAC,OAAO,CAAC,KAAK;gBAAE,IAAI,CAAC,mBAAmB,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;YAC7D,iEAAiE;YACjE,IAAI,CAAC,WAAW,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;gBACvC,WAAW,GAAG,QAAQ,CAAC,SAAS,CAAC;YACnC,CAAC;QACH,CAAC;QAED,6DAA6D;QAC7D,IAAI,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,EAAE,CAAC;YACrC,sDAAsD;YACtD,YAAY,GAAG,MAAM,CAAC;YACtB,QAAQ,GAAG,cAAc,CAAC;YAC1B,IAAI,CAAC,OAAO,CAAC,KAAK;gBAAE,IAAI,CAAC,4BAA4B,MAAM,EAAE,CAAC,CAAC;YAE/D,MAAM,UAAU,GAA4B,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC;YAC5E,IAAI,WAAW;gBAAE,UAAU,CAAC,SAAS,GAAG,WAAW,CAAC;YACpD,IAAI,SAAS;gBAAE,UAAU,CAAC,UAAU,GAAG,SAAS,CAAC;YACjD,IAAI,QAAQ;gBAAE,UAAU,CAAC,SAAS,GAAG,QAAQ,CAAC;YAE9C,MAAM,cAAc,GAAG,MAAM,WAAW,CACtC,yBAAyB,EACzB,GAAG,EAAE,CAAC,IAAI,CAAoB,gBAAgB,EAAE,UAAU,CAAC,CAC5D,CAAC;YAEF,MAAM,QAAQ,GAAG,MAAM,CAAC;gBACtB,MAAM,EAAE,cAAc,CAAC,MAAM;gBAC7B,aAAa,EAAE,YAAY;gBAC3B,SAAS,EAAE,QAAQ;gBACnB,SAAS,EAAE,WAAW,IAAI,SAAS;gBACnC,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,MAAM,EAAE,SAAS;gBACjB,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACrC,CAAC,CAAC;YAEH,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC;YACvD,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;YAE9E,YAAY,CAAC,QAAQ,CAAC,EAAE,EAAE;gBACxB,MAAM,EAAE,GAAG,CAAC,MAAM;gBAClB,KAAK,EAAE,GAAG,CAAC,WAAW,IAAI,SAAS;gBACnC,YAAY,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACtC,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;gBACnC,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,SAAS;aAC9B,CAAC,CAAC;YAEH,IAAI,GAAG,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC5B,KAAK,CAAC,sBAAsB,GAAG,CAAC,KAAK,IAAI,eAAe,EAAE,CAAC,CAAC;gBAC5D,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YACtC,CAAC;YAED,IAAI,SAAS,KAAK,KAAK,EAAE,CAAC;gBACxB,MAAM,UAAU,GAAG,MAAM,YAAY,CACnC,cAAc,CAAC,MAAM,EACrB,SAAS,EACT,OAAO,CAAC,KAAK,EACb,SAAS,CACV,CAAC;gBACF,IAAI,UAAU,CAAC,eAAe,EAAE,eAAe,KAAK,OAAO,EAAE,CAAC;oBAC5D,KAAK,CAAC,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;oBACjD,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;gBACtC,CAAC;YACH,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YAExD,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;gBACtB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;oBACnB,MAAM,OAAO,GAAG,MAAM,GAAG,CAAyB,iBAAiB,YAAY,WAAW,CAAC,CAAC;oBAC5F,MAAM,GAAG,GAAG,CAAC,MAAM,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC;oBAC1C,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,CAAC;oBAC9E,SAAS,GAAG,WAAW,CAAC,IAAI,CAAC;gBAC/B,CAAC;gBAED,IAAI,CAAC,OAAO,CAAC,KAAK;oBAAE,IAAI,CAAC,+BAA+B,CAAC,CAAC;gBAC1D,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE;oBACxE,aAAa,EAAE,OAAO,CAAC,MAAM;oBAC7B,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;oBAClC,SAAS;iBACV,CAAC,CAAC;gBACH,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;YAC3C,CAAC;iBAAM,CAAC;gBACN,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;YACnE,CAAC;YACD,OAAO;QACT,CAAC;QAED,IAAI,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAClE,aAAa;YACb,IAAI,CAAC,OAAO,CAAC,KAAK;gBAAE,IAAI,CAAC,mBAAmB,MAAM,EAAE,CAAC,CAAC;YACtD,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,cAAc,CAAC;YAErD,0DAA0D;YAC1D,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;gBACvB,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;oBACnB,IAAI,CAAC,iEAAiE,CAAC,CAAC;oBACxE,IAAI,CAAC,4CAA4C,CAAC,CAAC;gBACrD,CAAC;gBAED,gCAAgC;gBAChC,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;gBAE9D,2CAA2C;gBAC3C,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;oBACtB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;wBACnB,MAAM,GAAG,GAAG,CAAC,MAAM,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC;wBAC1C,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,MAAM,EAAE,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,CAAC;wBAClE,SAAS,GAAG,WAAW,CAAC,IAAI,CAAC;oBAC/B,CAAC;oBAED,IAAI,CAAC,OAAO,CAAC,KAAK;wBAAE,IAAI,CAAC,+BAA+B,CAAC,CAAC;oBAC1D,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE;wBACxE,aAAa,EAAE,OAAO,CAAC,MAAM;wBAC7B,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;wBAClC,SAAS;qBACV,CAAC,CAAC;oBACH,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;gBAC3C,CAAC;qBAAM,CAAC;oBACN,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;gBAC5D,CAAC;gBACD,OAAO;YACT,CAAC;YAED,2CAA2C;YAC3C,MAAM,UAAU,GAA4B,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;YAC5D,IAAI,WAAW;gBAAE,UAAU,CAAC,SAAS,GAAG,WAAW,CAAC;YACpD,IAAI,SAAS;gBAAE,UAAU,CAAC,UAAU,GAAG,SAAS,CAAC;YACjD,IAAI,QAAQ;gBAAE,UAAU,CAAC,SAAS,GAAG,QAAQ,CAAC;YAE9C,MAAM,cAAc,GAAG,MAAM,WAAW,CACtC,yBAAyB,EACzB,GAAG,EAAE,CAAC,IAAI,CAAoB,gBAAgB,EAAE,UAAU,CAAC,CAC5D,CAAC;YAEF,YAAY,GAAG,EAAE,CAAC;YAElB,MAAM,QAAQ,GAAG,MAAM,CAAC;gBACtB,MAAM,EAAE,cAAc,CAAC,MAAM;gBAC7B,SAAS,EAAE,QAAQ;gBACnB,SAAS,EAAE,WAAW,IAAI,SAAS;gBACnC,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,MAAM,EAAE,SAAS;gBACjB,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACrC,CAAC,CAAC;YAEH,eAAe;YACf,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC;YACvD,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;YAE9E,YAAY,CAAC,QAAQ,CAAC,EAAE,EAAE;gBACxB,MAAM,EAAE,GAAG,CAAC,MAAM;gBAClB,KAAK,EAAE,GAAG,CAAC,WAAW,IAAI,SAAS;gBACnC,YAAY,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACtC,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;gBACnC,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,SAAS;aAC9B,CAAC,CAAC;YAEH,IAAI,GAAG,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC5B,KAAK,CAAC,sBAAsB,GAAG,CAAC,KAAK,IAAI,eAAe,EAAE,CAAC,CAAC;gBAC5D,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YACtC,CAAC;YAED,IAAI,SAAS,KAAK,KAAK,EAAE,CAAC;gBACxB,MAAM,UAAU,GAAG,MAAM,YAAY,CACnC,cAAc,CAAC,MAAM,EACrB,SAAS,EACT,OAAO,CAAC,KAAK,EACb,SAAS,CACV,CAAC;gBACF,IAAI,UAAU,CAAC,eAAe,EAAE,eAAe,KAAK,OAAO,EAAE,CAAC;oBAC5D,KAAK,CAAC,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;oBACjD,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;gBACtC,CAAC;YACH,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YAExD,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;gBACtB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;oBACnB,MAAM,GAAG,GAAG,CAAC,MAAM,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC;oBAC1C,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,MAAM,EAAE,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,CAAC;oBAClE,SAAS,GAAG,WAAW,CAAC,IAAI,CAAC;gBAC/B,CAAC;gBAED,IAAI,CAAC,OAAO,CAAC,KAAK;oBAAE,IAAI,CAAC,+BAA+B,CAAC,CAAC;gBAC1D,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE;oBACxE,aAAa,EAAE,OAAO,CAAC,MAAM;oBAC7B,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;oBAClC,SAAS;iBACV,CAAC,CAAC;gBACH,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;YAC3C,CAAC;iBAAM,CAAC;gBACN,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;YACnE,CAAC;YACD,OAAO;QACT,CAAC;QAED,cAAc;QACd,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;QAEjC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1B,KAAK,CAAC,mBAAmB,QAAQ,EAAE,CAAC,CAAC;YACrC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;QACxC,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7C,KAAK,CAAC,8BAA8B,CAAC,CAAC;YACtC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;QACxC,CAAC;QAED,sCAAsC;QACtC,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;YACvB,KAAK,CAAC,sCAAsC,CAAC,CAAC;YAC9C,IAAI,CAAC,8DAA8D,CAAC,CAAC;YACrE,IAAI,CAAC,6DAA6D,CAAC,CAAC;YACpE,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QACtC,CAAC;QAED,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC9B,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC;QAEzC,kDAAkD;QAClD,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACxC,SAAS,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;QACrC,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,KAAK;YAAE,IAAI,CAAC,eAAe,QAAQ,EAAE,CAAC,CAAC;QAEpD,2DAA2D;QAC3D,MAAM,iBAAiB,GAAG,MAAM,WAAW,CACzC,kBAAkB,EAClB,GAAG,EAAE,CAAC,IAAI,CAAoB,0BAA0B,EAAE;YACxD,QAAQ;YACR,WAAW,EAAE,iBAAiB;SAC/B,CAAC,CACH,CAAC;QAEF,MAAM,WAAW,CACf,sBAAsB,EACtB,GAAG,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,SAAS,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAC3E,CAAC;QAEF,MAAM,UAAU,GAA4B;YAC1C,QAAQ,EAAE,iBAAiB,CAAC,OAAO;YACnC,QAAQ,EAAE,QAAQ;SACnB,CAAC;QACF,IAAI,WAAW;YAAE,UAAU,CAAC,SAAS,GAAG,WAAW,CAAC;QACpD,IAAI,SAAS;YAAE,UAAU,CAAC,UAAU,GAAG,SAAS,CAAC;QACjD,IAAI,QAAQ;YAAE,UAAU,CAAC,SAAS,GAAG,QAAQ,CAAC;QAE9C,MAAM,cAAc,GAAG,MAAM,WAAW,CACtC,yBAAyB,EACzB,GAAG,EAAE,CAAC,IAAI,CAAoB,gBAAgB,EAAE,UAAU,CAAC,CAC5D,CAAC;QAEF,YAAY,GAAG,EAAE,CAAC;QAElB,sBAAsB;QACtB,MAAM,QAAQ,GAAG,MAAM,CAAC;YACtB,MAAM,EAAE,cAAc,CAAC,MAAM;YAC7B,aAAa,EAAE,YAAY;YAC3B,SAAS,EAAE,QAAQ;YACnB,SAAS,EAAE,WAAW,IAAI,SAAS;YACnC,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,MAAM,EAAE,SAAS;YACjB,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACrC,CAAC,CAAC;QAEH,8BAA8B;QAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC;QACvD,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAE9E,mBAAmB;QACnB,YAAY,CAAC,QAAQ,CAAC,EAAE,EAAE;YACxB,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,KAAK,EAAE,GAAG,CAAC,WAAW,IAAI,SAAS;YACnC,YAAY,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACtC,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;YACnC,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,SAAS;SAC9B,CAAC,CAAC;QAEH,IAAI,GAAG,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC5B,KAAK,CAAC,sBAAsB,GAAG,CAAC,KAAK,IAAI,eAAe,EAAE,CAAC,CAAC;YAC5D,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QACtC,CAAC;QAEC,IAAI,SAAS,KAAK,KAAK,EAAE,CAAC;YACxB,MAAM,UAAU,GAAG,MAAM,YAAY,CACnC,cAAc,CAAC,MAAM,EACrB,SAAS,EACT,OAAO,CAAC,KAAK,EACb,SAAS,CACV,CAAC;YACF,IAAI,UAAU,CAAC,eAAe,EAAE,eAAe,KAAK,OAAO,EAAE,CAAC;gBAC5D,KAAK,CAAC,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;gBACjD,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YACtC,CAAC;QACH,CAAC;QAEH,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAExD,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;YACtB,IAAI,CAAC,OAAO,CAAC,KAAK;gBAAE,IAAI,CAAC,+BAA+B,CAAC,CAAC;YAE1D,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAC3C,OAAO,CAAC,SAAS,EACjB,OAAO,EACP;gBACE,aAAa,EAAE,OAAO,CAAC,MAAM;gBAC7B,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;gBAClC,SAAS;aACV,CACF,CAAC;YAEF,wDAAwD;YACxD,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QAC3C,CAAC;aAAM,CAAC;YACN,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;QACnE,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB;IAC9B,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC;SACtB,WAAW,CAAC,sDAAsD,CAAC;SACnE,QAAQ,CAAC,UAAU,EAAE,+BAA+B,CAAC;SACrD,QAAQ,CAAC,SAAS,EAAE,oCAAoC,CAAC;SACzD,MAAM,CAAC,uBAAuB,EAAE,4BAA4B,EAAE,MAAM,CAAC;SACrE,MAAM,CAAC,SAAS,EAAE,kCAAkC,CAAC;SACrD,MAAM,CAAC,qBAAqB,EAAE,+BAA+B,EAAE,KAAK,CAAC;SACrE,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QACvC,IAAI,KAAa,CAAC;QAElB,gCAAgC;QAChC,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1B,wBAAwB;YACxB,KAAK,GAAG,MAAM,CAAC;QACjB,CAAC;aAAM,IAAI,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YACzE,+BAA+B;YAC/B,IAAI,CAAC,OAAO,CAAC,KAAK;gBAAE,IAAI,CAAC,wBAAwB,CAAC,CAAC;YAEnD,MAAM,cAAc,GAAG,MAAM,WAAW,CACtC,yBAAyB,EACzB,GAAG,EAAE,CAAC,IAAI,CAAoB,gBAAgB,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CACjE,CAAC;YACF,KAAK,GAAG,cAAc,CAAC,MAAM,CAAC;YAE9B,sBAAsB;YACtB,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC;YACvD,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;YAC9D,IAAI,GAAG,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC5B,KAAK,CAAC,sBAAsB,GAAG,CAAC,KAAK,IAAI,eAAe,EAAE,CAAC,CAAC;gBAC5D,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YACtC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,6BAA6B;YAC7B,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;YAEjC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC1B,KAAK,CAAC,mBAAmB,QAAQ,EAAE,CAAC,CAAC;gBACrC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;YACxC,CAAC;YAED,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC7C,KAAK,CAAC,8BAA8B,CAAC,CAAC;gBACtC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;YACxC,CAAC;YAED,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAEpC,IAAI,CAAC,OAAO,CAAC,KAAK;gBAAE,IAAI,CAAC,eAAe,QAAQ,EAAE,CAAC,CAAC;YAEpD,6BAA6B;YAC7B,MAAM,iBAAiB,GAAG,MAAM,WAAW,CACzC,WAAW,EACX,KAAK,IAAI,EAAE;gBACT,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAoB,0BAA0B,EAAE;oBACzE,QAAQ;oBACR,WAAW,EAAE,iBAAiB;iBAC/B,CAAC,CAAC;gBACH,MAAM,UAAU,CAAC,QAAQ,CAAC,SAAS,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAC;gBAClE,OAAO,QAAQ,CAAC;YAClB,CAAC,CACF,CAAC;YAEF,wBAAwB;YACxB,MAAM,cAAc,GAAG,MAAM,WAAW,CACtC,yBAAyB,EACzB,GAAG,EAAE,CAAC,IAAI,CAAoB,gBAAgB,EAAE;gBAC9C,QAAQ,EAAE,iBAAiB,CAAC,OAAO;gBACnC,QAAQ,EAAE,QAAQ;aACnB,CAAC,CACH,CAAC;YACF,KAAK,GAAG,cAAc,CAAC,MAAM,CAAC;YAE9B,sBAAsB;YACtB,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC;YACvD,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;YAC9D,IAAI,GAAG,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC5B,KAAK,CAAC,sBAAsB,GAAG,CAAC,KAAK,IAAI,eAAe,EAAE,CAAC,CAAC;gBAC5D,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YACtC,CAAC;QACH,CAAC;QAED,mCAAmC;QACnC,IAAI,CAAC,OAAO,CAAC,KAAK;YAAE,IAAI,CAAC,WAAW,KAAK,EAAE,CAAC,CAAC;QAE7C,MAAM,QAAQ,GAAG,MAAM,WAAW,CAChC,UAAU,EACV,GAAG,EAAE,CAAC,IAAI,CAAqC,aAAa,EAAE;YAC5D,MAAM,EAAE,KAAK;YACb,OAAO,EAAE,KAAK;SACf,CAAC,CACH,CAAC;QAEF,gBAAgB;QAChB,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC9B,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;QAC9C,CAAC;aAAM,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YACzB,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC/B,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;YACpC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,gBAAgB,CAAC,GAAW,EAAE,KAAc;IACzD,MAAM,MAAM,GAAG,qBAAqB,EAAE,CAAC;IAEvC,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC,KAAK,EAAE,CAAC;IAElG,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,wBAAwB,EAAE;YAC3D,IAAI,EAAE,EAAE,GAAG,EAAE;YACb,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAW,CAAC;QAElC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,YAAY,CAAC,mBAAmB,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC/E,CAAC;QAED,OAAO,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;QAExC,0BAA0B;QAC1B,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;YACpD,IAAI,CAAC,uCAAuC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC;QACzE,CAAC;QAED,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,EAAE;YACzB,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE;SACxB,CAAC;IACJ,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,OAAO,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAEnC,iCAAiC;QACjC,IAAI,GAAG,CAAC,QAAQ,EAAE,UAAU,KAAK,GAAG,EAAE,CAAC;YACrC,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,IAAW,CAAC;YACtC,KAAK,CAAC,uEAAuE,CAAC,CAAC;YAC/E,IAAI,IAAI,EAAE,OAAO,EAAE,CAAC;gBAClB,IAAI,CAAC,oBAAoB,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;YAC3C,CAAC;YACD,IAAI,CAAC,6CAA6C,CAAC,CAAC;YACpD,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;QACxC,CAAC;QAED,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,KAAa,EAAE,KAAc,EAAE,YAAoB,MAAM;IACjF,OAAO,gBAAgB,CACrB,KAAK,IAAI,EAAE;QACT,MAAM,GAAG,GAAG,MAAM,GAAG,CAAM,eAAe,KAAK,EAAE,CAAC,CAAC;QACnD,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,KAAK,WAAW,IAAI,GAAG,CAAC,MAAM,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,KAAK,WAAW,CAAC;QACjG,OAAO;YACL,IAAI;YACJ,QAAQ,EAAE,GAAG,CAAC,eAAe,IAAI,CAAC;YAClC,KAAK,EAAE,GAAG,CAAC,WAAW,IAAI,SAAS;YACnC,IAAI,EAAE,GAAG;SACV,CAAC;IACJ,CAAC,EACD;QACE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY;QAChC,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,SAAS;KACnB,CACF,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,YAAY,CACzB,KAAa,EACb,KAAgB,EAChB,KAAc,EACd,YAAoB,MAAM;IAE1B,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IAEnC,OAAO,gBAAgB,CACrB,KAAK,IAAI,EAAE;QACT,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;QACtD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC/B,OAAO;gBACL,IAAI,EAAE,IAAI;gBACV,QAAQ,EAAE,CAAC;gBACX,IAAI,EAAE,QAAQ;aACf,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACrC,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;QAClE,OAAO;YACL,IAAI;YACJ,QAAQ,EAAE,QAAQ,CAAC,OAAO;YAC1B,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,IAAI,EAAE,QAAQ;SACf,CAAC;IACJ,CAAC,EACD;QACE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK;QAChC,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,SAAS;KACnB,CACF,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,KAAa;IACrC,MAAM,OAAO,GAAG,MAAM,GAAG,CAAa,eAAe,KAAK,UAAU,CAAC,CAAC;IACtE,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAmB,gBAAgB,KAAK,WAAW,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QAChG,OAAO,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAgB,CAAC;IACnE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,OAAO,CAAC;IACjB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,YAAY,CAAC,MAAc;IAClC,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,MAAM,CAAC,CAAC,OAAO,MAAM,CAAC;QAC3B,KAAK,UAAU,CAAC,CAAC,OAAO,IAAI,CAAC;QAC7B,KAAK,KAAK,CAAC,CAAC,OAAO,KAAK,CAAC;QACzB,OAAO,CAAC,CAAC,OAAO,KAAK,CAAC;IACxB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,aAAa,CACpB,OAAmB,EACnB,OAA2G,EAC3G,QAAiB,EACjB,KAAc;IAEd,2CAA2C;IAC3C,IAAI,OAAe,CAAC;IACpB,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC;IAEzC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC;IACpC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;IAElC,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QACtB,OAAO,GAAG,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC1C,CAAC;SAAM,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;QAC9B,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO,GAAG,qBAAqB,CAAC;QAClC,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;SAAM,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QAC5B,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChD,CAAC;SAAM,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;QACjC,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;QACrC,KAAK,CAAC,IAAI,CAAC,YAAY,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QACvC,KAAK,CAAC,IAAI,CAAC,aAAa,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC;QAC3C,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAC1B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,KAAK,CAAC,IAAI,CAAC,YAAY,KAAK,CAAC,WAAW,IAAI,CAAC,CAAC;gBAC9C,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;gBACnC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACjB,CAAC;QACH,CAAC;QACD,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;SAAM,CAAC;QACN,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAClC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3B,IAAI,KAAK;YAAE,KAAK,CAAC,IAAI,CAAC,WAAW,KAAK,EAAE,CAAC,CAAC;QAC1C,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;YAClC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,KAAK,CAAC,IAAI,CAAC,WAAW,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC;gBAC5C,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;YACrC,CAAC;QACH,CAAC;QACD,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IAED,0BAA0B;IAC1B,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACtB,0BAA0B;QAC1B,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAC1C,SAAS,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAEvC,4BAA4B;QAC5B,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACxE,MAAM,GAAG,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,QAAQ,IAAI,GAAG,EAAE,CAAC,CAAC;QAEnD,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACzC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACnB,OAAO,CAAC,sBAAsB,OAAO,EAAE,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;SAAM,CAAC;QACN,2DAA2D;QAC3D,IAAI,MAAM,KAAK,MAAM,IAAI,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YAChE,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACvB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;gBACnB,OAAO,CAAC,GAAG,EAAE,CAAC;gBACd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC;gBAC/C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBACvC,IAAI,KAAK;oBAAE,OAAO,CAAC,GAAG,CAAC,WAAW,KAAK,EAAE,CAAC,CAAC;YAC7C,CAAC;YAED,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtB,IAAI,CAAC,OAAO,CAAC,KAAK;oBAAE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC;gBAEnE,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;oBAC3B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC;oBACzD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;gBACtC,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -1,11 +1,3 @@
1
- /**
2
- * Multi-document task query via AgentTask Durable Object
3
- *
4
- * okra task ocr-xxx -m "summarize"
5
- * okra task ocr-xxx,ocr-yyy -m "compare revenue"
6
- * okra task -c my-collection -m "analyze all"
7
- */
8
- import '../lib/ws-polyfill.js';
9
1
  import { Command } from 'commander';
10
2
  export declare function createTaskCommand(): Command;
11
3
  //# sourceMappingURL=task.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../src/commands/task.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,uBAAuB,CAAC;AAE/B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAoBpC,wBAAgB,iBAAiB,IAAI,OAAO,CAmN3C"}
1
+ {"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../src/commands/task.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,wBAAgB,iBAAiB,IAAI,OAAO,CAyB3C"}
@@ -1,203 +1,22 @@
1
- /**
2
- * Multi-document task query via AgentTask Durable Object
3
- *
4
- * okra task ocr-xxx -m "summarize"
5
- * okra task ocr-xxx,ocr-yyy -m "compare revenue"
6
- * okra task -c my-collection -m "analyze all"
7
- */
8
- import '../lib/ws-polyfill.js';
9
1
  import { Command } from 'commander';
10
- import { renderTaskPhase, renderTaskResult } from '../lib/agent-renderer.js';
11
- import { getApiKey, getAgentSessionUrl } from '../lib/config.js';
12
- import { isQuietMode } from '../lib/runtime.js';
13
- import { error, info } from '../lib/output.js';
14
- import { get, OkraApiError, EXIT_CODES } from '../lib/client.js';
15
- import { createHash } from 'crypto';
16
- const WSS_URL = getAgentSessionUrl();
17
- function deriveTaskId(jobIds, collectionId) {
18
- if (collectionId)
19
- return `task-${collectionId}`;
20
- const sorted = [...jobIds].sort();
21
- const hash = createHash('sha256').update(sorted.join(',')).digest('hex').slice(0, 12);
22
- return `task-${hash}`;
23
- }
2
+ import { runTaskAgentQuery } from '../lib/task-agent.js';
24
3
  export function createTaskCommand() {
25
4
  const task = new Command('task')
26
- .description('Query one or more documents via AgentTask (no sandbox)')
5
+ .description('Legacy alias for multi-document task-agent chat')
27
6
  .argument('[documents]', 'Comma-separated job IDs (ocr-xxx,ocr-yyy)')
28
7
  .requiredOption('-m, --message <message>', 'Query message')
29
8
  .option('-c, --collection <nameOrId>', 'Use a named collection or collection ID')
30
9
  .option('--share', 'Generate a public share link after result')
31
10
  .option('--model <model>', 'Model to use', 'claude-sonnet-4-20250514')
32
11
  .action(async (documents, options) => {
33
- const apiKey = getApiKey();
34
- if (!apiKey) {
35
- error('Not authenticated. Run `okra auth login` first.');
36
- process.exit(EXIT_CODES.AUTH_ERROR);
37
- }
38
- let collectionId;
39
- let taskDocs = [];
40
- // Resolve documents
41
- if (options.collection) {
42
- const ref = options.collection;
43
- // Check if it's inline comma-separated ocr- IDs
44
- const parts = ref.split(',').map(s => s.trim());
45
- if (parts.every(s => s.startsWith('ocr-'))) {
46
- taskDocs = parts.map(id => ({ jobId: id, fileName: id }));
47
- info(`Inline: ${taskDocs.length} documents`);
48
- }
49
- else {
50
- // Named collection or collection ID
51
- try {
52
- const collection = await get(`api/v1/collections/${encodeURIComponent(ref)}`);
53
- collectionId = collection.id;
54
- taskDocs = collection.documents.map(d => ({
55
- jobId: d.job_id,
56
- fileName: d.file_name || d.job_id,
57
- }));
58
- info(`Collection: ${collection.name} (${collection.id})`);
59
- for (const d of taskDocs)
60
- info(` ${d.jobId} ${d.fileName}`);
61
- if (taskDocs.length === 0) {
62
- error('Collection is empty — add documents first');
63
- process.exit(EXIT_CODES.INVALID_ARGS);
64
- }
65
- }
66
- catch (err) {
67
- if (err instanceof OkraApiError && err.statusCode === 404) {
68
- error(`Collection not found: ${ref}`);
69
- process.exit(EXIT_CODES.NOT_FOUND);
70
- }
71
- throw err;
72
- }
73
- }
74
- }
75
- else if (documents) {
76
- // Positional: comma-separated job IDs
77
- const jobIds = documents.split(',').map(s => s.trim()).filter(Boolean);
78
- if (jobIds.length === 0) {
79
- error('No documents provided');
80
- process.exit(EXIT_CODES.INVALID_ARGS);
81
- }
82
- // Validate each job exists
83
- for (const id of jobIds) {
84
- if (!id.startsWith('ocr-')) {
85
- error(`Invalid job ID: ${id} (must start with ocr-)`);
86
- process.exit(EXIT_CODES.INVALID_ARGS);
87
- }
88
- }
89
- taskDocs = jobIds.map(id => ({ jobId: id, fileName: id }));
90
- info(`${taskDocs.length} document${taskDocs.length > 1 ? 's' : ''}`);
91
- }
92
- else {
93
- error('Provide document IDs or use -c/--collection');
94
- process.exit(EXIT_CODES.INVALID_ARGS);
95
- }
96
- // Derive deterministic task ID
97
- const taskId = deriveTaskId(taskDocs.map(d => d.jobId), collectionId);
98
- const quiet = isQuietMode();
99
- const useSpinners = !quiet && process.stdout.isTTY;
100
- // Connect to AgentTask via raw WebSocket
101
- const wsUrl = `${WSS_URL.replace(/\/+$/, '')}/task/${taskId}/ws`;
102
- const ws = new WebSocket(wsUrl);
103
- let resolveConnected;
104
- const connected = new Promise(resolve => { resolveConnected = resolve; });
105
- let resolveReplay;
106
- const replayDone = new Promise(resolve => { resolveReplay = resolve; });
107
- const { default: ora } = await import('ora');
108
- let phaseSpinner = null;
109
- let resolveResult;
110
- let rejectResult;
111
- const resultDone = new Promise((resolve, reject) => {
112
- resolveResult = resolve;
113
- rejectResult = reject;
12
+ await runTaskAgentQuery({
13
+ documents,
14
+ message: options.message,
15
+ collection: options.collection,
16
+ share: options.share,
17
+ model: options.model,
18
+ sourceCommand: 'task',
114
19
  });
115
- let messageSent = false;
116
- ws.onopen = () => {
117
- ws.send(JSON.stringify({ type: 'JOIN_SESSION' }));
118
- };
119
- ws.onmessage = (msg) => {
120
- let event;
121
- try {
122
- event = JSON.parse(String(msg.data));
123
- }
124
- catch {
125
- return;
126
- }
127
- switch (event.type) {
128
- case 'CONNECTED':
129
- resolveConnected();
130
- setTimeout(() => resolveReplay(), 200);
131
- break;
132
- case 'EVENTS_BATCH':
133
- resolveReplay();
134
- break;
135
- case 'TASK_PHASE':
136
- if (!messageSent)
137
- return;
138
- if (!phaseSpinner && useSpinners) {
139
- phaseSpinner = ora({ spinner: 'dots' }).start();
140
- }
141
- renderTaskPhase(event.phase, event.message, event.progress, phaseSpinner);
142
- if (event.phase === 'error') {
143
- phaseSpinner?.fail(event.message || 'Task query failed');
144
- phaseSpinner = null;
145
- rejectResult(new Error(event.message || 'Task query failed'));
146
- }
147
- if (event.phase === 'done') {
148
- phaseSpinner?.stop();
149
- phaseSpinner = null;
150
- }
151
- break;
152
- case 'TASK_RESULT':
153
- if (!messageSent)
154
- return;
155
- renderTaskResult(event.synthesis, event.childResults, event.totalCostUsd, event.totalDurationMs);
156
- resolveResult();
157
- break;
158
- case 'ERROR':
159
- error(`Server error: ${event.msg}`);
160
- rejectResult(new Error(event.msg));
161
- break;
162
- }
163
- };
164
- ws.onerror = () => {
165
- rejectResult(new Error('WebSocket connection error'));
166
- };
167
- ws.onclose = (ev) => {
168
- if (!messageSent) {
169
- rejectResult(new Error(`WebSocket closed before query sent (code: ${ev.code})`));
170
- }
171
- };
172
- await connected;
173
- await replayDone;
174
- // Send task query
175
- messageSent = true;
176
- info(`Querying ${taskDocs.length} documents: ${options.message}`);
177
- ws.send(JSON.stringify({
178
- type: 'TASK_QUERY',
179
- content: options.message,
180
- documents: taskDocs,
181
- model: { id: options.model, provider: 'anthropic' },
182
- author: { name: 'okra-cli', clientType: 'cli' },
183
- }));
184
- // Wait for result
185
- try {
186
- await resultDone;
187
- if (options.share) {
188
- const shareUrl = `https://okrapdf.com/share/task/${taskId}`;
189
- info(`Share URL: ${shareUrl}`);
190
- }
191
- }
192
- catch (err) {
193
- error(err instanceof Error ? err.message : String(err));
194
- process.exitCode = EXIT_CODES.GENERAL_ERROR;
195
- }
196
- try {
197
- ws.close();
198
- }
199
- catch { }
200
- process.exit(process.exitCode ?? 0);
201
20
  });
202
21
  return task;
203
22
  }