@quereus/quereus 4.6.0 → 4.7.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 (535) hide show
  1. package/README.md +2 -2
  2. package/dist/src/common/errors.d.ts +17 -0
  3. package/dist/src/common/errors.d.ts.map +1 -1
  4. package/dist/src/common/errors.js +21 -0
  5. package/dist/src/common/errors.js.map +1 -1
  6. package/dist/src/core/database-assertions.d.ts +4 -3
  7. package/dist/src/core/database-assertions.d.ts.map +1 -1
  8. package/dist/src/core/database-assertions.js +44 -14
  9. package/dist/src/core/database-assertions.js.map +1 -1
  10. package/dist/src/core/database-events.d.ts +62 -0
  11. package/dist/src/core/database-events.d.ts.map +1 -1
  12. package/dist/src/core/database-events.js +88 -2
  13. package/dist/src/core/database-events.js.map +1 -1
  14. package/dist/src/core/database-internal.d.ts +5 -2
  15. package/dist/src/core/database-internal.d.ts.map +1 -1
  16. package/dist/src/core/database-materialized-views-plan-builders.d.ts.map +1 -1
  17. package/dist/src/core/database-materialized-views-plan-builders.js +4 -2
  18. package/dist/src/core/database-materialized-views-plan-builders.js.map +1 -1
  19. package/dist/src/core/database-materialized-views-plans.d.ts +12 -2
  20. package/dist/src/core/database-materialized-views-plans.d.ts.map +1 -1
  21. package/dist/src/core/database-materialized-views.d.ts +46 -0
  22. package/dist/src/core/database-materialized-views.d.ts.map +1 -1
  23. package/dist/src/core/database-materialized-views.js +75 -4
  24. package/dist/src/core/database-materialized-views.js.map +1 -1
  25. package/dist/src/core/database.d.ts +9 -1
  26. package/dist/src/core/database.d.ts.map +1 -1
  27. package/dist/src/core/database.js +36 -10
  28. package/dist/src/core/database.js.map +1 -1
  29. package/dist/src/core/derived-row-validator.d.ts.map +1 -1
  30. package/dist/src/core/derived-row-validator.js +7 -1
  31. package/dist/src/core/derived-row-validator.js.map +1 -1
  32. package/dist/src/core/statement.d.ts.map +1 -1
  33. package/dist/src/core/statement.js +15 -5
  34. package/dist/src/core/statement.js.map +1 -1
  35. package/dist/src/emit/ast-stringify.d.ts +18 -2
  36. package/dist/src/emit/ast-stringify.d.ts.map +1 -1
  37. package/dist/src/emit/ast-stringify.js +22 -4
  38. package/dist/src/emit/ast-stringify.js.map +1 -1
  39. package/dist/src/func/builtins/explain.d.ts.map +1 -1
  40. package/dist/src/func/builtins/explain.js +19 -5
  41. package/dist/src/func/builtins/explain.js.map +1 -1
  42. package/dist/src/func/builtins/scalar.d.ts.map +1 -1
  43. package/dist/src/func/builtins/scalar.js +24 -20
  44. package/dist/src/func/builtins/scalar.js.map +1 -1
  45. package/dist/src/func/builtins/schema.d.ts.map +1 -1
  46. package/dist/src/func/builtins/schema.js +32 -5
  47. package/dist/src/func/builtins/schema.js.map +1 -1
  48. package/dist/src/index.d.ts +4 -4
  49. package/dist/src/index.d.ts.map +1 -1
  50. package/dist/src/index.js +4 -4
  51. package/dist/src/index.js.map +1 -1
  52. package/dist/src/parser/ast.d.ts +58 -1
  53. package/dist/src/parser/ast.d.ts.map +1 -1
  54. package/dist/src/parser/parser.js +1 -1
  55. package/dist/src/parser/parser.js.map +1 -1
  56. package/dist/src/parser/utils.d.ts +13 -1
  57. package/dist/src/parser/utils.d.ts.map +1 -1
  58. package/dist/src/parser/utils.js +14 -0
  59. package/dist/src/parser/utils.js.map +1 -1
  60. package/dist/src/planner/analysis/assertion-classifier.d.ts.map +1 -1
  61. package/dist/src/planner/analysis/assertion-classifier.js +7 -2
  62. package/dist/src/planner/analysis/assertion-classifier.js.map +1 -1
  63. package/dist/src/planner/analysis/assertion-hoist-cache.d.ts.map +1 -1
  64. package/dist/src/planner/analysis/assertion-hoist-cache.js +5 -0
  65. package/dist/src/planner/analysis/assertion-hoist-cache.js.map +1 -1
  66. package/dist/src/planner/analysis/change-scope.d.ts +11 -3
  67. package/dist/src/planner/analysis/change-scope.d.ts.map +1 -1
  68. package/dist/src/planner/analysis/change-scope.js +5 -4
  69. package/dist/src/planner/analysis/change-scope.js.map +1 -1
  70. package/dist/src/planner/analysis/coverage-prover.d.ts.map +1 -1
  71. package/dist/src/planner/analysis/coverage-prover.js +13 -5
  72. package/dist/src/planner/analysis/coverage-prover.js.map +1 -1
  73. package/dist/src/planner/analysis/equi-correlation.d.ts +6 -1
  74. package/dist/src/planner/analysis/equi-correlation.d.ts.map +1 -1
  75. package/dist/src/planner/analysis/equi-correlation.js +8 -1
  76. package/dist/src/planner/analysis/equi-correlation.js.map +1 -1
  77. package/dist/src/planner/analysis/predicate-dependencies.d.ts +34 -0
  78. package/dist/src/planner/analysis/predicate-dependencies.d.ts.map +1 -0
  79. package/dist/src/planner/analysis/predicate-dependencies.js +60 -0
  80. package/dist/src/planner/analysis/predicate-dependencies.js.map +1 -0
  81. package/dist/src/planner/analysis/query-rewrite-matcher.d.ts +1 -1
  82. package/dist/src/planner/analysis/query-rewrite-matcher.d.ts.map +1 -1
  83. package/dist/src/planner/analysis/query-rewrite-matcher.js +0 -26
  84. package/dist/src/planner/analysis/query-rewrite-matcher.js.map +1 -1
  85. package/dist/src/planner/building/alter-table.d.ts.map +1 -1
  86. package/dist/src/planner/building/alter-table.js +53 -17
  87. package/dist/src/planner/building/alter-table.js.map +1 -1
  88. package/dist/src/planner/building/constraint-builder.d.ts.map +1 -1
  89. package/dist/src/planner/building/constraint-builder.js +9 -5
  90. package/dist/src/planner/building/constraint-builder.js.map +1 -1
  91. package/dist/src/planner/building/create-assertion.d.ts.map +1 -1
  92. package/dist/src/planner/building/create-assertion.js +72 -1
  93. package/dist/src/planner/building/create-assertion.js.map +1 -1
  94. package/dist/src/planner/building/create-view.d.ts +6 -1
  95. package/dist/src/planner/building/create-view.d.ts.map +1 -1
  96. package/dist/src/planner/building/create-view.js +12 -3
  97. package/dist/src/planner/building/create-view.js.map +1 -1
  98. package/dist/src/planner/building/ddl.d.ts.map +1 -1
  99. package/dist/src/planner/building/ddl.js +6 -2
  100. package/dist/src/planner/building/ddl.js.map +1 -1
  101. package/dist/src/planner/building/delete.d.ts.map +1 -1
  102. package/dist/src/planner/building/delete.js +23 -10
  103. package/dist/src/planner/building/delete.js.map +1 -1
  104. package/dist/src/planner/building/dml-target.d.ts.map +1 -1
  105. package/dist/src/planner/building/dml-target.js +4 -0
  106. package/dist/src/planner/building/dml-target.js.map +1 -1
  107. package/dist/src/planner/building/drop-assertion.d.ts.map +1 -1
  108. package/dist/src/planner/building/drop-assertion.js +3 -1
  109. package/dist/src/planner/building/drop-assertion.js.map +1 -1
  110. package/dist/src/planner/building/foreign-key-builder.d.ts.map +1 -1
  111. package/dist/src/planner/building/foreign-key-builder.js +7 -5
  112. package/dist/src/planner/building/foreign-key-builder.js.map +1 -1
  113. package/dist/src/planner/building/function-call.d.ts +35 -0
  114. package/dist/src/planner/building/function-call.d.ts.map +1 -1
  115. package/dist/src/planner/building/function-call.js +53 -40
  116. package/dist/src/planner/building/function-call.js.map +1 -1
  117. package/dist/src/planner/building/insert.d.ts.map +1 -1
  118. package/dist/src/planner/building/insert.js +185 -48
  119. package/dist/src/planner/building/insert.js.map +1 -1
  120. package/dist/src/planner/building/materialized-view.d.ts.map +1 -1
  121. package/dist/src/planner/building/materialized-view.js +3 -1
  122. package/dist/src/planner/building/materialized-view.js.map +1 -1
  123. package/dist/src/planner/building/schema-authored-context.d.ts +69 -0
  124. package/dist/src/planner/building/schema-authored-context.d.ts.map +1 -0
  125. package/dist/src/planner/building/schema-authored-context.js +75 -0
  126. package/dist/src/planner/building/schema-authored-context.js.map +1 -0
  127. package/dist/src/planner/building/schema-resolution.d.ts.map +1 -1
  128. package/dist/src/planner/building/schema-resolution.js +7 -4
  129. package/dist/src/planner/building/schema-resolution.js.map +1 -1
  130. package/dist/src/planner/building/select-aggregates.d.ts +187 -2
  131. package/dist/src/planner/building/select-aggregates.d.ts.map +1 -1
  132. package/dist/src/planner/building/select-aggregates.js +414 -81
  133. package/dist/src/planner/building/select-aggregates.js.map +1 -1
  134. package/dist/src/planner/building/select-compound.js +2 -2
  135. package/dist/src/planner/building/select-compound.js.map +1 -1
  136. package/dist/src/planner/building/select-context.d.ts +91 -0
  137. package/dist/src/planner/building/select-context.d.ts.map +1 -1
  138. package/dist/src/planner/building/select-context.js +113 -0
  139. package/dist/src/planner/building/select-context.js.map +1 -1
  140. package/dist/src/planner/building/select-modifiers.d.ts +10 -3
  141. package/dist/src/planner/building/select-modifiers.d.ts.map +1 -1
  142. package/dist/src/planner/building/select-modifiers.js +29 -8
  143. package/dist/src/planner/building/select-modifiers.js.map +1 -1
  144. package/dist/src/planner/building/select-ordinal.d.ts +64 -19
  145. package/dist/src/planner/building/select-ordinal.d.ts.map +1 -1
  146. package/dist/src/planner/building/select-ordinal.js +79 -30
  147. package/dist/src/planner/building/select-ordinal.js.map +1 -1
  148. package/dist/src/planner/building/select-projections.d.ts +1 -1
  149. package/dist/src/planner/building/select-projections.d.ts.map +1 -1
  150. package/dist/src/planner/building/select-projections.js +18 -11
  151. package/dist/src/planner/building/select-projections.js.map +1 -1
  152. package/dist/src/planner/building/select-window.d.ts +13 -3
  153. package/dist/src/planner/building/select-window.d.ts.map +1 -1
  154. package/dist/src/planner/building/select-window.js +142 -37
  155. package/dist/src/planner/building/select-window.js.map +1 -1
  156. package/dist/src/planner/building/select.d.ts.map +1 -1
  157. package/dist/src/planner/building/select.js +129 -59
  158. package/dist/src/planner/building/select.js.map +1 -1
  159. package/dist/src/planner/building/update.d.ts.map +1 -1
  160. package/dist/src/planner/building/update.js +27 -13
  161. package/dist/src/planner/building/update.js.map +1 -1
  162. package/dist/src/planner/building/view-mutation-builder.d.ts +1 -1
  163. package/dist/src/planner/building/view-mutation-builder.d.ts.map +1 -1
  164. package/dist/src/planner/building/view-mutation-builder.js +102 -8
  165. package/dist/src/planner/building/view-mutation-builder.js.map +1 -1
  166. package/dist/src/planner/building/with.d.ts.map +1 -1
  167. package/dist/src/planner/building/with.js +34 -4
  168. package/dist/src/planner/building/with.js.map +1 -1
  169. package/dist/src/planner/cache/correlation-detector.d.ts +15 -0
  170. package/dist/src/planner/cache/correlation-detector.d.ts.map +1 -1
  171. package/dist/src/planner/cache/correlation-detector.js +26 -0
  172. package/dist/src/planner/cache/correlation-detector.js.map +1 -1
  173. package/dist/src/planner/cache/materialization-advisory.d.ts +7 -0
  174. package/dist/src/planner/cache/materialization-advisory.d.ts.map +1 -1
  175. package/dist/src/planner/cache/materialization-advisory.js +12 -3
  176. package/dist/src/planner/cache/materialization-advisory.js.map +1 -1
  177. package/dist/src/planner/framework/characteristics.d.ts +9 -0
  178. package/dist/src/planner/framework/characteristics.d.ts.map +1 -1
  179. package/dist/src/planner/framework/characteristics.js.map +1 -1
  180. package/dist/src/planner/framework/pass.d.ts +2 -0
  181. package/dist/src/planner/framework/pass.d.ts.map +1 -1
  182. package/dist/src/planner/framework/pass.js +15 -0
  183. package/dist/src/planner/framework/pass.js.map +1 -1
  184. package/dist/src/planner/mutation/backward-body.d.ts.map +1 -1
  185. package/dist/src/planner/mutation/backward-body.js +4 -1
  186. package/dist/src/planner/mutation/backward-body.js.map +1 -1
  187. package/dist/src/planner/mutation/body-context.d.ts +23 -0
  188. package/dist/src/planner/mutation/body-context.d.ts.map +1 -0
  189. package/dist/src/planner/mutation/body-context.js +26 -0
  190. package/dist/src/planner/mutation/body-context.js.map +1 -0
  191. package/dist/src/planner/mutation/cte-flatten.js +15 -2
  192. package/dist/src/planner/mutation/cte-flatten.js.map +1 -1
  193. package/dist/src/planner/mutation/decomposition.d.ts +8 -0
  194. package/dist/src/planner/mutation/decomposition.d.ts.map +1 -1
  195. package/dist/src/planner/mutation/decomposition.js +8 -3
  196. package/dist/src/planner/mutation/decomposition.js.map +1 -1
  197. package/dist/src/planner/mutation/lens-enforcement.js +1 -1
  198. package/dist/src/planner/mutation/multi-source.d.ts +7 -0
  199. package/dist/src/planner/mutation/multi-source.d.ts.map +1 -1
  200. package/dist/src/planner/mutation/multi-source.js +5 -0
  201. package/dist/src/planner/mutation/multi-source.js.map +1 -1
  202. package/dist/src/planner/mutation/mutation-diagnostic.d.ts +1 -1
  203. package/dist/src/planner/mutation/mutation-diagnostic.d.ts.map +1 -1
  204. package/dist/src/planner/mutation/mutation-diagnostic.js.map +1 -1
  205. package/dist/src/planner/mutation/scope-transform.d.ts +32 -0
  206. package/dist/src/planner/mutation/scope-transform.d.ts.map +1 -1
  207. package/dist/src/planner/mutation/scope-transform.js +181 -33
  208. package/dist/src/planner/mutation/scope-transform.js.map +1 -1
  209. package/dist/src/planner/mutation/set-op.d.ts.map +1 -1
  210. package/dist/src/planner/mutation/set-op.js +66 -16
  211. package/dist/src/planner/mutation/set-op.js.map +1 -1
  212. package/dist/src/planner/mutation/single-source.d.ts.map +1 -1
  213. package/dist/src/planner/mutation/single-source.js +100 -24
  214. package/dist/src/planner/mutation/single-source.js.map +1 -1
  215. package/dist/src/planner/nodes/add-constraint-node.d.ts +15 -1
  216. package/dist/src/planner/nodes/add-constraint-node.d.ts.map +1 -1
  217. package/dist/src/planner/nodes/add-constraint-node.js +10 -1
  218. package/dist/src/planner/nodes/add-constraint-node.js.map +1 -1
  219. package/dist/src/planner/nodes/aggregate-node.d.ts +14 -5
  220. package/dist/src/planner/nodes/aggregate-node.d.ts.map +1 -1
  221. package/dist/src/planner/nodes/aggregate-node.js +28 -21
  222. package/dist/src/planner/nodes/aggregate-node.js.map +1 -1
  223. package/dist/src/planner/nodes/alter-table-node.d.ts +27 -2
  224. package/dist/src/planner/nodes/alter-table-node.d.ts.map +1 -1
  225. package/dist/src/planner/nodes/alter-table-node.js +49 -2
  226. package/dist/src/planner/nodes/alter-table-node.js.map +1 -1
  227. package/dist/src/planner/nodes/constraint-check-node.d.ts.map +1 -1
  228. package/dist/src/planner/nodes/constraint-check-node.js +17 -19
  229. package/dist/src/planner/nodes/constraint-check-node.js.map +1 -1
  230. package/dist/src/planner/nodes/create-assertion-node.d.ts +2 -1
  231. package/dist/src/planner/nodes/create-assertion-node.d.ts.map +1 -1
  232. package/dist/src/planner/nodes/create-assertion-node.js +5 -2
  233. package/dist/src/planner/nodes/create-assertion-node.js.map +1 -1
  234. package/dist/src/planner/nodes/cte-node.d.ts +19 -9
  235. package/dist/src/planner/nodes/cte-node.d.ts.map +1 -1
  236. package/dist/src/planner/nodes/cte-node.js +25 -9
  237. package/dist/src/planner/nodes/cte-node.js.map +1 -1
  238. package/dist/src/planner/nodes/delete-node.d.ts +20 -2
  239. package/dist/src/planner/nodes/delete-node.d.ts.map +1 -1
  240. package/dist/src/planner/nodes/delete-node.js +11 -2
  241. package/dist/src/planner/nodes/delete-node.js.map +1 -1
  242. package/dist/src/planner/nodes/dml-executor-node.d.ts +58 -1
  243. package/dist/src/planner/nodes/dml-executor-node.d.ts.map +1 -1
  244. package/dist/src/planner/nodes/dml-executor-node.js +107 -15
  245. package/dist/src/planner/nodes/dml-executor-node.js.map +1 -1
  246. package/dist/src/planner/nodes/drop-assertion-node.d.ts +2 -1
  247. package/dist/src/planner/nodes/drop-assertion-node.d.ts.map +1 -1
  248. package/dist/src/planner/nodes/drop-assertion-node.js +5 -2
  249. package/dist/src/planner/nodes/drop-assertion-node.js.map +1 -1
  250. package/dist/src/planner/nodes/filter.d.ts.map +1 -1
  251. package/dist/src/planner/nodes/filter.js +12 -6
  252. package/dist/src/planner/nodes/filter.js.map +1 -1
  253. package/dist/src/planner/nodes/hash-aggregate.d.ts +0 -5
  254. package/dist/src/planner/nodes/hash-aggregate.d.ts.map +1 -1
  255. package/dist/src/planner/nodes/hash-aggregate.js +17 -20
  256. package/dist/src/planner/nodes/hash-aggregate.js.map +1 -1
  257. package/dist/src/planner/nodes/insert-node.d.ts +19 -2
  258. package/dist/src/planner/nodes/insert-node.d.ts.map +1 -1
  259. package/dist/src/planner/nodes/insert-node.js +10 -2
  260. package/dist/src/planner/nodes/insert-node.js.map +1 -1
  261. package/dist/src/planner/nodes/key-set-semi-join-node.d.ts +42 -10
  262. package/dist/src/planner/nodes/key-set-semi-join-node.d.ts.map +1 -1
  263. package/dist/src/planner/nodes/key-set-semi-join-node.js +85 -16
  264. package/dist/src/planner/nodes/key-set-semi-join-node.js.map +1 -1
  265. package/dist/src/planner/nodes/lens-auxiliary-access-node.d.ts +5 -0
  266. package/dist/src/planner/nodes/lens-auxiliary-access-node.d.ts.map +1 -1
  267. package/dist/src/planner/nodes/lens-auxiliary-access-node.js.map +1 -1
  268. package/dist/src/planner/nodes/plan-node.d.ts +5 -0
  269. package/dist/src/planner/nodes/plan-node.d.ts.map +1 -1
  270. package/dist/src/planner/nodes/plan-node.js +12 -0
  271. package/dist/src/planner/nodes/plan-node.js.map +1 -1
  272. package/dist/src/planner/nodes/project-node.d.ts.map +1 -1
  273. package/dist/src/planner/nodes/project-node.js +16 -35
  274. package/dist/src/planner/nodes/project-node.js.map +1 -1
  275. package/dist/src/planner/nodes/retrieve-node.d.ts +16 -2
  276. package/dist/src/planner/nodes/retrieve-node.d.ts.map +1 -1
  277. package/dist/src/planner/nodes/retrieve-node.js +8 -1
  278. package/dist/src/planner/nodes/retrieve-node.js.map +1 -1
  279. package/dist/src/planner/nodes/returning-node.d.ts.map +1 -1
  280. package/dist/src/planner/nodes/returning-node.js +13 -32
  281. package/dist/src/planner/nodes/returning-node.js.map +1 -1
  282. package/dist/src/planner/nodes/stream-aggregate.d.ts +0 -5
  283. package/dist/src/planner/nodes/stream-aggregate.d.ts.map +1 -1
  284. package/dist/src/planner/nodes/stream-aggregate.js +18 -24
  285. package/dist/src/planner/nodes/stream-aggregate.js.map +1 -1
  286. package/dist/src/planner/nodes/table-access-nodes.d.ts +89 -1
  287. package/dist/src/planner/nodes/table-access-nodes.d.ts.map +1 -1
  288. package/dist/src/planner/nodes/table-access-nodes.js +64 -2
  289. package/dist/src/planner/nodes/table-access-nodes.js.map +1 -1
  290. package/dist/src/planner/nodes/update-node.d.ts +19 -2
  291. package/dist/src/planner/nodes/update-node.d.ts.map +1 -1
  292. package/dist/src/planner/nodes/update-node.js +10 -2
  293. package/dist/src/planner/nodes/update-node.js.map +1 -1
  294. package/dist/src/planner/optimizer.d.ts +18 -0
  295. package/dist/src/planner/optimizer.d.ts.map +1 -1
  296. package/dist/src/planner/optimizer.js +59 -10
  297. package/dist/src/planner/optimizer.js.map +1 -1
  298. package/dist/src/planner/planning-context.d.ts +24 -0
  299. package/dist/src/planner/planning-context.d.ts.map +1 -1
  300. package/dist/src/planner/planning-context.js.map +1 -1
  301. package/dist/src/planner/rules/access/rule-key-set-seek.d.ts +78 -20
  302. package/dist/src/planner/rules/access/rule-key-set-seek.d.ts.map +1 -1
  303. package/dist/src/planner/rules/access/rule-key-set-seek.js +297 -71
  304. package/dist/src/planner/rules/access/rule-key-set-seek.js.map +1 -1
  305. package/dist/src/planner/rules/access/rule-monotonic-range-access.d.ts.map +1 -1
  306. package/dist/src/planner/rules/access/rule-monotonic-range-access.js +2 -2
  307. package/dist/src/planner/rules/access/rule-monotonic-range-access.js.map +1 -1
  308. package/dist/src/planner/rules/access/rule-select-access-path.d.ts +11 -1
  309. package/dist/src/planner/rules/access/rule-select-access-path.d.ts.map +1 -1
  310. package/dist/src/planner/rules/access/rule-select-access-path.js +46 -2
  311. package/dist/src/planner/rules/access/rule-select-access-path.js.map +1 -1
  312. package/dist/src/planner/rules/aggregate/rule-groupby-fd-simplification.d.ts +7 -4
  313. package/dist/src/planner/rules/aggregate/rule-groupby-fd-simplification.d.ts.map +1 -1
  314. package/dist/src/planner/rules/aggregate/rule-groupby-fd-simplification.js +39 -5
  315. package/dist/src/planner/rules/aggregate/rule-groupby-fd-simplification.js.map +1 -1
  316. package/dist/src/planner/rules/cache/rule-cte-optimization.d.ts.map +1 -1
  317. package/dist/src/planner/rules/cache/rule-cte-optimization.js +6 -2
  318. package/dist/src/planner/rules/cache/rule-cte-optimization.js.map +1 -1
  319. package/dist/src/planner/rules/cache/rule-materialized-view-rewrite.js +10 -3
  320. package/dist/src/planner/rules/cache/rule-materialized-view-rewrite.js.map +1 -1
  321. package/dist/src/planner/rules/join/index-nested-loop.d.ts.map +1 -1
  322. package/dist/src/planner/rules/join/index-nested-loop.js +13 -7
  323. package/dist/src/planner/rules/join/index-nested-loop.js.map +1 -1
  324. package/dist/src/planner/rules/join/rule-fanout-lookup-join.d.ts +4 -0
  325. package/dist/src/planner/rules/join/rule-fanout-lookup-join.d.ts.map +1 -1
  326. package/dist/src/planner/rules/join/rule-fanout-lookup-join.js +50 -15
  327. package/dist/src/planner/rules/join/rule-fanout-lookup-join.js.map +1 -1
  328. package/dist/src/planner/rules/join/rule-join-elimination.d.ts +6 -0
  329. package/dist/src/planner/rules/join/rule-join-elimination.d.ts.map +1 -1
  330. package/dist/src/planner/rules/join/rule-join-elimination.js +25 -9
  331. package/dist/src/planner/rules/join/rule-join-elimination.js.map +1 -1
  332. package/dist/src/planner/rules/join/rule-join-key-inference.d.ts +7 -0
  333. package/dist/src/planner/rules/join/rule-join-key-inference.d.ts.map +1 -1
  334. package/dist/src/planner/rules/join/rule-join-key-inference.js +23 -11
  335. package/dist/src/planner/rules/join/rule-join-key-inference.js.map +1 -1
  336. package/dist/src/planner/rules/join/rule-join-physical-selection.d.ts +2 -2
  337. package/dist/src/planner/rules/join/rule-join-physical-selection.d.ts.map +1 -1
  338. package/dist/src/planner/rules/join/rule-join-physical-selection.js +46 -16
  339. package/dist/src/planner/rules/join/rule-join-physical-selection.js.map +1 -1
  340. package/dist/src/planner/rules/join/rule-monotonic-merge-join.d.ts +2 -0
  341. package/dist/src/planner/rules/join/rule-monotonic-merge-join.d.ts.map +1 -1
  342. package/dist/src/planner/rules/join/rule-monotonic-merge-join.js +14 -0
  343. package/dist/src/planner/rules/join/rule-monotonic-merge-join.js.map +1 -1
  344. package/dist/src/planner/rules/predicate/rule-aggregate-predicate-pushdown.d.ts +2 -2
  345. package/dist/src/planner/rules/predicate/rule-aggregate-predicate-pushdown.d.ts.map +1 -1
  346. package/dist/src/planner/rules/predicate/rule-aggregate-predicate-pushdown.js +19 -22
  347. package/dist/src/planner/rules/predicate/rule-aggregate-predicate-pushdown.js.map +1 -1
  348. package/dist/src/planner/rules/predicate/rule-filter-selectivity.d.ts +33 -19
  349. package/dist/src/planner/rules/predicate/rule-filter-selectivity.d.ts.map +1 -1
  350. package/dist/src/planner/rules/predicate/rule-filter-selectivity.js +37 -18
  351. package/dist/src/planner/rules/predicate/rule-filter-selectivity.js.map +1 -1
  352. package/dist/src/planner/rules/predicate/rule-join-predicate-pushdown.d.ts +6 -3
  353. package/dist/src/planner/rules/predicate/rule-join-predicate-pushdown.d.ts.map +1 -1
  354. package/dist/src/planner/rules/predicate/rule-join-predicate-pushdown.js +6 -3
  355. package/dist/src/planner/rules/predicate/rule-join-predicate-pushdown.js.map +1 -1
  356. package/dist/src/planner/rules/predicate/rule-predicate-pushdown.d.ts.map +1 -1
  357. package/dist/src/planner/rules/predicate/rule-predicate-pushdown.js +11 -21
  358. package/dist/src/planner/rules/predicate/rule-predicate-pushdown.js.map +1 -1
  359. package/dist/src/planner/rules/shared/access-leaf.d.ts +16 -3
  360. package/dist/src/planner/rules/shared/access-leaf.d.ts.map +1 -1
  361. package/dist/src/planner/rules/shared/access-leaf.js +21 -5
  362. package/dist/src/planner/rules/shared/access-leaf.js.map +1 -1
  363. package/dist/src/planner/rules/subquery/rule-anti-join-fk-empty.js +1 -1
  364. package/dist/src/planner/rules/subquery/rule-anti-join-fk-empty.js.map +1 -1
  365. package/dist/src/planner/rules/subquery/rule-semi-join-fk-trivial.js +1 -1
  366. package/dist/src/planner/rules/subquery/rule-semi-join-fk-trivial.js.map +1 -1
  367. package/dist/src/planner/stored-body-context.d.ts +57 -0
  368. package/dist/src/planner/stored-body-context.d.ts.map +1 -0
  369. package/dist/src/planner/stored-body-context.js +64 -0
  370. package/dist/src/planner/stored-body-context.js.map +1 -0
  371. package/dist/src/planner/util/ind-utils.d.ts +28 -20
  372. package/dist/src/planner/util/ind-utils.d.ts.map +1 -1
  373. package/dist/src/planner/util/ind-utils.js +36 -27
  374. package/dist/src/planner/util/ind-utils.js.map +1 -1
  375. package/dist/src/planner/util/key-utils.d.ts +19 -4
  376. package/dist/src/planner/util/key-utils.d.ts.map +1 -1
  377. package/dist/src/planner/util/key-utils.js +23 -7
  378. package/dist/src/planner/util/key-utils.js.map +1 -1
  379. package/dist/src/planner/util/output-names.d.ts +12 -0
  380. package/dist/src/planner/util/output-names.d.ts.map +1 -0
  381. package/dist/src/planner/util/output-names.js +20 -0
  382. package/dist/src/planner/util/output-names.js.map +1 -0
  383. package/dist/src/planner/util/row-estimates.d.ts +11 -0
  384. package/dist/src/planner/util/row-estimates.d.ts.map +1 -1
  385. package/dist/src/planner/util/row-estimates.js +28 -0
  386. package/dist/src/planner/util/row-estimates.js.map +1 -1
  387. package/dist/src/runtime/deferred-constraint-queue.d.ts.map +1 -1
  388. package/dist/src/runtime/deferred-constraint-queue.js +3 -2
  389. package/dist/src/runtime/deferred-constraint-queue.js.map +1 -1
  390. package/dist/src/runtime/emit/add-constraint.d.ts.map +1 -1
  391. package/dist/src/runtime/emit/add-constraint.js +22 -6
  392. package/dist/src/runtime/emit/add-constraint.js.map +1 -1
  393. package/dist/src/runtime/emit/alter-schema-event.d.ts +59 -4
  394. package/dist/src/runtime/emit/alter-schema-event.d.ts.map +1 -1
  395. package/dist/src/runtime/emit/alter-schema-event.js +63 -4
  396. package/dist/src/runtime/emit/alter-schema-event.js.map +1 -1
  397. package/dist/src/runtime/emit/alter-table.d.ts.map +1 -1
  398. package/dist/src/runtime/emit/alter-table.js +212 -92
  399. package/dist/src/runtime/emit/alter-table.js.map +1 -1
  400. package/dist/src/runtime/emit/analyze.d.ts.map +1 -1
  401. package/dist/src/runtime/emit/analyze.js +15 -4
  402. package/dist/src/runtime/emit/analyze.js.map +1 -1
  403. package/dist/src/runtime/emit/assertion-drop-guard.d.ts +37 -0
  404. package/dist/src/runtime/emit/assertion-drop-guard.d.ts.map +1 -0
  405. package/dist/src/runtime/emit/assertion-drop-guard.js +59 -0
  406. package/dist/src/runtime/emit/assertion-drop-guard.js.map +1 -0
  407. package/dist/src/runtime/emit/assertion-rename-helpers.d.ts +33 -0
  408. package/dist/src/runtime/emit/assertion-rename-helpers.d.ts.map +1 -0
  409. package/dist/src/runtime/emit/assertion-rename-helpers.js +124 -0
  410. package/dist/src/runtime/emit/assertion-rename-helpers.js.map +1 -0
  411. package/dist/src/runtime/emit/constraint-check.d.ts.map +1 -1
  412. package/dist/src/runtime/emit/constraint-check.js +10 -227
  413. package/dist/src/runtime/emit/constraint-check.js.map +1 -1
  414. package/dist/src/runtime/emit/create-assertion.d.ts.map +1 -1
  415. package/dist/src/runtime/emit/create-assertion.js +31 -14
  416. package/dist/src/runtime/emit/create-assertion.js.map +1 -1
  417. package/dist/src/runtime/emit/cte.d.ts.map +1 -1
  418. package/dist/src/runtime/emit/cte.js +11 -6
  419. package/dist/src/runtime/emit/cte.js.map +1 -1
  420. package/dist/src/runtime/emit/dml-executor.d.ts.map +1 -1
  421. package/dist/src/runtime/emit/dml-executor.js +169 -1
  422. package/dist/src/runtime/emit/dml-executor.js.map +1 -1
  423. package/dist/src/runtime/emit/drop-assertion.js +8 -8
  424. package/dist/src/runtime/emit/drop-assertion.js.map +1 -1
  425. package/dist/src/runtime/emit/drop-column-guards.d.ts +151 -0
  426. package/dist/src/runtime/emit/drop-column-guards.d.ts.map +1 -0
  427. package/dist/src/runtime/emit/drop-column-guards.js +230 -0
  428. package/dist/src/runtime/emit/drop-column-guards.js.map +1 -0
  429. package/dist/src/runtime/emit/drop-table.d.ts.map +1 -1
  430. package/dist/src/runtime/emit/drop-table.js +6 -0
  431. package/dist/src/runtime/emit/drop-table.js.map +1 -1
  432. package/dist/src/runtime/emit/drop-view.d.ts.map +1 -1
  433. package/dist/src/runtime/emit/drop-view.js +4 -0
  434. package/dist/src/runtime/emit/drop-view.js.map +1 -1
  435. package/dist/src/runtime/emit/key-set-semi-join.d.ts.map +1 -1
  436. package/dist/src/runtime/emit/key-set-semi-join.js +5 -3
  437. package/dist/src/runtime/emit/key-set-semi-join.js.map +1 -1
  438. package/dist/src/runtime/emit/materialized-view-helpers.d.ts +4 -4
  439. package/dist/src/runtime/emit/materialized-view-helpers.d.ts.map +1 -1
  440. package/dist/src/runtime/emit/materialized-view-helpers.js +34 -22
  441. package/dist/src/runtime/emit/materialized-view-helpers.js.map +1 -1
  442. package/dist/src/runtime/emit/materialized-view.d.ts.map +1 -1
  443. package/dist/src/runtime/emit/materialized-view.js +7 -2
  444. package/dist/src/runtime/emit/materialized-view.js.map +1 -1
  445. package/dist/src/runtime/emit/recursive-cte.d.ts.map +1 -1
  446. package/dist/src/runtime/emit/recursive-cte.js +4 -5
  447. package/dist/src/runtime/emit/recursive-cte.js.map +1 -1
  448. package/dist/src/runtime/emit/update.d.ts.map +1 -1
  449. package/dist/src/runtime/emit/update.js +18 -6
  450. package/dist/src/runtime/emit/update.js.map +1 -1
  451. package/dist/src/runtime/row-constraints.d.ts +85 -0
  452. package/dist/src/runtime/row-constraints.d.ts.map +1 -0
  453. package/dist/src/runtime/row-constraints.js +239 -0
  454. package/dist/src/runtime/row-constraints.js.map +1 -0
  455. package/dist/src/runtime/types.d.ts +8 -11
  456. package/dist/src/runtime/types.d.ts.map +1 -1
  457. package/dist/src/runtime/types.js.map +1 -1
  458. package/dist/src/schema/assertion.d.ts +14 -1
  459. package/dist/src/schema/assertion.d.ts.map +1 -1
  460. package/dist/src/schema/assertion.js +14 -1
  461. package/dist/src/schema/assertion.js.map +1 -1
  462. package/dist/src/schema/catalog-persistability.js +19 -3
  463. package/dist/src/schema/catalog-persistability.js.map +1 -1
  464. package/dist/src/schema/catalog.d.ts +6 -0
  465. package/dist/src/schema/catalog.d.ts.map +1 -1
  466. package/dist/src/schema/catalog.js +26 -36
  467. package/dist/src/schema/catalog.js.map +1 -1
  468. package/dist/src/schema/column-source-resolver.d.ts +18 -0
  469. package/dist/src/schema/column-source-resolver.d.ts.map +1 -0
  470. package/dist/src/schema/column-source-resolver.js +22 -0
  471. package/dist/src/schema/column-source-resolver.js.map +1 -0
  472. package/dist/src/schema/constraint-builder.d.ts.map +1 -1
  473. package/dist/src/schema/constraint-builder.js +7 -1
  474. package/dist/src/schema/constraint-builder.js.map +1 -1
  475. package/dist/src/schema/ddl-generator.js +8 -0
  476. package/dist/src/schema/ddl-generator.js.map +1 -1
  477. package/dist/src/schema/lens-compiler.d.ts.map +1 -1
  478. package/dist/src/schema/lens-compiler.js +203 -51
  479. package/dist/src/schema/lens-compiler.js.map +1 -1
  480. package/dist/src/schema/lens-prover.d.ts +2 -3
  481. package/dist/src/schema/lens-prover.d.ts.map +1 -1
  482. package/dist/src/schema/lens-prover.js +19 -11
  483. package/dist/src/schema/lens-prover.js.map +1 -1
  484. package/dist/src/schema/manager.d.ts +30 -12
  485. package/dist/src/schema/manager.d.ts.map +1 -1
  486. package/dist/src/schema/manager.js +49 -17
  487. package/dist/src/schema/manager.js.map +1 -1
  488. package/dist/src/schema/rename-rewriter.d.ts +142 -0
  489. package/dist/src/schema/rename-rewriter.d.ts.map +1 -1
  490. package/dist/src/schema/rename-rewriter.js +254 -9
  491. package/dist/src/schema/rename-rewriter.js.map +1 -1
  492. package/dist/src/schema/reserved-tags.d.ts +1 -1
  493. package/dist/src/schema/reserved-tags.d.ts.map +1 -1
  494. package/dist/src/schema/reserved-tags.js +4 -3
  495. package/dist/src/schema/reserved-tags.js.map +1 -1
  496. package/dist/src/schema/schema-differ.d.ts +16 -0
  497. package/dist/src/schema/schema-differ.d.ts.map +1 -1
  498. package/dist/src/schema/schema-differ.js +122 -11
  499. package/dist/src/schema/schema-differ.js.map +1 -1
  500. package/dist/src/schema/view.d.ts +11 -0
  501. package/dist/src/schema/view.d.ts.map +1 -1
  502. package/dist/src/schema/view.js +12 -0
  503. package/dist/src/schema/view.js.map +1 -1
  504. package/dist/src/types/builtin-types.d.ts +38 -0
  505. package/dist/src/types/builtin-types.d.ts.map +1 -1
  506. package/dist/src/types/builtin-types.js +77 -26
  507. package/dist/src/types/builtin-types.js.map +1 -1
  508. package/dist/src/types/index.d.ts +1 -1
  509. package/dist/src/types/index.d.ts.map +1 -1
  510. package/dist/src/types/index.js +1 -1
  511. package/dist/src/types/index.js.map +1 -1
  512. package/dist/src/util/{working-table-iterable.d.ts → array-row-iterable.d.ts} +6 -6
  513. package/dist/src/util/array-row-iterable.d.ts.map +1 -0
  514. package/dist/src/util/{working-table-iterable.js → array-row-iterable.js} +6 -6
  515. package/dist/src/util/array-row-iterable.js.map +1 -0
  516. package/dist/src/vtab/events.d.ts +3 -0
  517. package/dist/src/vtab/events.d.ts.map +1 -1
  518. package/dist/src/vtab/events.js.map +1 -1
  519. package/dist/src/vtab/manifest.d.ts +15 -0
  520. package/dist/src/vtab/manifest.d.ts.map +1 -1
  521. package/dist/src/vtab/memory/layer/manager.d.ts.map +1 -1
  522. package/dist/src/vtab/memory/layer/manager.js +3 -69
  523. package/dist/src/vtab/memory/layer/manager.js.map +1 -1
  524. package/dist/src/vtab/memory/module.d.ts +16 -1
  525. package/dist/src/vtab/memory/module.d.ts.map +1 -1
  526. package/dist/src/vtab/memory/module.js +62 -2
  527. package/dist/src/vtab/memory/module.js.map +1 -1
  528. package/dist/src/vtab/module.d.ts +26 -2
  529. package/dist/src/vtab/module.d.ts.map +1 -1
  530. package/dist/src/vtab/table.d.ts +8 -1
  531. package/dist/src/vtab/table.d.ts.map +1 -1
  532. package/dist/src/vtab/table.js.map +1 -1
  533. package/package.json +3 -3
  534. package/dist/src/util/working-table-iterable.d.ts.map +0 -1
  535. package/dist/src/util/working-table-iterable.js.map +0 -1
@@ -2,18 +2,24 @@ import { PlanNodeType } from './plan-node-type.js';
2
2
  import { PlanNode, type RelationalPlanNode, type BinaryRelationalNode, type PhysicalProperties, type Attribute } from './plan-node.js';
3
3
  import type { RelationType } from '../../common/datatype.js';
4
4
  import type { Scope } from '../scopes/scope.js';
5
- import { SeqScanNode, IndexScanNode } from './table-access-nodes.js';
5
+ import { SeqScanNode, IndexScanNode, IndexSeekNode } from './table-access-nodes.js';
6
6
  import type { AccessPath } from '../../vtab/index-descriptor.js';
7
7
  /**
8
- * Admissible target leaves: a plain sequential scan, or an ordering-only index
8
+ * Admissible target leaves: a plain sequential scan, an ordering-only index
9
9
  * walk (`plan=0`, no constraints) — which reads every row exactly like a full
10
- * scan and differs only in emission order, a property nothing above the hash
11
- * semi join this node replaces could have depended on (see
12
- * `rule-key-set-seek`'s leaf gate). Memory-vtab tables always advertise a
10
+ * scan and differs only in emission order — or a constrained `IndexSeekNode`.
11
+ * A seek target's `FilterInfo` is the sole enforcer of the predicates recorded
12
+ * in its `pushedConstraints`; `rule-key-set-seek` admits one only after
13
+ * re-applying that predicate as a `Filter` directly above this node, so the
14
+ * seek branch (which replaces the leaf's `FilterInfo` wholesale) cannot lose
15
+ * it, while the scan branch runs the pushed seek untouched. Whether the leaf's
16
+ * emission order is something an ancestor may depend on is settled by
17
+ * {@link seekPreservesTargetOrder}, not by the leaf shape (see
18
+ * `rule-key-set-seek`'s gates). Memory-vtab tables always advertise a
13
19
  * primary-key ordering, so their bare scans are ordering-only IndexScans —
14
20
  * admitting only SeqScan would make this node unreachable there.
15
21
  */
16
- export type KeySetTargetNode = SeqScanNode | IndexScanNode;
22
+ export type KeySetTargetNode = SeqScanNode | IndexScanNode | IndexSeekNode;
17
23
  /**
18
24
  * Engine ceiling on the number of seek keys a runtime-materialized key set may
19
25
  * deliver to a module as a multi-seek. Matches the store module's own
@@ -21,6 +27,32 @@ export type KeySetTargetNode = SeqScanNode | IndexScanNode;
21
27
  * the target, which the module was promised (`RuntimeSetSpec.maxCount`).
22
28
  */
23
29
  export declare const RUNTIME_SET_MAX_KEYS = 1000;
30
+ /**
31
+ * True when the multi-seek this pushdown describes emits in exactly the target
32
+ * leaf's own walk order, so the node may claim the leaf's `ordering` /
33
+ * `monotonicOn` regardless of which branch the runtime picks.
34
+ *
35
+ * The equivalence: the scan branch leaves the leaf's `FilterInfo` untouched, so
36
+ * rows arrive in the walk index's key order; the seek branch replaces it with a
37
+ * `plan=5` multi-seek whose engine-wide contract is that rows come back in the
38
+ * *scanned structure's own key order*, never seek-argument order (pinned by
39
+ * `test/vtab/multiseek-key-order.spec.ts`, honoured by both backends). When the
40
+ * seek index IS the walk index, the seek branch therefore emits a subsequence
41
+ * of the scan branch's stream — and a subsequence of an ordered stream is still
42
+ * ordered (a subsequence of a monotonic stream is still monotonic, strictness
43
+ * included: dropping rows cannot create a tie). So under that condition both
44
+ * branches satisfy the leaf's advertised order and the node may claim it.
45
+ *
46
+ * Restricted to a single-column index: for a composite index the seek would be
47
+ * a leading-column *prefix* window, and "structure key order within a prefix
48
+ * window" is not pinned by any current test. It costs nothing today — the
49
+ * memory module declines a runtime-set `IN` on the leading column of a
50
+ * composite key, and the literal form plans as a scan + Filter, so the
51
+ * composite case is unreachable through either path. Relax the clause when a
52
+ * module actually claims a leading-column multi-seek on a composite index, and
53
+ * pin the prefix-window order first.
54
+ */
55
+ export declare function seekPreservesTargetOrder(target: KeySetTargetNode, pushdown: KeySetPushdown): boolean;
24
56
  /** How the target's access path is rewritten when the runtime decides to seek. */
25
57
  export interface KeySetPushdown {
26
58
  /** Index name as it must appear in idxStr (the module's own spelling). */
@@ -41,16 +73,16 @@ export interface KeySetPushdown {
41
73
  /**
42
74
  * Physical semi join that materializes the key-source side into a set once, then
43
75
  * streams the target and probes each row against the set — exactly what the hash
44
- * semi join it replaces does — and additionally, when the materialized distinct
76
+ * semi join arm it replaces does — and additionally, when the materialized distinct
45
77
  * key count is small enough (≤ min(maxKeys, breakEvenKeys)), rewrites the target
46
78
  * leaf's `FilterInfo` at runtime into an ordinary single-column `plan=5`
47
79
  * multi-seek so the storage backend reads only the matching rows.
48
80
  *
49
81
  * The probe never goes away: pushdown only changes how many rows the target
50
82
  * emits. An over-fetching seek is trimmed by the probe; a skipped pushdown
51
- * degrades to the hash semi join. The plan-time gates in `rule-key-set-seek`
52
- * exist to make an under-fetch (rows the seek fails to return, which the probe
53
- * cannot resurrect) impossible.
83
+ * degrades to that unconditional probe over the untouched walk. The plan-time
84
+ * gates in `rule-key-set-seek` exist to make an under-fetch (rows the seek fails
85
+ * to return, which the probe cannot resurrect) impossible.
54
86
  */
55
87
  export declare class KeySetSemiJoinNode extends PlanNode implements BinaryRelationalNode {
56
88
  /** The access leaf whose FilterInfo gets rewritten at runtime, verbatim. */
@@ -1 +1 @@
1
- {"version":3,"file":"key-set-semi-join-node.d.ts","sourceRoot":"","sources":["../../../../src/planner/nodes/key-set-semi-join-node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,KAAK,kBAAkB,EAAE,KAAK,oBAAoB,EAAE,KAAK,kBAAkB,EAAE,KAAK,SAAS,EAAoB,MAAM,gBAAgB,CAAC;AACzJ,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAMhD,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAEjE;;;;;;;;GAQG;AACH,MAAM,MAAM,gBAAgB,GAAG,WAAW,GAAG,aAAa,CAAC;AAE3D;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,OAAO,CAAC;AAEzC,kFAAkF;AAClF,MAAM,WAAW,cAAc;IAC9B,0EAA0E;IAC1E,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,yFAAyF;IACzF,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE;QAAE,IAAI,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IAC5D,0EAA0E;IAC1E,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,8EAA8E;IAC9E,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,gFAAgF;IAChF,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,uFAAuF;IACvF,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAC/B;AAED;;;;;;;;;;;;;GAaG;AACH,qBAAa,kBAAmB,SAAQ,QAAS,YAAW,oBAAoB;IAK9E,4EAA4E;aAC5D,MAAM,EAAE,gBAAgB;IACxC,gFAAgF;aAChE,SAAS,EAAE,kBAAkB;IAC7C,6CAA6C;aAC7B,YAAY,EAAE,MAAM;IACpC,gDAAgD;aAChC,SAAS,EAAE,MAAM;aACjB,QAAQ,EAAE,cAAc;IAZzC,SAAkB,QAAQ,+BAA+B;gBAGxD,KAAK,EAAE,KAAK;IACZ,4EAA4E;IAC5D,MAAM,EAAE,gBAAgB;IACxC,gFAAgF;IAChE,SAAS,EAAE,kBAAkB;IAC7C,6CAA6C;IAC7B,YAAY,EAAE,MAAM;IACpC,gDAAgD;IAChC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,cAAc;IAazC,IAAI,IAAI,IAAI,kBAAkB,CAAwB;IACtD,IAAI,KAAK,IAAI,kBAAkB,CAA2B;IAE1D,aAAa,IAAI,SAAS,SAAS,EAAE;IAMrC,OAAO,IAAI,YAAY;IAKvB,WAAW,IAAI,SAAS,QAAQ,EAAE;IAIlC,YAAY,IAAI,SAAS,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IAIjE,IAAI,aAAa,IAAI,MAAM,GAAG,SAAS,CAEtC;IAED,eAAe,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAiCpF,YAAY,CAAC,WAAW,EAAE,SAAS,QAAQ,EAAE,GAAG,QAAQ;IAwB/C,QAAQ,IAAI,MAAM;IAIlB,oBAAoB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAYxD"}
1
+ {"version":3,"file":"key-set-semi-join-node.d.ts","sourceRoot":"","sources":["../../../../src/planner/nodes/key-set-semi-join-node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,KAAK,kBAAkB,EAAE,KAAK,oBAAoB,EAAE,KAAK,kBAAkB,EAAE,KAAK,SAAS,EAAoB,MAAM,gBAAgB,CAAC;AACzJ,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAMhD,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACpF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAEjE;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,gBAAgB,GAAG,WAAW,GAAG,aAAa,GAAG,aAAa,CAAC;AAE3E;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,OAAO,CAAC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,wBAAwB,CACvC,MAAM,EAAE,gBAAgB,EACxB,QAAQ,EAAE,cAAc,GACtB,OAAO,CAoBT;AAED,kFAAkF;AAClF,MAAM,WAAW,cAAc;IAC9B,0EAA0E;IAC1E,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,yFAAyF;IACzF,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE;QAAE,IAAI,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IAC5D,0EAA0E;IAC1E,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,8EAA8E;IAC9E,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,gFAAgF;IAChF,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,uFAAuF;IACvF,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAC/B;AAED;;;;;;;;;;;;;GAaG;AACH,qBAAa,kBAAmB,SAAQ,QAAS,YAAW,oBAAoB;IAK9E,4EAA4E;aAC5D,MAAM,EAAE,gBAAgB;IACxC,gFAAgF;aAChE,SAAS,EAAE,kBAAkB;IAC7C,6CAA6C;aAC7B,YAAY,EAAE,MAAM;IACpC,gDAAgD;aAChC,SAAS,EAAE,MAAM;aACjB,QAAQ,EAAE,cAAc;IAZzC,SAAkB,QAAQ,+BAA+B;gBAGxD,KAAK,EAAE,KAAK;IACZ,4EAA4E;IAC5D,MAAM,EAAE,gBAAgB;IACxC,gFAAgF;IAChE,SAAS,EAAE,kBAAkB;IAC7C,6CAA6C;IAC7B,YAAY,EAAE,MAAM;IACpC,gDAAgD;IAChC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,cAAc;IAoBzC,IAAI,IAAI,IAAI,kBAAkB,CAAwB;IACtD,IAAI,KAAK,IAAI,kBAAkB,CAA2B;IAE1D,aAAa,IAAI,SAAS,SAAS,EAAE;IAMrC,OAAO,IAAI,YAAY;IAKvB,WAAW,IAAI,SAAS,QAAQ,EAAE;IAIlC,YAAY,IAAI,SAAS,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IAIjE,IAAI,aAAa,IAAI,MAAM,GAAG,SAAS,CAEtC;IAED,eAAe,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA2CpF,YAAY,CAAC,WAAW,EAAE,SAAS,QAAQ,EAAE,GAAG,QAAQ;IAwB/C,QAAQ,IAAI,MAAM;IAIlB,oBAAoB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAaxD"}
@@ -5,7 +5,7 @@ import { quereusError } from '../../common/errors.js';
5
5
  import { hashJoinCost } from '../cost/index.js';
6
6
  import { estimateJoinRows } from './join-utils.js';
7
7
  import { physicalSourceRows } from '../util/row-estimates.js';
8
- import { SeqScanNode, IndexScanNode } from './table-access-nodes.js';
8
+ import { SeqScanNode, IndexScanNode, IndexSeekNode } from './table-access-nodes.js';
9
9
  /**
10
10
  * Engine ceiling on the number of seek keys a runtime-materialized key set may
11
11
  * deliver to a module as a multi-seek. Matches the store module's own
@@ -13,19 +13,70 @@ import { SeqScanNode, IndexScanNode } from './table-access-nodes.js';
13
13
  * the target, which the module was promised (`RuntimeSetSpec.maxCount`).
14
14
  */
15
15
  export const RUNTIME_SET_MAX_KEYS = 1000;
16
+ /**
17
+ * True when the multi-seek this pushdown describes emits in exactly the target
18
+ * leaf's own walk order, so the node may claim the leaf's `ordering` /
19
+ * `monotonicOn` regardless of which branch the runtime picks.
20
+ *
21
+ * The equivalence: the scan branch leaves the leaf's `FilterInfo` untouched, so
22
+ * rows arrive in the walk index's key order; the seek branch replaces it with a
23
+ * `plan=5` multi-seek whose engine-wide contract is that rows come back in the
24
+ * *scanned structure's own key order*, never seek-argument order (pinned by
25
+ * `test/vtab/multiseek-key-order.spec.ts`, honoured by both backends). When the
26
+ * seek index IS the walk index, the seek branch therefore emits a subsequence
27
+ * of the scan branch's stream — and a subsequence of an ordered stream is still
28
+ * ordered (a subsequence of a monotonic stream is still monotonic, strictness
29
+ * included: dropping rows cannot create a tie). So under that condition both
30
+ * branches satisfy the leaf's advertised order and the node may claim it.
31
+ *
32
+ * Restricted to a single-column index: for a composite index the seek would be
33
+ * a leading-column *prefix* window, and "structure key order within a prefix
34
+ * window" is not pinned by any current test. It costs nothing today — the
35
+ * memory module declines a runtime-set `IN` on the leading column of a
36
+ * composite key, and the literal form plans as a scan + Filter, so the
37
+ * composite case is unreachable through either path. Relax the clause when a
38
+ * module actually claims a leading-column multi-seek on a composite index, and
39
+ * pin the prefix-window order first.
40
+ */
41
+ export function seekPreservesTargetOrder(target, pushdown) {
42
+ // A SeqScan advertises no ordering at all — nothing to preserve, nothing to
43
+ // prove. An IndexSeekNode is also always false: the predicate requires an
44
+ // ordering-only index WALK whose index is the seek index, and a constrained
45
+ // seek is neither — its window is predicate-shaped, so a multi-seek over a
46
+ // (generally different) index cannot be argued to be a subsequence of it.
47
+ if (!(target instanceof IndexScanNode))
48
+ return false;
49
+ const walk = target.filterInfo.accessPath;
50
+ if (walk?.kind !== 'index' || walk.plan !== 'scan')
51
+ return false;
52
+ // The load-bearing clause: the seek index is the walk index.
53
+ if (walk.index.name !== pushdown.accessPath.index.name)
54
+ return false;
55
+ const keyColumns = pushdown.accessPath.index.keyColumns;
56
+ if (keyColumns.length !== 1)
57
+ return false;
58
+ // The advertised order must actually describe the index's key order — this
59
+ // rejects a leaf whose `providesOrdering` says something else (including a
60
+ // reverse walk, whose advertised direction flips against the key column's).
61
+ const ordering = target.providesOrdering;
62
+ if (!ordering || ordering.length !== 1)
63
+ return false;
64
+ return ordering[0].column === keyColumns[0].columnIndex
65
+ && ordering[0].desc === (keyColumns[0].desc === true);
66
+ }
16
67
  /**
17
68
  * Physical semi join that materializes the key-source side into a set once, then
18
69
  * streams the target and probes each row against the set — exactly what the hash
19
- * semi join it replaces does — and additionally, when the materialized distinct
70
+ * semi join arm it replaces does — and additionally, when the materialized distinct
20
71
  * key count is small enough (≤ min(maxKeys, breakEvenKeys)), rewrites the target
21
72
  * leaf's `FilterInfo` at runtime into an ordinary single-column `plan=5`
22
73
  * multi-seek so the storage backend reads only the matching rows.
23
74
  *
24
75
  * The probe never goes away: pushdown only changes how many rows the target
25
76
  * emits. An over-fetching seek is trimmed by the probe; a skipped pushdown
26
- * degrades to the hash semi join. The plan-time gates in `rule-key-set-seek`
27
- * exist to make an under-fetch (rows the seek fails to return, which the probe
28
- * cannot resurrect) impossible.
77
+ * degrades to that unconditional probe over the untouched walk. The plan-time
78
+ * gates in `rule-key-set-seek` exist to make an under-fetch (rows the seek fails
79
+ * to return, which the probe cannot resurrect) impossible.
29
80
  */
30
81
  export class KeySetSemiJoinNode extends PlanNode {
31
82
  target;
@@ -50,6 +101,13 @@ export class KeySetSemiJoinNode extends PlanNode {
50
101
  // set, probe every target row). The saving is in the *target's* row
51
102
  // count, which is not modelled at plan time — the seek-vs-scan decision
52
103
  // is deferred to runtime by design; do not invent a discount here.
104
+ // NOTE: on the MERGE arm this also charges more than the MergeJoinNode it
105
+ // replaces (0.8·keys + 0.4·target vs 0.3·(target+keys) — bounded at ~1.33×
106
+ // for a large target), because the runtime work really is build-then-probe,
107
+ // not a co-walk. Nothing behind PostOptimization's `impl` phase makes a
108
+ // keep-or-drop decision on this number today; if a cost reader back there
109
+ // (cache injection, the materialization advisory) ever starts flipping on
110
+ // the delta, model the two arms separately rather than shading this one.
53
111
  super(scope, hashJoinCost(keyRows, targetRows));
54
112
  this.target = target;
55
113
  this.keySource = keySource;
@@ -85,16 +143,26 @@ export class KeySetSemiJoinNode extends PlanNode {
85
143
  // constant bindings, domain constraints, and INDs (all per-row claims
86
144
  // that hold on any subset).
87
145
  //
88
- // Deliberately NOT propagated: `ordering`, `monotonicOn`, and
89
- // `accessCapabilities`. Emission order depends on a decision made at
90
- // runtime — seek order (index-key order on the seek column) when
91
- // pushing, the leaf's native order when scanning — so claiming either
92
- // would let a Sort be elided that the plan actually needs. This is safe
93
- // with respect to what already ran: BloomJoinNode.computePhysical
94
- // propagates no ordering or monotonicOn either, so nothing above the
95
- // join this node replaces could have been built on the leaf's order —
96
- // losing those properties is the status quo, not a regression.
146
+ // `ordering` and `monotonicOn` are claimed ONLY when
147
+ // `seekPreservesTargetOrder` holds — then both runtime branches (the
148
+ // untouched walk and the multi-seek over the same index) emit in the
149
+ // leaf's own key order, so the claim is independent of the seek-vs-scan
150
+ // decision; see that predicate's doc for the subsequence argument. The
151
+ // predicate is DERIVED here rather than carried as a constructor flag:
152
+ // later PostOptimization rules may rebuild the leaf through
153
+ // `withChildren`, and a stale flag would be a wrong-order plan, while a
154
+ // re-derivation against the current target cannot go stale. When it does
155
+ // not hold, emission order depends on the runtime decision and claiming
156
+ // either property would let a Sort be elided that the plan needs —
157
+ // matching BloomJoinNode, which propagates neither.
158
+ //
159
+ // `accessCapabilities` stays dropped either way: those advertise a
160
+ // leaf's ability to serve a later pushdown, and this node is not a leaf.
161
+ // Dropping capabilities loses optimizations, never correctness.
97
162
  return {
163
+ ...(seekPreservesTargetOrder(this.target, this.pushdown)
164
+ ? { ordering: targetPhysical?.ordering, monotonicOn: targetPhysical?.monotonicOn }
165
+ : {}),
98
166
  // Same formula as the logical getter, over the PHYSICAL child counts —
99
167
  // the logical getters read `undefined` through the physical access node
100
168
  // this semi-join targets.
@@ -111,8 +179,8 @@ export class KeySetSemiJoinNode extends PlanNode {
111
179
  quereusError(`KeySetSemiJoinNode expects 2 children, got ${newChildren.length}`, StatusCode.INTERNAL);
112
180
  }
113
181
  const [newTarget, newKeySource] = newChildren;
114
- if (!(newTarget instanceof SeqScanNode) && !(newTarget instanceof IndexScanNode)) {
115
- quereusError('KeySetSemiJoinNode: first child must be a SeqScanNode or IndexScanNode', StatusCode.INTERNAL);
182
+ if (!(newTarget instanceof SeqScanNode) && !(newTarget instanceof IndexScanNode) && !(newTarget instanceof IndexSeekNode)) {
183
+ quereusError('KeySetSemiJoinNode: first child must be a SeqScanNode, IndexScanNode, or IndexSeekNode', StatusCode.INTERNAL);
116
184
  }
117
185
  if (!isRelationalNode(newKeySource)) {
118
186
  quereusError('KeySetSemiJoinNode: second child must be a RelationalPlanNode', StatusCode.INTERNAL);
@@ -133,6 +201,7 @@ export class KeySetSemiJoinNode extends PlanNode {
133
201
  seekColumnIndex: this.pushdown.seekColumnIndex,
134
202
  maxKeys: this.pushdown.maxKeys,
135
203
  breakEvenKeys: this.pushdown.breakEvenKeys,
204
+ preservesTargetOrder: seekPreservesTargetOrder(this.target, this.pushdown),
136
205
  targetRows: this.left.estimatedRows,
137
206
  keySourceRows: this.keySource.estimatedRows,
138
207
  };
@@ -1 +1 @@
1
- {"version":3,"file":"key-set-semi-join-node.js","sourceRoot":"","sources":["../../../../src/planner/nodes/key-set-semi-join-node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"key-set-semi-join-node.js","sourceRoot":"","sources":["../../../../src/planner/nodes/key-set-semi-join-node.ts"],"names":[],"mappings":"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"}
@@ -51,6 +51,11 @@ export interface RoutableAuxiliary {
51
51
  * `RetrieveNode` from `buildTableReference`, with its own fresh attribute
52
52
  * ids). The rewrite rule pushes the column-rewritten predicate onto this
53
53
  * scan and semi-joins it back to the logical body on the logical key.
54
+ *
55
+ * NOTE: deliberately NOT exposed via the holder's `getChildren` (OPT-009). No emitter
56
+ * reads it — `runtime/emit/lens-auxiliary-access.ts` emits `source` only — and the
57
+ * rewrite rule splices it into a fresh subtree during the *top-down* Structural pass,
58
+ * which the pass then descends into and physicalizes. Expose it if either changes.
54
59
  */
55
60
  readonly auxScan: RelationalPlanNode;
56
61
  /** Logical-PK ↔ auxiliary-key join pairs, in logical-PK order (D4). */
@@ -1 +1 @@
1
- {"version":3,"file":"lens-auxiliary-access-node.d.ts","sourceRoot":"","sources":["../../../../src/planner/nodes/lens-auxiliary-access-node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,kBAAkB,EAAE,KAAK,mBAAmB,EAAE,KAAK,SAAS,EAAE,KAAK,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACtI,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,KAAK,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAG5F;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC3B,sDAAsD;IACtD,QAAQ,CAAC,SAAS,EAAE;QAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;KAAE,CAAC;IACzG,8EAA8E;IAC9E,QAAQ,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;KAAE,CAAC;CACtG;AAED;;;;;;GAMG;AACH,MAAM,WAAW,eAAe;IAC/B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;KAAE,CAAC;CACtG;AAED;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IACjC,QAAQ,CAAC,aAAa,EAAE,oBAAoB,CAAC;IAC7C;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,EAAE,kBAAkB,CAAC;IACrC,uEAAuE;IACvE,QAAQ,CAAC,SAAS,EAAE,SAAS,WAAW,EAAE,CAAC;IAC3C,gGAAgG;IAChG,QAAQ,CAAC,aAAa,EAAE,SAAS,eAAe,EAAE,CAAC;IACnD,kFAAkF;IAClF,QAAQ,CAAC,MAAM,EAAE,SAAS;QAAE,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;QAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,UAAU,EAAE,CAAA;KAAE,EAAE,CAAC;CAC3G;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,uBAAwB,SAAQ,QAAS,YAAW,mBAAmB;aAKlE,MAAM,EAAE,kBAAkB;IAC1C,mFAAmF;aACnE,SAAS,EAAE,SAAS,iBAAiB,EAAE;IANxD,SAAkB,QAAQ,oCAAoC;gBAG7D,KAAK,EAAE,KAAK,EACI,MAAM,EAAE,kBAAkB;IAC1C,mFAAmF;IACnE,SAAS,EAAE,SAAS,iBAAiB,EAAE;IAQxD,OAAO,IAAI,YAAY;IAIvB,aAAa,IAAI,SAAS,SAAS,EAAE;IAIrC,WAAW,IAAI,SAAS,CAAC,kBAAkB,CAAC;IAI5C,YAAY,IAAI,SAAS,CAAC,kBAAkB,CAAC;IAI7C,IAAI,aAAa,IAAI,MAAM,GAAG,SAAS,CAEtC;IAED,eAAe,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAoBpF,YAAY,CAAC,WAAW,EAAE,SAAS,QAAQ,EAAE,GAAG,QAAQ;IAiB/C,QAAQ,IAAI,MAAM;IAIlB,oBAAoB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CASxD"}
1
+ {"version":3,"file":"lens-auxiliary-access-node.d.ts","sourceRoot":"","sources":["../../../../src/planner/nodes/lens-auxiliary-access-node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,kBAAkB,EAAE,KAAK,mBAAmB,EAAE,KAAK,SAAS,EAAE,KAAK,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACtI,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,KAAK,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAG5F;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC3B,sDAAsD;IACtD,QAAQ,CAAC,SAAS,EAAE;QAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;KAAE,CAAC;IACzG,8EAA8E;IAC9E,QAAQ,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;KAAE,CAAC;CACtG;AAED;;;;;;GAMG;AACH,MAAM,WAAW,eAAe;IAC/B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;KAAE,CAAC;CACtG;AAED;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IACjC,QAAQ,CAAC,aAAa,EAAE,oBAAoB,CAAC;IAC7C;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,OAAO,EAAE,kBAAkB,CAAC;IACrC,uEAAuE;IACvE,QAAQ,CAAC,SAAS,EAAE,SAAS,WAAW,EAAE,CAAC;IAC3C,gGAAgG;IAChG,QAAQ,CAAC,aAAa,EAAE,SAAS,eAAe,EAAE,CAAC;IACnD,kFAAkF;IAClF,QAAQ,CAAC,MAAM,EAAE,SAAS;QAAE,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;QAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,UAAU,EAAE,CAAA;KAAE,EAAE,CAAC;CAC3G;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,uBAAwB,SAAQ,QAAS,YAAW,mBAAmB;aAKlE,MAAM,EAAE,kBAAkB;IAC1C,mFAAmF;aACnE,SAAS,EAAE,SAAS,iBAAiB,EAAE;IANxD,SAAkB,QAAQ,oCAAoC;gBAG7D,KAAK,EAAE,KAAK,EACI,MAAM,EAAE,kBAAkB;IAC1C,mFAAmF;IACnE,SAAS,EAAE,SAAS,iBAAiB,EAAE;IAQxD,OAAO,IAAI,YAAY;IAIvB,aAAa,IAAI,SAAS,SAAS,EAAE;IAIrC,WAAW,IAAI,SAAS,CAAC,kBAAkB,CAAC;IAI5C,YAAY,IAAI,SAAS,CAAC,kBAAkB,CAAC;IAI7C,IAAI,aAAa,IAAI,MAAM,GAAG,SAAS,CAEtC;IAED,eAAe,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAoBpF,YAAY,CAAC,WAAW,EAAE,SAAS,QAAQ,EAAE,GAAG,QAAQ;IAiB/C,QAAQ,IAAI,MAAM;IAIlB,oBAAoB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CASxD"}
@@ -1 +1 @@
1
- {"version":3,"file":"lens-auxiliary-access-node.js","sourceRoot":"","sources":["../../../../src/planner/nodes/lens-auxiliary-access-node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lens-auxiliary-access-node.js","sourceRoot":"","sources":["../../../../src/planner/nodes/lens-auxiliary-access-node.ts"],"names":[],"mappings":"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"}
@@ -879,6 +879,11 @@ export interface ScalarPlanNode extends PlanNode {
879
879
  * Characteristically check if a node is a scalar node
880
880
  */
881
881
  export declare function isScalarNode(node: PlanNode): node is ScalarPlanNode;
882
+ /**
883
+ * Narrow a slice of rewritten `withChildren` input to scalars, failing loudly instead of
884
+ * casting. `label` names the node and slot, e.g. `'ConstraintCheckNode constraint'`.
885
+ */
886
+ export declare function asScalarNodes(nodes: readonly PlanNode[], label: string): ScalarPlanNode[];
882
887
  /** A relational plan node that has no relational inputs (a leaf in the relational algebra tree).
883
888
  * Will not have scalar inputs either - this is either TableDee or TableDum, projection can be used to compute columns
884
889
  */
@@ -1 +1 @@
1
- {"version":3,"file":"plan-node.d.ts","sourceRoot":"","sources":["../../../../src/planner/nodes/plan-node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plan-node.d.ts","sourceRoot":"","sources":["../../../../src/planner/nodes/plan-node.ts"],"names":[],"mappings":"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"}
@@ -315,6 +315,18 @@ export function isRelationalNode(node) {
315
315
  export function isScalarNode(node) {
316
316
  return node.getType().typeClass === 'scalar';
317
317
  }
318
+ /**
319
+ * Narrow a slice of rewritten `withChildren` input to scalars, failing loudly instead of
320
+ * casting. `label` names the node and slot, e.g. `'ConstraintCheckNode constraint'`.
321
+ */
322
+ export function asScalarNodes(nodes, label) {
323
+ return nodes.map((node, i) => {
324
+ if (!isScalarNode(node)) {
325
+ throw new Error(`${label} child ${i + 1} must be a ScalarPlanNode, got ${node.nodeType}`);
326
+ }
327
+ return node;
328
+ });
329
+ }
318
330
  // --- Concrete Arity-Based Base Classes ---
319
331
  /**
320
332
  * Base class for relational nodes with no relational inputs (leaf nodes)
@@ -1 +1 @@
1
- {"version":3,"file":"plan-node.js","sourceRoot":"","sources":["../../../../src/planner/nodes/plan-node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plan-node.js","sourceRoot":"","sources":["../../../../src/planner/nodes/plan-node.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"project-node.d.ts","sourceRoot":"","sources":["../../../../src/planner/nodes/project-node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,KAAK,kBAAkB,EAAE,KAAK,mBAAmB,EAAE,KAAK,cAAc,EAAE,KAAK,SAAS,EAAoB,MAAM,gBAAgB,CAAC;AACpJ,OAAO,KAAK,EAAE,YAAY,EAAc,MAAM,0BAA0B,CAAC;AACzE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAShD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,KAAK,EAAE,kBAAkB,EAAwB,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAKpG,MAAM,WAAW,UAAU;IAC1B,IAAI,EAAE,cAAc,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,uEAAuE;IACvE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,mBAAmB,CAAC;CACtC;AA8BD;;;GAGG;AACH,qBAAa,WAAY,SAAQ,QAAS,YAAW,mBAAmB,EAAE,iBAAiB;aASzE,MAAM,EAAE,kBAAkB;aAC1B,WAAW,EAAE,aAAa,CAAC,UAAU,CAAC;IAItD,sEAAsE;aACtD,oBAAoB,EAAE,OAAO;IAd9C,SAAkB,QAAQ,wBAAwB;IAClD,QAAQ,CAAC,mBAAmB,EAAG,IAAI,CAAU;IAE7C,OAAO,CAAC,eAAe,CAAuB;IAC9C,OAAO,CAAC,eAAe,CAA+B;gBAGrD,KAAK,EAAE,KAAK,EACI,MAAM,EAAE,kBAAkB,EAC1B,WAAW,EAAE,aAAa,CAAC,UAAU,CAAC,EACtD,qBAAqB,CAAC,EAAE,MAAM;IAC9B,4EAA4E;IAC5E,oBAAoB,CAAC,EAAE,SAAS,SAAS,EAAE;IAC3C,sEAAsE;IACtD,oBAAoB,GAAE,OAAc;IAgJrD;;;6EAGyE;IACzE,OAAO,CAAC,cAAc;IAQtB,eAAe,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA0HpF,OAAO,IAAI,YAAY;IAIvB,aAAa,IAAI,SAAS,SAAS,EAAE;IAIrC,iBAAiB,IAAI,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC;IAehD,WAAW,IAAI,SAAS,QAAQ,EAAE;IAIlC,YAAY,IAAI,SAAS,CAAC,kBAAkB,CAAC;IAI7C,IAAI,aAAa,IAAI,MAAM,GAAG,SAAS,CAEtC;IAEQ,QAAQ,IAAI,MAAM;IAOlB,oBAAoB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAWxD,YAAY,CAAC,WAAW,EAAE,SAAS,QAAQ,EAAE,GAAG,QAAQ;IA0CxD,cAAc,IAAI,SAAS;QAAE,IAAI,EAAE,cAAc,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,EAAE;IASzF,eAAe,CAAC,WAAW,EAAE,SAAS;QAAE,IAAI,EAAE,cAAc,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,EAAE,GAAG,QAAQ;CA0C/G"}
1
+ {"version":3,"file":"project-node.d.ts","sourceRoot":"","sources":["../../../../src/planner/nodes/project-node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,KAAK,kBAAkB,EAAE,KAAK,mBAAmB,EAAE,KAAK,cAAc,EAAE,KAAK,SAAS,EAAoB,MAAM,gBAAgB,CAAC;AACpJ,OAAO,KAAK,EAAE,YAAY,EAAc,MAAM,0BAA0B,CAAC;AACzE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAShD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,KAAK,EAAE,kBAAkB,EAAwB,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAMpG,MAAM,WAAW,UAAU;IAC1B,IAAI,EAAE,cAAc,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,uEAAuE;IACvE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,mBAAmB,CAAC;CACtC;AA8BD;;;GAGG;AACH,qBAAa,WAAY,SAAQ,QAAS,YAAW,mBAAmB,EAAE,iBAAiB;aASzE,MAAM,EAAE,kBAAkB;aAC1B,WAAW,EAAE,aAAa,CAAC,UAAU,CAAC;IAItD,sEAAsE;aACtD,oBAAoB,EAAE,OAAO;IAd9C,SAAkB,QAAQ,wBAAwB;IAClD,QAAQ,CAAC,mBAAmB,EAAG,IAAI,CAAU;IAE7C,OAAO,CAAC,eAAe,CAAuB;IAC9C,OAAO,CAAC,eAAe,CAA+B;gBAGrD,KAAK,EAAE,KAAK,EACI,MAAM,EAAE,kBAAkB,EAC1B,WAAW,EAAE,aAAa,CAAC,UAAU,CAAC,EACtD,qBAAqB,CAAC,EAAE,MAAM;IAC9B,4EAA4E;IAC5E,oBAAoB,CAAC,EAAE,SAAS,SAAS,EAAE;IAC3C,sEAAsE;IACtD,oBAAoB,GAAE,OAAc;IA2HrD;;;6EAGyE;IACzE,OAAO,CAAC,cAAc;IAQtB,eAAe,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA0HpF,OAAO,IAAI,YAAY;IAIvB,aAAa,IAAI,SAAS,SAAS,EAAE;IAIrC,iBAAiB,IAAI,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC;IAehD,WAAW,IAAI,SAAS,QAAQ,EAAE;IAIlC,YAAY,IAAI,SAAS,CAAC,kBAAkB,CAAC;IAI7C,IAAI,aAAa,IAAI,MAAM,GAAG,SAAS,CAEtC;IAEQ,QAAQ,IAAI,MAAM;IAOlB,oBAAoB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAWxD,YAAY,CAAC,WAAW,EAAE,SAAS,QAAQ,EAAE,GAAG,QAAQ;IA0CxD,cAAc,IAAI,SAAS;QAAE,IAAI,EAAE,cAAc,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,EAAE;IASzF,eAAe,CAAC,WAAW,EAAE,SAAS;QAAE,IAAI,EAAE,cAAc,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,EAAE,GAAG,QAAQ;CA0C/G"}
@@ -11,6 +11,7 @@ import { StatusCode } from '../../common/types.js';
11
11
  import { projectMonotonicOnByAttrId, projectOrdering } from '../framework/physical-utils.js';
12
12
  import { deriveProjectUpdateLineage } from '../analysis/update-lineage.js';
13
13
  import { physicalSourceRows } from '../util/row-estimates.js';
14
+ import { disambiguateColumnNames } from '../util/output-names.js';
14
15
  /**
15
16
  * Resolves the effective output type for a projection expression.
16
17
  *
@@ -59,45 +60,25 @@ export class ProjectNode extends PlanNode {
59
60
  const sourceType = this.source.getType();
60
61
  this.outputTypeCache = new Cached(() => {
61
62
  // Build column names with proper duplicate handling
62
- const columnNames = [];
63
- const nameCount = new Map();
63
+ const columnNames = disambiguateColumnNames(this.projections.map(proj => {
64
+ // Determine base column name
65
+ if (proj.alias)
66
+ return proj.alias;
67
+ // For column references, use the unqualified column name
68
+ if (proj.node instanceof ColumnReferenceNode)
69
+ return proj.node.expression.name;
70
+ // For expressions, use the string representation
71
+ return expressionToString(proj.node.expression);
72
+ }));
64
73
  // Source attribute types by id: a bare column-ref projection inherits the
65
74
  // type the source publishes for its attribute id (the null-extended,
66
75
  // nullable type over an outer join), not its own stale captured `columnType`.
67
76
  const sourceTypeById = this.sourceTypeById();
68
- const columns = this.projections.map((proj) => {
69
- // Determine base column name
70
- let baseName;
71
- if (proj.alias) {
72
- baseName = proj.alias;
73
- }
74
- else if (proj.node instanceof ColumnReferenceNode) {
75
- // For column references, use the unqualified column name
76
- baseName = proj.node.expression.name;
77
- }
78
- else {
79
- // For expressions, use the string representation
80
- baseName = expressionToString(proj.node.expression);
81
- }
82
- // Handle duplicate names
83
- let finalName;
84
- const currentCount = nameCount.get(baseName) || 0;
85
- if (currentCount === 0) {
86
- // First occurrence - use the base name
87
- finalName = baseName;
88
- }
89
- else {
90
- // Subsequent occurrences - add numbered suffix
91
- finalName = `${baseName}:${currentCount}`;
92
- }
93
- nameCount.set(baseName, currentCount + 1);
94
- columnNames.push(finalName);
95
- return {
96
- name: finalName,
97
- type: effectiveProjectionType(proj.node, sourceTypeById),
98
- generated: proj.node.nodeType !== PlanNodeType.ColumnReference,
99
- };
100
- });
77
+ const columns = this.projections.map((proj, index) => ({
78
+ name: columnNames[index],
79
+ type: effectiveProjectionType(proj.node, sourceTypeById),
80
+ generated: proj.node.nodeType !== PlanNodeType.ColumnReference,
81
+ }));
101
82
  const { map } = deriveProjectionColumnMap(this.source.getAttributes(), this.projections.map((p, outIndex) => ({ expr: p.node, outIndex })));
102
83
  const projectedKeys = projectKeys(sourceType.keys, map);
103
84
  // `isSet` soundness: a projection can drop row-distinguishing columns,
@@ -1 +1 @@
1
- {"version":3,"file":"project-node.js","sourceRoot":"","sources":["../../../../src/planner/nodes/project-node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAA0F,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAGpJ,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,yBAAyB,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAC9E,OAAO,EAAE,KAAK,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACtI,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAGnD,OAAO,EAAE,0BAA0B,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAC7F,OAAO,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAiB9D;;;;;;;;;;;;;;;;;GAiBG;AACH,SAAS,uBAAuB,CAC/B,QAAwB,EACxB,cAA+C;IAE/C,IAAI,QAAQ,YAAY,mBAAmB,EAAE,CAAC;QAC7C,OAAO,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;IACvE,CAAC;IACD,OAAO,QAAQ,CAAC,OAAO,EAAE,CAAC;AAC3B,CAAC;AAED;;;GAGG;AACH,MAAM,OAAO,WAAY,SAAQ,QAAQ;IASvB;IACA;IAKA;IAdC,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC;IACzC,mBAAmB,GAAG,IAAa,CAAC;IAErC,eAAe,CAAuB;IACtC,eAAe,CAA+B;IAEtD,YACC,KAAY,EACI,MAA0B,EAC1B,WAAsC,EACtD,qBAA8B;IAC9B,4EAA4E;IAC5E,oBAA2C;IAC3C,sEAAsE;IACtD,uBAAgC,IAAI;QAEpD,KAAK,CAAC,KAAK,EAAE,qBAAqB,CAAC,CAAC;QARpB,WAAM,GAAN,MAAM,CAAoB;QAC1B,gBAAW,GAAX,WAAW,CAA2B;QAKtC,yBAAoB,GAApB,oBAAoB,CAAgB;QAIpD,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QAEzC,IAAI,CAAC,eAAe,GAAG,IAAI,MAAM,CAAC,GAAG,EAAE;YACtC,oDAAoD;YACpD,MAAM,WAAW,GAAa,EAAE,CAAC;YACjC,MAAM,SAAS,GAAG,IAAI,GAAG,EAAkB,CAAC;YAE5C,0EAA0E;YAC1E,qEAAqE;YACrE,8EAA8E;YAC9E,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;YAE7C,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC7C,6BAA6B;gBAC7B,IAAI,QAAgB,CAAC;gBACrB,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;oBAChB,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC;gBACvB,CAAC;qBAAM,IAAI,IAAI,CAAC,IAAI,YAAY,mBAAmB,EAAE,CAAC;oBACrD,yDAAyD;oBACzD,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;gBACtC,CAAC;qBAAM,CAAC;oBACP,iDAAiD;oBACjD,QAAQ,GAAG,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACrD,CAAC;gBAED,yBAAyB;gBACzB,IAAI,SAAiB,CAAC;gBACtB,MAAM,YAAY,GAAG,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAClD,IAAI,YAAY,KAAK,CAAC,EAAE,CAAC;oBACxB,uCAAuC;oBACvC,SAAS,GAAG,QAAQ,CAAC;gBACtB,CAAC;qBAAM,CAAC;oBACP,+CAA+C;oBAC/C,SAAS,GAAG,GAAG,QAAQ,IAAI,YAAY,EAAE,CAAC;gBAC3C,CAAC;gBACD,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,YAAY,GAAG,CAAC,CAAC,CAAC;gBAC1C,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAE5B,OAAO;oBACN,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,uBAAuB,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC;oBACxD,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,KAAK,YAAY,CAAC,eAAe;iBAC9D,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,MAAM,EAAE,GAAG,EAAE,GAAG,yBAAyB,CACxC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,EAC3B,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,CACnE,CAAC;YACF,MAAM,aAAa,GAAG,WAAW,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAExD,uEAAuE;YACvE,sEAAsE;YACtE,sEAAsE;YACtE,oCAAoC;YACpC,qEAAqE;YACrE,6DAA6D;YAC7D,kEAAkE;YAClE,gEAAgE;YAChE,qEAAqE;YACrE,iEAAiE;YACjE,wEAAwE;YACxE,gBAAgB;YAChB,MAAM,KAAK,GAAG,aAAa,CAAC,MAAM,GAAG,CAAC;mBAClC,CAAC,UAAU,CAAC,KAAK,IAAI,GAAG,CAAC,IAAI,KAAK,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAEjE,OAAO;gBACN,SAAS,EAAE,UAAU;gBACrB,UAAU,EAAE,UAAU,CAAC,UAAU;gBACjC,KAAK;gBACL,OAAO;gBACP,IAAI,EAAE,aAAa;gBACnB,wEAAwE;gBACxE,cAAc,EAAE,EAAE;aACK,CAAC;QAC1B,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,eAAe,GAAG,IAAI,MAAM,CAAC,GAAG,EAAE;YACtC,qEAAqE;YACrE,IAAI,oBAAoB,EAAE,CAAC;gBAC1B,OAAO,oBAAoB,CAAC;YAC7B,CAAC;YAED,8CAA8C;YAC9C,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;YAElC,yEAAyE;YACzE,qEAAqE;YACrE,yBAAyB;YACzB,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;YAE7C,2EAA2E;YAC3E,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAChC,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;oBAC7C,EAAE,EAAE,IAAI,CAAC,WAAW,IAAI,QAAQ,CAAC,UAAU,EAAE;oBAC7C,IAAI,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI;oBACpC,IAAI,EAAE,uBAAuB,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC;oBACxD,cAAc,EAAE,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,EAAE,EAAE;oBAC7C,YAAY,EAAE,YAAY;iBAC1B,CAAC,CAAC,CAAC;YACL,CAAC;YAED,0EAA0E;YAC1E,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;gBAC3C,2DAA2D;gBAC3D,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;oBACpC,OAAO;wBACN,EAAE,EAAE,IAAI,CAAC,WAAW;wBACpB,IAAI,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI;wBACpC,IAAI,EAAE,uBAAuB,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC;wBACxD,cAAc,EAAE,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,EAAE,EAAE;wBAC7C,YAAY,EAAE,YAAY;qBAC1B,CAAC;gBACH,CAAC;gBAED,IAAI,IAAI,CAAC,IAAI,YAAY,mBAAmB,EAAE,CAAC;oBAC9C,kEAAkE;oBAClE,kEAAkE;oBAClE,uEAAuE;oBACvE,OAAO;wBACN,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW;wBACzB,IAAI,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI;wBACpC,IAAI,EAAE,uBAAuB,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC;wBACxD,cAAc,EAAE,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,EAAE,EAAE;wBAC7C,YAAY,EAAE,YAAY;qBAC1B,CAAC;gBACH,CAAC;gBAED,sEAAsE;gBACtE,OAAO;oBACN,EAAE,EAAE,QAAQ,CAAC,UAAU,EAAE;oBACzB,IAAI,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI;oBACpC,IAAI,EAAE,uBAAuB,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC;oBACxD,cAAc,EAAE,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,EAAE,EAAE;oBAC7C,YAAY,EAAE,YAAY;iBAC1B,CAAC;YACH,CAAC,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;IACJ,CAAC;IAED;;;6EAGyE;IACjE,cAAc;QACrB,MAAM,GAAG,GAAG,IAAI,GAAG,EAAsB,CAAC;QAC1C,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,EAAE,CAAC;YAChD,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC;QACD,OAAO,GAAG,CAAC;IACZ,CAAC;IAED,eAAe,CAAC,gBAAsC;QACrD,MAAM,cAAc,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;QAC3C,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;QAChD,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;QAE/C,0EAA0E;QAC1E,2EAA2E;QAC3E,6CAA6C;QAC7C,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAU,CAAC;QAC3C,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrC,IAAI,IAAI,CAAC,IAAI,YAAY,mBAAmB,EAAE,CAAC;gBAC9C,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC7C,CAAC;QACF,CAAC;QAED,MAAM,EAAE,GAAG,EAAE,cAAc,EAAE,GAAG,yBAAyB,CACxD,WAAW,EACX,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,CACnE,CAAC;QAEF,2EAA2E;QAC3E,+EAA+E;QAC/E,qEAAqE;QACrE,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;QACvF,MAAM,aAAa,GAAe,EAAE,CAAC;QACrC,KAAK,MAAM,GAAG,IAAI,iBAAiB,EAAE,CAAC;YACrC,MAAM,SAAS,GAAa,EAAE,CAAC;YAC/B,IAAI,IAAI,GAAG,KAAK,CAAC;YACjB,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;gBACvB,MAAM,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAC5B,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;oBAAC,IAAI,GAAG,IAAI,CAAC;oBAAC,MAAM;gBAAC,CAAC;gBACjD,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACxB,CAAC;YACD,IAAI,CAAC,IAAI;gBAAE,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1C,CAAC;QAED,wEAAwE;QACxE,2EAA2E;QAC3E,kEAAkE;QAClE,KAAK,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,cAAc,EAAE,CAAC;YAC/C,MAAM,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAChC,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,MAAM;gBAAE,SAAS;YAC1D,MAAM,QAAQ,GAAe,EAAE,CAAC;YAChC,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;gBACjC,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;oBACpD,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC3D,CAAC;YACF,CAAC;YACD,aAAa,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC;QACjC,CAAC;QAED,2EAA2E;QAC3E,0EAA0E;QAC1E,0EAA0E;QAC1E,8DAA8D;QAC9D,0EAA0E;QAC1E,IAAI,GAAG,GAAG,UAAU,CAAC,cAAc,EAAE,GAAG,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;QACrD,wEAAwE;QACxE,oEAAoE;QACpE,mCAAmC;QACnC,MAAM,eAAe,GAA2B,EAAE,CAAC;QACnD,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;YACjC,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;YAChD,IAAI,KAAK;gBAAE,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxC,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,eAAe,EAAE,CAAC;YACrC,GAAG,GAAG,KAAK,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC,CAAC;QACtD,CAAC;QACD,2EAA2E;QAC3E,mEAAmE;QACnE,8DAA8D;QAC9D,qEAAqE;QACrE,2EAA2E;QAC3E,yEAAyE;QACzE,2DAA2D;QAC3D,uEAAuE;QACvE,KAAK,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,cAAc,EAAE,CAAC;YAC/C,MAAM,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAChC,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,MAAM;gBAAE,SAAS;YAC1D,GAAG,GAAG,KAAK,CAAC,GAAG,EAAE,EAAE,YAAY,EAAE,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,EAAE,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC,CAAC;YACxH,GAAG,GAAG,KAAK,CAAC,GAAG,EAAE,EAAE,YAAY,EAAE,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,EAAE,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC,CAAC;QACzH,CAAC;QACD,MAAM,cAAc,GAAe,EAAE,CAAC;QACtC,KAAK,MAAM,GAAG,IAAI,cAAc,EAAE,YAAY,IAAI,EAAE,EAAE,CAAC;YACtD,MAAM,MAAM,GAAa,EAAE,CAAC;YAC5B,KAAK,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;gBACrB,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBACvB,IAAI,GAAG,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC;oBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAClE,CAAC;YACD,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC;gBAAE,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC3E,CAAC;QACD,MAAM,iBAAiB,GAAG,uBAAuB,CAAC,cAAc,EAAE,gBAAgB,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;QAC/F,MAAM,gBAAgB,GAAG,wBAAwB,CAAC,cAAc,EAAE,iBAAiB,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;QAChG,2EAA2E;QAC3E,oEAAoE;QACpE,MAAM,aAAa,GAAG,WAAW,CAAC,cAAc,EAAE,IAAI,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;QAEnE,2EAA2E;QAC3E,uEAAuE;QACvE,4EAA4E;QAC5E,uCAAuC;QACvC,MAAM,EAAE,aAAa,EAAE,iBAAiB,EAAE,GAAG,0BAA0B,CACtE,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,aAAa,EAAE,EACpB,cAAc,EAAE,aAAa,EAC7B,cAAc,EAAE,iBAAiB,CACjC,CAAC;QAEF,OAAO;YACN,aAAa,EAAE,kBAAkB,CAAC,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC;YAC9D,QAAQ,EAAE,eAAe,CAAC,cAAc,EAAE,QAAQ,EAAE,GAAG,CAAC;YACxD,WAAW,EAAE,0BAA0B,CAAC,cAAc,EAAE,WAAW,EAAE,gBAAgB,CAAC;YACtF,GAAG,EAAE,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS;YACrC,YAAY,EAAE,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS;YACpE,gBAAgB,EAAE,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,SAAS;YAC9E,iBAAiB,EAAE,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS;YAC7E,IAAI,EAAE,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS;YAC1D,aAAa;YACb,iBAAiB;SACjB,CAAC;IACH,CAAC;IAED,OAAO;QACN,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;IACnC,CAAC;IAED,aAAa;QACZ,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;IACnC,CAAC;IAED,iBAAiB;QAChB,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QACxC,MAAM,GAAG,GAAG,IAAI,GAAG,EAA0B,CAAC;QAE9C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAClD,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;YACjC,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAC3B,IAAI,IAAI,EAAE,CAAC;gBACV,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAC7B,CAAC;QACF,CAAC;QAED,OAAO,GAAG,CAAC;IACZ,CAAC;IAED,WAAW;QACV,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED,YAAY;QACX,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACtB,CAAC;IAED,IAAI,aAAa;QAChB,OAAO,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,4EAA4E;IAC/G,CAAC;IAEQ,QAAQ;QAChB,MAAM,iBAAiB,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAClD,gBAAgB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CACjC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACb,OAAO,UAAU,iBAAiB,EAAE,CAAC;IACtC,CAAC;IAEQ,oBAAoB;QAC5B,OAAO;YACN,eAAe,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM;YACxC,UAAU,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACjE,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACvC,UAAU,EAAE,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;gBACjD,KAAK,EAAE,CAAC,CAAC,KAAK;aACd,CAAC,CAAC;SACH,CAAC;IACH,CAAC;IAED,YAAY,CAAC,WAAgC;QAC5C,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;YACxD,YAAY,CAAC,uBAAuB,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,kBAAkB,WAAW,CAAC,MAAM,EAAE,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC7H,CAAC;QAED,MAAM,CAAC,SAAS,EAAE,GAAG,kBAAkB,CAAC,GAAG,WAAW,CAAC;QAEvD,aAAa;QACb,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC;YAClC,YAAY,CAAC,uDAAuD,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC5F,CAAC;QAED,4BAA4B;QAC5B,MAAM,aAAa,GAAG,SAAS,KAAK,IAAI,CAAC,MAAM,CAAC;QAChD,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAEnG,IAAI,CAAC,aAAa,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC3C,OAAO,IAAI,CAAC;QACb,CAAC;QAED,uFAAuF;QACvF,MAAM,kBAAkB,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QAEhD,2DAA2D;QAC3D,MAAM,cAAc,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YAC3D,IAAI,EAAE,IAAsB;YAC5B,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK;YAChC,WAAW,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,iCAAiC;SACvE,CAAC,CAAC,CAAC;QAEJ,iDAAiD;QACjD,OAAO,IAAI,WAAW,CACrB,IAAI,CAAC,KAAK,EACV,SAA+B,EAC/B,cAAc,EACd,SAAS,EAAE,wBAAwB;QACnC,kBAAkB,EAAE,2CAA2C;QAC/D,IAAI,CAAC,oBAAoB,CAAC,oBAAoB;SAC9C,CAAC;IACH,CAAC;IAED,6CAA6C;IAC7C,cAAc;QACb,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QACxC,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;YAC7C,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,IAAI;YAC3C,WAAW,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE;SACjC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,eAAe,CAAC,WAAoF;QACnG,wCAAwC;QACxC,MAAM,cAAc,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC/C,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,WAAW,EAAE,IAAI,CAAC,WAAW;SAC7B,CAAC,CAAC,CAAC;QAEJ,4BAA4B;QAC5B,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM,KAAK,IAAI,CAAC,WAAW,CAAC,MAAM;YAChE,cAAc,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAC/B,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI;gBACtC,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK;gBACxC,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CACpD,CAAC;QAEH,IAAI,CAAC,OAAO,EAAE,CAAC;YACd,OAAO,IAAI,CAAC;QACb,CAAC;QAED,0EAA0E;QAC1E,+EAA+E;QAC/E,+EAA+E;QAC/E,qEAAqE;QACrE,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC7C,MAAM,oBAAoB,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACrD,EAAE,EAAE,IAAI,CAAC,WAAW;YACpB,IAAI,EAAE,IAAI,CAAC,KAAK;YAChB,IAAI,EAAE,uBAAuB,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC;YACxD,cAAc,EAAE,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,EAAE,EAAE;YAC7C,YAAY,EAAE,YAAY;SAC1B,CAAC,CAAC,CAAC;QAEJ,OAAO,IAAI,WAAW,CACrB,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,MAAM,EACX,cAAc,EACd,SAAS,EAAE,wBAAwB;QACnC,oBAAoB,EACpB,IAAI,CAAC,oBAAoB,CACzB,CAAC;IACH,CAAC;CACD"}
1
+ {"version":3,"file":"project-node.js","sourceRoot":"","sources":["../../../../src/planner/nodes/project-node.ts"],"names":[],"mappings":"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"}