pond-ts 0.17.1 → 0.18.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 (349) hide show
  1. package/CHANGELOG.md +106 -1
  2. package/dist/{aggregate-columns.d.ts → batch/aggregate-columns.d.ts} +1 -1
  3. package/dist/batch/aggregate-columns.d.ts.map +1 -0
  4. package/dist/{aggregate-columns.js → batch/aggregate-columns.js} +1 -1
  5. package/dist/batch/aggregate-columns.js.map +1 -0
  6. package/dist/batch/index.d.ts +3 -0
  7. package/dist/batch/index.d.ts.map +1 -0
  8. package/dist/batch/index.js +3 -0
  9. package/dist/batch/index.js.map +1 -0
  10. package/dist/{json.d.ts → batch/json.d.ts} +3 -3
  11. package/dist/batch/json.d.ts.map +1 -0
  12. package/dist/{json.js → batch/json.js} +4 -4
  13. package/dist/batch/json.js.map +1 -0
  14. package/dist/{PartitionedTimeSeries.d.ts → batch/partitioned-time-series.d.ts} +9 -9
  15. package/dist/batch/partitioned-time-series.d.ts.map +1 -0
  16. package/dist/{PartitionedTimeSeries.js → batch/partitioned-time-series.js} +4 -4
  17. package/dist/batch/partitioned-time-series.js.map +1 -0
  18. package/dist/{TimeSeries.d.ts → batch/time-series.d.ts} +171 -41
  19. package/dist/batch/time-series.d.ts.map +1 -0
  20. package/dist/{TimeSeries.js → batch/time-series.js} +311 -50
  21. package/dist/batch/time-series.js.map +1 -0
  22. package/dist/batch/validate.d.ts +44 -0
  23. package/dist/batch/validate.d.ts.map +1 -0
  24. package/dist/batch/validate.js +435 -0
  25. package/dist/batch/validate.js.map +1 -0
  26. package/dist/column.d.ts +396 -0
  27. package/dist/column.d.ts.map +1 -0
  28. package/dist/column.js +767 -0
  29. package/dist/column.js.map +1 -0
  30. package/dist/columnar/array-column.d.ts +68 -0
  31. package/dist/columnar/array-column.d.ts.map +1 -0
  32. package/dist/columnar/array-column.js +233 -0
  33. package/dist/columnar/array-column.js.map +1 -0
  34. package/dist/columnar/builder.d.ts +126 -0
  35. package/dist/columnar/builder.d.ts.map +1 -0
  36. package/dist/columnar/builder.js +516 -0
  37. package/dist/columnar/builder.js.map +1 -0
  38. package/dist/columnar/chunked-column.d.ts +235 -0
  39. package/dist/columnar/chunked-column.d.ts.map +1 -0
  40. package/dist/columnar/chunked-column.js +738 -0
  41. package/dist/columnar/chunked-column.js.map +1 -0
  42. package/dist/columnar/column.d.ts +175 -0
  43. package/dist/columnar/column.d.ts.map +1 -0
  44. package/dist/columnar/column.js +231 -0
  45. package/dist/columnar/column.js.map +1 -0
  46. package/dist/columnar/concat.d.ts +47 -0
  47. package/dist/columnar/concat.d.ts.map +1 -0
  48. package/dist/columnar/concat.js +418 -0
  49. package/dist/columnar/concat.js.map +1 -0
  50. package/dist/columnar/index.d.ts +41 -0
  51. package/dist/columnar/index.d.ts.map +1 -0
  52. package/dist/columnar/index.js +40 -0
  53. package/dist/columnar/index.js.map +1 -0
  54. package/dist/columnar/key-column.d.ts +235 -0
  55. package/dist/columnar/key-column.d.ts.map +1 -0
  56. package/dist/columnar/key-column.js +477 -0
  57. package/dist/columnar/key-column.js.map +1 -0
  58. package/dist/columnar/ring-buffer.d.ts +112 -0
  59. package/dist/columnar/ring-buffer.d.ts.map +1 -0
  60. package/dist/columnar/ring-buffer.js +943 -0
  61. package/dist/columnar/ring-buffer.js.map +1 -0
  62. package/dist/columnar/scatter.d.ts +78 -0
  63. package/dist/columnar/scatter.d.ts.map +1 -0
  64. package/dist/columnar/scatter.js +126 -0
  65. package/dist/columnar/scatter.js.map +1 -0
  66. package/dist/columnar/store.d.ts +80 -0
  67. package/dist/columnar/store.d.ts.map +1 -0
  68. package/dist/columnar/store.js +167 -0
  69. package/dist/columnar/store.js.map +1 -0
  70. package/dist/columnar/string-column.d.ts +200 -0
  71. package/dist/columnar/string-column.d.ts.map +1 -0
  72. package/dist/columnar/string-column.js +500 -0
  73. package/dist/columnar/string-column.js.map +1 -0
  74. package/dist/columnar/types.d.ts +51 -0
  75. package/dist/columnar/types.d.ts.map +1 -0
  76. package/dist/columnar/types.js +14 -0
  77. package/dist/columnar/types.js.map +1 -0
  78. package/dist/columnar/validity.d.ts +121 -0
  79. package/dist/columnar/validity.d.ts.map +1 -0
  80. package/dist/columnar/validity.js +358 -0
  81. package/dist/columnar/validity.js.map +1 -0
  82. package/dist/columnar/view.d.ts +97 -0
  83. package/dist/columnar/view.d.ts.map +1 -0
  84. package/dist/columnar/view.js +300 -0
  85. package/dist/columnar/view.js.map +1 -0
  86. package/dist/core/calendar.d.ts.map +1 -0
  87. package/dist/core/calendar.js.map +1 -0
  88. package/dist/core/duration.d.ts.map +1 -0
  89. package/dist/core/duration.js.map +1 -0
  90. package/dist/core/errors.d.ts.map +1 -0
  91. package/dist/core/errors.js.map +1 -0
  92. package/dist/{Event.d.ts → core/event.d.ts} +5 -5
  93. package/dist/core/event.d.ts.map +1 -0
  94. package/dist/{Event.js → core/event.js} +5 -5
  95. package/dist/core/event.js.map +1 -0
  96. package/dist/core/index.d.ts +9 -0
  97. package/dist/core/index.d.ts.map +1 -0
  98. package/dist/core/index.js +6 -0
  99. package/dist/core/index.js.map +1 -0
  100. package/dist/{Interval.d.ts → core/interval.d.ts} +2 -2
  101. package/dist/core/interval.d.ts.map +1 -0
  102. package/dist/{Interval.js → core/interval.js} +2 -2
  103. package/dist/core/interval.js.map +1 -0
  104. package/dist/{temporal.d.ts → core/temporal.d.ts} +3 -3
  105. package/dist/core/temporal.d.ts.map +1 -0
  106. package/dist/core/temporal.js.map +1 -0
  107. package/dist/{TimeRange.d.ts → core/time-range.d.ts} +1 -1
  108. package/dist/core/time-range.d.ts.map +1 -0
  109. package/dist/{TimeRange.js → core/time-range.js} +1 -1
  110. package/dist/core/time-range.js.map +1 -0
  111. package/dist/{Time.d.ts → core/time.d.ts} +2 -2
  112. package/dist/core/time.d.ts.map +1 -0
  113. package/dist/{Time.js → core/time.js} +2 -2
  114. package/dist/core/time.js.map +1 -0
  115. package/dist/index.d.ts +38 -30
  116. package/dist/index.d.ts.map +1 -1
  117. package/dist/index.js +55 -18
  118. package/dist/index.js.map +1 -1
  119. package/dist/live/index.d.ts +20 -0
  120. package/dist/live/index.d.ts.map +1 -0
  121. package/dist/live/index.js +12 -0
  122. package/dist/live/index.js.map +1 -0
  123. package/dist/{LiveAggregation.d.ts → live/live-aggregation.d.ts} +10 -10
  124. package/dist/live/live-aggregation.d.ts.map +1 -0
  125. package/dist/{LiveAggregation.js → live/live-aggregation.js} +9 -9
  126. package/dist/live/live-aggregation.js.map +1 -0
  127. package/dist/live/live-chunked-storage.d.ts +78 -0
  128. package/dist/live/live-chunked-storage.d.ts.map +1 -0
  129. package/dist/live/live-chunked-storage.js +274 -0
  130. package/dist/live/live-chunked-storage.js.map +1 -0
  131. package/dist/{LiveFusedRolling.d.ts → live/live-fused-rolling.d.ts} +4 -4
  132. package/dist/live/live-fused-rolling.d.ts.map +1 -0
  133. package/dist/{LiveFusedRolling.js → live/live-fused-rolling.js} +6 -6
  134. package/dist/live/live-fused-rolling.js.map +1 -0
  135. package/dist/{live-history.d.ts → live/live-history.d.ts} +1 -1
  136. package/dist/live/live-history.d.ts.map +1 -0
  137. package/dist/{live-history.js → live/live-history.js} +1 -1
  138. package/dist/live/live-history.js.map +1 -0
  139. package/dist/{LivePartitionedFusedRolling.d.ts → live/live-partitioned-fused-rolling.d.ts} +3 -3
  140. package/dist/live/live-partitioned-fused-rolling.d.ts.map +1 -0
  141. package/dist/{LivePartitionedFusedRolling.js → live/live-partitioned-fused-rolling.js} +6 -6
  142. package/dist/live/live-partitioned-fused-rolling.js.map +1 -0
  143. package/dist/{LivePartitionedSeries.d.ts → live/live-partitioned-series.d.ts} +11 -11
  144. package/dist/live/live-partitioned-series.d.ts.map +1 -0
  145. package/dist/{LivePartitionedSeries.js → live/live-partitioned-series.js} +19 -6
  146. package/dist/live/live-partitioned-series.js.map +1 -0
  147. package/dist/{LivePartitionedSyncRolling.d.ts → live/live-partitioned-sync-rolling.d.ts} +3 -3
  148. package/dist/live/live-partitioned-sync-rolling.d.ts.map +1 -0
  149. package/dist/{LivePartitionedSyncRolling.js → live/live-partitioned-sync-rolling.js} +6 -6
  150. package/dist/live/live-partitioned-sync-rolling.js.map +1 -0
  151. package/dist/{LiveReduce.d.ts → live/live-reduce.d.ts} +22 -9
  152. package/dist/live/live-reduce.d.ts.map +1 -0
  153. package/dist/{LiveReduce.js → live/live-reduce.js} +89 -21
  154. package/dist/live/live-reduce.js.map +1 -0
  155. package/dist/{LiveRollingAggregation.d.ts → live/live-rolling-aggregation.d.ts} +8 -8
  156. package/dist/live/live-rolling-aggregation.d.ts.map +1 -0
  157. package/dist/{LiveRollingAggregation.js → live/live-rolling-aggregation.js} +8 -8
  158. package/dist/live/live-rolling-aggregation.js.map +1 -0
  159. package/dist/{LiveSeries.d.ts → live/live-series.d.ts} +42 -15
  160. package/dist/live/live-series.d.ts.map +1 -0
  161. package/dist/{LiveSeries.js → live/live-series.js} +280 -103
  162. package/dist/live/live-series.js.map +1 -0
  163. package/dist/live/live-storage.d.ts +155 -0
  164. package/dist/live/live-storage.d.ts.map +1 -0
  165. package/dist/live/live-storage.js +142 -0
  166. package/dist/live/live-storage.js.map +1 -0
  167. package/dist/{LiveView.d.ts → live/live-view.d.ts} +11 -11
  168. package/dist/live/live-view.d.ts.map +1 -0
  169. package/dist/{LiveView.js → live/live-view.js} +10 -10
  170. package/dist/live/live-view.js.map +1 -0
  171. package/dist/live/series-store.d.ts +212 -0
  172. package/dist/live/series-store.d.ts.map +1 -0
  173. package/dist/live/series-store.js +539 -0
  174. package/dist/live/series-store.js.map +1 -0
  175. package/dist/{triggers.d.ts → live/triggers.d.ts} +3 -3
  176. package/dist/live/triggers.d.ts.map +1 -0
  177. package/dist/{triggers.js → live/triggers.js} +1 -1
  178. package/dist/live/triggers.js.map +1 -0
  179. package/dist/reducers/avg.d.ts.map +1 -1
  180. package/dist/reducers/avg.js +22 -0
  181. package/dist/reducers/avg.js.map +1 -1
  182. package/dist/reducers/count.d.ts.map +1 -1
  183. package/dist/reducers/count.js +6 -0
  184. package/dist/reducers/count.js.map +1 -1
  185. package/dist/reducers/index.d.ts +1 -1
  186. package/dist/reducers/index.d.ts.map +1 -1
  187. package/dist/reducers/max.d.ts.map +1 -1
  188. package/dist/reducers/max.js +27 -0
  189. package/dist/reducers/max.js.map +1 -1
  190. package/dist/reducers/median.d.ts.map +1 -1
  191. package/dist/reducers/median.js +4 -1
  192. package/dist/reducers/median.js.map +1 -1
  193. package/dist/reducers/min.d.ts.map +1 -1
  194. package/dist/reducers/min.js +40 -0
  195. package/dist/reducers/min.js.map +1 -1
  196. package/dist/reducers/percentile.d.ts +36 -0
  197. package/dist/reducers/percentile.d.ts.map +1 -1
  198. package/dist/reducers/percentile.js +91 -0
  199. package/dist/reducers/percentile.js.map +1 -1
  200. package/dist/reducers/rolling.d.ts +1 -1
  201. package/dist/reducers/rolling.d.ts.map +1 -1
  202. package/dist/reducers/stdev.d.ts.map +1 -1
  203. package/dist/reducers/stdev.js +57 -0
  204. package/dist/reducers/stdev.js.map +1 -1
  205. package/dist/reducers/sum.d.ts.map +1 -1
  206. package/dist/reducers/sum.js +19 -0
  207. package/dist/reducers/sum.js.map +1 -1
  208. package/dist/reducers/types.d.ts +35 -1
  209. package/dist/reducers/types.d.ts.map +1 -1
  210. package/dist/schema/aggregate.d.ts +150 -0
  211. package/dist/schema/aggregate.d.ts.map +1 -0
  212. package/dist/schema/aggregate.js +2 -0
  213. package/dist/schema/aggregate.js.map +1 -0
  214. package/dist/schema/diff.d.ts +29 -0
  215. package/dist/schema/diff.d.ts.map +1 -0
  216. package/dist/schema/diff.js +2 -0
  217. package/dist/schema/diff.js.map +1 -0
  218. package/dist/schema/events.d.ts +65 -0
  219. package/dist/schema/events.d.ts.map +1 -0
  220. package/dist/schema/events.js +2 -0
  221. package/dist/schema/events.js.map +1 -0
  222. package/dist/schema/index.d.ts +11 -0
  223. package/dist/schema/index.d.ts.map +1 -0
  224. package/dist/schema/index.js +2 -0
  225. package/dist/schema/index.js.map +1 -0
  226. package/dist/schema/join.d.ts +39 -0
  227. package/dist/schema/join.d.ts.map +1 -0
  228. package/dist/schema/join.js +2 -0
  229. package/dist/schema/join.js.map +1 -0
  230. package/dist/schema/json.d.ts +47 -0
  231. package/dist/schema/json.d.ts.map +1 -0
  232. package/dist/schema/json.js +2 -0
  233. package/dist/schema/json.js.map +1 -0
  234. package/dist/{types-public.d.ts → schema/public.d.ts} +2 -2
  235. package/dist/schema/public.d.ts.map +1 -0
  236. package/dist/schema/public.js +2 -0
  237. package/dist/schema/public.js.map +1 -0
  238. package/dist/{types-reduce.d.ts → schema/reduce.d.ts} +4 -3
  239. package/dist/schema/reduce.d.ts.map +1 -0
  240. package/dist/schema/reduce.js +2 -0
  241. package/dist/schema/reduce.js.map +1 -0
  242. package/dist/schema/reshape.d.ts +89 -0
  243. package/dist/schema/reshape.d.ts.map +1 -0
  244. package/dist/schema/reshape.js +2 -0
  245. package/dist/schema/reshape.js.map +1 -0
  246. package/dist/{types-fused-rolling.d.ts → schema/rolling.d.ts} +10 -4
  247. package/dist/schema/rolling.d.ts.map +1 -0
  248. package/dist/schema/rolling.js +2 -0
  249. package/dist/schema/rolling.js.map +1 -0
  250. package/dist/schema/series.d.ts +79 -0
  251. package/dist/schema/series.d.ts.map +1 -0
  252. package/dist/{types.js → schema/series.js} +1 -1
  253. package/dist/schema/series.js.map +1 -0
  254. package/dist/{BoundedSequence.d.ts → sequence/bounded-sequence.d.ts} +3 -3
  255. package/dist/sequence/bounded-sequence.d.ts.map +1 -0
  256. package/dist/{BoundedSequence.js → sequence/bounded-sequence.js} +2 -2
  257. package/dist/sequence/bounded-sequence.js.map +1 -0
  258. package/dist/sequence/index.d.ts +6 -0
  259. package/dist/sequence/index.d.ts.map +1 -0
  260. package/dist/sequence/index.js +3 -0
  261. package/dist/sequence/index.js.map +1 -0
  262. package/dist/sequence/sample.d.ts.map +1 -0
  263. package/dist/sequence/sample.js.map +1 -0
  264. package/dist/{Sequence.d.ts → sequence/sequence.d.ts} +5 -5
  265. package/dist/sequence/sequence.d.ts.map +1 -0
  266. package/dist/{Sequence.js → sequence/sequence.js} +7 -7
  267. package/dist/sequence/sequence.js.map +1 -0
  268. package/package.json +6 -3
  269. package/dist/BoundedSequence.d.ts.map +0 -1
  270. package/dist/BoundedSequence.js.map +0 -1
  271. package/dist/Event.d.ts.map +0 -1
  272. package/dist/Event.js.map +0 -1
  273. package/dist/Interval.d.ts.map +0 -1
  274. package/dist/Interval.js.map +0 -1
  275. package/dist/LiveAggregation.d.ts.map +0 -1
  276. package/dist/LiveAggregation.js.map +0 -1
  277. package/dist/LiveFusedRolling.d.ts.map +0 -1
  278. package/dist/LiveFusedRolling.js.map +0 -1
  279. package/dist/LivePartitionedFusedRolling.d.ts.map +0 -1
  280. package/dist/LivePartitionedFusedRolling.js.map +0 -1
  281. package/dist/LivePartitionedSeries.d.ts.map +0 -1
  282. package/dist/LivePartitionedSeries.js.map +0 -1
  283. package/dist/LivePartitionedSyncRolling.d.ts.map +0 -1
  284. package/dist/LivePartitionedSyncRolling.js.map +0 -1
  285. package/dist/LiveReduce.d.ts.map +0 -1
  286. package/dist/LiveReduce.js.map +0 -1
  287. package/dist/LiveRollingAggregation.d.ts.map +0 -1
  288. package/dist/LiveRollingAggregation.js.map +0 -1
  289. package/dist/LiveSeries.d.ts.map +0 -1
  290. package/dist/LiveSeries.js.map +0 -1
  291. package/dist/LiveView.d.ts.map +0 -1
  292. package/dist/LiveView.js.map +0 -1
  293. package/dist/PartitionedTimeSeries.d.ts.map +0 -1
  294. package/dist/PartitionedTimeSeries.js.map +0 -1
  295. package/dist/Sequence.d.ts.map +0 -1
  296. package/dist/Sequence.js.map +0 -1
  297. package/dist/Time.d.ts.map +0 -1
  298. package/dist/Time.js.map +0 -1
  299. package/dist/TimeRange.d.ts.map +0 -1
  300. package/dist/TimeRange.js.map +0 -1
  301. package/dist/TimeSeries.d.ts.map +0 -1
  302. package/dist/TimeSeries.js.map +0 -1
  303. package/dist/aggregate-columns.d.ts.map +0 -1
  304. package/dist/aggregate-columns.js.map +0 -1
  305. package/dist/calendar.d.ts.map +0 -1
  306. package/dist/calendar.js.map +0 -1
  307. package/dist/errors.d.ts.map +0 -1
  308. package/dist/errors.js.map +0 -1
  309. package/dist/json.d.ts.map +0 -1
  310. package/dist/json.js.map +0 -1
  311. package/dist/live-history.d.ts.map +0 -1
  312. package/dist/live-history.js.map +0 -1
  313. package/dist/sample.d.ts.map +0 -1
  314. package/dist/sample.js.map +0 -1
  315. package/dist/temporal.d.ts.map +0 -1
  316. package/dist/temporal.js.map +0 -1
  317. package/dist/triggers.d.ts.map +0 -1
  318. package/dist/triggers.js.map +0 -1
  319. package/dist/types-aggregate.d.ts +0 -61
  320. package/dist/types-aggregate.d.ts.map +0 -1
  321. package/dist/types-aggregate.js +0 -2
  322. package/dist/types-aggregate.js.map +0 -1
  323. package/dist/types-fused-rolling.d.ts.map +0 -1
  324. package/dist/types-fused-rolling.js +0 -2
  325. package/dist/types-fused-rolling.js.map +0 -1
  326. package/dist/types-public.d.ts.map +0 -1
  327. package/dist/types-public.js +0 -2
  328. package/dist/types-public.js.map +0 -1
  329. package/dist/types-reduce.d.ts.map +0 -1
  330. package/dist/types-reduce.js +0 -2
  331. package/dist/types-reduce.js.map +0 -1
  332. package/dist/types.d.ts +0 -416
  333. package/dist/types.d.ts.map +0 -1
  334. package/dist/types.js.map +0 -1
  335. package/dist/utils/duration.d.ts.map +0 -1
  336. package/dist/utils/duration.js.map +0 -1
  337. package/dist/validate.d.ts +0 -3
  338. package/dist/validate.d.ts.map +0 -1
  339. package/dist/validate.js +0 -171
  340. package/dist/validate.js.map +0 -1
  341. /package/dist/{calendar.d.ts → core/calendar.d.ts} +0 -0
  342. /package/dist/{calendar.js → core/calendar.js} +0 -0
  343. /package/dist/{utils → core}/duration.d.ts +0 -0
  344. /package/dist/{utils → core}/duration.js +0 -0
  345. /package/dist/{errors.d.ts → core/errors.d.ts} +0 -0
  346. /package/dist/{errors.js → core/errors.js} +0 -0
  347. /package/dist/{temporal.js → core/temporal.js} +0 -0
  348. /package/dist/{sample.d.ts → sequence/sample.d.ts} +0 -0
  349. /package/dist/{sample.js → sequence/sample.js} +0 -0
package/CHANGELOG.md CHANGED
@@ -7,10 +7,115 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
7
7
  file covers both packages. Pre-1.0: minor bumps may include new features and
8
8
  type-level changes; patch bumps are strictly additive.
9
9
 
10
- [Unreleased]: https://github.com/pjm17971/pond-ts/compare/v0.17.1...HEAD
10
+ [Unreleased]: https://github.com/pjm17971/pond-ts/compare/v0.18.0...HEAD
11
+ [0.18.0]: https://github.com/pjm17971/pond-ts/compare/v0.17.1...v0.18.0
11
12
 
12
13
  ## [Unreleased]
13
14
 
15
+ ## [0.18.0] — 2026-05-30
16
+
17
+ This release graduates the **Phase 4.7 columnar substrate** from
18
+ framework-internal (shipped piecemeal to `main` since v0.17.1) to a
19
+ user-visible **public column API**, plus a column-native live buffer that
20
+ fixes a high-partition-count OOM. Everything is additive except one
21
+ documented breaking change (interval label kinds) and one documented
22
+ behavior change (chunked-backed `pushMany` commit semantics). Pre-1.0: the
23
+ column API is expected to keep moving toward its eventual shape.
24
+
25
+ ### Added
26
+
27
+ - **Public column API (Phase 4.7 step 8).** A column-centric extraction
28
+ surface on `TimeSeries`, for high-throughput and charting consumers that
29
+ want typed-array access instead of per-`Event` iteration. Additive — every
30
+ existing row / `Event` API is unchanged.
31
+ - `series.column(name)` returns a schema-narrowed typed column view, with
32
+ public re-exports of the `Float64Column` / `BooleanColumn` /
33
+ `StringColumn` / `KeyColumn` (time / timeRange / interval) variants
34
+ ([#154](https://github.com/pjm17971/pond-ts/pull/154),
35
+ [#155](https://github.com/pjm17971/pond-ts/pull/155)).
36
+ - `Float64Column`: scalar reductions (`min` / `max` / `sum` / `mean` /
37
+ `count` / …) and `scan`
38
+ ([#155](https://github.com/pjm17971/pond-ts/pull/155)); `bin(...)` for
39
+ histogram / downsample bucketing
40
+ ([#156](https://github.com/pjm17971/pond-ts/pull/156)); and
41
+ `toFloat64Array()` for a storage-agnostic gather into a dense array
42
+ ([#165](https://github.com/pjm17971/pond-ts/pull/165)).
43
+ - `KeyColumn.at(i)` and `.slice(start, end)`
44
+ ([#159](https://github.com/pjm17971/pond-ts/pull/159)).
45
+ - **Columnar substrate (Phase 4.7 step 1, framework layer).** All
46
+ eight sub-steps (1a–1h) shipped to main as PRs #132 / #133 /
47
+ #134 / #135 / #136 / #147 / #148 / #149. See `PLAN.md` and
48
+ [`packages/core/src/columnar/README.md`](packages/core/src/columnar/README.md)
49
+ for the full inventory. Framework-internal — surfaced behind the existing
50
+ `TimeSeries` API at step 2 (below) and the public column API at step 8
51
+ (above).
52
+
53
+ ### Changed
54
+
55
+ - **Chunked columnar live backing for strict time-keyed `LiveSeries`**
56
+ ([#170](https://github.com/pjm17971/pond-ts/pull/170)). A top-level
57
+ `LiveSeries` with `ordering: 'strict'` and a time key now backs its
58
+ retained window with batch-granular columnar chunks instead of an
59
+ `Event[]` window — each `pushMany` validates straight into typed columns,
60
+ retaining **zero `Event` objects** (~4.7× less retained heap in-pond; the
61
+ high-partition-count OOM fix). Two consequences:
62
+ - **`pushMany` commit semantics** on the chunked path: the batch is
63
+ appended atomically _before_ any `'event'` fires, so a listener observes
64
+ the full post-batch `length` (not a row-by-row `1, 2, 3`), and a listener
65
+ that throws mid-batch leaves the whole batch committed. The per-row
66
+ `Event[]` backing (`reorder` / `drop` / interval-keyed /
67
+ internally-created series) keeps per-row commit. Listener _values_ and
68
+ `event → batch → evict` ordering are unchanged.
69
+ - **`LiveReduce` eviction** resolves by event identity (primary) with a
70
+ FIFO-frontier fallback for the chunked backing's materialized evictions —
71
+ correct for both `reorder` and the chunked backing. `min` / `max` /
72
+ `first` / `last` / `samples` over a `reorder` source **with retention**
73
+ remain a documented limitation (see `LiveReduce` JSDoc and PLAN
74
+ "Deferred") — pre-existing, not introduced here.
75
+ - **Internal, behavior-preserving performance work.** Column-native intake
76
+ bypasses per-row `Event` allocation at `TimeSeries` construction
77
+ ([#151](https://github.com/pjm17971/pond-ts/pull/151)); numeric reducers
78
+ (`min` / `max` / `sum` / `avg` / …) compute over typed-array columns where
79
+ available, with NaN parity preserved
80
+ ([#153](https://github.com/pjm17971/pond-ts/pull/153)); the live storage
81
+ strategy was extracted behind an internal interface
82
+ ([#168](https://github.com/pjm17971/pond-ts/pull/168)).
83
+
84
+ ### Changed (BREAKING)
85
+
86
+ - **Interval-keyed series must use one label type throughout**
87
+ ([#150](https://github.com/pjm17971/pond-ts/pull/150)). Pre-2a,
88
+ TimeSeries silently tolerated mixed-kind interval labels —
89
+ rows with `value: 'row-1'` (string) and `value: 2` (number) could
90
+ coexist in a single series because events were stored as a raw
91
+ array with no per-column type alignment. The columnar substrate
92
+ introduced at Phase 4.7 enforces one label kind per column via
93
+ `IntervalKeyColumn`, so mixed-kind labels now throw at series
94
+ construction with a row-pointed error message.
95
+ - **Affected:** Any series built via `new TimeSeries(...)`,
96
+ `TimeSeries.fromJSON(...)`, `TimeSeries.fromEvents(...)`, or
97
+ any transform that produces interval-keyed events, where the
98
+ `value` field of `IntervalInput` rows or `Interval` keys
99
+ mixes `string` and `number` types.
100
+ - **Migration:** Choose one label kind for the whole series.
101
+ Numeric labels can be stringified at intake (`String(label)`)
102
+ if the downstream consumer accepts string equality; string
103
+ labels parseable as integers can be converted to numbers at
104
+ intake. The error message names the first offending row so
105
+ the offending data is easy to find.
106
+ - **Rationale:** Aligns the row-API contract with the columnar
107
+ substrate's per-column kind discipline (matching Polars /
108
+ Arrow / Parquet). The previous behavior produced type-broken
109
+ events that worked only because TimeSeries didn't enforce
110
+ per-column alignment; downstream columnar operators (the
111
+ upcoming reducer adaptation in steps 3+) require it.
112
+ - **Affected types:** `IntervalValue` remains `string | number`
113
+ per the `Interval` class contract. The runtime restriction
114
+ is at the **series** level (all intervals within one series
115
+ must share a kind), not the per-interval level. Type-level
116
+ narrowing of `IntervalKeyedSchema<S>` over label kind is a
117
+ follow-up deferred to a later sub-step.
118
+
14
119
  ## [0.17.1] — 2026-05-11
15
120
 
16
121
  Bug fix: `live.partitionBy()` now default-inherits `ordering`,
@@ -1,4 +1,4 @@
1
- import type { AggregateMap, AggregateOutputMap, AggregateOutputSpec, AggregateReducer, ScalarKind, SeriesSchema } from './types.js';
1
+ import type { AggregateMap, AggregateOutputMap, AggregateOutputSpec, AggregateReducer, ScalarKind, SeriesSchema } from '../schema/index.js';
2
2
  /**
3
3
  * Normalised column spec used by both batch and live aggregation paths.
4
4
  *
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aggregate-columns.d.ts","sourceRoot":"","sources":["../../src/batch/aggregate-columns.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACnB,gBAAgB,EAChB,UAAU,EACV,YAAY,EACb,MAAM,oBAAoB,CAAC;AAE5B;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,gBAAgB,CAAC;IAC1B,IAAI,EAAE,UAAU,CAAC;CAClB,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,SAAS,YAAY,EAC1D,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,mBAAmB,CAAC,CAAC,CAAC,CAOjC;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,yBAAyB,CAAC,CAAC,SAAS,YAAY,EAC9D,MAAM,EAAE,CAAC,EACT,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC,GAC/C,mBAAmB,EAAE,CAuDvB"}
@@ -1,4 +1,4 @@
1
- import { resolveReducer } from './reducers/index.js';
1
+ import { resolveReducer } from '../reducers/index.js';
2
2
  /**
3
3
  * @internal — discriminator between an `AggregateOutputSpec` (`{ from,
4
4
  * using, kind? }`) and a bare reducer string/function passed in an
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aggregate-columns.js","sourceRoot":"","sources":["../../src/batch/aggregate-columns.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AA6BtD;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CACnC,KAAc;IAEd,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACd,MAAM,IAAI,KAAK;QACf,OAAO,IAAI,KAAK,CACjB,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,yBAAyB,CACvC,MAAS,EACT,OAAgD;IAEhD,MAAM,aAAa,GAAG,IAAI,GAAG,CAC3B,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAU,CAAC,CAChE,CAAC;IACF,MAAM,UAAU,GAA0B,EAAE,CAAC;IAE7C,KAAK,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACxD,MAAM,UAAU,GAAG,qBAAqB,CAAI,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC;QACzE,MAAM,YAAY,GAAG,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACnD,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,IAAI,SAAS,CACjB,uDAAuD,UAAU,GAAG,CACrE,CAAC;QACJ,CAAC;QACD,IACE,YAAY,CAAC,IAAI,KAAK,QAAQ;YAC9B,YAAY,CAAC,IAAI,KAAK,QAAQ;YAC9B,YAAY,CAAC,IAAI,KAAK,SAAS;YAC/B,YAAY,CAAC,IAAI,KAAK,OAAO,EAC7B,CAAC;YACD,MAAM,IAAI,SAAS,CACjB,4BAA4B,UAAU,0BAA0B,CACjE,CAAC;QACJ,CAAC;QACD,MAAM,OAAO,GAAG,qBAAqB,CAAI,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC;QAChE,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE,CAAC;YACjE,MAAM,IAAI,SAAS,CACjB,0BAA0B,UAAU,uCAAuC,CAC5E,CAAC;QACJ,CAAC;QACD,MAAM,YAAY,GAAG,qBAAqB,CAAI,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1E,IAAI,YAAwB,CAAC;QAC7B,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC/B,YAAY,GAAG,YAAY,CAAC;QAC9B,CAAC;aAAM,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YACvC,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;YACxC,IAAI,OAAO,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;gBACpC,YAAY,GAAG,QAAQ,CAAC;YAC1B,CAAC;iBAAM,IAAI,OAAO,CAAC,UAAU,KAAK,OAAO,EAAE,CAAC;gBAC1C,YAAY,GAAG,OAAO,CAAC;YACzB,CAAC;iBAAM,CAAC;gBACN,YAAY,GAAG,YAAY,CAAC,IAAI,CAAC;YACnC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,YAAY,GAAG,YAAY,CAAC,IAAI,CAAC;QACnC,CAAC;QACD,UAAU,CAAC,IAAI,CAAC;YACd,MAAM,EAAE,UAAU;YAClB,MAAM,EAAE,UAAU;YAClB,OAAO;YACP,IAAI,EAAE,YAAY;SACnB,CAAC,CAAC;IACL,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { TimeSeries, type KeyLike } from './time-series.js';
2
+ export { PartitionedTimeSeries } from './partitioned-time-series.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/batch/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,KAAK,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { TimeSeries } from './time-series.js';
2
+ export { PartitionedTimeSeries } from './partitioned-time-series.js';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/batch/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAgB,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC"}
@@ -1,6 +1,6 @@
1
- import type { TimeZoneOptions } from './calendar.js';
2
- import type { EventKey } from './temporal.js';
3
- import type { FirstColKind, JsonObjectRowForSchema, JsonRowForSchema, JsonRowFormat, JsonValueForKind, SeriesSchema, TimeSeriesInput, TimeSeriesJsonInput } from './types.js';
1
+ import type { TimeZoneOptions } from '../core/calendar.js';
2
+ import type { EventKey } from '../core/temporal.js';
3
+ import type { FirstColKind, JsonObjectRowForSchema, JsonRowForSchema, JsonRowFormat, JsonValueForKind, SeriesSchema, TimeSeriesInput, TimeSeriesJsonInput } from '../schema/index.js';
4
4
  /**
5
5
  * Detects the object-shape variant of a JSON row.
6
6
  */
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../../src/batch/json.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,EACV,YAAY,EACZ,sBAAsB,EACtB,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,YAAY,EACZ,eAAe,EACf,mBAAmB,EACpB,MAAM,oBAAoB,CAAC;AAE5B;;GAEG;AACH,wBAAgB,eAAe,CAAC,CAAC,SAAS,YAAY,EACpD,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAAG,sBAAsB,CAAC,CAAC,CAAC,GACrD,KAAK,IAAI,sBAAsB,CAAC,CAAC,CAAC,CAEpC;AAqBD;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,YAAY,EAClB,KAAK,EAAE,OAAO,EACd,OAAO,GAAE,eAAoB,GAC5B,QAAQ,CAmEV;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,CAAC,SAAS,YAAY,EACjD,MAAM,EAAE,CAAC,EACT,GAAG,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAAG,sBAAsB,CAAC,CAAC,CAAC,EACpD,OAAO,GAAE,eAAoB,GAC5B,eAAe,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAiBpC;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,CAAC,SAAS,YAAY,EAClD,MAAM,EAAE,CAAC,EACT,IAAI,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EACpC,OAAO,GAAE,eAAoB,GAC5B,eAAe,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAI5B;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,YAAY,EAClB,GAAG,EAAE,QAAQ,EACb,SAAS,EAAE,aAAa,GACvB,gBAAgB,CAAC,YAAY,CAAC,CAehC;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAE1D"}
@@ -6,10 +6,10 @@
6
6
  * can import the serialization helpers without depending on
7
7
  * `TimeSeries` (which depends on `Event`, creating a cycle).
8
8
  */
9
- import { Interval } from './Interval.js';
10
- import { Time } from './Time.js';
11
- import { TimeRange } from './TimeRange.js';
12
- import { parseTimestampString } from './calendar.js';
9
+ import { Interval } from '../core/interval.js';
10
+ import { Time } from '../core/time.js';
11
+ import { TimeRange } from '../core/time-range.js';
12
+ import { parseTimestampString } from '../core/calendar.js';
13
13
  /**
14
14
  * Detects the object-shape variant of a JSON row.
15
15
  */
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json.js","sourceRoot":"","sources":["../../src/batch/json.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
- import { TimeSeries } from './TimeSeries.js';
2
- import { BoundedSequence } from './BoundedSequence.js';
3
- import { Sequence } from './Sequence.js';
4
- import type { DurationInput } from './utils/duration.js';
5
- import type { TemporalLike } from './temporal.js';
6
- import type { BatchSampleStrategy } from './sample.js';
7
- import type { AggregateMap, AggregateOutputMap, AggregateSchema, AlignSchema, BaselineSchema, DedupeKeep, DiffSchema, EventDataForSchema, FillMapping, FillStrategy, MaterializeSchema, NumericColumnNameForSchema, RollingAlignment, RollingSchema, SeriesSchema, SmoothAppendSchema, SmoothMethod, SmoothSchema } from './types.js';
8
- import type { AggregateOutputMapResultSchema, RollingOutputMapSchema } from './types-aggregate.js';
1
+ import { TimeSeries } from './time-series.js';
2
+ import { BoundedSequence } from '../sequence/bounded-sequence.js';
3
+ import { Sequence } from '../sequence/sequence.js';
4
+ import type { DurationInput } from '../core/duration.js';
5
+ import type { TemporalLike } from '../core/temporal.js';
6
+ import type { BatchSampleStrategy } from '../sequence/sample.js';
7
+ import type { AggregateMap, AggregateOutputMap, AggregateSchema, AlignSchema, BaselineSchema, DedupeKeep, DiffSchema, EventDataForSchema, FillMapping, FillStrategy, MaterializeSchema, NumericColumnNameForSchema, RollingAlignment, RollingSchema, SeriesSchema, SmoothAppendSchema, SmoothMethod, SmoothSchema } from '../schema/index.js';
8
+ import type { AggregateOutputMapResultSchema, RollingOutputMapSchema } from '../schema/index.js';
9
9
  type SequenceLike = Sequence | BoundedSequence;
10
10
  type AlignMethod = 'hold' | 'linear';
11
11
  type AlignSample = 'begin' | 'center' | 'end';
@@ -327,4 +327,4 @@ export declare class PartitionedTimeSeries<S extends SeriesSchema, K extends str
327
327
  }): PartitionedTimeSeries<AggregateOutputMapResultSchema<S, Mapping>, K>;
328
328
  }
329
329
  export {};
330
- //# sourceMappingURL=PartitionedTimeSeries.d.ts.map
330
+ //# sourceMappingURL=partitioned-time-series.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"partitioned-time-series.d.ts","sourceRoot":"","sources":["../../src/batch/partitioned-time-series.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { TimeSeries } from './TimeSeries.js';
2
- import { BoundedSequence } from './BoundedSequence.js';
3
- import { Sequence } from './Sequence.js';
1
+ import { TimeSeries } from './time-series.js';
2
+ import { BoundedSequence } from '../sequence/bounded-sequence.js';
3
+ import { Sequence } from '../sequence/sequence.js';
4
4
  /**
5
5
  * View over a `TimeSeries` that scopes stateful transforms to within
6
6
  * each partition. Created by `TimeSeries.partitionBy(by)`.
@@ -506,4 +506,4 @@ function augmentRollingArgsWithPartitionCols(args, augment) {
506
506
  out[mappingIdx] = augment(out[mappingIdx]);
507
507
  return out;
508
508
  }
509
- //# sourceMappingURL=PartitionedTimeSeries.js.map
509
+ //# sourceMappingURL=partitioned-time-series.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"partitioned-time-series.js","sourceRoot":"","sources":["../../src/batch/partitioned-time-series.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,15 @@
1
- import type { AlignSchema, MaterializeSchema, ArrayAggregateAppendSchema, ArrayAggregateReplaceSchema, ArrayColumnNameForSchema, ArrayExplodeAppendSchema, ArrayExplodeReplaceSchema, BaselineSchema, AggregateReducer, AggregateOutputMap, AggregateMap, AggregateSchema, CollapseSchema, EventDataForSchema, EventForSchema, FirstColKind, IntervalKeyedSchema, JsonRowFormat, JoinManySchema, JoinSchema, JoinType, NumericColumnNameForSchema, NormalizedObjectRow, NormalizedRowForSchema, PivotByGroupSchema, PointRowForSchema, PrefixedJoinManySchema, PrefixedJoinSchema, ReduceResult, RenameMap } from './types.js';
2
- import type { AggregateOutputMapResultSchema, RollingOutputMapSchema } from './types-aggregate.js';
3
- import type { RenameSchema, RollingAlignment, RollingSchema, ColumnValue, DedupeKeep, DiffSchema, FillMapping, FillStrategy, ScalarKind, ScalarValue, SmoothMethod, SmoothAppendSchema, SmoothSchema, SelectSchema, SeriesSchema, TimeKeyedSchema, TimeSeriesJsonInput, TimeSeriesInput, TimeRangeKeyedSchema, ValueColumnsForSchema } from './types.js';
4
- import { BoundedSequence } from './BoundedSequence.js';
5
- import { type TimeZoneOptions } from './calendar.js';
6
- import { TimeRange } from './TimeRange.js';
7
- import type { EventKey, IntervalInput, IntervalValue, TemporalLike, TimeRangeInput, TimestampInput } from './temporal.js';
8
- import { PartitionedTimeSeries } from './PartitionedTimeSeries.js';
9
- import type { BatchSampleStrategy } from './sample.js';
10
- import { Sequence } from './Sequence.js';
11
- import type { DurationInput } from './utils/duration.js';
1
+ import type { AlignSchema, MaterializeSchema, ArrayAggregateAppendSchema, ArrayAggregateReplaceSchema, ArrayColumnNameForSchema, ArrayExplodeAppendSchema, ArrayExplodeReplaceSchema, BaselineSchema, AggregateReducer, AggregateOutputMap, AggregateMap, AggregateSchema, CollapseSchema, EventDataForSchema, EventForSchema, FirstColKind, IntervalKeyedSchema, JsonRowFormat, JoinManySchema, JoinSchema, JoinType, NumericColumnNameForSchema, NormalizedObjectRow, NormalizedRowForSchema, PivotByGroupSchema, PointRowForSchema, PrefixedJoinManySchema, PrefixedJoinSchema, ReduceResult, RenameMap } from '../schema/index.js';
2
+ import type { AggregateOutputMapResultSchema, RollingOutputMapSchema } from '../schema/index.js';
3
+ import type { RenameSchema, RollingAlignment, RollingSchema, ColumnValue, DedupeKeep, DiffSchema, FillMapping, FillStrategy, ScalarKind, ScalarValue, SmoothMethod, SmoothAppendSchema, SmoothSchema, SelectSchema, SeriesSchema, TimeKeyedSchema, TimeSeriesJsonInput, TimeSeriesInput, TimeRangeKeyedSchema, ValueColumnKindForName, ValueColumnNameForSchema, ValueColumnsForSchema } from '../schema/index.js';
4
+ import { BoundedSequence } from '../sequence/bounded-sequence.js';
5
+ import { type TimeZoneOptions } from '../core/calendar.js';
6
+ import { TimeRange } from '../core/time-range.js';
7
+ import type { EventKey, IntervalInput, IntervalValue, TemporalLike, TimeRangeInput, TimestampInput } from '../core/temporal.js';
8
+ import { PartitionedTimeSeries } from './partitioned-time-series.js';
9
+ import type { BatchSampleStrategy } from '../sequence/sample.js';
10
+ import { Sequence } from '../sequence/sequence.js';
11
+ import type { KeyColumnForSchema, PublicColumnForKind } from '../column.js';
12
+ import type { DurationInput } from '../core/duration.js';
12
13
  type RangeLike = EventKey | TimeRangeInput | IntervalInput;
13
14
  type BoundaryLike = EventKey | TimestampInput;
14
15
  /**
@@ -49,34 +50,10 @@ type PrefixesForSeriesTuple<T extends SeriesTuple> = {
49
50
  [I in keyof T]: string;
50
51
  } extends infer Result ? Result extends readonly [string, ...string[]] ? Result : never : never;
51
52
  export declare function toKey(value: KeyLike): EventKey;
52
- /**
53
- * An immutable ordered collection of typed events sharing a common schema.
54
- *
55
- * @example
56
- * ```ts
57
- * const schema = [
58
- * { name: "time", kind: "time" },
59
- * { name: "cpu", kind: "number" },
60
- * { name: "host", kind: "string" },
61
- * ] as const;
62
- *
63
- * const series = new TimeSeries({
64
- * name: "cpu-usage",
65
- * schema,
66
- * rows: [[new Date("2025-01-01T00:00:00.000Z"), 0.42, "api-1"]],
67
- * });
68
- *
69
- * series.first()?.get("cpu"); // 0.42
70
- * series.timeRange(); // overall extent of the series
71
- * series.within(new TimeRange({ start: 0, end: Date.now() })); // fully contained events
72
- * series.align(Sequence.every("1m")); // uses the series range over an epoch-anchored minute grid
73
- * ```
74
- */
75
53
  export declare class TimeSeries<S extends SeriesSchema> {
76
54
  #private;
77
55
  readonly name: string;
78
56
  readonly schema: S;
79
- readonly events: ReadonlyArray<EventForSchema<S>>;
80
57
  /**
81
58
  * Example: `TimeSeries.joinMany([cpu.align(seq), memory.align(seq), errors.align(seq)])`.
82
59
  * Performs an exact-key n-ary join across many series.
@@ -207,15 +184,122 @@ export declare class TimeSeries<S extends SeriesSchema> {
207
184
  toJSON(options?: {
208
185
  rowFormat?: JsonRowFormat;
209
186
  }): TimeSeriesJsonInput<SeriesSchema>;
187
+ /**
188
+ * Example: `series.events`. Returns the full event array.
189
+ *
190
+ * Lazy under the hood: the array is built once by walking the
191
+ * columnar store's per-row event cache and is memoized inside the
192
+ * store so `series.events === series.events` holds (preserving
193
+ * the identity invariant prior code relied on). Same per-row
194
+ * identity as `series.at(i)` — `series.at(i) === series.events[i]`
195
+ * for every valid `i`.
196
+ *
197
+ * Replaces the previous `readonly events` field (sub-step 2a). The
198
+ * cast widens `SeriesEvent` (the store's event type) to
199
+ * `EventForSchema<S>` (TimeSeries's narrower per-schema type);
200
+ * structurally identical — both are `Event<EventKey, Schema>`.
201
+ */
202
+ get events(): ReadonlyArray<EventForSchema<S>>;
210
203
  /** Example: `series.firstColumnKind`. Returns the first-column kind from the series schema. */
211
204
  get firstColumnKind(): FirstColKind;
205
+ /**
206
+ * Example (chart / typed-array consumer):
207
+ * ```ts
208
+ * const col = series.column('cpu'); // Float64Column | ChunkedFloat64Column
209
+ * const xs = series.keyColumn().begin; // Float64Array
210
+ * const ys = col.toFloat64Array(); // Float64Array (storage-agnostic)
211
+ * for (let i = 0; i < ys.length; i += 1) ctx.lineTo(xs[i], ys[i]);
212
+ * ```
213
+ *
214
+ * Returns the public column class for a named value column. The
215
+ * schema-narrowed `Name` parameter (RFC §7.2) constrains `name`
216
+ * to a value column declared in the schema; typos and key-column
217
+ * names fail to compile rather than returning `undefined` at
218
+ * runtime. The return type narrows on the schema's declared kind
219
+ * for that column — `Float64Column | ChunkedFloat64Column` for
220
+ * `'number'`, `BooleanColumn | ChunkedBooleanColumn` for
221
+ * `'boolean'`, etc. No `| undefined`.
222
+ *
223
+ * The columns expose a high-level method surface (`at(i)`,
224
+ * `slice(s, e)`, `min()` / `max()` / `mean()` / etc.,
225
+ * `toFloat64Array()` for numeric storage-agnostic gather,
226
+ * `bin(W, reducer)` for the chart per-pixel downsampler) plus
227
+ * substrate-level fields for hot-path code (`length`,
228
+ * `validity`, etc.).
229
+ *
230
+ * Use `keyColumn()` for the key axis (returns `TimeKeyColumn` /
231
+ * `TimeRangeKeyColumn` / `IntervalKeyColumn` narrowed by the
232
+ * schema's first-column kind).
233
+ *
234
+ * **Read-only buffer contract.** The methods that hand back a
235
+ * typed array (`toFloat64Array()`, `keyColumn().begin`, etc.)
236
+ * share storage with the column. Writing to those buffers
237
+ * corrupts the trusted-construction substrate. The framework
238
+ * doesn't defensively clone on read.
239
+ *
240
+ * **Phase 4.7 step 8b (2026-05-27): schema-narrowed signature.**
241
+ * `name` is constrained to a schema-valid value column at compile
242
+ * time — typos and key-column names fail to compile rather than
243
+ * returning `undefined` at runtime. The return type narrows by
244
+ * kind: `series.column('value')` (where `value` is `kind: 'number'`)
245
+ * returns `Float64Column | ChunkedFloat64Column`, with all the
246
+ * scalar-reduction methods mounted by `src/column.ts`
247
+ * (`.min()`, `.max()`, `.mean()`, etc.). `series.column('host')`
248
+ * (`kind: 'string'`) returns `StringColumn | ChunkedStringColumn`,
249
+ * without the numeric methods. Both packed and chunked variants
250
+ * carry the full method surface — chunked delegates reductions
251
+ * to `materialize().method()` for v1; see
252
+ * `docs/rfcs/column-api.md` §7.2 for the design and §7.4 for the
253
+ * type-level acceptance tests.
254
+ */
255
+ column<Name extends ValueColumnNameForSchema<S>>(name: Name): PublicColumnForKind<ValueColumnKindForName<S, Name>>;
256
+ /**
257
+ * Example: `series.keyColumn().begin`. Returns the underlying
258
+ * `KeyColumn` (a `TimeKeyColumn` / `TimeRangeKeyColumn` /
259
+ * `IntervalKeyColumn` discriminated by the schema's first
260
+ * column kind).
261
+ *
262
+ * **Phase 4.7 spike API — shape not yet stable.** Companion to
263
+ * `column(name)` for chart / typed-array consumers that need
264
+ * direct access to the time axis. Per-variant fields:
265
+ *
266
+ * - **`TimeKeyColumn`** — `begin: Float64Array` (end === begin
267
+ * semantically; same buffer reference).
268
+ * - **`TimeRangeKeyColumn`** — `begin: Float64Array` +
269
+ * `end: Float64Array`.
270
+ * - **`IntervalKeyColumn`** — `begin` + `end` + `labels`
271
+ * (`StringColumn | Float64Column` per `labelKind`).
272
+ *
273
+ * **Treat the returned buffers as read-only.** Same caveat as
274
+ * `column(name)` — the `Float64Array` itself is mutable at
275
+ * runtime; writing to `keyColumn().begin[i]` would corrupt the
276
+ * trusted-construction substrate.
277
+ *
278
+ * **Step 8d narrowing:** the return type is now
279
+ * `KeyColumnForSchema<S>` (RFC §7.5) — a `time`-keyed schema
280
+ * returns `TimeKeyColumn`, `interval` returns `IntervalKeyColumn`,
281
+ * `timeRange` returns `TimeRangeKeyColumn`. Consumers no longer
282
+ * need `instanceof` / discriminator checks just to access kind-
283
+ * specific fields like `.labels`.
284
+ */
285
+ keyColumn(): KeyColumnForSchema<S>;
212
286
  /** Example: `series.rows`. Returns the normalized row view of the series. */
213
287
  get rows(): ReadonlyArray<NormalizedRowForSchema<S>>;
214
288
  /** Example: `series.toRows()`. Returns normalized row arrays using `Time`/`TimeRange`/`Interval` keys and `undefined` for missing payload values. */
215
289
  toRows(): ReadonlyArray<NormalizedRowForSchema<S>>;
216
290
  /** Example: `series.toObjects()`. Returns normalized schema-keyed object rows using temporal key objects and `undefined` for missing payload values. */
217
291
  toObjects(): ReadonlyArray<NormalizedObjectRow>;
218
- /** Example: `series.at(0)`. Returns the event at the supplied zero-based position, if present. */
292
+ /**
293
+ * Example: `series.at(0)`. Returns the event at the supplied
294
+ * zero-based position, if present.
295
+ *
296
+ * Routes through the columnar store's per-row `eventAt` cache
297
+ * directly (O(1) materialization for the requested row) rather
298
+ * than indexing `this.events` (which would force a full lazy
299
+ * materialization of every row in the series on first call).
300
+ * The cache's identity invariant means `series.at(i) ===
301
+ * series.events[i]` holds whenever both are accessed.
302
+ */
219
303
  at(index: number): EventForSchema<S> | undefined;
220
304
  /** Example: `series.first()`. Returns the first event in the series, if present. */
221
305
  first(): EventForSchema<S> | undefined;
@@ -659,6 +743,24 @@ export declare class TimeSeries<S extends SeriesSchema> {
659
743
  * internal or leading gap (trailing has no next value). `"zero"`
660
744
  * and literal fills work on any gap that fits the size caps.
661
745
  *
746
+ * **Kind-sensitive strategies.** `"zero"` and `"linear"` are
747
+ * numeric-only — they're only meaningful for `kind: 'number'`
748
+ * columns. When applied via the bare-string form
749
+ * (`fill('zero')` / `fill('linear')`) on a mixed-kind schema,
750
+ * non-numeric columns silently skip — their gaps stay unfilled
751
+ * because the strategy has no kind-appropriate value to place
752
+ * there. The user's natural intent for `fill('zero')` on a
753
+ * `{ metric: number, host: string }` series is "fill numeric
754
+ * gaps with 0", not "fill every gap with the literal number 0
755
+ * regardless of column kind". To fill non-numeric gaps too,
756
+ * use the object form with a per-column kind-appropriate
757
+ * strategy, e.g. `fill({ value: 'zero', host: 'hold' })` or
758
+ * `fill({ host: 'unknown' })` (literal). `"hold"` / `"bfill"`
759
+ * are kind-agnostic (they copy whatever value is at the
760
+ * neighbor); `"literal"` carries whatever value the user
761
+ * supplies, so a kind-mismatched literal surfaces as a
762
+ * columnar-substrate error at intake.
763
+ *
662
764
  * **Multi-entity series:** fill walks one chronological event
663
765
  * sequence — `host-A`'s missing cell would `linear`-interpolate or
664
766
  * `hold`-carry against `host-B`'s neighboring value. On a series
@@ -845,7 +947,15 @@ export declare class TimeSeries<S extends SeriesSchema> {
845
947
  * JSDoc for the rationale.
846
948
  */
847
949
  sample(strategy: BatchSampleStrategy): TimeSeries<S>;
848
- /** Example: `series.find(event => event.get("value") > 0)`. Returns the first event that matches the predicate, if any. */
950
+ /**
951
+ * Example: `series.find(event => event.get("value") > 0)`.
952
+ * Returns the first event that matches the predicate, if any.
953
+ *
954
+ * Routes per-row through `#store.eventAt(i)` — stops at the
955
+ * first match without forcing materialization of the rest. The
956
+ * cache populates rows on demand, so a predicate that hits
957
+ * early in a 10M-row series only pays for the rows it touches.
958
+ */
849
959
  find(predicate: (event: EventForSchema<S>, index: number) => boolean): EventForSchema<S> | undefined;
850
960
  /** Example: `series.some(event => event.get("healthy"))`. Returns `true` when at least one event matches the predicate. */
851
961
  some(predicate: (event: EventForSchema<S>, index: number) => boolean): boolean;
@@ -853,7 +963,15 @@ export declare class TimeSeries<S extends SeriesSchema> {
853
963
  every(predicate: (event: EventForSchema<S>, index: number) => boolean): boolean;
854
964
  /** Example: `series.includesKey(new Time(Date.now()))`. Returns `true` when the series contains an event with an exactly matching key. */
855
965
  includesKey(key: KeyLike): boolean;
856
- /** Example: `series.bisect(new Time(Date.now()))`. Returns the insertion index for the supplied key in the ordered event sequence. */
966
+ /**
967
+ * Example: `series.bisect(new Time(Date.now()))`. Returns the
968
+ * insertion index for the supplied key in the ordered event
969
+ * sequence.
970
+ *
971
+ * Walks the columnar key buffer via `#store.keyAt(i)` rather
972
+ * than materializing events for the binary-search probes.
973
+ * O(log N) keys touched; no Event allocations.
974
+ */
857
975
  bisect(key: KeyLike): number;
858
976
  /** Example: `series.atOrBefore(new Time(Date.now()))`. Returns the event with the exact key or the nearest earlier event, if any. */
859
977
  atOrBefore(key: KeyLike): EventForSchema<S> | undefined;
@@ -1009,9 +1127,21 @@ export declare class TimeSeries<S extends SeriesSchema> {
1009
1127
  as: Name;
1010
1128
  kind?: OutputKind;
1011
1129
  }): TimeSeries<ArrayExplodeAppendSchema<S, Name, OutputKind>>;
1012
- /** Example: `series.length`. Returns the number of events in the series. */
1130
+ /**
1131
+ * Example: `series.length`. Returns the number of events in the
1132
+ * series. Delegates to the columnar store (avoids materializing
1133
+ * the lazy `events` array just to read its length).
1134
+ */
1013
1135
  get length(): number;
1014
- /** Example: `for (const event of series) { ... }`. Iterates events in order. */
1136
+ /**
1137
+ * Example: `for (const event of series) { ... }`. Iterates events in order.
1138
+ *
1139
+ * Pulls one event at a time via `#store.eventAt(i)` rather than
1140
+ * materializing the full events array up front. A `break` or
1141
+ * early-exit inside the loop only pays for the rows it touched.
1142
+ * The store's per-row cache means re-iteration (or a subsequent
1143
+ * `series.events` call) reuses the same Event references.
1144
+ */
1015
1145
  [Symbol.iterator](): Iterator<EventForSchema<S>>;
1016
1146
  /** Example: `series.toArray()`. Returns a shallow copy of the event array. */
1017
1147
  toArray(): EventForSchema<S>[];
@@ -1172,4 +1302,4 @@ export declare class TimeSeries<S extends SeriesSchema> {
1172
1302
  }): TimeSeries<S>;
1173
1303
  }
1174
1304
  export {};
1175
- //# sourceMappingURL=TimeSeries.d.ts.map
1305
+ //# sourceMappingURL=time-series.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"time-series.d.ts","sourceRoot":"","sources":["../../src/batch/time-series.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,iBAAiB,EACjB,0BAA0B,EAC1B,2BAA2B,EAC3B,wBAAwB,EACxB,wBAAwB,EACxB,yBAAyB,EAEzB,cAAc,EAEd,gBAAgB,EAChB,kBAAkB,EAElB,YAAY,EACZ,eAAe,EACf,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,YAAY,EACZ,mBAAmB,EAEnB,aAAa,EAMb,cAAc,EACd,UAAU,EACV,QAAQ,EACR,0BAA0B,EAC1B,mBAAmB,EAEnB,sBAAsB,EACtB,kBAAkB,EAClB,iBAAiB,EACjB,sBAAsB,EACtB,kBAAkB,EAClB,YAAY,EACZ,SAAS,EACV,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EACV,8BAA8B,EAC9B,sBAAsB,EACvB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EACV,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,WAAW,EAEX,UAAU,EACV,UAAU,EACV,WAAW,EACX,YAAY,EACZ,UAAU,EACV,WAAW,EACX,YAAY,EACZ,kBAAkB,EAClB,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,mBAAmB,EACnB,eAAe,EACf,oBAAoB,EAEpB,sBAAsB,EACtB,wBAAwB,EACxB,qBAAqB,EACtB,MAAM,oBAAoB,CAAC;AAK5B,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAEL,KAAK,eAAe,EACrB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,KAAK,EACV,QAAQ,EACR,aAAa,EACb,aAAa,EACb,YAAY,EACZ,cAAc,EACd,cAAc,EACf,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAEnD,OAAO,KAAK,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAG5E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAQzD,KAAK,SAAS,GAAG,QAAQ,GAAG,cAAc,GAAG,aAAa,CAAC;AAC3D,KAAK,YAAY,GAAG,QAAQ,GAAG,cAAc,CAAC;AAC9C;;;;GAIG;AACH,MAAM,MAAM,OAAO,GACf,QAAQ,GACR,cAAc,GACd,cAAc,GACd,aAAa,CAAC;AAClB,KAAK,eAAe,GAAG,YAAY,GAAG;IAAE,SAAS,IAAI,SAAS,GAAG,SAAS,CAAA;CAAE,CAAC;AAC7E,KAAK,WAAW,GAAG,MAAM,GAAG,QAAQ,CAAC;AACrC,KAAK,WAAW,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;AAC9C,KAAK,YAAY,GAAG,QAAQ,GAAG,eAAe,CAAC;AAC/C,KAAK,gBAAgB,GAAG;IAAE,IAAI,CAAC,EAAE,QAAQ,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAClE,KAAK,iBAAiB,CAAC,QAAQ,SAAS,SAAS,MAAM,EAAE,IAAI;IAC3D,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,UAAU,EAAE,QAAQ,CAAC;IACrB,QAAQ,EAAE,QAAQ,CAAC;CACpB,CAAC;AAGF,KAAK,mBAAmB,GAAG;IAAE,SAAS,CAAC,EAAE,gBAAgB,CAAA;CAAE,CAAC;AAC5D,KAAK,wBAAwB,CAAC,MAAM,SAAS,SAAS,MAAM,EAAE,IAC5D,mBAAmB,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAI3C,KAAK,WAAW,GAAG,SAAS;IAC1B,UAAU,CAAC,YAAY,CAAC;IACxB,GAAG,UAAU,CAAC,YAAY,CAAC,EAAE;CAC9B,CAAC;AAEF,KAAK,qBAAqB,CAAC,CAAC,SAAS,WAAW,IAAI;KACjD,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,UAAU,CAAC,MAAM,MAAM,CAAC,GAAG,MAAM,GAAG,KAAK;CACvE,SAAS,MAAM,MAAM,GAClB,MAAM,SAAS,SAAS,CAAC,YAAY,EAAE,GAAG,YAAY,EAAE,CAAC,GACvD,MAAM,GACN,KAAK,GACP,KAAK,CAAC;AAQV,KAAK,sBAAsB,CAAC,CAAC,SAAS,WAAW,IAAI;KAClD,CAAC,IAAI,MAAM,CAAC,GAAG,MAAM;CACvB,SAAS,MAAM,MAAM,GAClB,MAAM,SAAS,SAAS,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,GAC3C,MAAM,GACN,KAAK,GACP,KAAK,CAAC;AAqDV,wBAAgB,KAAK,CAAC,KAAK,EAAE,OAAO,GAAG,QAAQ,CAmB9C;AA6eD,qBAAa,UAAU,CAAC,CAAC,SAAS,YAAY;;IAC5C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IAUnB;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,SAAS,WAAW,EACzC,MAAM,EAAE,CAAC,EACT,OAAO,CAAC,EAAE,gBAAgB,GACzB,UAAU,CAAC,cAAc,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC;IACvD,MAAM,CAAC,QAAQ,CACb,KAAK,CAAC,CAAC,SAAS,WAAW,EAC3B,KAAK,CAAC,QAAQ,SAAS,sBAAsB,CAAC,CAAC,CAAC,EAEhD,MAAM,EAAE,CAAC,EACT,OAAO,EAAE,iBAAiB,CAAC,QAAQ,CAAC,GACnC,UAAU,CAAC,sBAAsB,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IAwBzE;;;;;;OAMG;IACH,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,YAAY,EACpC,KAAK,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAAG;QAAE,KAAK,CAAC,EAAE,eAAe,CAAA;KAAE,GAC1D,UAAU,CAAC,CAAC,CAAC;IAQhB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACH,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,YAAY,EACtC,MAAM,EAAE,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EACxC,OAAO,EAAE;QAAE,MAAM,EAAE,CAAC,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GACnC,UAAU,CAAC,CAAC,CAAC;IAOhB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAoCG;IACH,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,YAAY,EAClC,MAAM,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GACnC,UAAU,CAAC,CAAC,CAAC;IAmChB,qIAAqI;gBACzH,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC;IA2BrC;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,MAAM,CACJ,OAAO,GAAE;QAAE,SAAS,CAAC,EAAE,aAAa,CAAA;KAAO,GAC1C,mBAAmB,CAAC,YAAY,CAAC;IAkFpC;;;;;;;;;;;;;;OAcG;IACH,IAAI,MAAM,IAAI,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAI7C;IAED,+FAA+F;IAC/F,IAAI,eAAe,IAAI,YAAY,CAElC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiDG;IACH,MAAM,CAAC,IAAI,SAAS,wBAAwB,CAAC,CAAC,CAAC,EAC7C,IAAI,EAAE,IAAI,GACT,mBAAmB,CAAC,sBAAsB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAKvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACH,SAAS,IAAI,kBAAkB,CAAC,CAAC,CAAC;IAIlC,6EAA6E;IAC7E,IAAI,IAAI,IAAI,aAAa,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAInD;IAED,qJAAqJ;IACrJ,MAAM,IAAI,aAAa,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC;IAIlD,wJAAwJ;IACxJ,SAAS,IAAI,aAAa,CAAC,mBAAmB,CAAC;IAI/C;;;;;;;;;;OAUG;IACH,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc,CAAC,CAAC,CAAC,GAAG,SAAS;IAchD,oFAAoF;IACpF,KAAK,IAAI,cAAc,CAAC,CAAC,CAAC,GAAG,SAAS;IAItC,kFAAkF;IAClF,IAAI,IAAI,cAAc,CAAC,CAAC,CAAC,GAAG,SAAS;IAKrC,2HAA2H;IAC3H,GAAG,CAAC,UAAU,SAAS,YAAY,EACjC,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,CACN,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,EACxB,KAAK,EAAE,MAAM,KACV,cAAc,CAAC,UAAU,CAAC,GAC9B,UAAU,CAAC,UAAU,CAAC;IAYzB,+IAA+I;IAC/I,MAAM,CACJ,OAAO,GAAE;QAAE,EAAE,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAA;KAAO,GAChD,UAAU,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IAuBjC,yHAAyH;IACzH,WAAW,IAAI,UAAU,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;IAelD,2KAA2K;IAC3K,UAAU,CAAC,KAAK,EAAE,aAAa,GAAG,UAAU,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;IACpE,UAAU,CACR,KAAK,EAAE,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,aAAa,GAChE,UAAU,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;IAmBrC;;;;;;;;;;;;;;;;;OAiBG;IACH,IAAI,CAAC,KAAK,SAAS,YAAY,EAC7B,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,EACxB,OAAO,CAAC,EAAE,gBAAgB,GACzB,UAAU,CAAC,UAAU,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IACnC,IAAI,CACF,KAAK,SAAS,YAAY,EAC1B,KAAK,CAAC,QAAQ,SAAS,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,EAEhD,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,EACxB,OAAO,EAAE,iBAAiB,CAAC,QAAQ,CAAC,GACnC,UAAU,CAAC,kBAAkB,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;IAqFrD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BG;IACH,KAAK,CACH,QAAQ,EAAE,YAAY,EACtB,OAAO,GAAE;QACP,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,KAAK,CAAC,EAAE,YAAY,CAAC;KACjB,GACL,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAkE7B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkDG;IACH,WAAW,CACT,QAAQ,EAAE,YAAY,EACtB,OAAO,GAAE;QACP,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,MAAM,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;QACtC,KAAK,CAAC,EAAE,YAAY,CAAC;KACjB,GACL,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAiGnC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4CG;IACH,SAAS,CAAC,KAAK,CAAC,OAAO,SAAS,YAAY,CAAC,CAAC,CAAC,EAC7C,QAAQ,EAAE,YAAY,EACtB,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,YAAY,CAAA;KAAE,GACjC,UAAU,CAAC,eAAe,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IAC1C,SAAS,CAAC,KAAK,CAAC,OAAO,SAAS,kBAAkB,CAAC,CAAC,CAAC,EACnD,QAAQ,EAAE,YAAY,EACtB,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,YAAY,CAAA;KAAE,GACjC,UAAU,CAAC,8BAA8B,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IASzD;;;;;;;;;;;OAWG;IACH,MAAM,CACJ,MAAM,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,EAChD,OAAO,EAAE,gBAAgB,GACxB,WAAW,GAAG,SAAS;IAC1B,MAAM,CAAC,KAAK,CAAC,OAAO,SAAS,YAAY,CAAC,CAAC,CAAC,EAC1C,OAAO,EAAE,OAAO,GACf,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC;IAC3B,MAAM,CAAC,KAAK,CAAC,OAAO,SAAS,kBAAkB,CAAC,CAAC,CAAC,EAChD,OAAO,EAAE,OAAO,GACf,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC;IAiD3B;;;;;;;;OAQG;IACH,OAAO,CACL,MAAM,EAAE,MAAM,kBAAkB,CAAC,CAAC,CAAC,GAAG,MAAM,GAC3C,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;IAC7B,OAAO,CAAC,CAAC,EACP,MAAM,EAAE,MAAM,kBAAkB,CAAC,CAAC,CAAC,GAAG,MAAM,EAC5C,SAAS,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC,GAClD,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;IAwCjB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAmDG;IACH,WAAW,CACT,GAAG,SAAS,MAAM,kBAAkB,CAAC,CAAC,CAAC,GAAG,MAAM,EAChD,KAAK,CAAC,MAAM,SAAS,aAAa,CAAC,MAAM,CAAC,EAE1C,EAAE,EAAE,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC,EACxB,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,GAC1B,qBAAqB,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;IAC3C,WAAW,CACT,EAAE,EACE,CAAC,MAAM,kBAAkB,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,GACtC,aAAa,CAAC,MAAM,kBAAkB,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,GACtD,qBAAqB,CAAC,CAAC,CAAC;IAU3B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAqDG;IACH,YAAY,CACV,CAAC,SAAS,MAAM,kBAAkB,CAAC,CAAC,CAAC,GAAG,MAAM,EAC9C,CAAC,SAAS,MAAM,kBAAkB,CAAC,CAAC,CAAC,GAAG,MAAM,EAE9C,QAAQ,EAAE,CAAC,EACX,QAAQ,EAAE,CAAC,EACX,OAAO,CAAC,EAAE,mBAAmB,GAC5B,UAAU,CAAC,YAAY,CAAC;IAC3B,YAAY,CACV,CAAC,SAAS,MAAM,kBAAkB,CAAC,CAAC,CAAC,GAAG,MAAM,EAC9C,CAAC,SAAS,MAAM,kBAAkB,CAAC,CAAC,CAAC,GAAG,MAAM,EAC9C,KAAK,CAAC,MAAM,SAAS,SAAS,MAAM,EAAE,EAEtC,QAAQ,EAAE,CAAC,EACX,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,wBAAwB,CAAC,MAAM,CAAC,GACxC,UAAU,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;IAuI/C;;;;;;;;;;;;;;;;;;;OAmBG;IACH,IAAI,CAAC,KAAK,CAAC,MAAM,SAAS,0BAA0B,CAAC,CAAC,CAAC,EACrD,OAAO,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,EACnC,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,OAAO,CAAA;KAAE,GAC3B,UAAU,CAAC,UAAU,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IAIpC;;;;;;;;;;;;;;;;;;;OAmBG;IACH,IAAI,CAAC,KAAK,CAAC,MAAM,SAAS,0BAA0B,CAAC,CAAC,CAAC,EACrD,OAAO,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,EACnC,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,OAAO,CAAA;KAAE,GAC3B,UAAU,CAAC,UAAU,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IAIpC;;;;;;;;;;;;;OAaG;IACH,SAAS,CAAC,KAAK,CAAC,MAAM,SAAS,0BAA0B,CAAC,CAAC,CAAC,EAC1D,OAAO,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,EACnC,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,OAAO,CAAA;KAAE,GAC3B,UAAU,CAAC,UAAU,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IAsGpC;;;;;;;;;;;;;;OAcG;IACH,UAAU,CAAC,KAAK,CAAC,OAAO,SAAS,0BAA0B,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE;SACnE,CAAC,IAAI,OAAO,GACT,KAAK,GACL,KAAK,GACL,KAAK,GACL,OAAO,GACP,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;KAC7C,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IAoGtC;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,KAAK,CAAC,MAAM,SAAS,0BAA0B,CAAC,CAAC,CAAC,EACtD,OAAO,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,EACnC,CAAC,EAAE,MAAM,GACR,UAAU,CAAC,UAAU,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IAuDpC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAwDG;IACH,IAAI,CACF,QAAQ,EAAE,YAAY,GAAG,WAAW,CAAC,CAAC,CAAC,EACvC,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,aAAa,CAAA;KAAE,GACnD,UAAU,CAAC,CAAC,CAAC;IA4MhB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAuDG;IACH,MAAM,CAAC,OAAO,GAAE;QAAE,IAAI,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAA;KAAO,GAAG,UAAU,CAAC,CAAC,CAAC;IAuG7D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAqCG;IACH,OAAO,CAAC,KAAK,CAAC,OAAO,SAAS,YAAY,CAAC,CAAC,CAAC,EAC3C,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,gBAAgB,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,GAC9D,UAAU,CAAC,aAAa,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IACxC,OAAO,CAAC,KAAK,CAAC,OAAO,SAAS,kBAAkB,CAAC,CAAC,CAAC,EACjD,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,gBAAgB,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,GAC9D,UAAU,CAAC,sBAAsB,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IACjD,OAAO,CAAC,KAAK,CAAC,OAAO,SAAS,YAAY,CAAC,CAAC,CAAC,EAC3C,QAAQ,EAAE,YAAY,EACtB,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE;QACR,SAAS,CAAC,EAAE,gBAAgB,CAAC;QAC7B,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,KAAK,CAAC,EAAE,YAAY,CAAC;QACrB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,GACA,UAAU,CAAC,eAAe,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IAC1C,OAAO,CAAC,KAAK,CAAC,OAAO,SAAS,kBAAkB,CAAC,CAAC,CAAC,EACjD,QAAQ,EAAE,YAAY,EACtB,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE;QACR,SAAS,CAAC,EAAE,gBAAgB,CAAC;QAC7B,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,KAAK,CAAC,EAAE,YAAY,CAAC;QACrB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,GACA,UAAU,CAAC,8BAA8B,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IAuUzD;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,MAAM,CACJ,KAAK,CAAC,MAAM,SAAS,0BAA0B,CAAC,CAAC,CAAC,EAClD,KAAK,CAAC,MAAM,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EAEnD,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,YAAY,EACpB,OAAO,EACH;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GACnD;QAAE,MAAM,EAAE,aAAa,CAAC;QAAC,SAAS,CAAC,EAAE,gBAAgB,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GACxE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GACpC,UAAU,CACX,MAAM,SAAS,MAAM,GACjB,kBAAkB,CAAC,CAAC,EAAE,MAAM,CAAC,GAC7B,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,CAC5B;IA+QD,0FAA0F;IAC1F,KAAK,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC;IAQ5D,oIAAoI;IACpI,MAAM,CACJ,SAAS,EAAE,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,GAC9D,UAAU,CAAC,CAAC,CAAC;IAQhB;;;;;;;;;;;;;;;;OAgBG;IACH,MAAM,CAAC,QAAQ,EAAE,mBAAmB,GAAG,UAAU,CAAC,CAAC,CAAC;IAuCpD;;;;;;;;OAQG;IACH,IAAI,CACF,SAAS,EAAE,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,GAC9D,cAAc,CAAC,CAAC,CAAC,GAAG,SAAS;IAShC,2HAA2H;IAC3H,IAAI,CACF,SAAS,EAAE,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,GAC9D,OAAO;IASV,qHAAqH;IACrH,KAAK,CACH,SAAS,EAAE,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,GAC9D,OAAO;IASV,0IAA0I;IAC1I,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO;IASlC;;;;;;;;OAQG;IACH,MAAM,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAe5B,qIAAqI;IACrI,UAAU,CAAC,GAAG,EAAE,OAAO,GAAG,cAAc,CAAC,CAAC,CAAC,GAAG,SAAS;IAUvD,kIAAkI;IAClI,SAAS,CAAC,GAAG,EAAE,OAAO,GAAG,cAAc,CAAC,CAAC,CAAC,GAAG,SAAS;IAItD,oHAAoH;IACpH,SAAS,IAAI,SAAS,GAAG,SAAS;IAclC,6HAA6H;IAC7H,QAAQ,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO;IASzC,mIAAmI;IACnI,QAAQ,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO;IASzC,4IAA4I;IAC5I,YAAY,CAAC,KAAK,EAAE,eAAe,GAAG,SAAS,GAAG,SAAS;IAS3D;;;;;;OAMG;IACH,WAAW,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC;IAI5C;;;;;;;OAOG;IACH,WAAW,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC;IAK5C;;;;;;OAMG;IACH,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC;IAQrC,sHAAsH;IACtH,MAAM,CAAC,QAAQ,EAAE,YAAY,GAAG,UAAU,CAAC,CAAC,CAAC;IAK7C,uHAAuH;IACvH,KAAK,CAAC,QAAQ,EAAE,YAAY,GAAG,UAAU,CAAC,CAAC,CAAC;IAK5C;;;;;;;;;;;;;;;OAeG;IACH,IAAI,CAAC,QAAQ,CAAC,EAAE,aAAa,GAAG,UAAU,CAAC,CAAC,CAAC;IAS7C;;;;;;OAMG;IACH,MAAM,CAAC,KAAK,EAAE,cAAc,EAAE,GAAG,EAAE,cAAc,GAAG,UAAU,CAAC,CAAC,CAAC;IACjE;;;;;OAKG;IACH,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC;IAcvC,oHAAoH;IACpH,MAAM,CAAC,KAAK,CAAC,IAAI,SAAS,SAAS,CAAC,MAAM,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAAE,EAChE,GAAG,IAAI,EAAE,IAAI,GACZ,UAAU,CAAC,YAAY,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC;IAsBrD,2IAA2I;IAC3I,MAAM,CAAC,KAAK,CAAC,OAAO,SAAS,SAAS,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAC3D,OAAO,EAAE,OAAO,GACf,UAAU,CAAC,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IAyBvC,2JAA2J;IAC3J,QAAQ,CACN,KAAK,CAAC,IAAI,SAAS,SAAS,CAAC,MAAM,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAAE,EAC3D,IAAI,SAAS,MAAM,EACnB,CAAC,SAAS,WAAW,EAErB,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,IAAI,EACZ,OAAO,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAChE,UAAU,CAAC,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAEhE,QAAQ,CACN,KAAK,CAAC,IAAI,SAAS,SAAS,CAAC,MAAM,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAAE,EAC3D,IAAI,SAAS,MAAM,EACnB,CAAC,SAAS,WAAW,EAErB,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,IAAI,EACZ,OAAO,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,EACjE,OAAO,EAAE;QAAE,MAAM,EAAE,IAAI,CAAA;KAAE,GACxB,UAAU,CAAC,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;IAkDtE;;;;;;OAMG;IACH,aAAa,CAAC,KAAK,CAAC,GAAG,SAAS,wBAAwB,CAAC,CAAC,CAAC,GAAG,MAAM,EAClE,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,WAAW,GACjB,UAAU,CAAC,CAAC,CAAC;IAYhB;;;;;;OAMG;IACH,gBAAgB,CAAC,KAAK,CAAC,GAAG,SAAS,wBAAwB,CAAC,CAAC,CAAC,GAAG,MAAM,EACrE,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,SAAS,WAAW,EAAE,GAC7B,UAAU,CAAC,CAAC,CAAC;IAgBhB;;;;;OAKG;IACH,gBAAgB,CAAC,KAAK,CAAC,GAAG,SAAS,wBAAwB,CAAC,CAAC,CAAC,GAAG,MAAM,EACrE,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,SAAS,WAAW,EAAE,GAC7B,UAAU,CAAC,CAAC,CAAC;IAgBhB;;;;;;;;;;;;;;;;;;;OAmBG;IACH,cAAc,CACZ,KAAK,CAAC,GAAG,SAAS,wBAAwB,CAAC,CAAC,CAAC,GAAG,MAAM,EACtD,KAAK,CAAC,EAAE,SAAS,gBAAgB,EACjC,KAAK,CAAC,YAAY,SAAS,UAAU,GAAG,SAAS,GAAG,SAAS,EAE7D,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,EAAE,EACX,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,YAAY,CAAA;KAAE,GAChC,UAAU,CAAC,2BAA2B,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,YAAY,CAAC,CAAC;IACpE,cAAc,CACZ,KAAK,CAAC,GAAG,SAAS,wBAAwB,CAAC,CAAC,CAAC,GAAG,MAAM,EACtD,KAAK,CAAC,EAAE,SAAS,gBAAgB,EACjC,KAAK,CAAC,IAAI,SAAS,MAAM,EACzB,KAAK,CAAC,YAAY,SAAS,UAAU,GAAG,SAAS,GAAG,SAAS,EAE7D,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,EAAE,EACX,OAAO,EAAE;QAAE,EAAE,EAAE,IAAI,CAAC;QAAC,IAAI,CAAC,EAAE,YAAY,CAAA;KAAE,GACzC,UAAU,CAAC,0BAA0B,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,YAAY,CAAC,CAAC;IA+CpE;;;;;;;;;;;;;;OAcG;IACH,YAAY,CACV,KAAK,CAAC,GAAG,SAAS,wBAAwB,CAAC,CAAC,CAAC,GAAG,MAAM,EACtD,KAAK,CAAC,UAAU,SAAS,UAAU,GAAG,QAAQ,EAE9C,GAAG,EAAE,GAAG,EACR,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,UAAU,CAAA;KAAE,GAC9B,UAAU,CAAC,yBAAyB,CAAC,CAAC,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;IAC5D,YAAY,CACV,KAAK,CAAC,GAAG,SAAS,wBAAwB,CAAC,CAAC,CAAC,GAAG,MAAM,EACtD,KAAK,CAAC,IAAI,SAAS,MAAM,EACzB,KAAK,CAAC,UAAU,SAAS,UAAU,GAAG,QAAQ,EAE9C,GAAG,EAAE,GAAG,EACR,OAAO,EAAE;QAAE,EAAE,EAAE,IAAI,CAAC;QAAC,IAAI,CAAC,EAAE,UAAU,CAAA;KAAE,GACvC,UAAU,CAAC,wBAAwB,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;IA+C5D;;;;OAIG;IACH,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED;;;;;;;;OAQG;IACH,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;IAehD,8EAA8E;IAC9E,OAAO,IAAI,cAAc,CAAC,CAAC,CAAC,EAAE;IAI9B;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,QAAQ,IAAI,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAc/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2DG;IACH,QAAQ,CACN,KAAK,CAAC,GAAG,SAAS,0BAA0B,CAAC,CAAC,CAAC,EAC/C,KAAK,CAAC,OAAO,SAAS,MAAM,GAAG,KAAK,EACpC,KAAK,CAAC,MAAM,SAAS,MAAM,GAAG,IAAI,EAClC,KAAK,CAAC,SAAS,SAAS,MAAM,GAAG,OAAO,EACxC,KAAK,CAAC,SAAS,SAAS,MAAM,GAAG,OAAO,EAExC,GAAG,EAAE,GAAG,EACR,OAAO,EAAE;QACP,MAAM,EAAE,aAAa,CAAC;QACtB,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,CAAC,EAAE,gBAAgB,CAAC;QAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,KAAK,CAAC,EAAE;YACN,GAAG,CAAC,EAAE,OAAO,CAAC;YACd,EAAE,CAAC,EAAE,MAAM,CAAC;YACZ,KAAK,CAAC,EAAE,SAAS,CAAC;YAClB,KAAK,CAAC,EAAE,SAAS,CAAC;SACnB,CAAC;KACH,GACA,UAAU,CAAC,cAAc,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IAgFvE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkCG;IACH,QAAQ,CAAC,KAAK,CAAC,GAAG,SAAS,0BAA0B,CAAC,CAAC,CAAC,EACtD,GAAG,EAAE,GAAG,EACR,OAAO,EAAE;QACP,MAAM,EAAE,aAAa,CAAC;QACtB,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,CAAC,EAAE,gBAAgB,CAAC;QAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,GACA,UAAU,CAAC,CAAC,CAAC;IA4ChB;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,YAAY,EACtC,MAAM,EAAE,aAAa,CAAC;QAAE,EAAE,EAAE,cAAc,CAAA;KAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EACvE,OAAO,EAAE;QAAE,MAAM,EAAE,CAAC,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GACpC,UAAU,CAAC,CAAC,CAAC;CAyBjB"}