@quereus/quereus 4.9.0 → 4.11.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 (190) hide show
  1. package/dist/src/core/database.d.ts.map +1 -1
  2. package/dist/src/core/database.js +19 -4
  3. package/dist/src/core/database.js.map +1 -1
  4. package/dist/src/core/statement.d.ts.map +1 -1
  5. package/dist/src/core/statement.js +74 -15
  6. package/dist/src/core/statement.js.map +1 -1
  7. package/dist/src/func/builtins/aggregate.d.ts.map +1 -1
  8. package/dist/src/func/builtins/aggregate.js +85 -33
  9. package/dist/src/func/builtins/aggregate.js.map +1 -1
  10. package/dist/src/func/builtins/explain.d.ts.map +1 -1
  11. package/dist/src/func/builtins/explain.js +9 -2
  12. package/dist/src/func/builtins/explain.js.map +1 -1
  13. package/dist/src/func/builtins/scalar.d.ts.map +1 -1
  14. package/dist/src/func/builtins/scalar.js +4 -2
  15. package/dist/src/func/builtins/scalar.js.map +1 -1
  16. package/dist/src/func/registration.d.ts +6 -0
  17. package/dist/src/func/registration.d.ts.map +1 -1
  18. package/dist/src/func/registration.js +1 -0
  19. package/dist/src/func/registration.js.map +1 -1
  20. package/dist/src/index.d.ts +1 -0
  21. package/dist/src/index.d.ts.map +1 -1
  22. package/dist/src/index.js +6 -0
  23. package/dist/src/index.js.map +1 -1
  24. package/dist/src/planner/building/constraint-builder.d.ts +3 -2
  25. package/dist/src/planner/building/constraint-builder.d.ts.map +1 -1
  26. package/dist/src/planner/building/constraint-builder.js +15 -24
  27. package/dist/src/planner/building/constraint-builder.js.map +1 -1
  28. package/dist/src/planner/building/delete.d.ts.map +1 -1
  29. package/dist/src/planner/building/delete.js +7 -24
  30. package/dist/src/planner/building/delete.js.map +1 -1
  31. package/dist/src/planner/building/foreign-key-builder.d.ts +3 -2
  32. package/dist/src/planner/building/foreign-key-builder.d.ts.map +1 -1
  33. package/dist/src/planner/building/foreign-key-builder.js +13 -17
  34. package/dist/src/planner/building/foreign-key-builder.js.map +1 -1
  35. package/dist/src/planner/building/insert.d.ts.map +1 -1
  36. package/dist/src/planner/building/insert.js +16 -32
  37. package/dist/src/planner/building/insert.js.map +1 -1
  38. package/dist/src/planner/building/mutation-context.d.ts +63 -0
  39. package/dist/src/planner/building/mutation-context.d.ts.map +1 -0
  40. package/dist/src/planner/building/mutation-context.js +126 -0
  41. package/dist/src/planner/building/mutation-context.js.map +1 -0
  42. package/dist/src/planner/building/update.d.ts.map +1 -1
  43. package/dist/src/planner/building/update.js +7 -24
  44. package/dist/src/planner/building/update.js.map +1 -1
  45. package/dist/src/planner/nodes/scalar.d.ts.map +1 -1
  46. package/dist/src/planner/nodes/scalar.js +13 -1
  47. package/dist/src/planner/nodes/scalar.js.map +1 -1
  48. package/dist/src/runtime/emission-context.d.ts +14 -1
  49. package/dist/src/runtime/emission-context.d.ts.map +1 -1
  50. package/dist/src/runtime/emission-context.js +17 -5
  51. package/dist/src/runtime/emission-context.js.map +1 -1
  52. package/dist/src/runtime/emit/aggregate-setup.d.ts +44 -8
  53. package/dist/src/runtime/emit/aggregate-setup.d.ts.map +1 -1
  54. package/dist/src/runtime/emit/aggregate-setup.js +79 -15
  55. package/dist/src/runtime/emit/aggregate-setup.js.map +1 -1
  56. package/dist/src/runtime/emit/aggregate.d.ts.map +1 -1
  57. package/dist/src/runtime/emit/aggregate.js +21 -106
  58. package/dist/src/runtime/emit/aggregate.js.map +1 -1
  59. package/dist/src/runtime/emit/alter-table.d.ts.map +1 -1
  60. package/dist/src/runtime/emit/alter-table.js +11 -2
  61. package/dist/src/runtime/emit/alter-table.js.map +1 -1
  62. package/dist/src/runtime/emit/asof-scan.js +1 -1
  63. package/dist/src/runtime/emit/asof-scan.js.map +1 -1
  64. package/dist/src/runtime/emit/between.d.ts +2 -0
  65. package/dist/src/runtime/emit/between.d.ts.map +1 -1
  66. package/dist/src/runtime/emit/between.js +7 -8
  67. package/dist/src/runtime/emit/between.js.map +1 -1
  68. package/dist/src/runtime/emit/binary.d.ts +27 -5
  69. package/dist/src/runtime/emit/binary.d.ts.map +1 -1
  70. package/dist/src/runtime/emit/binary.js +266 -177
  71. package/dist/src/runtime/emit/binary.js.map +1 -1
  72. package/dist/src/runtime/emit/case.d.ts +34 -0
  73. package/dist/src/runtime/emit/case.d.ts.map +1 -1
  74. package/dist/src/runtime/emit/case.js +18 -11
  75. package/dist/src/runtime/emit/case.js.map +1 -1
  76. package/dist/src/runtime/emit/cast.d.ts +2 -0
  77. package/dist/src/runtime/emit/cast.d.ts.map +1 -1
  78. package/dist/src/runtime/emit/cast.js +7 -5
  79. package/dist/src/runtime/emit/cast.js.map +1 -1
  80. package/dist/src/runtime/emit/column-reference.d.ts +3 -1
  81. package/dist/src/runtime/emit/column-reference.d.ts.map +1 -1
  82. package/dist/src/runtime/emit/column-reference.js +6 -2
  83. package/dist/src/runtime/emit/column-reference.js.map +1 -1
  84. package/dist/src/runtime/emit/constraint-check.d.ts.map +1 -1
  85. package/dist/src/runtime/emit/constraint-check.js +17 -7
  86. package/dist/src/runtime/emit/constraint-check.js.map +1 -1
  87. package/dist/src/runtime/emit/dml-executor.d.ts.map +1 -1
  88. package/dist/src/runtime/emit/dml-executor.js +26 -1
  89. package/dist/src/runtime/emit/dml-executor.js.map +1 -1
  90. package/dist/src/runtime/emit/filter.d.ts +1 -1
  91. package/dist/src/runtime/emit/filter.js +1 -1
  92. package/dist/src/runtime/emit/hash-aggregate.d.ts.map +1 -1
  93. package/dist/src/runtime/emit/hash-aggregate.js +18 -88
  94. package/dist/src/runtime/emit/hash-aggregate.js.map +1 -1
  95. package/dist/src/runtime/emit/literal.d.ts +14 -1
  96. package/dist/src/runtime/emit/literal.d.ts.map +1 -1
  97. package/dist/src/runtime/emit/literal.js +33 -7
  98. package/dist/src/runtime/emit/literal.js.map +1 -1
  99. package/dist/src/runtime/emit/materialized-view-helpers.d.ts +7 -1
  100. package/dist/src/runtime/emit/materialized-view-helpers.d.ts.map +1 -1
  101. package/dist/src/runtime/emit/materialized-view-helpers.js +121 -32
  102. package/dist/src/runtime/emit/materialized-view-helpers.js.map +1 -1
  103. package/dist/src/runtime/emit/parameter.d.ts +3 -1
  104. package/dist/src/runtime/emit/parameter.d.ts.map +1 -1
  105. package/dist/src/runtime/emit/parameter.js +7 -2
  106. package/dist/src/runtime/emit/parameter.js.map +1 -1
  107. package/dist/src/runtime/emit/scalar-function.d.ts +29 -1
  108. package/dist/src/runtime/emit/scalar-function.d.ts.map +1 -1
  109. package/dist/src/runtime/emit/scalar-function.js +66 -16
  110. package/dist/src/runtime/emit/scalar-function.js.map +1 -1
  111. package/dist/src/runtime/emit/scalar-op.d.ts +63 -0
  112. package/dist/src/runtime/emit/scalar-op.d.ts.map +1 -0
  113. package/dist/src/runtime/emit/scalar-op.js +37 -0
  114. package/dist/src/runtime/emit/scalar-op.js.map +1 -0
  115. package/dist/src/runtime/emit/scan.d.ts.map +1 -1
  116. package/dist/src/runtime/emit/scan.js +19 -1
  117. package/dist/src/runtime/emit/scan.js.map +1 -1
  118. package/dist/src/runtime/emit/temporal-arithmetic.d.ts +18 -8
  119. package/dist/src/runtime/emit/temporal-arithmetic.d.ts.map +1 -1
  120. package/dist/src/runtime/emit/temporal-arithmetic.js +29 -311
  121. package/dist/src/runtime/emit/temporal-arithmetic.js.map +1 -1
  122. package/dist/src/runtime/emit/unary.d.ts +2 -0
  123. package/dist/src/runtime/emit/unary.d.ts.map +1 -1
  124. package/dist/src/runtime/emit/unary.js +125 -53
  125. package/dist/src/runtime/emit/unary.js.map +1 -1
  126. package/dist/src/runtime/emitters.d.ts +22 -0
  127. package/dist/src/runtime/emitters.d.ts.map +1 -1
  128. package/dist/src/runtime/emitters.js +29 -0
  129. package/dist/src/runtime/emitters.js.map +1 -1
  130. package/dist/src/runtime/scalar-fusion.d.ts +47 -0
  131. package/dist/src/runtime/scalar-fusion.d.ts.map +1 -0
  132. package/dist/src/runtime/scalar-fusion.js +275 -0
  133. package/dist/src/runtime/scalar-fusion.js.map +1 -0
  134. package/dist/src/runtime/strict-flags.d.ts +9 -0
  135. package/dist/src/runtime/strict-flags.d.ts.map +1 -1
  136. package/dist/src/runtime/strict-flags.js +9 -0
  137. package/dist/src/runtime/strict-flags.js.map +1 -1
  138. package/dist/src/runtime/strict-fork.js +2 -2
  139. package/dist/src/runtime/strict-fork.js.map +1 -1
  140. package/dist/src/runtime/strict-representation.d.ts +78 -0
  141. package/dist/src/runtime/strict-representation.d.ts.map +1 -0
  142. package/dist/src/runtime/strict-representation.js +159 -0
  143. package/dist/src/runtime/strict-representation.js.map +1 -0
  144. package/dist/src/schema/catalog.d.ts +25 -2
  145. package/dist/src/schema/catalog.d.ts.map +1 -1
  146. package/dist/src/schema/catalog.js +35 -2
  147. package/dist/src/schema/catalog.js.map +1 -1
  148. package/dist/src/schema/constraint-builder.d.ts +15 -2
  149. package/dist/src/schema/constraint-builder.d.ts.map +1 -1
  150. package/dist/src/schema/constraint-builder.js +21 -5
  151. package/dist/src/schema/constraint-builder.js.map +1 -1
  152. package/dist/src/schema/function.d.ts +15 -0
  153. package/dist/src/schema/function.d.ts.map +1 -1
  154. package/dist/src/schema/function.js.map +1 -1
  155. package/dist/src/schema/manager.d.ts +13 -0
  156. package/dist/src/schema/manager.d.ts.map +1 -1
  157. package/dist/src/schema/manager.js +44 -11
  158. package/dist/src/schema/manager.js.map +1 -1
  159. package/dist/src/schema/table.d.ts +43 -0
  160. package/dist/src/schema/table.d.ts.map +1 -1
  161. package/dist/src/schema/table.js +80 -0
  162. package/dist/src/schema/table.js.map +1 -1
  163. package/dist/src/types/builtin-types.d.ts.map +1 -1
  164. package/dist/src/types/builtin-types.js +17 -8
  165. package/dist/src/types/builtin-types.js.map +1 -1
  166. package/dist/src/types/temporal-ops.d.ts +119 -0
  167. package/dist/src/types/temporal-ops.d.ts.map +1 -0
  168. package/dist/src/types/temporal-ops.js +348 -0
  169. package/dist/src/types/temporal-ops.js.map +1 -0
  170. package/dist/src/types/temporal-types.d.ts.map +1 -1
  171. package/dist/src/types/temporal-types.js +8 -3
  172. package/dist/src/types/temporal-types.js.map +1 -1
  173. package/dist/src/util/coercion.d.ts +22 -7
  174. package/dist/src/util/coercion.d.ts.map +1 -1
  175. package/dist/src/util/coercion.js +28 -15
  176. package/dist/src/util/coercion.js.map +1 -1
  177. package/dist/src/util/comparison.d.ts +25 -0
  178. package/dist/src/util/comparison.d.ts.map +1 -1
  179. package/dist/src/util/comparison.js +25 -0
  180. package/dist/src/util/comparison.js.map +1 -1
  181. package/dist/src/util/key-tuple-codec.d.ts +12 -3
  182. package/dist/src/util/key-tuple-codec.d.ts.map +1 -1
  183. package/dist/src/util/key-tuple-codec.js.map +1 -1
  184. package/dist/src/util/numeric-canonical.d.ts +26 -0
  185. package/dist/src/util/numeric-canonical.d.ts.map +1 -0
  186. package/dist/src/util/numeric-canonical.js +66 -0
  187. package/dist/src/util/numeric-canonical.js.map +1 -0
  188. package/dist/src/vtab/module.d.ts +25 -0
  189. package/dist/src/vtab/module.d.ts.map +1 -1
  190. package/package.json +4 -3
@@ -777,14 +777,30 @@ function hasApplicableConstraints(db, mt) {
777
777
  * the LIVE record here. So the live record is swapped for a constraint-stripped
778
778
  * clone for the duration of the scans (the ADD COLUMN intermediate-schema
779
779
  * discipline, see `runtime/emit/alter-table.ts`), then restored.
780
+ *
781
+ * `validationColumns` (the reshape arms only, {@link previewReshapedColumns})
782
+ * overrides the clone's column list with the attributes the reshape is ABOUT TO
783
+ * land, so a CHECK / FK resolves its affinity and collation from the final
784
+ * declared shape rather than the one being replaced. Comparison semantics are a
785
+ * function of the DECLARED column attributes, and the reshape's `retype` /
786
+ * `recollate` module ops run after this scan (they convert stored rows, so they
787
+ * must); without the override this scan would evaluate `v < '9'` on a column
788
+ * moving TEXT → INTEGER as a text comparison and admit a row that violates the
789
+ * constraint under the type it is about to have. Omitted (⇒ `mt.columns`) on
790
+ * every non-reshape path, so those stay byte-identical.
780
791
  */
781
- async function validateDeclaredConstraintsOverContents(db, mt) {
792
+ async function validateDeclaredConstraintsOverContents(db, mt, validationColumns) {
782
793
  const applicableChecks = mt.checkConstraints.filter(c => (c.operations & (RowOpFlag.INSERT | RowOpFlag.UPDATE)) !== 0);
783
794
  const fks = mt.foreignKeys ?? [];
784
795
  if (applicableChecks.length === 0 && fks.length === 0)
785
796
  return;
786
797
  const schema = db.schemaManager.getSchemaOrFail(mt.schemaName);
787
- const stripped = { ...mt, checkConstraints: Object.freeze([]), foreignKeys: undefined };
798
+ const stripped = {
799
+ ...mt,
800
+ columns: validationColumns ?? mt.columns,
801
+ checkConstraints: Object.freeze([]),
802
+ foreignKeys: undefined,
803
+ };
788
804
  schema.addTable(stripped);
789
805
  try {
790
806
  await validateChecksOverExistingRows(db, mt, applicableChecks, (check, exprSql) => maintainedTableCheckViolationError(mt.schemaName, mt.name, check.name ?? `_check_${mt.checkConstraints.indexOf(check)}`, exprSql));
@@ -1079,8 +1095,11 @@ discardBackingOnFailure = false) {
1079
1095
  changes = await host.applyMaintenance(conn, [{ kind: 'replace-all', rows }]);
1080
1096
  // Declared CHECK / child-side FK over the reconciled (derived) row set —
1081
1097
  // inside this try so a violation restores the prior record; the pending
1082
- // reconcile writes roll back with the failing statement.
1083
- await validateDeclaredConstraintsOverContents(db, live);
1098
+ // reconcile writes roll back with the failing statement. On the reshape arm
1099
+ // the scan resolves against the attributes the post-reconcile ops below are
1100
+ // about to land, keeping this path identical to the refresh reshape arm
1101
+ // (`reshapeBackingInPlace` → `rebuildBacking`).
1102
+ await validateDeclaredConstraintsOverContents(db, live, reshapePlan ? previewReshapedColumns(live, shape) : undefined);
1084
1103
  if (reshapePlan && reshapePlan.postReconcileOps.length > 0) {
1085
1104
  // Data-validating attribute ops (retype / recollate / tighten NOT NULL)
1086
1105
  // must validate the RECONCILED body rows, not the stale backing — but the
@@ -1320,8 +1339,14 @@ export async function createMaintainedTable(db, stmt) {
1320
1339
  * behavior. The caller is responsible for staleness re-validation when relevant;
1321
1340
  * this helper assumes the derivation body plans. Throws if the table is missing
1322
1341
  * from the catalog.
1342
+ *
1343
+ * `validationColumns` is the reshape arm's column preview
1344
+ * ({@link previewReshapedColumns}) — the type/collation attributes the reshape's
1345
+ * still-pending post-reconcile ops are about to land — forwarded to the scan so
1346
+ * the CHECK / FK resolve against the final declared shape. `undefined` on every
1347
+ * other path (and on a reshape that shifts neither attribute).
1323
1348
  */
1324
- export async function rebuildBacking(db, mv) {
1349
+ export async function rebuildBacking(db, mv, validationColumns) {
1325
1350
  const bodySql = astToString(mv.derivation.selectAst);
1326
1351
  const rows = await collectBodyRows(db, mv.schemaName, bodySql);
1327
1352
  const backing = db.schemaManager.getTable(mv.schemaName, mv.name);
@@ -1367,23 +1392,15 @@ export async function rebuildBacking(db, mv) {
1367
1392
  // leaving the pre-refresh committed contents intact (the MV stays stale, so the
1368
1393
  // next read re-validates rather than serving the rejected set).
1369
1394
  //
1370
- // Documented limitation (collation-sensitive CHECK on the reshape arm): on the
1371
- // reshape path this scan validates the rows in their PRE-recollate physical form
1372
- // — the catalog column still carries the OLD collation here, and any
1373
- // `recollate` op runs post-reconcile in reshapeBackingInPlace, AFTER this commit.
1374
- // So a CHECK whose truth flips under a recollate-during-reshape (e.g. `v <> 'abc'`
1375
- // with v recollated BINARY → NOCASE over a row 'ABC') passes here and is then
1376
- // recollated into a violating state. The same class of corner applies to a
1377
- // `retype` op (it shares this `postReconcileOps` batch): a CHECK whose truth flips
1378
- // under the column's NEW affinity (e.g. `v < '9'` retyped TEXT → INTEGER over a
1379
- // row '10' — lexicographic-true then numeric-false) passes here and is retyped into
1380
- // violation. Not closed: this commit is load-bearing (commit-first parity + the
1381
- // post-reconcile ops scan committed contents), and the attach reshape path uses the
1382
- // identical ordering. See docs/materialized-views.md § REFRESH MATERIALIZED VIEW
1383
- // "Known limitation — collation-sensitive CHECK" / "… type-sensitive CHECK" and
1384
- // maintained-table-refresh-revalidation.spec.ts § "reshape arm: collation-
1385
- // sensitive CHECK" / "reshape arm: type-sensitive CHECK".
1386
- await validateDeclaredConstraintsOverContents(db, backing);
1395
+ // On the reshape arm `validationColumns` carries the attributes the reshape is
1396
+ // about to land ({@link previewReshapedColumns}), so a CHECK / FK is evaluated
1397
+ // under the column's FINAL type and collation even though the `retype` /
1398
+ // `recollate` module ops still run post-reconcile in reshapeBackingInPlace. That
1399
+ // keeps this commit's ordering exactly as it was — the scan stays before the
1400
+ // commit, the post-reconcile ops still scan committed contents — while removing
1401
+ // the wrong-semantics gap. The attach reshape path passes the same preview at its
1402
+ // own call site, so both arms reject identically.
1403
+ await validateDeclaredConstraintsOverContents(db, backing, validationColumns);
1387
1404
  await conn.commit();
1388
1405
  }
1389
1406
  /**
@@ -2111,6 +2128,76 @@ function reshapeOpToChange(op) {
2111
2128
  function graftReshapedRecord(moduleSchema, source) {
2112
2129
  return { ...moduleSchema, derivation: source.derivation, tags: source.tags };
2113
2130
  }
2131
+ /**
2132
+ * The column list a reshape is ABOUT TO land, for the declared-constraint scan that
2133
+ * runs mid-reshape ({@link validateDeclaredConstraintsOverContents}).
2134
+ *
2135
+ * A reshape's data-validating ops (`retype` / `recollate`) must run AFTER the data
2136
+ * reconcile — they convert/re-key STORED rows, so running them first would validate
2137
+ * the about-to-be-discarded contents and throw spuriously. But a SQL comparison
2138
+ * takes its type affinity and its collation from the column's DECLARED attributes,
2139
+ * so a scan against the live (pre-op) record evaluates a declared CHECK under the
2140
+ * attributes the reshape is replacing: `check (v < '9')` on a column moving
2141
+ * TEXT → INTEGER compares as text ('10' < '9' is true) and never as the numeric
2142
+ * comparison it is becoming. Previewing the attributes fixes the semantics without
2143
+ * moving a single op — the scan stays exactly where it was, still before the commit.
2144
+ *
2145
+ * Maps `live`'s columns onto `shape`'s **by name** (names and order already agree:
2146
+ * the reshape's pre-reconcile batch has applied every rename / add / drop before
2147
+ * either caller reaches this) and overrides only `logicalType` and `collation`.
2148
+ * Returns `undefined` when neither attribute shifts, so a reshape with no
2149
+ * `retype`/`recollate` — and every non-reshape path — behaves exactly as before.
2150
+ *
2151
+ * Deliberately NOT previewed:
2152
+ * - **`notNull`.** The tighten-NOT-NULL op stays a post-reconcile module op and
2153
+ * keeps validating there. Declaring `notNull` early would let the optimizer fold
2154
+ * a nullability-sensitive CHECK into a vacuous pass — the same class of unsound
2155
+ * folding the caller's constraint-stripped-clone swap exists to prevent.
2156
+ * - **`defaultValue` and the generated-column attributes.** A reshape never moves
2157
+ * them, so previewing them could only introduce drift.
2158
+ *
2159
+ * Physical-PK columns need no special handling: `describePhysicalPkChange` refuses
2160
+ * a reshape whose key column changes type or collation, so a previewed attribute
2161
+ * can never desynchronize the key encoding `assertRefreshRowsAreSet` or the host's
2162
+ * keyed diff rely on.
2163
+ *
2164
+ * NOTE: the scan sees the rebuilt values in their PRE-conversion physical form but
2165
+ * under the POST-conversion declared type. These agree in practice — the target
2166
+ * attribute is derived FROM the body's own output type, so the body already emits
2167
+ * values of the new type. A retype whose conversion genuinely rewrites the value
2168
+ * (a text → date canonicalization turning '2024-06-05T00:00:00Z' into '2024-06-05')
2169
+ * would have the CHECK see the un-normalized spelling. Not chased; revisit if a
2170
+ * value-rewriting conversion is ever added to the reshape's op set.
2171
+ *
2172
+ * NOTE: with the preview in place, a body emitting a value that does not conform to
2173
+ * its own declared output type now trips the physical-representation checker
2174
+ * (`QUEREUS_REPR_STRICT`) at this scan rather than sliding through. That is a
2175
+ * genuine defect surfacing at the earliest honest point, not a regression.
2176
+ *
2177
+ * NOTE: this RE-DERIVES the attribute shift from live-vs-shape rather than reading
2178
+ * `ReshapePlan.postReconcileOps`, which is the authoritative list of the `retype` /
2179
+ * `recollate` ops that will actually run. The two agree today because the
2180
+ * pre-reconcile structural ops preserve attributes exactly ({@link backingColumnDef}
2181
+ * carries type + collation through a rename, and an `add` lands the shape column's
2182
+ * own attributes), so every live-vs-shape shift has a queued op and vice versa. If a
2183
+ * structural op ever stops preserving an attribute, this would preview an attribute
2184
+ * no op lands and the scan would reject rows the finished reshape accepts — build the
2185
+ * preview from `postReconcileOps` then.
2186
+ */
2187
+ function previewReshapedColumns(live, shape) {
2188
+ const byName = new Map(shape.columns.map(c => [c.name.toLowerCase(), c]));
2189
+ let shifted = false;
2190
+ const preview = live.columns.map(col => {
2191
+ const target = byName.get(col.name.toLowerCase());
2192
+ if (!target)
2193
+ return col;
2194
+ if (backingTypeMatches(col, target) && backingCollationMatches(col, target))
2195
+ return col;
2196
+ shifted = true;
2197
+ return { ...col, logicalType: target.logicalType, collation: target.collation };
2198
+ });
2199
+ return shifted ? Object.freeze(preview) : undefined;
2200
+ }
2114
2201
  /**
2115
2202
  * The sited error a refresh raises when the re-derived body shape cannot be
2116
2203
  * reconciled onto the live maintained table in place — an interleaving column
@@ -2209,8 +2296,10 @@ async function reshapeBackingInPlace(db, mv, shape, plan) {
2209
2296
  let live = graftReshapedRecord(current, mv);
2210
2297
  schema.addTable(live);
2211
2298
  // Data reconcile: re-run the body and swap contents (the identity-preserving
2212
- // data-only path — same host, same incarnation).
2213
- await rebuildBacking(db, live);
2299
+ // data-only path — same host, same incarnation). The column preview lets that
2300
+ // path's declared-constraint scan resolve against the type/collation the
2301
+ // post-reconcile ops below will land, not the ones they replace.
2302
+ await rebuildBacking(db, live, previewReshapedColumns(live, shape));
2214
2303
  // Post-reconcile data-validating ops (retype / recollate / tighten NOT NULL): the
2215
2304
  // reconciled body rows satisfy the new attribute where the discarded backing
2216
2305
  // might not, so each validates the fresh data, not the stale rows. Re-register
@@ -2221,14 +2310,14 @@ async function reshapeBackingInPlace(db, mv, shape, plan) {
2221
2310
  // partial throw. Per-op registration keeps the catalog tracking the module so a
2222
2311
  // mid-batch failure leaves a coherent, re-runnable table.
2223
2312
  //
2224
- // NOTE: a `recollate` here applies AFTER step 3's rebuildBacking has already
2225
- // validated + committed the rows under the OLD collation — so a collation-
2226
- // sensitive declared CHECK whose truth flips under this recollate is not caught
2227
- // by that scan. A `retype` in this same batch is the affinity analog: a CHECK
2228
- // whose truth flips under the column's NEW logical type (e.g. `v < '9'` retyped
2229
- // TEXT → INTEGER) is likewise validated under the OLD type and missed (documented
2230
- // limitation; see the note in rebuildBacking's constraint-bearing branch and
2231
- // docs/materialized-views.md § REFRESH MATERIALIZED VIEW).
2313
+ // These ops still run after step 3's rebuildBacking has validated + committed,
2314
+ // but the declared-CHECK/FK scan inside that step is no longer blind to them:
2315
+ // the `previewReshapedColumns` argument above hands it the type/collation each
2316
+ // `retype` / `recollate` here is about to land, so a constraint whose truth
2317
+ // flips under the new attribute (`v <> 'abc'` recollated BINARY → NOCASE over
2318
+ // 'ABC'; `v < '9'` retyped TEXT → INTEGER over '10') is rejected there, before
2319
+ // the commit, with nothing written. A tighten-NOT-NULL is deliberately NOT
2320
+ // previewed and keeps validating right here — see previewReshapedColumns.
2232
2321
  for (const op of plan.postReconcileOps) {
2233
2322
  current = await module.alterTable(db, mv.schemaName, mv.name, reshapeOpToChange(op));
2234
2323
  live = graftReshapedRecord(current, mv);
@@ -1 +1 @@
1
- {"version":3,"file":"materialized-view-helpers.js","sourceRoot":"","sources":["../../../../src/runtime/emit/materialized-view-helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"materialized-view-helpers.js","sourceRoot":"","sources":["../../../../src/runtime/emit/materialized-view-helpers.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,UAAU,EAA2B,MAAM,uBAAuB,CAAC;AAE5E,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,+BAA+B,EAAE,MAAM,6BAA6B,CAAC;AAE/G,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAC3F,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAC1E,OAAO,EAAE,yBAAyB,EAA4B,MAAM,yCAAyC,CAAC;AAE9G,OAAO,EAAqD,mBAAmB,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAC7I,OAAO,EACN,8BAA8B,EAC9B,kCAAkC,EAClC,kCAAkC,EAClC,+BAA+B,EAC/B,cAAc,GACd,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,eAAe,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AACnF,OAAO,EAAE,iBAAiB,EAAoD,MAAM,4BAA4B,CAAC;AACjH,OAAO,EAAE,8BAA8B,EAAE,MAAM,wCAAwC,CAAC;AAExF,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAGtF,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAKtD,OAAO,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAG3F,MAAM,GAAG,GAAG,YAAY,CAAC,gCAAgC,CAAC,CAAC;AAC3D,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAEnC,gFAAgF;AAChF,+EAA+E;AAC/E,wEAAwE;AACxE,OAAO,EAAE,eAAe,EAAE,CAAC;AAE3B;;;;;;;;GAQG;AACH,MAAM,UAAU,4BAA4B,CAAC,UAAkB,EAAE,QAAgB;IAChF,OAAO,IAAI,YAAY,CACtB,sBAAsB,UAAU,IAAI,QAAQ,kCAAkC;UAC3E,sEAAsE;UACtE,2EAA2E;UAC3E,uEAAuE;UACvE,sDAAsD,EACzD,UAAU,CAAC,UAAU,CACrB,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,0BAA0B,CAAC,UAAkB,EAAE,QAAgB,EAAE,UAAkB;IAClG,OAAO,IAAI,YAAY,CACtB,kCAAkC,UAAU,IAAI,QAAQ,iCAAiC,UAAU,KAAK;UACrG,kGAAkG;UAClG,gGAAgG;UAChG,sBAAsB,UAAU,oBAAoB,UAAU,+BAA+B;UAC7F,wBAAwB,EAC3B,UAAU,CAAC,UAAU,CACrB,CAAC;AACH,CAAC;AAyBD;;;;;;;;;GASG;AACH,MAAM,UAAU,kBAAkB,CACjC,EAAY,EACZ,UAAkB,EAClB,OAAe,EACf,eAAkD;IAElD,kFAAkF;IAClF,qEAAqE;IACrE,OAAO,EAAE,CAAC,aAAa,CAAC,qCAAqC,CAC5D,GAAG,EAAE,CAAC,2BAA2B,CAAC,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,eAAe,CAAC,CAC3E,CAAC;AACH,CAAC;AAED,SAAS,2BAA2B,CACnC,EAAY,EACZ,UAAkB,EAClB,OAAe,EACf,eAAkD;IAElD,4EAA4E;IAC5E,gEAAgE;IAChE,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC;IACjE,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC;IACpC,IAAI,CAAC,IAAI,EAAE,CAAC;QACX,MAAM,IAAI,YAAY,CAAC,6CAA6C,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC5F,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;IAC/B,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC;IACpC,MAAM,KAAK,GAAG,eAAe,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC;QAC1D,CAAC,CAAC,eAAe;QACjB,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC;IAElD,MAAM,OAAO,GAAmB,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACxD,MAAM,GAAG,GAAiB;YACzB,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,EAAE;YAC3B,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW;YAC/B,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,KAAK,KAAK;YAClC,UAAU,EAAE,KAAK;YACjB,OAAO,EAAE,CAAC;YACV,YAAY,EAAE,IAAI;YAClB,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa,IAAI,QAAQ;YAC3C,SAAS,EAAE,KAAK;SAChB,CAAC;QACF,6EAA6E;QAC7E,4EAA4E;QAC5E,0EAA0E;QAC1E,4EAA4E;QAC5E,8EAA8E;QAC9E,8EAA8E;QAC9E,2EAA2E;QAC3E,8EAA8E;QAC9E,IAAI,CAAC,CAAC,IAAI,CAAC,eAAe,KAAK,UAAU,IAAI,CAAC,CAAC,IAAI,CAAC,eAAe,KAAK,UAAU,EAAE,CAAC;YACpF,GAAG,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC9B,CAAC;QACD,OAAO,GAAG,CAAC;IACZ,CAAC,CAAC,CAAC;IAEH,gFAAgF;IAChF,+EAA+E;IAC/E,8EAA8E;IAC9E,8EAA8E;IAC9E,oEAAoE;IACpE,6CAA6C;IAC7C,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1B,IAAI,SAAmB,CAAC;IACxB,IAAI,YAA0C,CAAC;IAC/C,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,SAAS,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1B,CAAC;SAAM,CAAC;QACP,MAAM,UAAU,GAAG,yBAAyB,CAAC,IAAI,CAAC,CAAC;QACnD,IAAI,UAAU,EAAE,CAAC;YAChB,SAAS,GAAG,CAAC,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC;YACvC,kEAAkE;YAClE,qEAAqE;YACrE,IAAI,UAAU,CAAC,QAAQ;gBAAE,YAAY,GAAG,qBAAqB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QACpF,CAAC;aAAM,CAAC;YACP,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;QACvC,CAAC;IACF,CAAC;IACD,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;IAEvE,wEAAwE;IACxE,wEAAwE;IACxE,6DAA6D;IAC7D,4EAA4E;IAC5E,6EAA6E;IAC7E,0EAA0E;IAC1E,0EAA0E;IAC1E,0EAA0E;IAC1E,0DAA0D;IAC1D,MAAM,QAAQ,GAAG,YAAY;QAC5B,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAE1E,OAAO;QACN,OAAO;QACP,UAAU;QACV,QAAQ,EAAE,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;QAChE,YAAY,EAAE,mBAAmB,CAAC,IAAI,CAAC;QACvC,YAAY;QACZ,aAAa,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;KACzE,CAAC;AACH,CAAC;AAED;0EAC0E;AAC1E,SAAS,qBAAqB,CAAC,GAAwB,EAAE,OAAgC;IACxF,MAAM,MAAM,GAAG,CAAC,GAAW,EAAU,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,IAAI,IAAI,MAAM,GAAG,EAAE,CAAC;IAC1E,OAAO;QACN,OAAO,EAAE,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC;QACnC,QAAQ,EAAE,GAAG,CAAC,OAAO;aACnB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;aACvB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACV,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC;YAC7B,eAAe,EAAE,CAAC,CAAC,eAAe;YAClC,eAAe,EAAE,CAAC,CAAC,eAAe;SAClC,CAAC,CAAC;KACJ,CAAC;AACH,CAAC;AAED,6FAA6F;AAC7F,SAAS,mBAAmB,CAAC,IAAc;IAC1C,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;IAC9B,MAAM,OAAO,GAAG,IAAI,GAAG,EAAY,CAAC;IACpC,MAAM,IAAI,GAAG,CAAC,IAAc,EAAQ,EAAE;QACrC,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,OAAO;QAC9B,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,IAAI,IAAI,YAAY,kBAAkB,EAAE,CAAC;YACxC,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;QAClF,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,WAAW,EAAE;YAAE,IAAI,CAAC,CAAwB,CAAC,CAAC;QACnE,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,YAAY,EAAE;YAAE,IAAI,CAAC,CAAwB,CAAC,CAAC;IACrE,CAAC,CAAC;IACF,IAAI,CAAC,IAAI,CAAC,CAAC;IACX,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC;AACjB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,wBAAwB,CAAC,KAAmB;IAC3D,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpD,OAAO,KAAK,CAAC,UAAU,CAAC;IACzB,CAAC;IACD,MAAM,MAAM,GAAuC,EAAE,CAAC;IACtD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;YAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAAC,CAAC;IAC9F,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;QAClC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;YAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAAC,CAAC;IAC9F,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC;AACtD,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,uBAAuB,CACtC,EAAY,EACZ,UAAkB,EAClB,gBAAwB,EACxB,KAAmB,EACnB,UAAmB,EACnB,UAA+C;AAC/C,8FAA8F;AAC9F,IAAyC;IAEzC,MAAM,kBAAkB,GAAG,0BAA0B,CAAC,UAAU,CAAC,CAAC;IAClE,MAAM,UAAU,GAAG,EAAE,CAAC,aAAa,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;IAClE,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;QACvC,MAAM,IAAI,YAAY,CAAC,kCAAkC,kBAAkB,GAAG,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;IACnG,CAAC;IACD,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;QACvC,MAAM,IAAI,YAAY,CACrB,WAAW,kBAAkB,qGAAqG,EAClI,UAAU,CAAC,WAAW,CACtB,CAAC;IACH,CAAC;IAED,MAAM,SAAS,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,YAAY,GAAiC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACvE,KAAK,EAAE,EAAE,CAAC,KAAK;QACf,IAAI,EAAE,EAAE,CAAC,IAAI;QACb,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,SAAS;KAC7C,CAAC,CAAC,CAAC;IACJ,gFAAgF;IAChF,4EAA4E;IAC5E,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;QAC/B,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;QACpC,IAAI,GAAG,EAAE,CAAC;YAAC,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC;YAAC,GAAG,CAAC,OAAO,GAAG,KAAK,GAAG,CAAC,CAAC;QAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;IAEH,OAAO;QACN,IAAI,EAAE,gBAAgB;QACtB,UAAU;QACV,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC;QACrC,cAAc,EAAE,mBAAmB,CAAC,KAAK,CAAC,OAAO,CAAC;QAClD,oBAAoB,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;QACjD,gBAAgB,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACnC,UAAU,EAAE,UAAU,CAAC,MAAM;QAC7B,cAAc,EAAE,kBAAkB;QAClC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE;QAC7C,WAAW,EAAE,UAAU,CAAC,OAAO;QAC/B,MAAM,EAAE,KAAK;QACb,aAAa,EAAE,CAAC;QAChB,IAAI,EAAE,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;KAC7D,CAAC;AACH,CAAC;AAED;wFACwF;AACxF,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,EAAY,EAAE,UAAkB,EAAE,OAAe;IACtF,iFAAiF;IACjF,kFAAkF;IAClF,sEAAsE;IACtE,OAAO,EAAE,CAAC,aAAa,CAAC,0CAA0C,CAAC,KAAK,IAAI,EAAE;QAC7E,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACjC,0EAA0E;QAC1E,IAAI,CAAC,mBAAmB,GAAG,EAAE,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QAC1D,IAAI,CAAC;YACJ,MAAM,IAAI,GAAU,EAAE,CAAC;YACvB,IAAI,KAAK,EAAE,MAAM,GAAG,IAAI,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;gBAChD,IAAI,CAAC,IAAI,CAAC,GAAU,CAAC,CAAC;YACvB,CAAC;YACD,OAAO,IAAI,CAAC;QACb,CAAC;gBAAS,CAAC;YACV,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;QACvB,CAAC;IACF,CAAC,CAAC,CAAC;AACJ,CAAC;AAyBD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,yBAAyB,CAAC,GAA8B,EAAE,KAAmB;IAC5F,IAAI,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QAC1F,MAAM,IAAI,YAAY,CACrB,sBAAsB,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,QAAQ,SAAS,GAAG,CAAC,OAAO,CAAC,MAAM,uCAAuC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAC5I,UAAU,CAAC,KAAK,CAChB,CAAC;IACH,CAAC;AACF,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,SAAS,oBAAoB,CAAC,GAA8B,EAAE,KAAmB;IAChF,OAAO;QACN,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,QAAQ,EAAE,eAAe,CAAC,+BAA+B,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;QACtF,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,KAAK,EAAE,KAAK;KACZ,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,SAAS,qBAAqB,CAAC,GAA8B,EAAE,KAAmB;IACjF,MAAM,IAAI,GAAG,GAAG,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC,WAAW,EAAE,CAAC;IAC/D,IAAI,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACvC,MAAM,IAAI,YAAY,CACrB,sBAAsB,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,QAAQ,0CAA0C,EAC9F,UAAU,CAAC,KAAK,CAChB,CAAC;IACH,CAAC;AACF,CAAC;AAED;;;;;;GAMG;AACH,SAAS,iBAAiB,CAAC,UAAkB,EAAE,QAAgB,EAAE,IAAsB;IACtF,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ;SAC1B,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,eAAe,CAAC,CAAC,eAAe,MAAM,CAAC,CAAC,eAAe,EAAE,CAAC;SAC9E,IAAI,CAAC,IAAI,CAAC,CAAC;IACb,OAAO,CACN,2FAA2F;UACxF,iEAAiE,EACpE,UAAU,EAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,CACrD,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,EAAY,EAAE,GAA8B,EAAE,eAA8B;IACjH,MAAM,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC;IAE5B,MAAM,KAAK,GAAG,eAAe,IAAI,kBAAkB,CAAC,EAAE,EAAE,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAClG,8EAA8E;IAC9E,yEAAyE;IACzE,yBAAyB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACtC,yEAAyE;IACzE,2EAA2E;IAC3E,oCAAoC;IACpC,qBAAqB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAClC,MAAM,aAAa,GAAG,uBAAuB,CAAC,EAAE,EAAE,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,QAAQ,EAAE,KAAK,EAAE,GAAG,CAAC,iBAAiB,EAAE,GAAG,CAAC,iBAAiB,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;IAC/I,MAAM,eAAe,GAAG,MAAM,EAAE,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAC;IAEnE,IAAI,CAAC;QACJ,MAAM,IAAI,GAAU,MAAM,eAAe,CAAC,EAAE,EAAE,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;QAC3E,MAAM,IAAI,GAAG,kBAAkB,CAAC,EAAE,EAAE,eAAe,CAAC,CAAC;QACrD,6EAA6E;QAC7E,4EAA4E;QAC5E,uEAAuE;QACvE,0EAA0E;QAC1E,4EAA4E;QAC5E,6EAA6E;QAC7E,YAAY;QACZ,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,4BAA4B,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;IACpG,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACZ,yDAAyD;QACzD,IAAI,CAAC;YACJ,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC;QACrE,CAAC;QAAC,MAAM,CAAC,CAAC,yBAAyB,CAAC,CAAC;QACrC,MAAM,CAAC,CAAC;IACT,CAAC;IAED,MAAM,UAAU,GAAG,EAAE,CAAC,gBAAgB,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,QAAQ,EAAE,oBAAoB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;IACvG,0EAA0E;IAC1E,mEAAmE;IACnE,wCAAwC;IACxC,4BAA4B,CAAC,EAAE,EAAE,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAE1D,uEAAuE;IACvE,0EAA0E;IAC1E,wEAAwE;IACxE,kCAAkC;IAClC,IAAI,CAAC;QACJ,2EAA2E;QAC3E,6EAA6E;QAC7E,+EAA+E;QAC/E,iFAAiF;QACjF,kFAAkF;QAClF,6DAA6D;QAC7D,8BAA8B,CAAC,EAAE,EAAE,kBAAkB,EAAE,UAAU,CAAC,CAAC;QACnE,EAAE,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC;IACzC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACZ,8BAA8B,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAC/C,IAAI,CAAC;YACJ,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC;QACrE,CAAC;QAAC,MAAM,CAAC,CAAC,yBAAyB,CAAC,CAAC;QACrC,MAAM,CAAC,CAAC;IACT,CAAC;IAED,+EAA+E;IAC/E,8EAA8E;IAC9E,IAAI,UAAU,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;QACxC,iBAAiB,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,QAAQ,EAAE,UAAU,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IACrF,CAAC;IAED,OAAO,UAAU,CAAC;AACnB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAC1C,EAAY,EACZ,GAA8B,EAC9B,WAAwB,EACxB,KAAmB;IAEnB,MAAM,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC;IAC5B,MAAM,MAAM,GAAG,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAElD,qBAAqB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAClC,MAAM,OAAO,GAAG,uBAAuB,CAAC,EAAE,EAAE,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,QAAQ,EAAE,KAAK,EAAE,GAAG,CAAC,iBAAiB,EAAE,GAAG,CAAC,iBAAiB,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;IACzI,MAAM,CAAC,QAAQ,CAAC,EAAE,GAAG,OAAO,EAAE,aAAa,EAAE,WAAW,CAAC,aAAa,IAAI,CAAC,EAAE,CAAC,CAAC;IAE/E,MAAM,UAAU,GAAG,EAAE,CAAC,gBAAgB,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,QAAQ,EAAE,oBAAoB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;IACvG,4BAA4B,CAAC,EAAE,EAAE,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAE1D,IAAI,CAAC;QACJ,EAAE,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC;IACzC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACZ,8BAA8B,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAC/C,wEAAwE;QACxE,8EAA8E;QAC9E,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,GAAG,UAAU,CAAC;QACzD,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACvB,MAAM,CAAC,CAAC;IACT,CAAC;IAED,OAAO,UAAU,CAAC;AACnB,CAAC;AAED;;;;;;;;;;uFAUuF;AAEvF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,SAAS,2BAA2B,CAAC,KAAkB,EAAE,KAAmB,EAAE,SAAS,GAAG,KAAK;IAC9F,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,KAAK,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QACnD,OAAO,iBAAiB,KAAK,CAAC,OAAO,CAAC,MAAM,mCAAmC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;IACvG,CAAC;IACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/C,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAClC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACjC,IAAI,CAAC,SAAS,IAAI,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YAC9E,OAAO,sBAAsB,CAAC,GAAG,CAAC,cAAc,OAAO,CAAC,IAAI,6BAA6B,QAAQ,CAAC,IAAI,uDAAuD,CAAC;QAC/J,CAAC;QACD,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAC;YAC5C,OAAO,WAAW,QAAQ,CAAC,IAAI,wBAAwB,OAAO,CAAC,WAAW,CAAC,IAAI,2BAA2B,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;QACvI,CAAC;QACD,IAAI,CAAC,qBAAqB,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAC;YAC/C,OAAO,WAAW,QAAQ,CAAC,IAAI,mBAAmB,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,2BAA2B,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;QACpK,CAAC;QACD,IAAI,CAAC,uBAAuB,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAC;YACjD,OAAO,WAAW,QAAQ,CAAC,IAAI,6BAA6B,OAAO,CAAC,SAAS,IAAI,QAAQ,2BAA2B,QAAQ,CAAC,SAAS,IAAI,QAAQ,EAAE,CAAC;QACtJ,CAAC;IACF,CAAC;IACD,MAAM,SAAS,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,UAAU,GAAG,KAAK,CAAC,oBAAoB,CAAC;IAC9C,IAAI,UAAU,CAAC,MAAM,KAAK,SAAS,CAAC,MAAM,EAAE,CAAC;QAC5C,OAAO,kBAAkB,SAAS,CAAC,MAAM,8CAA8C,UAAU,CAAC,MAAM,6EAA6E,CAAC;IACvL,CAAC;IACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACvD,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACrD,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;YAChD,OAAO,yBAAyB,CAAC,GAAG,CAAC,mBAAmB,UAAU,EAAE,IAAI,6BAA6B,WAAW,EAAE,IAAI,GAAG,CAAC;QAC3H,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;YACpE,OAAO,yBAAyB,CAAC,GAAG,CAAC,MAAM,WAAW,EAAE,IAAI,uBAAuB,CAAC;QACrF,CAAC;QACD,MAAM,YAAY,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,WAAW,EAAE,SAAS,IAAI,QAAQ,CAAC;QACnF,MAAM,WAAW,GAAG,UAAU,EAAE,SAAS,IAAI,QAAQ,CAAC;QACtD,IAAI,YAAY,KAAK,WAAW,EAAE,CAAC;YAClC,OAAO,yBAAyB,CAAC,GAAG,CAAC,MAAM,WAAW,EAAE,IAAI,8BAA8B,WAAW,2BAA2B,YAAY,EAAE,CAAC;QAChJ,CAAC;IACF,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,uBAAuB,CAAC,EAAY,EAAE,UAAkB,EAAE,SAAiB,EAAE,YAA+B;IACpH,MAAM,MAAM,GAAG,GAAG,UAAU,IAAI,SAAS,EAAE,CAAC,WAAW,EAAE,CAAC;IAC1D,MAAM,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC;IAC5B,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,MAAM,IAAI,GAAG,CAAC,SAAiB,EAAE,IAAuB,EAAQ,EAAE;QACjE,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;YAC1B,2EAA2E;YAC3E,yEAAyE;YACzE,iEAAiE;YACjE,8CAA8C;YAC9C,MAAM,KAAK,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnE,MAAM,IAAI,YAAY,CACrB,gCAAgC,UAAU,IAAI,SAAS,gDAAgD,KAAK,GAAG,EAC/G,UAAU,CAAC,KAAK,CAChB,CAAC;QACH,CAAC;QACD,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;YAAE,OAAO;QACnC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACvB,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACnC,MAAM,SAAS,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QAC9D,MAAM,OAAO,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAChE,MAAM,MAAM,GAAG,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC/C,IAAI,MAAM,IAAI,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC;YACzC,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,UAAU,CAAC,YAAY;gBAAE,IAAI,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;QACrF,CAAC;IACF,CAAC,CAAC;IACF,KAAK,MAAM,GAAG,IAAI,YAAY;QAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;AAC/C,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,SAAS,uBAAuB,CAC/B,IAAoB,EACpB,EAAwD,EACxD,iBAAoC,EACpC,UAAkB,EAClB,IAAY,EACZ,WAA+C;IAE/C,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO;IAC5B,MAAM,aAAa,GAAG,yBAAyB,CAAC,iBAAiB,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;IAC7F,MAAM,WAAW,GAAG,CAAC,EAAO,EAAE,EAAO,EAAU,EAAE;QAChD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACpC,MAAM,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YACxB,MAAM,GAAG,GAAG,oBAAoB,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;YACrE,IAAI,GAAG,KAAK,CAAC;gBAAE,OAAO,GAAG,CAAC;QAC3B,CAAC;QACD,OAAO,CAAC,CAAC;IACV,CAAC,CAAC;IACF,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACnF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACvC,IAAI,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3D,MAAM,OAAO,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAChF,MAAM,WAAW,EAAE,CAAC,OAAO,CAAC,IAAI,IAAI,YAAY,CAC/C,gCAAgC,UAAU,IAAI,IAAI,wDAAwD,OAAO,4CAA4C;kBAC1J,+DAA+D,EAClE,UAAU,CAAC,UAAU,CACrB,CAAC;QACH,CAAC;IACF,CAAC;AACF,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,uBAAuB,CAC/B,IAAoB,EACpB,EAAwD,EACxD,iBAAoC,EACpC,UAAkB,EAClB,IAAY;IAEZ,uBAAuB,CAAC,IAAI,EAAE,EAAE,EAAE,iBAAiB,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,4BAA4B,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC;AAC9H,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,SAAS,6BAA6B,CACrC,OAAoB,EACpB,IAAoB,EACpB,UAAkB,EAClB,IAAY;IAEZ,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IAC1E,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO;SAC7B,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;SACrC,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,KAAK,IAAI,IAAI,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;IAC3E,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IACjC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACxB,KAAK,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,OAAO,EAAE,CAAC;YACtC,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,SAAS,EAAE,CAAC;gBACrD,MAAM,0BAA0B,CAAC,UAAU,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YAC9D,CAAC;QACF,CAAC;IACF,CAAC;AACF,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,uBAAuB,CAAC,EAAY,EAAE,IAAiB,EAAE,aAAqB;IAC5F,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,sBAAsB,CAAC,aAAa,CAAC,EAAE,CAAC;QAC1D,IAAI,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;YAAE,OAAO,CAAC,CAAC;IACtC,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;IAC5B,MAAM,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAClC,OAAO,IAAI,CAAC;AACb,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAS,wBAAwB,CAAC,EAAY,EAAE,EAAe;IAC9D,MAAM,QAAQ,GAAG,EAAE,CAAC,gBAAgB,CAAC,IAAI,CACxC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IACpE,IAAI,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC1B,MAAM,GAAG,GAAG,EAAE,CAAC,WAAW,IAAI,EAAE,CAAC;IACjC,OAAO,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;AACtE,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,KAAK,UAAU,uCAAuC,CACrD,EAAY,EACZ,EAAyB,EACzB,iBAA2C;IAE3C,MAAM,gBAAgB,GAAG,EAAE,CAAC,gBAAgB,CAAC,MAAM,CAClD,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IACpE,MAAM,GAAG,GAAG,EAAE,CAAC,WAAW,IAAI,EAAE,CAAC;IACjC,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAE9D,MAAM,MAAM,GAAG,EAAE,CAAC,aAAa,CAAC,eAAe,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;IAC/D,MAAM,QAAQ,GAA0B;QACvC,GAAG,EAAE;QACL,OAAO,EAAE,iBAAiB,IAAI,EAAE,CAAC,OAAO;QACxC,gBAAgB,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACnC,WAAW,EAAE,SAAS;KACtB,CAAC;IACF,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC1B,IAAI,CAAC;QACJ,MAAM,8BAA8B,CAAC,EAAE,EAAE,EAAE,EAAE,gBAAgB,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,CACjF,kCAAkC,CACjC,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,EACtB,KAAK,CAAC,IAAI,IAAI,UAAU,EAAE,CAAC,gBAAgB,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,EAC5D,OAAO,CACP,CAAC,CAAC;QACJ,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;YACtB,MAAM,kCAAkC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,CACzD,+BAA+B,CAC9B,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,EACtB,EAAE,CAAC,IAAI,IAAI,OAAO,EAAE,CAAC,IAAI,EAAE,EAC3B,EAAE,CAAC,gBAAgB,IAAI,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,eAAe,CACxD,CAAC,CAAC;QACL,CAAC;IACF,CAAC;YAAS,CAAC;QACV,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACrB,CAAC;AACF,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4EG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC/C,EAAY,EACZ,KAAkB,EAClB,MAAqB,EACrB,eAAkD,EAClD,gBAAgB,GAAG,KAAK,EACxB,YAAY,GAAG,KAAK;AACpB;;;;;;;;GAQG;AACH,uBAAuB,GAAG,KAAK;IAE/B,MAAM,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC;IAC5B,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;IACpC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;IACxB,MAAM,MAAM,GAAG,EAAE,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;IAE9C,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACxC,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;QAC5B,MAAM,IAAI,YAAY,CACrB,gCAAgC,UAAU,IAAI,IAAI,cAAc,KAAK,CAAC,cAAc,sFAAsF,EAC1K,UAAU,CAAC,WAAW,CACtB,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IACpC,gFAAgF;IAChF,kFAAkF;IAClF,kFAAkF;IAClF,mEAAmE;IACnE,MAAM,KAAK,GAAG,kBAAkB,CAAC,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,gBAAgB,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAE1G,gFAAgF;IAChF,8EAA8E;IAC9E,sEAAsE;IACtE,4EAA4E;IAC5E,2EAA2E;IAC3E,+EAA+E;IAC/E,0EAA0E;IAC1E,2EAA2E;IAC3E,IAAI,eAAe,KAAK,SAAS,IAAI,eAAe,CAAC,MAAM,KAAK,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QACtF,MAAM,IAAI,YAAY,CACrB,gCAAgC,UAAU,IAAI,IAAI,+BAA+B,eAAe,CAAC,MAAM,kCAAkC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAC/J,UAAU,CAAC,KAAK,CAChB,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,2BAA2B,CAAC,KAAK,EAAE,KAAK,EAAE,gBAAgB,CAAC,CAAC;IAC7E,gFAAgF;IAChF,yEAAyE;IACzE,+DAA+D;IAC/D,2EAA2E;IAC3E,4EAA4E;IAC5E,iFAAiF;IACjF,qBAAqB;IACrB,gFAAgF;IAChF,gFAAgF;IAChF,gFAAgF;IAChF,4EAA4E;IAC5E,8EAA8E;IAC9E,8EAA8E;IAC9E,MAAM,qBAAqB,GAAG,QAAQ,KAAK,IAAI,IAAI,YAAY,IAAI,CAAC,gBAAgB,IAAI,eAAe,KAAK,SAAS,CAAC;IACtH,MAAM,wBAAwB,GAAG,QAAQ,KAAK,IAAI,IAAI,gBAAgB,IAAI,YAAY;WAClF,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;IAC/F,IAAI,WAAoC,CAAC;IACzC,IAAI,QAAQ,IAAI,CAAC,qBAAqB,EAAE,CAAC;QACxC,MAAM,IAAI,YAAY,CACrB,gCAAgC,UAAU,IAAI,IAAI,MAAM,QAAQ,EAAE,EAClE,UAAU,CAAC,KAAK,CAChB,CAAC;IACH,CAAC;IACD,IAAI,qBAAqB,IAAI,wBAAwB,EAAE,CAAC;QACvD,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YACxB,MAAM,yBAAyB,CAAC,UAAU,EAAE,IAAI,EAC/C,uBAAuB,KAAK,CAAC,cAAc,mCAAmC,CAAC,CAAC;QAClF,CAAC;QACD,MAAM,cAAc,GAAG,sBAAsB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC5D,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YACjC,MAAM,yBAAyB,CAAC,UAAU,EAAE,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;QAC1E,CAAC;QACD,WAAW,GAAG,cAAc,CAAC,IAAI,CAAC;IACnC,CAAC;IACD,uBAAuB,CAAC,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;IAElE,MAAM,IAAI,GAAU,MAAM,eAAe,CAAC,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IACnE,gFAAgF;IAChF,iFAAiF;IACjF,MAAM,OAAO,GAAG,wBAAwB,CAAC,KAAK,CAAC;SAC7C,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IAC/E,uBAAuB,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,oBAAoB,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;IAEpF,MAAM,GAAG,GAA8B;QACtC,UAAU;QACV,QAAQ,EAAE,IAAI;QACd,SAAS,EAAE,MAAM;QACjB,OAAO;QACP,6EAA6E;QAC7E,+EAA+E;QAC/E,0EAA0E;QAC1E,OAAO,EAAE,eAAe;KACxB,CAAC;IAEF,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC;IAC7C,MAAM,eAAe,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IAErE,0EAA0E;IAC1E,8EAA8E;IAC9E,6CAA6C;IAC7C,MAAM,YAAY,GAAG,GAAS,EAAE;QAC/B,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACvB,IAAI,eAAe,EAAE,CAAC;YACrB,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;gBACvC,IAAI,CAAC;oBACJ,EAAE,CAAC,wBAAwB,CAAC,eAAe,CAAC,CAAC;gBAC9C,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACZ,oEAAoE;oBACpE,kEAAkE;oBAClE,EAAE,CAAC,yBAAyB,CAAC,eAAe,CAAC,CAAC;oBAC9C,GAAG,CAAC,8FAA8F,EACjG,UAAU,EAAE,IAAI,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;gBAChE,CAAC;YACF,CAAC;QACF,CAAC;aAAM,CAAC;YACP,EAAE,CAAC,0BAA0B,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QACjD,CAAC;IACF,CAAC,CAAC;IAEF,8EAA8E;IAC9E,iFAAiF;IACjF,6DAA6D;IAC7D,gFAAgF;IAChF,oEAAoE;IACpE,kFAAkF;IAClF,+EAA+E;IAC/E,2EAA2E;IAC3E,4DAA4D;IAC5D,MAAM,cAAc,GAAG,qBAAqB,CAAC,EAAE,EAAE,KAAK,CAAC,KAAK,SAAS,CAAC;IAEtE,MAAM,UAAU,GAAG,EAAE,CAAC,gBAAgB,CAAC,UAAU,EAAE,IAAI,EAAE,oBAAoB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;IAC3F,IAAI,CAAC;QACJ,0EAA0E;QAC1E,uEAAuE;QACvE,sEAAsE;QACtE,yEAAyE;QACzE,0EAA0E;QAC1E,wEAAwE;QACxE,gEAAgE;QAChE,EAAE,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC;IACzC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACZ,YAAY,EAAE,CAAC;QACf,MAAM,CAAC,CAAC;IACT,CAAC;IAED,0EAA0E;IAC1E,+EAA+E;IAC/E,2EAA2E;IAC3E,+EAA+E;IAC/E,6EAA6E;IAC7E,wEAAwE;IACxE,kEAAkE;IAClE,MAAM,eAAe,GAAG,CAAC,YAAyB,EAAQ,EAAE;QAC3D,IAAI,eAAe,EAAE,CAAC;YACrB,MAAM,QAAQ,GAAG,mBAAmB,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;YACpE,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAC1B,EAAE,CAAC,yBAAyB,CAAC,QAAQ,CAAC,CAAC;QACxC,CAAC;aAAM,CAAC;YACP,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,GAAG,YAA4D,CAAC;YAC3G,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YACvB,EAAE,CAAC,0BAA0B,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QACjD,CAAC;IACF,CAAC,CAAC;IAEF,IAAI,IAAI,GAA0B,UAAU,CAAC;IAC7C,IAAI,OAA2B,CAAC;IAChC,IAAI,OAAO,GAAgB,KAAK,CAAC;IACjC,IAAI,aAAa,GAAG,KAAK,CAAC;IAC1B,IAAI,kBAAkB,GAAG,KAAK,CAAC;IAC/B,IAAI,CAAC;QACJ,IAAI,WAAW,EAAE,CAAC;YACjB,uEAAuE;YACvE,yEAAyE;YACzE,uDAAuD;YACvD,kEAAkE;YAClE,KAAK,MAAM,EAAE,IAAI,WAAW,CAAC,eAAe,EAAE,CAAC;gBAC9C,OAAO,GAAG,MAAM,MAAM,CAAC,UAAW,CAAC,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC;gBAChF,aAAa,GAAG,IAAI,CAAC;YACtB,CAAC;YACD,IAAI,GAAG,mBAAmB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YAChD,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACvB,CAAC;QAED,uEAAuE;QACvE,6EAA6E;QAC7E,0EAA0E;QAC1E,mEAAmE;QACnE,0EAA0E;QAC1E,0EAA0E;QAC1E,uEAAuE;QACvE,qEAAqE;QACrE,MAAM,MAAM,CAAC,sBAAsB,EAAE,CAAC,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAElE,wEAAwE;QACxE,uEAAuE;QACvE,0EAA0E;QAC1E,MAAM,IAAI,GAAG,kBAAkB,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QAE1C,0EAA0E;QAC1E,8EAA8E;QAC9E,2EAA2E;QAC3E,+EAA+E;QAC/E,+EAA+E;QAC/E,6EAA6E;QAC7E,4EAA4E;QAC5E,6EAA6E;QAC7E,+EAA+E;QAC/E,gFAAgF;QAChF,8EAA8E;QAC9E,yEAAyE;QACzE,IAAI,cAAc,IAAI,IAAI,CAAC,6BAA6B,EAAE,CAAC;YAC1D,MAAM,IAAI,YAAY,CACrB,gCAAgC,UAAU,IAAI,IAAI,+BAA+B;kBAC9E,iFAAiF;kBACjF,mFAAmF;kBACnF,mFAAmF;kBACnF,kCAAkC,EACrC,UAAU,CAAC,QAAQ,CACnB,CAAC;QACH,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,uBAAuB,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,UAAU,IAAI,IAAI,EAAE,CAAC,CAAC;QAC9E,OAAO,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAC7E,yEAAyE;QACzE,wEAAwE;QACxE,4EAA4E;QAC5E,4EAA4E;QAC5E,wEAAwE;QACxE,gDAAgD;QAChD,MAAM,uCAAuC,CAAC,EAAE,EAAE,IAAI,EACrD,WAAW,CAAC,CAAC,CAAC,sBAAsB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAEhE,IAAI,WAAW,IAAI,WAAW,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5D,wEAAwE;YACxE,0EAA0E;YAC1E,2EAA2E;YAC3E,qEAAqE;YACrE,uEAAuE;YACvE,gEAAgE;YAChE,oEAAoE;YACpE,gEAAgE;YAChE,yEAAyE;YACzE,mEAAmE;YACnE,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;YACpB,kBAAkB,GAAG,IAAI,CAAC;YAC1B,KAAK,MAAM,EAAE,IAAI,WAAW,CAAC,gBAAgB,EAAE,CAAC;gBAC/C,OAAO,GAAG,MAAM,MAAM,CAAC,UAAW,CAAC,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC;gBAChF,IAAI,GAAG,mBAAmB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;gBAChD,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACvB,CAAC;QACF,CAAC;QAED,IAAI,WAAW,EAAE,CAAC;YACjB,sEAAsE;YACtE,kEAAkE;YAClE,8CAA8C;YAC9C,EAAE,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;QACnC,CAAC;IACF,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACZ,IAAI,kBAAkB,EAAE,CAAC;YACxB,uEAAuE;YACvE,2EAA2E;YAC3E,sDAAsD;YACtD,EAAE,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;QACpC,CAAC;aAAM,IAAI,aAAa,EAAE,CAAC;YAC1B,eAAe,CAAC,OAAO,CAAC,CAAC;QAC1B,CAAC;aAAM,CAAC;YACP,YAAY,EAAE,CAAC;QAChB,CAAC;QACD,4EAA4E;QAC5E,4EAA4E;QAC5E,8EAA8E;QAC9E,+EAA+E;QAC/E,8EAA8E;QAC9E,uEAAuE;QACvE,+EAA+E;QAC/E,IAAI,uBAAuB,IAAI,CAAC,kBAAkB,IAAI,CAAC,eAAe,EAAE,CAAC;YACxE,MAAM,MAAM,CAAC,uBAAuB,EAAE,CAAC,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;QAC9D,CAAC;QACD,MAAM,CAAC,CAAC;IACT,CAAC;IAED,IAAI,eAAe;QAAE,8BAA8B,CAAC,EAAE,EAAE,eAAe,CAAC,CAAC;IACzE,4BAA4B,CAAC,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAEhD,IAAI,WAAW,EAAE,CAAC;QACjB,0EAA0E;QAC1E,yEAAyE;QACzE,sEAAsE;QACtE,wEAAwE;QACxE,6DAA6D;QAC7D,EAAE,CAAC,iBAAiB,EAAE,CAAC,YAAY,CAAC;YACnC,IAAI,EAAE,gBAAgB;YACtB,UAAU,EAAE,UAAU,EAAE,IAAI;YAC5B,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI;SACjC,CAAC,CAAC;IACJ,CAAC;IAED,2EAA2E;IAC3E,wEAAwE;IACxE,6EAA6E;IAC7E,2EAA2E;IAC3E,6CAA6C;IAC7C,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,GAAG,GAAG,UAAU,IAAI,IAAI,EAAE,CAAC;QACrC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;QACnC,MAAM,aAAa,GAAqB,IAAI,GAAG,EAAE,CAAC;QAClD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC9B,MAAM,EAAE,CAAC,kCAAkC,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;QAC/F,CAAC;QACD,MAAM,EAAE,CAAC,yBAAyB,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IAC7D,CAAC;IAED,EAAE,CAAC,iBAAiB,EAAE,CAAC,YAAY,CAAC,eAAe;QAClD,CAAC,CAAC;YACD,IAAI,EAAE,4BAA4B;YAClC,UAAU,EAAE,UAAU,EAAE,IAAI;YAC5B,SAAS,EAAE,eAAe,EAAE,SAAS,EAAE,IAAI;SAC3C;QACD,CAAC,CAAC;YACD,IAAI,EAAE,yBAAyB;YAC/B,UAAU,EAAE,UAAU,EAAE,IAAI;YAC5B,SAAS,EAAE,IAAI;SACf,CAAC,CAAC;IAEJ,IAAI,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;QAClC,iBAAiB,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IACnE,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,0BAA0B,CAAC,EAAY,EAAE,EAAyB;IACjF,MAAM,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC;IAC5B,MAAM,MAAM,GAAG,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;IAEjD,EAAE,CAAC,0BAA0B,CAAC,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;IACtD,8BAA8B,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAEvC,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,MAAM,GAAG,IAAI,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3D,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,GAAG,MAAM,CAAC;IACrD,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEvB,EAAE,CAAC,iBAAiB,EAAE,CAAC,YAAY,CAAC;QACnC,IAAI,EAAE,2BAA2B;QACjC,UAAU,EAAE,EAAE,CAAC,UAAU;QACzB,UAAU,EAAE,EAAE,CAAC,IAAI;QACnB,SAAS,EAAE,MAAM;KACjB,CAAC,CAAC;IACH,OAAO,KAAK,CAAC;AACd,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,EAAY,EAAE,IAAyB;IAClF,MAAM,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC;IAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,oBAAoB,EAAE,CAAC;IAC7G,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;IAE7B,IAAI,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC;QACnE,IAAI,IAAI,CAAC,WAAW;YAAE,OAAO,SAAS,CAAC;QACvC,MAAM,IAAI,YAAY,CACrB,SAAS,UAAU,IAAI,IAAI,iBAAiB,EAC5C,UAAU,CAAC,UAAU,EACrB,SAAS,EACT,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,EAC1B,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,MAAM,CAC5B,CAAC;IACH,CAAC;IAED,iFAAiF;IACjF,kFAAkF;IAClF,+EAA+E;IAC/E,gFAAgF;IAChF,kFAAkF;IAClF,MAAM,IAAI,GAAG,IAAI,CAAC,UAAW,CAAC,OAAO,CAAC;IACtC,MAAM,QAAQ,GAAG,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IACvD,MAAM,QAAQ,GAAG,EAAE,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;IACnD,MAAM,eAAe,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACjF,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,UAAW,CAAC,MAAM,CAAC,CAAC;IACrD,MAAM,KAAK,GAAG,kBAAkB,CAAC,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAClG,MAAM,QAAQ,GAAG,2BAA2B,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;IACxE,IAAI,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,YAAY,CACrB,mCAAmC,UAAU,IAAI,IAAI,MAAM,QAAQ,EAAE,EACrE,UAAU,CAAC,KAAK,EAChB,SAAS,EACT,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,EAC1B,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,MAAM,CAC5B,CAAC;IACH,CAAC;IAED,gFAAgF;IAChF,6EAA6E;IAC7E,2EAA2E;IAC3E,4EAA4E;IAC5E,yEAAyE;IACzE,mFAAmF;IACnF,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACjE,IAAI,CAAC;QACJ,OAAO,MAAM,0BAA0B,CACtC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,UAAW,CAAC,MAAM,EAClC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,QAAQ,CAC/D,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACZ,IAAI,CAAC;YACJ,MAAM,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC;QACzD,CAAC;QAAC,MAAM,CAAC,CAAC,yBAAyB,CAAC,CAAC;QACrC,MAAM,CAAC,CAAC;IACT,CAAC;AACF,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CACnC,EAAY,EACZ,EAAyB,EACzB,iBAA2C;IAE3C,MAAM,OAAO,GAAG,WAAW,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IACrD,MAAM,IAAI,GAAU,MAAM,eAAe,CAAC,EAAE,EAAE,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAEtE,MAAM,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;IAClE,IAAI,CAAC,OAAO,EAAE,CAAC;QACd,MAAM,IAAI,YAAY,CACrB,qCAAqC,EAAE,CAAC,IAAI,4BAA4B,EACxE,UAAU,CAAC,QAAQ,CACnB,CAAC;IACH,CAAC;IACD,MAAM,IAAI,GAAG,kBAAkB,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IAE7C,qFAAqF;IACrF,sFAAsF;IACtF,wFAAwF;IACxF,yFAAyF;IACzF,sFAAsF;IACtF,sFAAsF;IACtF,uFAAuF;IACvF,sFAAsF;IACtF,uFAAuF;IACvF,yFAAyF;IACzF,0FAA0F;IAC1F,6BAA6B,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;IAErE,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,wBAAwB,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,CAAC;QAC3E,yEAAyE;QACzE,wEAAwE;QACxE,4EAA4E;QAC5E,4EAA4E;QAC5E,2DAA2D;QAC3D,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,4BAA4B,CAAC,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QAC7F,OAAO;IACR,CAAC;IAED,iFAAiF;IACjF,2EAA2E;IAC3E,kFAAkF;IAClF,iFAAiF;IACjF,6EAA6E;IAC7E,MAAM,OAAO,GAAG,OAAO,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACtD,KAAK,EAAE,CAAC,CAAC,KAAK;QACd,SAAS,EAAE,CAAC,CAAC,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,SAAS;KAC7D,CAAC,CAAC,CAAC;IACJ,uBAAuB,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,oBAAoB,EAAE,EAAE,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;IAE1F,MAAM,IAAI,GAAG,MAAM,uBAAuB,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,UAAU,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;IACpF,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACnE,4EAA4E;IAC5E,8EAA8E;IAC9E,gFAAgF;IAChF,gEAAgE;IAChE,EAAE;IACF,+EAA+E;IAC/E,+EAA+E;IAC/E,yEAAyE;IACzE,iFAAiF;IACjF,6EAA6E;IAC7E,gFAAgF;IAChF,kFAAkF;IAClF,kDAAkD;IAClD,MAAM,uCAAuC,CAAC,EAAE,EAAE,OAAO,EAAE,iBAAiB,CAAC,CAAC;IAC9E,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;AACrB,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAoB,EAAE,KAAmB;IAC5E,IAAI,CAAC,+BAA+B,CAAC,OAAO,EAAE,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACnE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/C,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE;YAAE,OAAO,KAAK,CAAC;IACjG,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,+BAA+B,CAAC,OAAoB,EAAE,KAAmB;IACjF,OAAO,4BAA4B,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,IAAI,CAAC;AAC9D,CAAC;AAED;;;;;;;;oDAQoD;AAEpD,2EAA2E;AAC3E,SAAS,kBAAkB,CAAC,CAAe,EAAE,CAAe;IAC3D,OAAO,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;AAC9E,CAAC;AAED,yCAAyC;AACzC,SAAS,qBAAqB,CAAC,CAAe,EAAE,CAAe;IAC9D,OAAO,CAAC,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC;AACtD,CAAC;AAED,qEAAqE;AACrE,SAAS,uBAAuB,CAAC,CAAe,EAAE,CAAe;IAChE,OAAO,CAAC,CAAC,CAAC,SAAS,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,IAAI,QAAQ,CAAC,CAAC;AAChE,CAAC;AAED;;;;;gDAKgD;AAChD,SAAS,kBAAkB,CAAC,KAAkB,EAAE,eAAuB;IACtE,OAAO,KAAK,CAAC,oBAAoB,CAAC,IAAI,CACrC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,KAAK,eAAe,CACvE,CAAC;AACH,CAAC;AAED;;;;;;kFAMkF;AAClF,SAAS,4BAA4B,CAAC,OAAoB,EAAE,KAAmB;IAC9E,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,KAAK,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QACrD,OAAO,gBAAgB,OAAO,CAAC,OAAO,CAAC,MAAM,MAAM,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;IAC3E,CAAC;IACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/C,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC7B,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YAC/B,OAAO,UAAU,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,IAAI,MAAM,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;QACzE,CAAC;QACD,IAAI,CAAC,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YAClC,uEAAuE;YACvE,4EAA4E;YAC5E,8EAA8E;YAC9E,6EAA6E;YAC7E,gFAAgF;YAChF,2EAA2E;YAC3E,kFAAkF;YAClF,mFAAmF;YACnF,wEAAwE;YACxE,qDAAqD;YACrD,MAAM,iBAAiB,GAAG,CAAC,CAAC,OAAO,KAAK,IAAI,IAAI,CAAC,CAAC,OAAO,KAAK,IAAI;mBAC9D,kBAAkB,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;YACtD,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACxB,OAAO,UAAU,CAAC,aAAa,CAAC,CAAC,OAAO,KAAK,IAAI,MAAM,CAAC,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;YAC7E,CAAC;QACF,CAAC;QACD,IAAI,CAAC,uBAAuB,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YACpC,OAAO,UAAU,CAAC,cAAc,CAAC,CAAC,SAAS,IAAI,QAAQ,MAAM,CAAC,CAAC,SAAS,IAAI,QAAQ,EAAE,CAAC;QACxF,CAAC;IACF,CAAC;IACD,MAAM,OAAO,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,SAAS,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAC/C,IAAI,SAAS,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC;QACzC,OAAO,sBAAsB,SAAS,CAAC,MAAM,MAAM,OAAO,CAAC,MAAM,EAAE,CAAC;IACrE,CAAC;IACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;YAC7C,OAAO,sBAAsB,CAAC,UAAU,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;QACpF,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;YACjE,OAAO,sBAAsB,CAAC,YAAY,CAAC;QAC5C,CAAC;QACD,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,SAAS,IAAI,QAAQ,CAAC;QACzE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,QAAQ,CAAC,KAAK,SAAS,EAAE,CAAC;YACxD,OAAO,sBAAsB,CAAC,cAAc,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,QAAQ,MAAM,SAAS,EAAE,CAAC;QACjG,CAAC;IACF,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED;;;;;;;;;;;2EAW2E;AAE3E;;;;0CAI0C;AAC1C,SAAS,yBAAyB,CAAC,CAAe,EAAE,CAAe;IAClE,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE;WAChD,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC;WACxB,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC;WAC3B,uBAAuB,CAAC,CAAC,EAAE,CAAC,CAAC;WAC7B,CAAC,CAAC,CAAC,SAAS,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,KAAK,IAAI,CAAC;WACjD,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAC/C,CAAC;AAED,SAAS,iBAAiB,CAAC,CAAe,EAAE,CAAe;IAC1D,IAAI,CAAC,CAAC,CAAC,aAAa,KAAK,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,aAAa,KAAK,SAAS,CAAC;QAAE,OAAO,KAAK,CAAC;IACtF,IAAI,CAAC,CAAC,CAAC,aAAa,IAAI,CAAC,CAAC,CAAC,aAAa;QAAE,OAAO,IAAI,CAAC;IACtD,OAAO,kBAAkB,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,kBAAkB,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;AACpF,CAAC;AAED;mEACmE;AACnE,SAAS,wBAAwB,CAAC,CAAc,EAAE,CAAc;IAC/D,IAAI,CAAC,CAAC,oBAAoB,CAAC,MAAM,KAAK,CAAC,CAAC,oBAAoB,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IAClF,OAAO,CAAC,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE;QAC7C,MAAM,EAAE,GAAG,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,KAAK,GAAG,EAAE,CAAC,SAAS,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,SAAS,IAAI,QAAQ,CAAC;QACzE,MAAM,KAAK,GAAG,EAAE,CAAC,SAAS,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,SAAS,IAAI,QAAQ,CAAC;QACzE,OAAO,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC,KAAK;eACxB,CAAC,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC;eACzC,KAAK,KAAK,KAAK,CAAC;IACrB,CAAC,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,2BAA2B,CAAC,SAAsB,EAAE,SAAsB;IACzF,IAAI,SAAS,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IAC1C,IAAI,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE;QAAE,OAAO,KAAK,CAAC;IAChF,IAAI,SAAS,CAAC,UAAU,CAAC,WAAW,EAAE,KAAK,SAAS,CAAC,UAAU,CAAC,WAAW,EAAE;QAAE,OAAO,KAAK,CAAC;IAC5F,IAAI,SAAS,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,OAAO,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IACxE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACnD,IAAI,CAAC,yBAAyB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;IAC1F,CAAC;IACD,OAAO,wBAAwB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;AACvD,CAAC;AAED;;;0CAG0C;AAC1C,SAAS,+BAA+B,CAAC,OAAoB,EAAE,KAAmB;IACjF,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,KAAK,KAAK,CAAC,OAAO,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IAClE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/C,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC7B,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;QAC5C,IAAI,CAAC,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;QAC/C,IAAI,CAAC,uBAAuB,CAAC,CAAC,EAAE,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;IAClD,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED;;;yEAGyE;AACzE,SAAS,2BAA2B,CAAC,OAAoB,EAAE,KAAmB;IAC7E,IAAI,CAAC,KAAK,CAAC,aAAa;QAAE,OAAO,KAAK,CAAC;IACvC,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,oBAAoB,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAChF,OAAO,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAC9E,CAAC;AAED;;;;;;;;;;;;+CAY+C;AAE/C;;;;;;;;;;;GAWG;AACH,SAAS,4BAA4B,CAAC,SAAsB,EAAE,SAAsB;IACnF,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;IAC9B,KAAK,MAAM,MAAM,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;QACxC,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QAC/F,IAAI,CAAC,MAAM;YAAE,SAAS,CAAC,iEAAiE;QACxF,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;YACrF,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QACpC,CAAC;IACF,CAAC;IACD,OAAO,GAAG,CAAC;AACZ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,UAAU,uBAAuB,CAAC,EAAY,EAAE,UAAkB,EAAE,OAAe,EAAE,eAAuB;IACjH,MAAM,UAAU,GAAG,eAAe,CAAC,WAAW,EAAE,CAAC;IACjD,OAAO,EAAE,CAAC,aAAa,CAAC,qCAAqC,CAAC,GAAG,EAAE;QAClE,MAAM,GAAG,GAAG,IAAI,MAAM,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACxC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC,GAAoB,CAAC,EAAE,SAAS,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC;QAElG,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAU,CAAC;QAC5C,MAAM,UAAU,GAAyB,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,IAAI,GAAG,EAAY,CAAC;QACpC,MAAM,IAAI,GAAG,CAAC,IAAc,EAAQ,EAAE;YACrC,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,OAAO;YAC9B,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAClB,IAAI,IAAI,YAAY,mBAAmB,EAAE,CAAC;gBACzC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACzC,CAAC;iBAAM,IAAI,IAAI,YAAY,kBAAkB;mBACzC,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,UAAU,EAAE,CAAC;gBAC5F,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvB,CAAC;YACD,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,WAAW,EAAE;gBAAE,IAAI,CAAC,CAAwB,CAAC,CAAC;YACnE,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,YAAY,EAAE;gBAAE,IAAI,CAAC,CAAwB,CAAC,CAAC;QACrE,CAAC,CAAC;QACF,IAAI,CAAC,IAAI,CAAC,CAAC;QAEX,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,IAAI,IAA4D,CAAC;QACjE,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;YAC9B,MAAM,KAAK,GAAG,GAAG,CAAC,aAAa,EAAE,CAAC;YAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACvC,IAAI,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACrD,CAAC;YACD,6EAA6E;YAC7E,qDAAqD;YACrD,IAAI,KAAK,GAAG,CAAC,WAAW,CAAC,2BAA2B,CAAC;QACtD,CAAC;QACD,IAAI,IAAI;YAAE,gCAAgC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACvD,OAAO,IAAI,CAAC;IACb,CAAC,CAAC,CAAC;AACJ,CAAC;AAED;;kDAEkD;AAClD,SAAS,gCAAgC,CAAC,IAAiB,EAAE,IAAgD;IAC5G,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;IACxB,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,EAAG,CAAC;QACzB,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACjC,IAAI,CAAC,UAAU;YAAE,SAAS;QAC1B,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;YAC5B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAAC,CAAC;QAClD,CAAC;IACF,CAAC;AACF,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoEG;AACH,MAAM,UAAU,gCAAgC,CAC/C,EAAY,EACZ,EAAyB,EACzB,SAAsB,EACtB,SAAsB;IAEtB,IAAI,CAAC;QACJ,MAAM,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC;QACxB,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACzC,MAAM,KAAK,GAAG,kBAAkB,CAAC,EAAE,EAAE,EAAE,CAAC,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;QACxE,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,YAAY,EAAE,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC;YAC3D,GAAG,CAAC,sJAAsJ,EACzJ,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YACnF,OAAO,KAAK,CAAC;QACd,CAAC;QACD,MAAM,MAAM,GAAG,EAAE,CAAC,aAAa,CAAC,eAAe,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;QAC/D,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;QACtC,MAAM,OAAO,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QACpD,MAAM,QAAQ,GAAG,4BAA4B,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC9D,IAAI,QAAQ,EAAE,CAAC;YACd,6EAA6E;YAC7E,wEAAwE;YACxE,8EAA8E;YAC9E,2EAA2E;YAC3E,2EAA2E;YAC3E,qEAAqE;YACrE,IAAI,CAAC,+BAA+B,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,2BAA2B,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;gBACtG,GAAG,CAAC,iHAAiH,EACpH,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;gBACnC,OAAO,KAAK,CAAC;YACd,CAAC;YACD,GAAG,CAAC,0FAA0F,EAC7F,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACpC,CAAC;QACD,mFAAmF;QACnF,kFAAkF;QAClF,sFAAsF;QACtF,uFAAuF;QACvF,oFAAoF;QACpF,yEAAyE;QACzE,wFAAwF;QACxF,8EAA8E;QAC9E,8BAA8B;QAC9B,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;YAC3G,GAAG,CAAC,uKAAuK,EAC1K,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;YACzB,OAAO,KAAK,CAAC;QACd,CAAC;QACD,8EAA8E;QAC9E,iFAAiF;QACjF,iFAAiF;QACjF,iFAAiF;QACjF,MAAM,YAAY,GAAG,4BAA4B,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACxE,IAAI,YAAY,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAC3B,MAAM,MAAM,GAAG,GAAG,SAAS,CAAC,UAAU,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACzE,MAAM,IAAI,GAAG,uBAAuB,CAAC,EAAE,EAAE,EAAE,CAAC,UAAU,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YACzE,MAAM,aAAa,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBACnD,MAAM,GAAG,GAAG,SAAS,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAC/C,OAAO,GAAG,KAAK,SAAS,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC3C,CAAC,CAAC,CAAC;YACH,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;gBACjC,GAAG,CAAC,wLAAwL,EAC3L,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;gBACxC,OAAO,KAAK,CAAC;YACd,CAAC;YACD,GAAG,CAAC,6HAA6H,EAChI,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACxD,CAAC;QACD,EAAE,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC;QACrC,GAAG,CAAC,2EAA2E,EAC9E,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;QACzB,OAAO,IAAI,CAAC;IACb,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACZ,GAAG,CAAC,gGAAgG,EACnG,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QACrE,OAAO,KAAK,CAAC;IACd,CAAC;AACF,CAAC;AAmDD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,SAAS,sBAAsB,CAAC,OAAoB,EAAE,KAAmB;IACxE,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC;IAC5B,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC;IACzB,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAC7D,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAE3D,MAAM,OAAO,GAAsB,EAAE,CAAC;IACtC,MAAM,IAAI,GAAsB,EAAE,CAAC;IACnC,MAAM,OAAO,GAAsB,EAAE,CAAC,CAAQ,sDAAsD;IACpG,MAAM,KAAK,GAAsB,EAAE,CAAC;IACpC,MAAM,gBAAgB,GAAsB,EAAE,CAAC,CAAC,qEAAqE;IACrH,6EAA6E;IAC7E,MAAM,SAAS,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE5C,2EAA2E;IAC3E,8EAA8E;IAC9E,iFAAiF;IACjF,6EAA6E;IAC7E,mCAAmC;IACnC,mFAAmF;IACnF,wFAAwF;IACxF,kFAAkF;IAClF,iFAAiF;IACjF,uFAAuF;IACvF,sFAAsF;IACtF,iFAAiF;IACjF,wFAAwF;IACxF,+DAA+D;IAC/D,MAAM,eAAe,GAAG,CAAC,IAAkB,EAAE,EAAgB,EAAE,IAAY,EAAQ,EAAE;QACpF,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,EAAE,CAAC;YAAE,gBAAgB,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC;QACrH,IAAI,CAAC,uBAAuB,CAAC,IAAI,EAAE,EAAE,CAAC;YAAE,gBAAgB,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC,SAAS,IAAI,QAAQ,EAAE,CAAC,CAAC;QAChI,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC;YACtC,IAAI,EAAE,CAAC,OAAO,KAAK,IAAI;gBAAE,gBAAgB,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC;YACjF,8EAA8E;YAC9E,qEAAqE;YACrE,2EAA2E;YAC3E,gFAAgF;YAChF,0EAA0E;YAC1E,+EAA+E;YAC/E,uEAAuE;iBAClE,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;gBAChE,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC;YAC/C,CAAC;QACF,CAAC;IACF,CAAC,CAAC;IAEF,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACjB,OAAO,CAAC,GAAG,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC;QACxC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;QAC9B,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QAC7D,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACf,eAAe,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;YACjC,CAAC,EAAE,CAAC;YAAC,CAAC,EAAE,CAAC;QACV,CAAC;aAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YAClD,oEAAoE;YACpE,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;YACjF,SAAS,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YACtB,eAAe,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAG,0CAA0C;YAC9E,CAAC,EAAE,CAAC;YAAC,CAAC,EAAE,CAAC;QACV,CAAC;aAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YAC7B,+EAA+E;YAC/E,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;YAC5C,CAAC,EAAE,CAAC;QACL,CAAC;aAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YAC9B,oEAAoE;YACpE,yDAAyD;YACzD,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC,IAAI,oEAAoE,EAAE,CAAC;QACnI,CAAC;aAAM,CAAC;YACP,mFAAmF;YACnF,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,IAAI,UAAU,EAAE,CAAC,IAAI,iBAAiB,EAAE,CAAC;QAC9F,CAAC;IACF,CAAC;IACD,OAAO,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC5B,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;QAClB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;;YAChF,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,IAAI,gBAAgB,EAAE,CAAC;IAChF,CAAC;IACD,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;QACjB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;YAC1C,yEAAyE;YACzE,8EAA8E;YAC9E,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;YACpC,IAAI,EAAE,CAAC,OAAO,KAAK,IAAI;gBAAE,gBAAgB,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;QAC3F,CAAC;aAAM,CAAC;YACP,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,IAAI,gBAAgB,EAAE,CAAC;QAC3E,CAAC;IACF,CAAC;IAED,MAAM,QAAQ,GAAG,wBAAwB,CAAC,OAAO,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;IACrE,IAAI,QAAQ;QAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;IAE9D,+EAA+E;IAC/E,qEAAqE;IACrE,6EAA6E;IAC7E,4DAA4D;IAC5D,OAAO;QACN,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE;YACL,eAAe,EAAE,CAAC,GAAG,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,EAAE,GAAG,KAAK,CAAC;YAC5D,gBAAgB;SAChB;KACD,CAAC;AACH,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,wBAAwB,CAChC,OAAoB,EACpB,KAAmB,EACnB,SAAsC;IAEtC,MAAM,OAAO,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,SAAS,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAC/C,IAAI,SAAS,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC;QACzC,OAAO,4BAA4B,SAAS,CAAC,MAAM,MAAM,OAAO,CAAC,MAAM,EAAE,CAAC;IAC3E,CAAC;IACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACnD,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAC9C,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QACtF,IAAI,OAAO,KAAK,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YAC1C,OAAO,sBAAsB,CAAC,KAAK,MAAM,CAAC,IAAI,QAAQ,KAAK,CAAC,IAAI,GAAG,CAAC;QACrE,CAAC;QACD,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;YACxC,OAAO,sBAAsB,CAAC,KAAK,MAAM,CAAC,IAAI,UAAU,MAAM,CAAC,WAAW,CAAC,IAAI,MAAM,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;QAC/G,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;YACjE,OAAO,sBAAsB,CAAC,YAAY,CAAC;QAC5C,CAAC;QACD,MAAM,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,IAAI,QAAQ,CAAC;QACvE,MAAM,MAAM,GAAG,KAAK,CAAC,SAAS,IAAI,QAAQ,CAAC;QAC3C,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;YACxB,OAAO,sBAAsB,CAAC,cAAc,OAAO,MAAM,MAAM,EAAE,CAAC;QACnE,CAAC;IACF,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED;;;;;;GAMG;AACH,SAAS,iBAAiB,CAAC,EAAmB;IAC7C,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;QACjB,KAAK,QAAQ;YACZ,0EAA0E;YAC1E,iEAAiE;YACjE,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,eAAe,EAAE,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;QACrI,KAAK,KAAK,CAAC,CAAC,CAAC;YACZ,2EAA2E;YAC3E,2EAA2E;YAC3E,2EAA2E;YAC3E,qDAAqD;YACrD,MAAM,QAAQ,GAAiB,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC;YACpH,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,gBAAgB,CAAC,QAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;QAClF,CAAC;QACD,KAAK,QAAQ;YACZ,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,UAAU,EAAE,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,CAAC,WAAW,EAAE,CAAC;QAClF,KAAK,WAAW;YACf,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,UAAU,EAAE,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,EAAE,CAAC,SAAS,EAAE,CAAC;QACjF,KAAK,eAAe;YACnB,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,UAAU,EAAE,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;QACxE,KAAK,gBAAgB;YACpB,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,UAAU,EAAE,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;QACvE,KAAK,MAAM;YACV,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;IACrD,CAAC;AACF,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,mBAAmB,CAAC,YAAyB,EAAE,MAA6B;IACpF,OAAO,EAAE,GAAG,YAAY,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;AAC9E,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AACH,SAAS,sBAAsB,CAAC,IAAiB,EAAE,KAAmB;IACrE,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1E,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;QACtC,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QAClD,IAAI,CAAC,MAAM;YAAE,OAAO,GAAG,CAAC;QACxB,IAAI,kBAAkB,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,uBAAuB,CAAC,GAAG,EAAE,MAAM,CAAC;YAAE,OAAO,GAAG,CAAC;QACxF,OAAO,GAAG,IAAI,CAAC;QACf,OAAO,EAAE,GAAG,GAAG,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC;IACjF,CAAC,CAAC,CAAC;IACH,OAAO,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACrD,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,yBAAyB,CAAC,UAAkB,EAAE,IAAY,EAAE,MAAc;IAClF,OAAO,IAAI,YAAY,CACtB,kEAAkE,UAAU,IAAI,IAAI,MAAM,MAAM,KAAK;UAClG,sEAAsE,EACzE,UAAU,CAAC,KAAK,CAChB,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CACnC,EAAY,EACZ,EAAyB,EACzB,KAAmB;IAEnB,MAAM,cAAc,GAAG,sBAAsB,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IACzD,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;QACjC,MAAM,yBAAyB,CAAC,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;IAChF,CAAC;IACD,OAAO,qBAAqB,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC;AAClE,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,KAAK,UAAU,qBAAqB,CACnC,EAAY,EACZ,EAAyB,EACzB,KAAmB,EACnB,IAAiB;IAEjB,MAAM,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC;IAC5B,MAAM,MAAM,GAAG,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;IACjD,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;IACzC,IAAI,CAAC,OAAO,EAAE,CAAC;QACd,MAAM,IAAI,YAAY,CACrB,qCAAqC,EAAE,CAAC,IAAI,4BAA4B,EACxE,UAAU,CAAC,QAAQ,CACnB,CAAC;IACH,CAAC;IACD,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAC1C,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;QACxB,MAAM,yBAAyB,CAAC,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,EACrD,uBAAuB,OAAO,CAAC,cAAc,mCAAmC,CAAC,CAAC;IACpF,CAAC;IAED,kFAAkF;IAClF,gFAAgF;IAChF,mDAAmD;IACnD,IAAI,OAAO,GAAgB,OAAO,CAAC;IACnC,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;QACvC,OAAO,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,EAAE,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC;IACtF,CAAC;IAED,iFAAiF;IACjF,+EAA+E;IAC/E,gFAAgF;IAChF,EAAE,CAAC,UAAU,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;IAC5C,EAAE,CAAC,UAAU,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC;IAChD,EAAE,CAAC,UAAU,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;IACxC,EAAE,CAAC,UAAU,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC;IAChD,IAAI,IAAI,GAA0B,mBAAmB,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IACnE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAEtB,6EAA6E;IAC7E,8EAA8E;IAC9E,yEAAyE;IACzE,iEAAiE;IACjE,MAAM,cAAc,CAAC,EAAE,EAAE,IAAI,EAAE,sBAAsB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;IAEpE,kFAAkF;IAClF,6EAA6E;IAC7E,+EAA+E;IAC/E,gFAAgF;IAChF,iFAAiF;IACjF,8EAA8E;IAC9E,6EAA6E;IAC7E,gFAAgF;IAChF,0DAA0D;IAC1D,EAAE;IACF,+EAA+E;IAC/E,8EAA8E;IAC9E,+EAA+E;IAC/E,4EAA4E;IAC5E,8EAA8E;IAC9E,+EAA+E;IAC/E,2EAA2E;IAC3E,0EAA0E;IAC1E,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxC,OAAO,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,EAAE,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC;QACrF,IAAI,GAAG,mBAAmB,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACxC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACvB,CAAC;IAED,iFAAiF;IACjF,iFAAiF;IACjF,2DAA2D;IAC3D,EAAE,CAAC,iBAAiB,EAAE,CAAC,YAAY,CAAC;QACnC,IAAI,EAAE,gBAAgB;QACtB,UAAU,EAAE,EAAE,CAAC,UAAU;QACzB,UAAU,EAAE,EAAE,CAAC,IAAI;QACnB,SAAS,EAAE,OAAO;QAClB,SAAS,EAAE,IAAI;KACf,CAAC,CAAC;IACH,OAAO,IAAI,CAAC;AACb,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAAC,EAAY,EAAE,aAA0B;IAC1E,MAAM,MAAM,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAC;IAChD,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;QAC5B,MAAM,IAAI,YAAY,CACrB,oCAAoC,aAAa,CAAC,IAAI,uBAAuB;cAC1E,IAAI,aAAa,CAAC,cAAc,yDAAyD,EAC5F,UAAU,CAAC,QAAQ,CACnB,CAAC;IACH,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,CAAC,cAAc,CAAC,EAAE,EAAE,aAAa,CAAC,UAAU,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC;IACrF,IAAI,CAAC,IAAI,EAAE,CAAC;QACX,MAAM,IAAI,YAAY,CACrB,+BAA+B,aAAa,CAAC,UAAU,IAAI,aAAa,CAAC,IAAI,GAAG,EAChF,UAAU,CAAC,QAAQ,CACnB,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,qBAAqB,CAAC,EAAY,EAAE,aAA0B;IAC7E,MAAM,MAAM,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAC;IAChD,OAAO,MAAM,CAAC,cAAc,EAAE,CAAC,EAAE,EAAE,aAAa,CAAC,UAAU,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC;AAClF,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,4BAA4B,CAAC,EAAY,EAAE,EAAyB,EAAE,OAAe;IACpG,yEAAyE;IACzE,4EAA4E;IAC5E,yEAAyE;IACzE,MAAM,IAAI,GAAG,EAAE,CAAC,aAAa,CAAC,qCAAqC,CAClE,GAAG,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CAC9E,CAAC;IACF,IAAI,CAAC,IAAI;QAAE,OAAO;IAClB,MAAM,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC;IAC5B,KAAK,MAAM,SAAS,IAAI,EAAE,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;QACpD,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACnC,MAAM,UAAU,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QAC/D,MAAM,SAAS,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAClE,MAAM,KAAK,GAAG,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;QACjD,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,iBAAiB;YAAE,SAAS;QACjD,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;YAC1C,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;YAClD,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBACnB,EAAE,CAAC,UAAU,CAAC,MAAM,GAAG,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,EAAE,cAAc,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;gBACxG,+DAA+D;gBAC/D,EAAE,CAAC,qBAAqB,GAAG,EAAE,CAAC,IAAI,CAAC;gBACnC,OAAO,CAAC,4DAA4D;YACrE,CAAC;QACF,CAAC;IACF,CAAC;AACF,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,8BAA8B,CAAC,EAAY,EAAE,EAAyB;IACrF,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM;QAAE,OAAO;IAClC,MAAM,KAAK,GAAG,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACzG,IAAI,CAAC,KAAK,EAAE,iBAAiB;QAAE,OAAO;IACtC,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1C,IAAI,EAAE,CAAC,qBAAqB,KAAK,EAAE,CAAC,IAAI;YAAE,EAAE,CAAC,qBAAqB,GAAG,SAAS,CAAC;IAChF,CAAC;AACF,CAAC;AAED;;kCAEkC;AAClC,MAAM,UAAU,cAAc,CAAC,EAAY,EAAE,UAAkB,EAAE,MAAc,EAAE,OAAe;IAC/F,IAAI,IAAoC,CAAC;IACzC,IAAI,CAAC;QACJ,0EAA0E;QAC1E,wEAAwE;QACxE,wEAAwE;QACxE,IAAI,GAAG,EAAE,CAAC,aAAa,CAAC,qCAAqC,CAC5D,GAAG,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CAC3E,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACZ,MAAM,OAAO,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC3D,MAAM,IAAI,YAAY,CACrB,sBAAsB,MAAM,4EAA4E,OAAO,GAAG,EAClH,UAAU,CAAC,KAAK,EAChB,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAClC,CAAC;IACH,CAAC;IACD,IAAI,CAAC,IAAI,EAAE,CAAC;QACX,MAAM,IAAI,YAAY,CACrB,sBAAsB,MAAM,yEAAyE,EACrG,UAAU,CAAC,KAAK,CAChB,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED,iFAAiF;AAEjF;;;;;;;;GAQG;AACH,MAAM,UAAU,8BAA8B,CAAC,EAAY;IAC1D,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;IAC9B,KAAK,MAAM,EAAE,IAAI,EAAE,CAAC,aAAa,CAAC,sBAAsB,EAAE,EAAE,CAAC;QAC5D,IAAI,EAAE,CAAC,UAAU,CAAC,KAAK;YAAE,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;IAClD,CAAC;IACD,OAAO,GAAG,CAAC;AACZ,CAAC;AAED,SAAS,UAAU,CAAC,EAAsD;IACzE,OAAO,GAAG,EAAE,CAAC,UAAU,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AACpD,CAAC;AAED;+CAC+C;AAC/C,SAAS,kBAAkB,CAAC,MAAc;IACzC,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;AACpE,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,KAAK,UAAU,uCAAuC,CAC5D,EAAY,EACZ,MAAc,EACd,QAA6B,EAC7B,MAAyB;IAEzB,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;IACpC,MAAM,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;IACpD,MAAM,OAAO,GAAG,GAAG,WAAW,IAAI,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;IAC1D,MAAM,OAAO,GAAG,GAAG,WAAW,IAAI,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;IAC1D,KAAK,MAAM,EAAE,IAAI,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7C,IAAI,CAAC;YACJ,MAAM,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC;YACxB,sEAAsE;YACtE,wEAAwE;YACxE,uEAAuE;YACvE,MAAM,WAAW,GAAG,gBAAgB,CAAC,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YAC1D,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAAE,SAAS;YAChE,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM;mBACnB,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,KAAK,WAAW;mBACjD,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC,WAAW,EAAE;gBAC7D,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE;gBACrC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YACZ,MAAM,4BAA4B,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;gBAClD,YAAY,EAAE,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACpE,MAAM;aACN,EAAE,QAAQ,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC;QACxC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACZ,qCAAqC,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QAC1D,CAAC;IACF,CAAC;AACF,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,KAAK,UAAU,wCAAwC,CAC7D,EAAY,EACZ,MAAc,EACd,SAAiB,EACjB,MAAc,EACd,MAAc,EACd,QAA6B,EAC7B,OAAyB,EACzB,SAAiB,EACjB,qBAA4C;IAE5C,KAAK,MAAM,EAAE,IAAI,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7C,IAAI,CAAC;YACJ,MAAM,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC;YACxB,8EAA8E;YAC9E,0EAA0E;YAC1E,qDAAqD;YACrD,MAAM,WAAW,GAAG,iBAAiB,CAAC,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,qBAAqB,CAAC,CAAC;YACjI,IAAI,CAAC,WAAW;gBAAE,SAAS;YAC3B,MAAM,4BAA4B,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAC3F,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACZ,qCAAqC,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QAC1D,CAAC;IACF,CAAC;AACF,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,KAAK,UAAU,4BAA4B,CAC1C,EAAY,EACZ,MAAc,EACd,EAAyB,EACzB,SAAoE,EACpE,QAA6B,EAC7B,cAAuB;IAEvB,MAAM,WAAW,GAAG,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;IACjD,MAAM,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC;IACxB,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACzC,IAAI,SAAS,CAAC,YAAY;QAAE,CAAC,CAAC,YAAY,GAAG,SAAS,CAAC,YAAY,CAAC;IACpE,IAAI,QAAQ,IAAI,SAAS;QAAE,CAAC,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;IACvD,0EAA0E;IAC1E,4EAA4E;IAC5E,6EAA6E;IAC7E,gFAAgF;IAChF,gFAAgF;IAChF,CAAC,CAAC,QAAQ,GAAG,eAAe,CAAC,+BAA+B,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;IAEtF,IAAI,CAAC,WAAW,EAAE,CAAC;QAClB,2EAA2E;QAC3E,0DAA0D;QAC1D,MAAM,2BAA2B,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAC7F,CAAC;IACD,yEAAyE;IACzE,4EAA4E;IAC5E,0DAA0D;IAC1D,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IAC5C,EAAE,CAAC,aAAa,CAAC,iBAAiB,EAAE,CAAC,YAAY,CAAC;QACjD,IAAI,EAAE,4BAA4B;QAClC,UAAU,EAAE,EAAE,CAAC,UAAU;QACzB,UAAU,EAAE,EAAE,CAAC,IAAI;QACnB,SAAS,EAAE,EAAE;QACb,SAAS,EAAE,IAAI;KACf,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,KAAK,UAAU,2BAA2B,CACzC,EAAY,EACZ,MAAc,EACd,EAAyB,EACzB,YAAwD;IAExD,IAAI,YAAY,EAAE,CAAC;QAClB,MAAM,2BAA2B,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,YAAY,CAAC,OAAO,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC;IAC7F,CAAC;IACD,4EAA4E;IAC5E,gFAAgF;IAChF,6EAA6E;IAC7E,+DAA+D;IAC/D,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;IACtC,EAAE,CAAC,wBAAwB,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACjE,EAAE,CAAC,UAAU,CAAC,KAAK,GAAG,KAAK,CAAC;AAC7B,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0DG;AACH,MAAM,CAAC,KAAK,UAAU,kCAAkC,CACvD,EAAY,EACZ,QAA6B;IAE7B,KAAK,MAAM,EAAE,IAAI,EAAE,CAAC,aAAa,CAAC,sBAAsB,EAAE,EAAE,CAAC;QAC5D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,IAAI,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YAAE,SAAS;QACnE,IAAI,CAAC;YACJ,MAAM,MAAM,GAAG,EAAE,CAAC,aAAa,CAAC,eAAe,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;YAC/D,MAAM,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC;YACxB,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YACzC,mEAAmE;YACnE,qEAAqE;YACrE,yBAAyB;YACzB,MAAM,KAAK,GAAG,kBAAkB,CAAC,EAAE,EAAE,EAAE,CAAC,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;YACxE,6EAA6E;YAC7E,6EAA6E;YAC7E,4EAA4E;YAC5E,4EAA4E;YAC5E,mEAAmE;YACnE,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,YAAY,EAAE,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC3D,GAAG,CAAC,gIAAgI,EACnI,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;gBACzB,SAAS;YACV,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;YACzC,IAAI,CAAC,OAAO,EAAE,CAAC;gBACd,MAAM,IAAI,YAAY,CACrB,qCAAqC,EAAE,CAAC,IAAI,4BAA4B,EACxE,UAAU,CAAC,QAAQ,CACnB,CAAC;YACH,CAAC;YACD,MAAM,QAAQ,GAAG,4BAA4B,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC9D,IAAI,QAAQ,EAAE,CAAC;gBACd,GAAG,CAAC,uGAAuG,EAC1G,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;gBACnC,SAAS;YACV,CAAC;YACD,MAAM,2BAA2B,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QACvE,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACZ,GAAG,CAAC,8EAA8E,EACjF,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QACtE,CAAC;IACF,CAAC;AACF,CAAC;AAED;yEACyE;AACzE,SAAS,gBAAgB,CAAC,CAAwB,EAAE,CAAwB;IAC3E,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IACxC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;IACvB,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,KAAK,UAAU,2BAA2B,CACzC,EAAY,EACZ,MAAc,EACd,EAAyB,EACzB,OAAe,EACf,eAA8B;IAE9B,MAAM,KAAK,GAAG,eAAe,IAAI,kBAAkB,CAAC,EAAE,EAAE,EAAE,CAAC,UAAU,EAAE,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IACvG,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;IACzC,IAAI,CAAC,OAAO,EAAE,CAAC;QACd,MAAM,IAAI,YAAY,CACrB,qCAAqC,EAAE,CAAC,IAAI,0CAA0C,EACtF,UAAU,CAAC,QAAQ,CACnB,CAAC;IACH,CAAC;IACD,MAAM,QAAQ,GAAG,4BAA4B,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC9D,IAAI,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,YAAY,CACrB,sBAAsB,EAAE,CAAC,UAAU,IAAI,EAAE,CAAC,IAAI,qGAAqG,QAAQ,EAAE,EAC7J,UAAU,CAAC,QAAQ,CACnB,CAAC;IACH,CAAC;IACD,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAC1C,IAAI,OAAO,GAAG,OAAO,CAAC;IACtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/C,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACnC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACtC,IAAI,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC,WAAW,EAAE;YAAE,SAAS;QACnE,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YACxB,MAAM,IAAI,YAAY,CACrB,6BAA6B,OAAO,CAAC,IAAI,gCAAgC,EACzE,UAAU,CAAC,WAAW,CACtB,CAAC;QACH,CAAC;QACD,OAAO,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,EAAE;YAClE,IAAI,EAAE,cAAc;YACpB,OAAO,EAAE,OAAO,CAAC,IAAI;YACrB,OAAO;YACP,eAAe,EAAE,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC;SACnD,CAAC,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACzB,0EAA0E;QAC1E,4EAA4E;QAC5E,8CAA8C;QAC9C,MAAM,OAAO,GAAgB,mBAAmB,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAC9D,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzB,EAAE,CAAC,aAAa,CAAC,iBAAiB,EAAE,CAAC,YAAY,CAAC;YACjD,IAAI,EAAE,gBAAgB;YACtB,UAAU,EAAE,EAAE,CAAC,UAAU;YACzB,UAAU,EAAE,OAAO,CAAC,IAAI;YACxB,SAAS,EAAE,OAAO;YAClB,SAAS,EAAE,OAAO;SAClB,CAAC,CAAC;IACJ,CAAC;AACF,CAAC;AAED;;oEAEoE;AACpE,SAAS,gBAAgB,CAAC,GAAiB,EAAE,OAAe;IAC3D,MAAM,WAAW,GAAiC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IACzG,IAAI,GAAG,CAAC,UAAU;QAAE,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;IACzF,IAAI,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,SAAS,KAAK,QAAQ;QAAE,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;IACjH,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC;AACvE,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,qCAAqC,CAC7C,EAAY,EACZ,MAAc,EACd,EAAyB,EACzB,KAAc;IAEd,GAAG,CAAC,6EAA6E,EAChF,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACjF,6EAA6E;IAC7E,oEAAoE;IACpE,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;IACtC,EAAE,CAAC,yBAAyB,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AACnE,CAAC"}
@@ -1,5 +1,7 @@
1
1
  import type { ParameterReferenceNode } from '../../planner/nodes/reference.js';
2
2
  import type { Instruction } from '../types.js';
3
3
  import type { EmissionContext } from '../emission-context.js';
4
- export declare function emitParameterReference(plan: ParameterReferenceNode, _ctx: EmissionContext): Instruction;
4
+ import { type ScalarOpSpec } from './scalar-op.js';
5
+ export declare function buildParameterSpec(plan: ParameterReferenceNode): ScalarOpSpec;
6
+ export declare function emitParameterReference(plan: ParameterReferenceNode, ctx: EmissionContext): Instruction;
5
7
  //# sourceMappingURL=parameter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"parameter.d.ts","sourceRoot":"","sources":["../../../../src/runtime/emit/parameter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,KAAK,EAAE,WAAW,EAAkB,MAAM,aAAa,CAAC;AAI/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,eAAe,GAAG,WAAW,CA+BvG"}
1
+ {"version":3,"file":"parameter.d.ts","sourceRoot":"","sources":["../../../../src/runtime/emit/parameter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,KAAK,EAAE,WAAW,EAAkB,MAAM,aAAa,CAAC;AAI/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAgB,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEjE,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,sBAAsB,GAAG,YAAY,CAgC7E;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,sBAAsB,EAAE,GAAG,EAAE,eAAe,GAAG,WAAW,CAEtG"}
@@ -1,6 +1,8 @@
1
1
  import { QuereusError } from '../../common/errors.js';
2
2
  import { StatusCode } from '../../common/types.js';
3
- export function emitParameterReference(plan, _ctx) {
3
+ import { emitScalarOp } from './scalar-op.js';
4
+ export function buildParameterSpec(plan) {
5
+ // The throw stays inside the body: the binding is not known at emit time.
4
6
  function run(ctx) {
5
7
  const identifier = plan.nameOrIndex; // This comes from the ParameterReferenceNode instance
6
8
  const params = ctx.params;
@@ -27,9 +29,12 @@ export function emitParameterReference(plan, _ctx) {
27
29
  }
28
30
  }
29
31
  return {
30
- params: [],
32
+ operands: [],
31
33
  run,
32
34
  note: `param(${typeof plan.nameOrIndex === 'string' ? plan.nameOrIndex : '#' + plan.nameOrIndex})`
33
35
  };
34
36
  }
37
+ export function emitParameterReference(plan, ctx) {
38
+ return emitScalarOp(buildParameterSpec(plan), ctx);
39
+ }
35
40
  //# sourceMappingURL=parameter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"parameter.js","sourceRoot":"","sources":["../../../../src/runtime/emit/parameter.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAInD,MAAM,UAAU,sBAAsB,CAAC,IAA4B,EAAE,IAAqB;IACzF,SAAS,GAAG,CAAC,GAAmB;QAC/B,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,sDAAsD;QAC3F,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;QAE1B,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;YACpC,+DAA+D;YAC/D,yEAAyE;YACzE,MAAM,GAAG,GAAG,UAAU,CAAC;YACvB,IAAI,CAAC,CAAC,GAAG,IAAI,MAAM,CAAC,EAAE,CAAC;gBACtB,MAAM,IAAI,YAAY,CAAC,mBAAmB,UAAU,oBAAoB,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;YAC7F,CAAC;YACD,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;QACpB,CAAC;aAAM,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;YAC3C,mCAAmC;YACnC,MAAM,GAAG,GAAG,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;YAC9E,IAAI,CAAC,CAAC,GAAG,IAAI,MAAM,CAAC,EAAE,CAAC;gBACtB,MAAM,IAAI,YAAY,CAAC,wBAAwB,GAAG,cAAc,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;YACxF,CAAC;YACD,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;QACpB,CAAC;aAAM,CAAC;YACP,2DAA2D;YAC3D,MAAM,IAAI,YAAY,CAAC,oCAAoC,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;QACnF,CAAC;IACF,CAAC;IAED,OAAO;QACN,MAAM,EAAE,EAAE;QACV,GAAG;QACH,IAAI,EAAE,SAAS,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,WAAW,GAAG;KAClG,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"parameter.js","sourceRoot":"","sources":["../../../../src/runtime/emit/parameter.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAGnD,OAAO,EAAE,YAAY,EAAqB,MAAM,gBAAgB,CAAC;AAEjE,MAAM,UAAU,kBAAkB,CAAC,IAA4B;IAC9D,0EAA0E;IAC1E,SAAS,GAAG,CAAC,GAAmB;QAC/B,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,sDAAsD;QAC3F,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;QAE1B,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;YACpC,+DAA+D;YAC/D,yEAAyE;YACzE,MAAM,GAAG,GAAG,UAAU,CAAC;YACvB,IAAI,CAAC,CAAC,GAAG,IAAI,MAAM,CAAC,EAAE,CAAC;gBACtB,MAAM,IAAI,YAAY,CAAC,mBAAmB,UAAU,oBAAoB,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;YAC7F,CAAC;YACD,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;QACpB,CAAC;aAAM,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;YAC3C,mCAAmC;YACnC,MAAM,GAAG,GAAG,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;YAC9E,IAAI,CAAC,CAAC,GAAG,IAAI,MAAM,CAAC,EAAE,CAAC;gBACtB,MAAM,IAAI,YAAY,CAAC,wBAAwB,GAAG,cAAc,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;YACxF,CAAC;YACD,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;QACpB,CAAC;aAAM,CAAC;YACP,2DAA2D;YAC3D,MAAM,IAAI,YAAY,CAAC,oCAAoC,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;QACnF,CAAC;IACF,CAAC;IAED,OAAO;QACN,QAAQ,EAAE,EAAE;QACZ,GAAG;QACH,IAAI,EAAE,SAAS,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,WAAW,GAAG;KAClG,CAAC;AACH,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,IAA4B,EAAE,GAAoB;IACxF,OAAO,YAAY,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;AACpD,CAAC"}