@wavehouse/chtypes 0.2.2 → 0.3.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.
package/dist/results.js CHANGED
@@ -53,6 +53,50 @@ export const Outcome = {
53
53
  Skipped: 'skipped',
54
54
  };
55
55
  const EMPTY = Buffer.alloc(0);
56
+ /**
57
+ * The two revision-5 `source` provenances `columns_json` introduces (issue
58
+ * #53), plus the pre-existing `Skipped` provenance named alongside them
59
+ * (issue #90). A plain const object, not a closed union: `source` is a
60
+ * growing vocabulary arriving from the C layer, and an unrecognized spelling
61
+ * from a newer artifact must pass through unchanged, not be rejected.
62
+ */
63
+ export const Source = {
64
+ /**
65
+ * MATERIALIZED / ALIAS / EPHEMERAL, never read from an input row.
66
+ * Predates revision 5 — unlike the two provenances below — but
67
+ * `rowResultOf` has excluded it from `values` from the start, the same
68
+ * exclusion `EphemeralInput` was modeled on. Named here, in the same
69
+ * idiom, so the exclusion can be keyed on a symbol rather than a bare
70
+ * string literal.
71
+ */
72
+ Skipped: 'skipped',
73
+ /**
74
+ * A listed EPHEMERAL column's read value. The server reads it — it is in
75
+ * scope for the DEFAULT expressions that reference it — and it is never
76
+ * stored and never exported. `rowResultOf` excludes it from `values`
77
+ * exactly as it already excludes `Source.Skipped`: a value that is never
78
+ * stored must not sit where a caller reads the stored row (a hash, a
79
+ * signature).
80
+ */
81
+ EphemeralInput: 'ephemeral_input',
82
+ /**
83
+ * A listed MATERIALIZED column's supplied value under
84
+ * `insert_allow_materialized_columns=1`. The supplied value REPLACES the
85
+ * column's expression and IS stored — unlike `EphemeralInput`, it stays
86
+ * IN `values`.
87
+ */
88
+ MaterializedInput: 'materialized_input',
89
+ /**
90
+ * A VOLATILE DEFAULT (`now()`/`now64(n)`/`today()`/`yesterday()`, or an
91
+ * expression over one) this library resolved locally rather than
92
+ * ClickHouse — the caller MUST send it as an explicit column on any later
93
+ * INSERT, or the value silently drifts each attempt. `rowResultOf` has
94
+ * always populated `substituted` for exactly this src value; like
95
+ * `Skipped` before issue #90, it had no named constant of its own (issue
96
+ * #122).
97
+ */
98
+ DefaultSubstituted: 'default_substituted',
99
+ };
56
100
  /**
57
101
  * Map a document's outcome string. An outcome this binding does not recognize
58
102
  * degrades to `unsupported`, never to `rejected` (docs/reference/bindings.md
@@ -77,7 +121,10 @@ function outcomeOf(s) {
77
121
  return 'unsupported';
78
122
  }
79
123
  }
80
- function columnDocOf(raw) {
124
+ // Exported (but not re-exported from index.ts, so the public surface is
125
+ // unchanged) so tests can parse a single `cols[]` entry the way `rowResultOf`
126
+ // does and call `classify()` on it directly — see transform.test.ts, #97.
127
+ export function columnDocOf(raw) {
81
128
  const poison = asBool(field(raw, 'poison'));
82
129
  const inputNode = field(raw, 'input');
83
130
  const storedNode = field(raw, 'stored');
@@ -122,7 +169,13 @@ export function rowResultOf(doc) {
122
169
  const substituted = [];
123
170
  for (const rawCol of items(field(doc, 'cols'))) {
124
171
  const c = columnDocOf(rawCol);
125
- if (c.src === 'skipped')
172
+ // Source.Skipped (MATERIALIZED/ALIAS/EPHEMERAL, never read) and
173
+ // Source.EphemeralInput (a LISTED EPHEMERAL column: read, but never
174
+ // stored — see the `source` doc on `Value`) are both excluded from
175
+ // `values`, which is the stored row. Source.MaterializedInput stays IN:
176
+ // under insert_allow_materialized_columns=1 the supplied value genuinely
177
+ // IS stored, replacing the column's expression (issue #53).
178
+ if (c.src === Source.Skipped || c.src === Source.EphemeralInput)
126
179
  continue;
127
180
  values.push({
128
181
  column: c.name,
@@ -131,7 +184,7 @@ export function rowResultOf(doc) {
131
184
  isNull: c.storedIsNull && !c.poison,
132
185
  source: c.src,
133
186
  });
134
- if (c.src === 'default_substituted') {
187
+ if (c.src === Source.DefaultSubstituted) {
135
188
  substituted.push({ column: c.name, expr: c.input, text: c.stored, bytes: c.storedBytes });
136
189
  }
137
190
  transformed.push(...classify(c));
@@ -142,6 +195,15 @@ export function rowResultOf(doc) {
142
195
  text: rawText(field(raw, 'stored')),
143
196
  bytes: rawBytes(field(raw, 'stored')),
144
197
  }));
198
+ // `verdict` (RowsExportWith's TypeScript spelling: `rows(..., { rowFilter })`)
199
+ // is present exactly when a filter was attached to the call that produced
200
+ // this document — absent from every Row/Rows document and from `rows()`
201
+ // with no `rowFilter`. `verdictOf` degrades an unrecognized character to
202
+ // `'d'`, never to an invented answer.
203
+ const verdictNode = field(doc, 'verdict');
204
+ const verdict = verdictNode === undefined ? undefined : verdictOf(asString(verdictNode));
205
+ const verdictCode = asInt(field(doc, 'verdict_code'));
206
+ const verdictErr = asString(field(doc, 'verdict_err'));
145
207
  return {
146
208
  values,
147
209
  transformed,
@@ -152,6 +214,9 @@ export function rowResultOf(doc) {
152
214
  unsupportedSettings,
153
215
  substituted,
154
216
  computed,
217
+ verdict,
218
+ verdictCode,
219
+ verdictErr,
155
220
  };
156
221
  }
157
222
  /**
@@ -215,6 +280,8 @@ export function batchResultOf(doc, payload = null) {
215
280
  payload: payload ?? undefined,
216
281
  spans,
217
282
  exportDeclined,
283
+ rowsPassed: asInt(field(doc, 'rows_passed')),
284
+ rowsCut: asInt(field(doc, 'rows_cut')),
218
285
  };
219
286
  }
220
287
  // ------------------------------------------------------------------ filters
@@ -252,6 +319,29 @@ export const Verdict = {
252
319
  export function isAnswer(v) {
253
320
  return v === 't' || v === 'f';
254
321
  }
322
+ /**
323
+ * Map ONE wire verdict character to a `Verdict` — the single place that
324
+ * decision is made, shared by `filterResultOf` (`chs_filter_rows`'s /
325
+ * `chs_block_parse`'s `verdicts` string, one char per row) and `rowResultOf`
326
+ * (`chs_rows`'s per-row `verdict` field, the revision-5 attached filter). A
327
+ * second, drifted copy of this switch is exactly how `'e'` or `'d'` could
328
+ * get silently collapsed into `'f'` in one call path and not the other —
329
+ * the fail-open bug this vocabulary exists to prevent.
330
+ */
331
+ function verdictOf(ch) {
332
+ switch (ch) {
333
+ case 't':
334
+ return 't';
335
+ case 'f':
336
+ return 'f';
337
+ case 'e':
338
+ return 'e';
339
+ default:
340
+ // 'd', and any character this binding does not know: decline — fail
341
+ // closed, mirroring the unknown-outcome rule.
342
+ return 'd';
343
+ }
344
+ }
255
345
  /**
256
346
  * The CALL-level verdict of `Filter#rows` — whether evaluation completed at
257
347
  * all; per-row failures live in the verdicts, not here. An outcome spelling
@@ -294,21 +384,7 @@ export function filterResultOf(doc) {
294
384
  return { ...base, verdicts: [], errors: [] };
295
385
  const verdicts = [];
296
386
  for (const ch of asString(field(doc, 'verdicts'))) {
297
- switch (ch) {
298
- case 't':
299
- verdicts.push('t');
300
- break;
301
- case 'f':
302
- verdicts.push('f');
303
- break;
304
- case 'e':
305
- verdicts.push('e');
306
- break;
307
- default:
308
- // 'd', and any character this binding does not know: decline — fail
309
- // closed, mirroring the unknown-outcome rule.
310
- verdicts.push('d');
311
- }
387
+ verdicts.push(verdictOf(ch));
312
388
  }
313
389
  const errors = items(field(doc, 'errors')).map((e) => ({
314
390
  row: asInt(field(e, 'row')),
@@ -1 +1 @@
1
- {"version":3,"file":"results.js","sourceRoot":"","sources":["../src/results.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"results.js","sourceRoot":"","sources":["../src/results.ts"],"names":[],"mappings":"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"}
package/dist/schema.d.ts CHANGED
@@ -35,13 +35,55 @@ export interface EngineOptions {
35
35
  readonly mergeTreeSettings?: Settings | undefined;
36
36
  }
37
37
  /**
38
- * Options for `Schema#rows` — the revision-3 export and document-flag
39
- * channels (the C ABI contract §Rows, for which include/chtypes.h is the
40
- * public authority). Whatever the
41
- * options, `rows()` is always ONE `chs_rows` call — never a second call,
42
- * never re-parsing.
38
+ * Options for `Schema#row` and `Schema#parseBlock` — the revision-5 INSERT
39
+ * column list (the C ABI contract §Rows, for which include/chtypes.h is the
40
+ * public authority). `RowsOptions` (below) extends this with the
41
+ * revision-3 export/document-flag channels, which are meaningless on
42
+ * `row()` and `parseBlock()` — this type simply does not offer them, rather
43
+ * than offering fields those two methods would silently ignore.
43
44
  */
44
- export interface RowsOptions {
45
+ export interface RowOptions {
46
+ /**
47
+ * The revision-5 INSERT column list, for `row()`, `parseBlock()`, and
48
+ * `rows()` (and its export channel) via `RowsOptions` extending this:
49
+ * name the columns THIS DATA supplies, and the server computes the rest
50
+ * with them in scope for their DEFAULTs.
51
+ *
52
+ * Absent or an empty array is the no-list behavior of every revision
53
+ * before 5 — the data supplies every plain column — and is NEVER rendered
54
+ * as `INSERT INTO t () FORMAT X`: that is code 62 `SYNTAX_ERROR` on every
55
+ * line, so this binding always crosses the ABI's OTHER no-list spelling,
56
+ * `"[]"`, which `chs_row`'s own comment states is byte-for-byte the same
57
+ * input as a real NULL.
58
+ *
59
+ * With a list: positional formats address the k-th field to the k-th
60
+ * LISTED column (the list order, not declared order, is the wire order,
61
+ * and the list length is the arity); JSON-family formats match keys
62
+ * against the listed set, and a key naming an unlisted table column is an
63
+ * unknown field under `input_format_skip_unknown_fields`, exactly as a
64
+ * key naming no column at all. A listed `EPHEMERAL` column's value IS
65
+ * read and IS in scope for the DEFAULTs that reference it, and is still
66
+ * never stored and never exported — `chs_schema_column_default_kind`
67
+ * reports `'EPHEMERAL'` for it (see `ColumnInfo#defaultKind`).
68
+ *
69
+ * Not validated here: an unknown name, an `ALIAS` column, or a repeated
70
+ * name is the SERVER's own refusal (codes 16, 16 and 15 respectively),
71
+ * surfaced through the row/batch outcome exactly as it arrives.
72
+ */
73
+ readonly columns?: readonly string[] | undefined;
74
+ }
75
+ /**
76
+ * Options for `Schema#rows` — `RowOptions` (the revision-5 column list,
77
+ * shared with `row()` and `parseBlock()`) plus the revision-3
78
+ * export/document-flag channels (the C ABI contract §Rows, for which
79
+ * include/chtypes.h is the public authority). `tests/parity/manifest.json`
80
+ * capability `schema.columns-option` spells the shared column-list
81
+ * capability `RowsOptions` in TypeScript — this type still carries it, now
82
+ * through inheriting `RowOptions` rather than declaring its own `columns`
83
+ * field. Whatever the options, `rows()` is always ONE `chs_rows` call —
84
+ * never a second call, never re-parsing.
85
+ */
86
+ export interface RowsOptions extends RowOptions {
45
87
  /**
46
88
  * A `Format` the artifact can SERIALIZE — this revision exactly
47
89
  * `Format.JSONCompactEachRow`. Any other value answers the whole call
@@ -59,6 +101,29 @@ export interface RowsOptions {
59
101
  * `DOC_ALL` is refused loudly by the library, never pre-validated here.
60
102
  */
61
103
  readonly docFlags?: number | undefined;
104
+ /**
105
+ * Attach a compiled `Filter` to this call's export channel (revision 5,
106
+ * second half — docs/guides/filters.md "Exporting only the rows a filter
107
+ * admits"): ONE `chs_rows` parse then answers both the per-row verdict
108
+ * (`RowResult#verdict`) and, for rows whose verdict is `'t'`, the export
109
+ * bytes. Absent is today's behavior byte for byte.
110
+ *
111
+ * `'e'` (the predicate threw) and `'d'` (declined — including a row whose
112
+ * own parse `outcome` was not `'accepted'`) are NEVER exported and NEVER
113
+ * collapsed into `'f'`: collapsing either turns fail-closed into
114
+ * fail-open, the leak class this surface exists to prevent. A
115
+ * security-enforcing caller must treat any `RowResult#verdict` that is
116
+ * `undefined` or not `isAnswer()` as a refusal — hide the row or fail the
117
+ * request, never export it.
118
+ *
119
+ * The filter must be compiled over THIS schema: one from a different
120
+ * `Schema` of the SAME loaded library rejects the whole call, loudly
121
+ * (`outcome: 'rejected'`, code 1002 — the same cross-schema rule
122
+ * `Filter#eval` lets the C layer enforce for a (filter, block) pair). One
123
+ * from a DIFFERENT loaded library throws `ChtypesError` before any C
124
+ * call — no handle crosses a dlopen'd image boundary.
125
+ */
126
+ readonly rowFilter?: Filter | undefined;
62
127
  }
63
128
  /**
64
129
  * Options for `Schema#compileFilter` — the revision-4 query-parameter
@@ -194,12 +259,16 @@ export declare class Schema {
194
259
  * @param settings - per-call settings; they win over the compile profile and
195
260
  * the library defaults (except a type gate the profile declared, which the
196
261
  * handle has already settled, as a real server's CREATE does).
262
+ * @param options - `RowOptions#columns` (revision 5), the INSERT column
263
+ * list. `row()` takes `RowOptions`, not `RowsOptions`: the revision-3
264
+ * export/doc-flag channels are meaningless on a single row, so this
265
+ * method's options type simply does not offer them.
197
266
  * @returns the `RowResult` — verdict, stored values, and every silent change.
198
267
  * @throws {ChtypesError} when the schema is closed, or a settings value is a
199
268
  * JS `number`.
200
269
  * @throws {UnsupportedError} when the artifact predates `chs_row`.
201
270
  */
202
- row(format: Format, raw: Uint8Array, settings?: Settings): RowResult;
271
+ row(format: Format, raw: Uint8Array, settings?: Settings, options?: RowOptions): RowResult;
203
272
  /**
204
273
  * Validate and coerce a whole request body, which may hold many rows.
205
274
  *
@@ -228,13 +297,19 @@ export declare class Schema {
228
297
  * @param format - the wire format code (`Format`).
229
298
  * @param body - the whole request body as bytes (never a JS string).
230
299
  * @param settings - per-call settings; same precedence as `row`.
231
- * @param options - the revision-3 export/doc-flag channels; absent =
232
- * today's full document, byte-identical to revision 2.
300
+ * @param options - the revision-3 export/doc-flag channels, plus
301
+ * `columns` (revision 5), the INSERT column list, and `rowFilter`
302
+ * (revision 5, second half) — see `RowsOptions`; absent = today's full
303
+ * document, byte-identical to revision 2, no list, byte-identical to
304
+ * every revision before 5, and no filter, byte-identical byte for byte.
233
305
  * @returns the `BatchResult`. When `engineRows` is present it — not `rows` —
234
306
  * is the stored truth, and batch-level storage transforms (`ttl_expired`,
235
- * `ttl_column_expired`) are folded into `transformed`.
307
+ * `ttl_column_expired`) are folded into `transformed`. With
308
+ * `options.rowFilter`, `rowsPassed`/`rowsCut` join the result and every
309
+ * row carries its filter `verdict` beside its own `outcome`.
236
310
  * @throws {ChtypesError} when the schema is closed, a settings value is a JS
237
- * `number`, or the artifact predates `chs_rows` (a mandatory symbol).
311
+ * `number`, the artifact predates `chs_rows` (a mandatory symbol), the
312
+ * filter is closed, or the filter comes from a different loaded library.
238
313
  */
239
314
  rows(format: Format, body: Uint8Array, settings?: Settings, options?: RowsOptions): BatchResult;
240
315
  /**
@@ -297,6 +372,13 @@ export declare class Schema {
297
372
  * @param format - the wire format code (`Format`).
298
373
  * @param body - the rows as bytes (never a JS string).
299
374
  * @param settings - parse-side settings; same precedence as `Schema#rows`.
375
+ * @param options - `RowOptions#columns` (revision 5), the INSERT column
376
+ * list read exactly as `Schema#row` reads it. `parseBlock()` takes
377
+ * `RowOptions`, not `RowsOptions`: the revision-3 export/doc-flag
378
+ * channels are meaningless here, so this method's options type simply
379
+ * does not offer them. Filters compiled against this schema still
380
+ * evaluate the schema's PHYSICAL columns, so a listed `EPHEMERAL`
381
+ * column stays unreferenceable in a filter.
300
382
  * @returns the parsed `Block`.
301
383
  * @throws {SchemaError} on a call-level failure — an unknown setting's
302
384
  * 115, an unsplittable body, a binary decode fault, the deferred
@@ -305,7 +387,7 @@ export declare class Schema {
305
387
  * @throws {UnsupportedError} when this build declines the call, or the
306
388
  * artifact predates the block twin.
307
389
  */
308
- parseBlock(format: Format, body: Uint8Array, settings?: Settings): Block;
390
+ parseBlock(format: Format, body: Uint8Array, settings?: Settings, options?: RowOptions): Block;
309
391
  /** @internal — `Block#close` deregisters itself here. */
310
392
  forgetBlock(block: Block): void;
311
393
  /**
@@ -355,6 +437,11 @@ export declare class Filter {
355
437
  constructor(native: NativeLibrary, schema: Schema, handle: FilterHandle,
356
438
  /** The expression text as compiled, for logging and cache keys. */
357
439
  expr: string);
440
+ /** @internal — the loaded library this filter's handle belongs to, for
441
+ * `Schema#rows(options.rowFilter)`'s cross-library check. */
442
+ get nativeLib(): NativeLibrary;
443
+ /** @internal — the live handle, for `Schema#rows(options.rowFilter)`. */
444
+ liveHandle(): FilterHandle;
358
445
  /**
359
446
  * Evaluate the filter over a body of rows (`chs_filter_rows`) — the same
360
447
  * formats and settings contract as `Schema#rows`, ONE C call. Rows are
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACvF,OAAO,EAAwB,KAAK,MAAM,EAAE,MAAM,aAAa,CAAC;AAEhE,OAAO,EAIL,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AACtB,OAAO,EAAkB,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9D,2DAA2D;AAC3D,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,gFAAgF;IAChF,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,8DAA8D;IAC9D,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,6EAA6E;IAC7E,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;CACpC;AAED,iFAAiF;AACjF,MAAM,WAAW,aAAa;IAC5B;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CACnD;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,UAAU;IACzB;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;CAClD;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,WAAY,SAAQ,UAAU;IAC7C;;;;;OAKG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3C;;;;;;;;OAQG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACvC;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACzC;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CACxC;AAED;;;;;;;;;GASG;AACH,qBAAa,MAAM;IAwBf,OAAO,CAAC,QAAQ,CAAC,MAAM;IAEvB,2EAA2E;IAC3E,QAAQ,CAAC,GAAG,EAAE,MAAM;IA1BtB;;;;;;OAMG;IACH,QAAQ,CAAC,OAAO,EAAE,SAAS,UAAU,EAAE,CAAC;IACxC,OAAO,CAAC,MAAM,CAAsB;IACpC;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAC7C;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoB;IAE3C,sDAAsD;IACtD,YACmB,MAAM,EAAE,aAAa,EACtC,MAAM,EAAE,YAAY;IACpB,2EAA2E;IAClE,GAAG,EAAE,MAAM,EAIrB;IAED,OAAO,CAAC,IAAI;IAKZ;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,IAAI,CAExE;IAED;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAExB;IAED;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,QAAQ,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,SAAS,CAGzF;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAyCG;IACH,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,WAAW,CAsB9F;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAqCG;IACH,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,MAAM,CAKlE;IAED,0DAA0D;IAC1D,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAEjC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiCG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,KAAK,CAK7F;IAED,yDAAyD;IACzD,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAE9B;IAED;;;;;;OAMG;IACH,KAAK,IAAI,IAAI,CAQZ;IAED,sEAAsE;IACtE,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,CAEvB;CACF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,qBAAa,MAAM;IAKf,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAEvB,mEAAmE;IACnE,QAAQ,CAAC,IAAI,EAAE,MAAM;IARvB,OAAO,CAAC,MAAM,CAAsB;IAEpC,wDAAwD;IACxD,YACmB,MAAM,EAAE,aAAa,EACrB,MAAM,EAAE,MAAM,EAC/B,MAAM,EAAE,YAAY;IACpB,mEAAmE;IAC1D,IAAI,EAAE,MAAM,EAGtB;IAED;iEAC6D;IAC7D,IAAI,SAAS,IAAI,aAAa,CAE7B;IAED,yEAAyE;IACzE,UAAU,IAAI,YAAY,CAGzB;IAED;;;;;;;;;;;;;;;OAeG;IACH,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,CAAC,EAAE,QAAQ,GAAG,YAAY,CAIxE;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACH,IAAI,CAAC,KAAK,EAAE,KAAK,GAAG,YAAY,CAO/B;IAED;;;;OAIG;IACH,KAAK,IAAI,IAAI,CAKZ;IAED,4EAA4E;IAC5E,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,CAEvB;CACF;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,KAAK;IAKd,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM;IALzB,OAAO,CAAC,MAAM,CAAqB;IAEnC,qDAAqD;IACrD,YACmB,MAAM,EAAE,aAAa,EACrB,MAAM,EAAE,MAAM,EAC/B,MAAM,EAAE,WAAW,EAGpB;IAED,qEAAqE;IACrE,IAAI,SAAS,IAAI,aAAa,CAE7B;IAED,sDAAsD;IACtD,UAAU,IAAI,WAAW,CAGxB;IAED;;;;OAIG;IACH,KAAK,IAAI,IAAI,CAKZ;IAED,wEAAwE;IACxE,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,CAEvB;CACF"}
package/dist/schema.js CHANGED
@@ -119,13 +119,17 @@ export class Schema {
119
119
  * @param settings - per-call settings; they win over the compile profile and
120
120
  * the library defaults (except a type gate the profile declared, which the
121
121
  * handle has already settled, as a real server's CREATE does).
122
+ * @param options - `RowOptions#columns` (revision 5), the INSERT column
123
+ * list. `row()` takes `RowOptions`, not `RowsOptions`: the revision-3
124
+ * export/doc-flag channels are meaningless on a single row, so this
125
+ * method's options type simply does not offer them.
122
126
  * @returns the `RowResult` — verdict, stored values, and every silent change.
123
127
  * @throws {ChtypesError} when the schema is closed, or a settings value is a
124
128
  * JS `number`.
125
129
  * @throws {UnsupportedError} when the artifact predates `chs_row`.
126
130
  */
127
- row(format, raw, settings) {
128
- const doc = this.native.row(this.live(), format, raw, encodeSettings(settings));
131
+ row(format, raw, settings, options) {
132
+ const doc = this.native.row(this.live(), format, raw, encodeSettings(settings), options?.columns);
129
133
  return rowResultOf(parseDocument(doc));
130
134
  }
131
135
  /**
@@ -156,18 +160,32 @@ export class Schema {
156
160
  * @param format - the wire format code (`Format`).
157
161
  * @param body - the whole request body as bytes (never a JS string).
158
162
  * @param settings - per-call settings; same precedence as `row`.
159
- * @param options - the revision-3 export/doc-flag channels; absent =
160
- * today's full document, byte-identical to revision 2.
163
+ * @param options - the revision-3 export/doc-flag channels, plus
164
+ * `columns` (revision 5), the INSERT column list, and `rowFilter`
165
+ * (revision 5, second half) — see `RowsOptions`; absent = today's full
166
+ * document, byte-identical to revision 2, no list, byte-identical to
167
+ * every revision before 5, and no filter, byte-identical byte for byte.
161
168
  * @returns the `BatchResult`. When `engineRows` is present it — not `rows` —
162
169
  * is the stored truth, and batch-level storage transforms (`ttl_expired`,
163
- * `ttl_column_expired`) are folded into `transformed`.
170
+ * `ttl_column_expired`) are folded into `transformed`. With
171
+ * `options.rowFilter`, `rowsPassed`/`rowsCut` join the result and every
172
+ * row carries its filter `verdict` beside its own `outcome`.
164
173
  * @throws {ChtypesError} when the schema is closed, a settings value is a JS
165
- * `number`, or the artifact predates `chs_rows` (a mandatory symbol).
174
+ * `number`, the artifact predates `chs_rows` (a mandatory symbol), the
175
+ * filter is closed, or the filter comes from a different loaded library.
166
176
  */
167
177
  rows(format, body, settings, options) {
168
178
  const exportFormat = options?.exportFormat ?? EXPORT_NONE;
169
179
  const docFlags = options?.docFlags ?? (options?.exportFormat === undefined ? DOC_ALL : 0);
170
- const { doc, payload } = this.native.rows(this.live(), format, body, encodeSettings(settings), exportFormat, docFlags);
180
+ const rowFilter = options?.rowFilter;
181
+ let filterHandle;
182
+ if (rowFilter !== undefined) {
183
+ if (rowFilter.nativeLib !== this.native) {
184
+ throw new ChtypesError('chtypes: filter and schema come from different libraries');
185
+ }
186
+ filterHandle = rowFilter.liveHandle();
187
+ }
188
+ const { doc, payload } = this.native.rows(this.live(), format, body, encodeSettings(settings), exportFormat, docFlags, options?.columns, filterHandle);
171
189
  return batchResultOf(parseDocument(doc), payload);
172
190
  }
173
191
  /**
@@ -237,6 +255,13 @@ export class Schema {
237
255
  * @param format - the wire format code (`Format`).
238
256
  * @param body - the rows as bytes (never a JS string).
239
257
  * @param settings - parse-side settings; same precedence as `Schema#rows`.
258
+ * @param options - `RowOptions#columns` (revision 5), the INSERT column
259
+ * list read exactly as `Schema#row` reads it. `parseBlock()` takes
260
+ * `RowOptions`, not `RowsOptions`: the revision-3 export/doc-flag
261
+ * channels are meaningless here, so this method's options type simply
262
+ * does not offer them. Filters compiled against this schema still
263
+ * evaluate the schema's PHYSICAL columns, so a listed `EPHEMERAL`
264
+ * column stays unreferenceable in a filter.
240
265
  * @returns the parsed `Block`.
241
266
  * @throws {SchemaError} on a call-level failure — an unknown setting's
242
267
  * 115, an unsplittable body, a binary decode fault, the deferred
@@ -245,8 +270,8 @@ export class Schema {
245
270
  * @throws {UnsupportedError} when this build declines the call, or the
246
271
  * artifact predates the block twin.
247
272
  */
248
- parseBlock(format, body, settings) {
249
- const handle = this.native.blockParse(this.live(), format, body, encodeSettings(settings));
273
+ parseBlock(format, body, settings, options) {
274
+ const handle = this.native.blockParse(this.live(), format, body, encodeSettings(settings), options?.columns);
250
275
  const block = new Block(this.native, this, handle);
251
276
  this.blocks.add(block);
252
277
  return block;
@@ -319,6 +344,17 @@ export class Filter {
319
344
  this.expr = expr;
320
345
  this.handle = handle;
321
346
  }
347
+ /** @internal — the loaded library this filter's handle belongs to, for
348
+ * `Schema#rows(options.rowFilter)`'s cross-library check. */
349
+ get nativeLib() {
350
+ return this.native;
351
+ }
352
+ /** @internal — the live handle, for `Schema#rows(options.rowFilter)`. */
353
+ liveHandle() {
354
+ if (this.handle === null)
355
+ throw new ChtypesError('chtypes: filter is closed');
356
+ return this.handle;
357
+ }
322
358
  /**
323
359
  * Evaluate the filter over a body of rows (`chs_filter_rows`) — the same
324
360
  * formats and settings contract as `Schema#rows`, ONE C call. Rows are
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"transform.d.ts","sourceRoot":"","sources":["../src/transform.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAIH,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzD,yEAAyE;AACzE,eAAO,MAAM,MAAM;aACjB,YAAY,EAAE,eAAe;aAC7B,aAAa,EAAE,iBAAiB;aAChC,QAAQ,EAAE,WAAW;aACrB,eAAe,EAAE,kBAAkB;aACnC,SAAS,EAAE,YAAY;aACvB,YAAY,EAAE,eAAe;aAC7B,SAAS,EAAE,YAAY;aACvB,UAAU,EAAE,aAAa;aACzB,QAAQ,EAAE,WAAW;aACrB,cAAc,EAAE,iBAAiB;aACjC,YAAY,EAAE,eAAe;aAC7B,cAAc,EAAE,iBAAiB;aACjC,OAAO,EAAE,SAAS;aAClB,cAAc,EAAE,iBAAiB;aACjC,UAAU,EAAE,aAAa;aACzB,YAAY,EAAE,eAAe;aAC7B,QAAQ,EAAE,UAAU;aACpB,mBAAmB,EAAE,uBAAuB;aAC5C,QAAQ,EAAE,UAAU;aACpB,aAAa,EAAE,gBAAgB;aAC/B,UAAU,EAAE,aAAa;aACzB,mBAAmB,EAAE,sBAAsB;aAC3C,UAAU,EAAE,aAAa;aACzB,gBAAgB,EAAE,oBAAoB;CAC9B,CAAC;AAEX,2EAA2E;AAC3E,MAAM,MAAM,MAAM,GAAG,CAAC,OAAO,MAAM,CAAC,CAAC,MAAM,OAAO,MAAM,CAAC,CAAC;AAe1D;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAErD;AAsBD,6CAA6C;AAC7C,wBAAgB,QAAQ,CAAC,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAkFlD"}
1
+ {"version":3,"file":"transform.d.ts","sourceRoot":"","sources":["../src/transform.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAIH,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzD,yEAAyE;AACzE,eAAO,MAAM,MAAM;aACjB,YAAY,EAAE,eAAe;aAC7B,aAAa,EAAE,iBAAiB;aAChC,QAAQ,EAAE,WAAW;aACrB,eAAe,EAAE,kBAAkB;aACnC,SAAS,EAAE,YAAY;aACvB,YAAY,EAAE,eAAe;aAC7B,SAAS,EAAE,YAAY;aACvB,UAAU,EAAE,aAAa;aACzB,QAAQ,EAAE,WAAW;aACrB,cAAc,EAAE,iBAAiB;aACjC,YAAY,EAAE,eAAe;aAC7B,cAAc,EAAE,iBAAiB;aACjC,OAAO,EAAE,SAAS;aAClB,cAAc,EAAE,iBAAiB;aACjC,UAAU,EAAE,aAAa;aACzB,YAAY,EAAE,eAAe;aAC7B,QAAQ,EAAE,UAAU;aACpB,mBAAmB,EAAE,uBAAuB;aAC5C,QAAQ,EAAE,UAAU;aACpB,aAAa,EAAE,gBAAgB;aAC/B,UAAU,EAAE,aAAa;aACzB,mBAAmB,EAAE,sBAAsB;aAC3C,UAAU,EAAE,aAAa;aACzB,gBAAgB,EAAE,oBAAoB;CAC9B,CAAC;AAEX,2EAA2E;AAC3E,MAAM,MAAM,MAAM,GAAG,CAAC,OAAO,MAAM,CAAC,CAAC,MAAM,OAAO,MAAM,CAAC,CAAC;AAe1D;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAErD;AAsBD,6CAA6C;AAC7C,wBAAgB,QAAQ,CAAC,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAwFlD"}
package/dist/transform.js CHANGED
@@ -106,6 +106,12 @@ export function classify(c) {
106
106
  case 'default_expr_unsupported':
107
107
  case 'default_volatile_unresolved':
108
108
  case 'default_pending':
109
+ // Source.EphemeralInput (issue #97): a listed EPHEMERAL column's value
110
+ // is read but never stored, so — like 'skipped' — there is no stored
111
+ // value to have silently changed. NOT Source.MaterializedInput: under
112
+ // insert_allow_materialized_columns=1 that value IS stored, replacing
113
+ // the column's expression, and must still be classified.
114
+ case 'ephemeral_input':
109
115
  return [];
110
116
  default:
111
117
  break;
@@ -1 +1 @@
1
- {"version":3,"file":"transform.js","sourceRoot":"","sources":["../src/transform.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transform.js","sourceRoot":"","sources":["../src/transform.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,OAAO,EAAE,cAAc,EAAa,MAAM,WAAW,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG5F,yEAAyE;AACzE,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,YAAY,EAAE,eAAe;IAC7B,aAAa,EAAE,iBAAiB;IAChC,QAAQ,EAAE,WAAW;IACrB,eAAe,EAAE,kBAAkB;IACnC,SAAS,EAAE,YAAY;IACvB,YAAY,EAAE,eAAe;IAC7B,SAAS,EAAE,YAAY;IACvB,UAAU,EAAE,aAAa;IACzB,QAAQ,EAAE,WAAW;IACrB,cAAc,EAAE,iBAAiB;IACjC,YAAY,EAAE,eAAe;IAC7B,cAAc,EAAE,iBAAiB;IACjC,OAAO,EAAE,SAAS;IAClB,cAAc,EAAE,iBAAiB;IACjC,UAAU,EAAE,aAAa;IACzB,YAAY,EAAE,eAAe;IAC7B,QAAQ,EAAE,UAAU;IACpB,mBAAmB,EAAE,uBAAuB;IAC5C,QAAQ,EAAE,UAAU;IACpB,aAAa,EAAE,gBAAgB;IAC/B,UAAU,EAAE,aAAa;IACzB,mBAAmB,EAAE,sBAAsB;IAC3C,UAAU,EAAE,aAAa;IACzB,gBAAgB,EAAE,oBAAoB;CAC9B,CAAC;AAKX;;;;;GAKG;AACH,MAAM,SAAS,GAAG,IAAI,GAAG,CAAS;IAChC,MAAM,CAAC,QAAQ;IACf,MAAM,CAAC,aAAa;IACpB,MAAM,CAAC,UAAU;IACjB,MAAM,CAAC,mBAAmB;CAC3B,CAAC,CAAC;AAEH;;;;;;;GAOG;AACH,MAAM,UAAU,aAAa,CAAC,MAAc;IAC1C,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAC9B,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;AAEvD;;;GAGG;AACH,SAAS,SAAS,CAAC,MAAc,EAAE,KAAa,EAAE,MAAc,EAAE,MAAc;IAC9E,OAAO;QACL,MAAM;QACN,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC7B,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC/B,UAAU,EAAE,KAAK;QACjB,WAAW,EAAE,MAAM;QACnB,MAAM;QACN,GAAG,EAAE,CAAC;QACN,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC;KAC7B,CAAC;AACJ,CAAC;AAED,6CAA6C;AAC7C,MAAM,UAAU,QAAQ,CAAC,CAAY;IACnC,QAAQ,CAAC,CAAC,GAAG,EAAE,CAAC;QACd,KAAK,SAAS,CAAC;QACf,KAAK,0BAA0B,CAAC;QAChC,KAAK,6BAA6B,CAAC;QACnC,KAAK,iBAAiB,CAAC;QACvB,uEAAuE;QACvE,qEAAqE;QACrE,sEAAsE;QACtE,sEAAsE;QACtE,yDAAyD;QACzD,KAAK,iBAAiB;YACpB,OAAO,EAAE,CAAC;QACZ;YACE,MAAM;IACV,CAAC;IAED,+EAA+E;IAC/E,qEAAqE;IACrE,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;QACb,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxE,CAAC;IAED,MAAM,MAAM,GAAG,CAAC,CAAC,WAAW,CAAC;IAE7B,yEAAyE;IACzE,wEAAwE;IACxE,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;QACjB,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAC/E,CAAC;IAED,8EAA8E;IAC9E,6EAA6E;IAC7E,QAAQ,CAAC,CAAC,GAAG,EAAE,CAAC;QACd,KAAK,SAAS;YACZ,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC;QAClE,KAAK,qBAAqB;YACxB,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,mBAAmB,CAAC,CAAC,CAAC;QACxE,KAAK,QAAQ;YACX,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;QAC/D;YACE,MAAM;IACV,CAAC;IAED,0EAA0E;IAC1E,IAAI,SAAS,GAAG,EAAE,CAAC;IACnB,IAAI,CAAC,CAAC,OAAO,KAAK,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;QACzF,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;IACjD,CAAC;IAED,uCAAuC;IACvC,IAAI,cAAc,GAAG,EAAE,CAAC;IACxB,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,EAAE,CAAC;QACtB,MAAM,GAAG,GAAG,cAAc,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QACzC,MAAM,EAAE,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;QAClC,IAAI,GAAG,KAAK,IAAI,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YAChC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC;gBACxB,cAAc,GAAG,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACrC,CAAC;iBAAM,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC;gBAClC,yEAAyE;gBACzE,0EAA0E;gBAC1E,uEAAuE;gBACvE,mDAAmD;gBACnD,cAAc,GAAG,MAAM,CAAC,QAAQ,CAAC;YACnC,CAAC;QACH,CAAC;aAAM,IAAI,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;YACtC,2EAA2E;YAC3E,yEAAyE;YACzE,0CAA0C;YAC1C,cAAc,GAAG,MAAM,CAAC,aAAa,CAAC;QACxC,CAAC;IACH,CAAC;IAED,IAAI,SAAS,KAAK,EAAE,IAAI,cAAc,KAAK,EAAE;QAAE,OAAO,EAAE,CAAC;IAEzD,+EAA+E;IAC/E,+EAA+E;IAC/E,IAAI,MAAM,GAAG,SAAS,CAAC;IACvB,IAAI,MAAM,KAAK,EAAE,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC,QAAQ,IAAI,cAAc,KAAK,EAAE,CAAC,EAAE,CAAC;QAC3E,MAAM,GAAG,cAAc,CAAC;IAC1B,CAAC;IACD,0EAA0E;IAC1E,0EAA0E;IAC1E,mEAAmE;IACnE,IAAI,CAAC,CAAC,eAAe,IAAI,MAAM,KAAK,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpD,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC;IAC/B,CAAC;IACD,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED,4EAA4E;AAE5E,mFAAmF;AACnF,SAAS,MAAM,CAAC,CAAO;IACrB,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;QACf,KAAK,QAAQ;YACX,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;QAC7C,KAAK,QAAQ;YACX,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAC5C;YACE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAC7C,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,CAAO;IACzB,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACpB,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;AAClE,CAAC;AAED,SAAS,cAAc,CAAC,CAAO;IAC7B,MAAM,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;IAC/B,OAAO,IAAI,KAAK,EAAE,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC;AAC5C,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,SAAS,CAAC,CAAO;IACxB,MAAM,GAAG,GAAG,IAAI,GAAG,EAAgB,CAAC;IACpC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACvC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC;IACtD,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;GAIG;AACH,SAAS,SAAS,CAAC,CAAO,EAAE,CAAO;IACjC,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QACvB,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,KAAK,CAAC,MAAM;YAAE,OAAO,KAAK,CAAC;QAC1E,OAAO,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC;IAC5D,CAAC;IACD,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACxB,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;QACtC,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QACxB,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC,IAAI;YAAE,OAAO,KAAK,CAAC;QACtC,KAAK,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;YACzB,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACrB,IAAI,EAAE,KAAK,SAAS,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC;gBAAE,OAAO,KAAK,CAAC;QAC3D,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM;QAAE,OAAO,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;IAC1F,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM;QAAE,OAAO,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACvE,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM;QAAE,OAAO,KAAK,CAAC;IAEpC,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACpB,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACpB,IAAI,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACtE,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACpC,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACpC,4EAA4E;IAC5E,IAAI,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC;QAC/C,OAAO,QAAQ,CAAC,EAAE,CAAC,KAAK,QAAQ,CAAC,EAAE,CAAC,CAAC;IACvC,CAAC;IACD,MAAM,EAAE,GAAG,aAAa,CAAC,EAAE,CAAC,CAAC;IAC7B,MAAM,EAAE,GAAG,aAAa,CAAC,EAAE,CAAC,CAAC;IAC7B,IAAI,EAAE,KAAK,IAAI,IAAI,EAAE,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC7C,OAAO,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC;AAC7C,CAAC;AAED,yCAAyC;AACzC,SAAS,QAAQ,CAAC,CAAO,EAAE,CAAO;IAChC,IAAI,cAAc,CAAC,CAAC,CAAC,IAAI,cAAc,CAAC,CAAC,CAAC;QAAE,OAAO,MAAM,CAAC,YAAY,CAAC;IACvE,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC,aAAa,CAAC,CAAC,8BAA8B;IACvG,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC,QAAQ,CAAC;IAEnE,MAAM,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;IACxB,MAAM,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;IACxB,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC7B,IAAI,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;YACvC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;QAC1F,CAAC;QACD,IAAI,CAAC,CAAC,IAAI,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,KAAK,EAAE;YAAE,OAAO,MAAM,CAAC,OAAO,CAAC;QAC1D,OAAO,MAAM,CAAC,QAAQ,CAAC;IACzB,CAAC;IACD,IAAI,CAAC,CAAC,QAAQ,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE;QAAE,OAAO,MAAM,CAAC,YAAY,CAAC;IACtE,OAAO,MAAM,CAAC,QAAQ,CAAC;AACzB,CAAC;AAED;;;;;GAKG;AACH,SAAS,YAAY,CAAC,CAAO,EAAE,CAAO;IACpC,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IACpC,+EAA+E;IAC/E,wDAAwD;IACxD,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACxD,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QACvB,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,KAAK,CAAC,MAAM;YAAE,OAAO,KAAK,CAAC;QACpD,OAAO,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACxB,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QACxB,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC,IAAI;YAAE,OAAO,KAAK,CAAC;QACtC,KAAK,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;YACzB,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACrB,IAAI,EAAE,KAAK,SAAS,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,CAAC;gBAAE,OAAO,KAAK,CAAC;QAC9D,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,OAAO,CAAC,CAAS;IACxB,IAAI,CAAC,CAAC,MAAM,GAAG,EAAE;QAAE,OAAO,KAAK,CAAC;IAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;QAC5B,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC;QAChB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACvB,IAAI,CAAC,KAAK,GAAG;gBAAE,OAAO,KAAK,CAAC;QAC9B,CAAC;aAAM,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;YAC9B,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,4EAA4E;AAE5E,SAAS,SAAS,CAAC,IAAY,EAAE,MAAc,EAAE,GAAW;IAC1D,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QAAE,OAAO,MAAM,CAAC,UAAU,CAAC;IACtD,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACnF,OAAO,MAAM,CAAC,cAAc,CAAC;IAC/B,CAAC;IACD,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/B,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;IACvG,CAAC;IACD,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;QAAE,OAAO,MAAM,CAAC,YAAY,CAAC;IAC5D,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QAAE,OAAO,MAAM,CAAC,SAAS,CAAC;IACrD,uEAAuE;IACvE,iEAAiE;IACjE,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QAAE,OAAO,MAAM,CAAC,YAAY,CAAC;IACxD,IAAI,IAAI,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC,UAAU,CAAC;IAC9C,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC,QAAQ,CAAC;IAC/D,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,UAAU;QAAE,OAAO,MAAM,CAAC,cAAc,CAAC;IAClG,IAAI,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;QAAE,OAAO,MAAM,CAAC,cAAc,CAAC;IACjE,IAAI,WAAW,CAAC,IAAI,CAAC;QAAE,OAAO,MAAM,CAAC,YAAY,CAAC;IAClD,OAAO,MAAM,CAAC,YAAY,CAAC;AAC7B,CAAC;AAED,SAAS,WAAW,CAAC,IAAY;IAC/B,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,IAAI,KAAK,MAAM,CAAC;AAC9E,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,UAAU,CAAC,IAAY,EAAE,WAAmB,EAAE,QAAgB;IACrE,IAAI,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9C,MAAM,MAAM,GAAG,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC5C,MAAM,GAAG,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACtC,mEAAmE;IACnE,IAAI,IAAI,KAAK,MAAM;QAAE,OAAO,QAAQ,CAAC,MAAM,CAAC,KAAK,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC/D,yEAAyE;IACzE,mEAAmE;IACnE,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QAAE,OAAO,QAAQ,CAAC,MAAM,CAAC,KAAK,QAAQ,CAAC,GAAG,CAAC,CAAC;IACtG,6DAA6D;IAC7D,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;QACvH,OAAO,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC/B,CAAC;IACD,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACnF,OAAO,WAAW,CAAC,MAAM,CAAC,KAAK,WAAW,CAAC,GAAG,CAAC,IAAI,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC/E,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,QAAQ,CAAC,CAAS;IACzB,QAAQ,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC;QAChC,KAAK,MAAM,CAAC;QACZ,KAAK,GAAG;YACN,OAAO,GAAG,CAAC;QACb,KAAK,OAAO,CAAC;QACb,KAAK,GAAG;YACN,OAAO,GAAG,CAAC;QACb;YACE,OAAO,CAAC,CAAC;IACb,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,QAAQ,CAAC,CAAS;IACzB,MAAM,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAC7B,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,CAAC,CAAC;IACpB,IAAI,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC;IACnB,MAAM,MAAM,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC;IAC7C,IAAI,MAAM;QAAE,GAAG,EAAE,CAAC;IAClB,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACpD,IAAI,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACxB,IAAI,IAAI,KAAK,EAAE;QAAE,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC;IACnC,IAAI,MAAM;QAAE,GAAG,IAAI,GAAG,CAAC;IACvB,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;GAGG;AACH,SAAS,YAAY,CAAC,CAAS,EAAE,CAAS;IACxC,MAAM,EAAE,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;IAC3B,MAAM,EAAE,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;IAC3B,IAAI,EAAE,CAAC,MAAM,KAAK,EAAE,CAAC,MAAM,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC7D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACnC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAE,EAAE,EAAE,CAAC,CAAC,CAAE,CAAC;YAAE,OAAO,KAAK,CAAC;IAC9C,CAAC;IACD,OAAO,QAAQ,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC;AACrC,CAAC;AAED,6DAA6D;AAC7D,SAAS,YAAY,CAAC,CAAS;IAC7B,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;QACpB,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC;QAChB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;YACd,CAAC,EAAE,CAAC;YACJ,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBACpC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI;oBAAE,CAAC,EAAE,CAAC;gBACvB,CAAC,EAAE,CAAC;YACN,CAAC;YACD,CAAC,EAAE,CAAC;YACJ,SAAS;QACX,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACrD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;gBACpB,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC;gBAChB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,CAAC;oBAAE,CAAC,EAAE,CAAC;;oBAC5F,MAAM;YACb,CAAC;YACD,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YACxB,CAAC,GAAG,CAAC,CAAC;YACN,SAAS;QACX,CAAC;QACD,CAAC,EAAE,CAAC;IACN,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;GAGG;AACH,SAAS,QAAQ,CAAC,CAAS;IACzB,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAClC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC;QAChB,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC,KAAK,IAAI;gBAAE,CAAC,EAAE,CAAC;iBACf,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;gBACnB,QAAQ,GAAG,KAAK,CAAC;gBACjB,GAAG,IAAI,GAAG,CAAC;YACb,CAAC;YACD,SAAS;QACX,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;YACd,QAAQ,GAAG,IAAI,CAAC;YAChB,GAAG,IAAI,GAAG,CAAC;YACX,SAAS;QACX,CAAC;QACD,IAAI,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;YAAE,GAAG,IAAI,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,WAAW,CAAC,CAAS;IAC5B,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAClC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC;QAChB,IAAI,QAAQ,EAAE,CAAC;YACb,GAAG,IAAI,CAAC,CAAC;YACT,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;gBACnC,CAAC,EAAE,CAAC;gBACJ,GAAG,IAAI,CAAC,CAAC,CAAC,CAAE,CAAC;YACf,CAAC;iBAAM,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;gBACrB,QAAQ,GAAG,KAAK,CAAC;YACnB,CAAC;YACD,SAAS;QACX,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,IAAI;YAAE,SAAS;QAClE,IAAI,CAAC,KAAK,GAAG;YAAE,QAAQ,GAAG,IAAI,CAAC;QAC/B,GAAG,IAAI,CAAC,CAAC;IACX,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}