@sixb/core 0.1.20 → 0.1.21

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 (681) hide show
  1. package/dist/actions/execution.d.ts.map +1 -1
  2. package/dist/actions/index.js +54 -47
  3. package/dist/actions/index.js.map +1 -1
  4. package/dist/actions/request.d.ts.map +1 -1
  5. package/dist/actions/run-authorization.d.ts +9 -0
  6. package/dist/actions/run-authorization.d.ts.map +1 -1
  7. package/dist/activity/connection.d.ts +62 -0
  8. package/dist/activity/connection.d.ts.map +1 -0
  9. package/dist/activity/device.d.ts +8 -0
  10. package/dist/activity/device.d.ts.map +1 -0
  11. package/dist/activity/execution.d.ts +48 -0
  12. package/dist/activity/execution.d.ts.map +1 -0
  13. package/dist/activity/service.d.ts +79 -0
  14. package/dist/activity/service.d.ts.map +1 -0
  15. package/dist/activity/shares.d.ts +24 -0
  16. package/dist/activity/shares.d.ts.map +1 -0
  17. package/dist/activity/timeline.d.ts +96 -0
  18. package/dist/activity/timeline.d.ts.map +1 -0
  19. package/dist/agents/index.d.ts +2 -1
  20. package/dist/agents/index.d.ts.map +1 -1
  21. package/dist/agents/index.js +63 -50
  22. package/dist/agents/index.js.map +1 -1
  23. package/dist/agents/request.d.ts.map +1 -1
  24. package/dist/agents/skills.d.ts.map +1 -1
  25. package/dist/agents/streams/index.js +3 -3
  26. package/dist/agents/streams/internal.js +3 -3
  27. package/dist/agents/types.d.ts +8 -8
  28. package/dist/agents/types.d.ts.map +1 -1
  29. package/dist/agents/validation.d.ts +1 -1
  30. package/dist/agents/validation.d.ts.map +1 -1
  31. package/dist/artifacts/address.d.ts +48 -0
  32. package/dist/artifacts/address.d.ts.map +1 -0
  33. package/dist/artifacts/csv.d.ts +22 -0
  34. package/dist/artifacts/csv.d.ts.map +1 -0
  35. package/dist/artifacts/errors.d.ts +11 -0
  36. package/dist/artifacts/errors.d.ts.map +1 -0
  37. package/dist/artifacts/execution.d.ts +43 -0
  38. package/dist/artifacts/execution.d.ts.map +1 -0
  39. package/dist/artifacts/frames/assets.d.ts +28 -0
  40. package/dist/artifacts/frames/assets.d.ts.map +1 -0
  41. package/dist/artifacts/frames/grants.d.ts +37 -0
  42. package/dist/artifacts/frames/grants.d.ts.map +1 -0
  43. package/dist/artifacts/frames/index.d.ts +10 -0
  44. package/dist/artifacts/frames/index.d.ts.map +1 -0
  45. package/dist/artifacts/frames/index.js +892 -0
  46. package/dist/artifacts/frames/index.js.map +14 -0
  47. package/dist/artifacts/frames/kit.d.ts +66 -0
  48. package/dist/artifacts/frames/kit.d.ts.map +1 -0
  49. package/dist/artifacts/frames/probe.d.ts +41 -0
  50. package/dist/artifacts/frames/probe.d.ts.map +1 -0
  51. package/dist/artifacts/frames/protocol.d.ts +98 -0
  52. package/dist/artifacts/frames/protocol.d.ts.map +1 -0
  53. package/dist/artifacts/frames/runtime.d.ts +13 -0
  54. package/dist/artifacts/frames/runtime.d.ts.map +1 -0
  55. package/dist/artifacts/html.d.ts +6 -0
  56. package/dist/artifacts/html.d.ts.map +1 -0
  57. package/dist/artifacts/ids.d.ts +5 -0
  58. package/dist/artifacts/ids.d.ts.map +1 -0
  59. package/dist/artifacts/index.d.ts +16 -0
  60. package/dist/artifacts/index.d.ts.map +1 -0
  61. package/dist/artifacts/index.js +125 -0
  62. package/dist/artifacts/index.js.map +10 -0
  63. package/dist/artifacts/kinds.d.ts +5 -0
  64. package/dist/artifacts/kinds.d.ts.map +1 -0
  65. package/dist/artifacts/limits.d.ts +28 -0
  66. package/dist/artifacts/limits.d.ts.map +1 -0
  67. package/dist/artifacts/outline.d.ts +44 -0
  68. package/dist/artifacts/outline.d.ts.map +1 -0
  69. package/dist/artifacts/publish/files.d.ts +15 -0
  70. package/dist/artifacts/publish/files.d.ts.map +1 -0
  71. package/dist/artifacts/publish/index.d.ts +5 -0
  72. package/dist/artifacts/publish/index.d.ts.map +1 -0
  73. package/dist/artifacts/publish/index.js +36 -0
  74. package/dist/artifacts/publish/index.js.map +9 -0
  75. package/dist/artifacts/publish/publish.d.ts +52 -0
  76. package/dist/artifacts/publish/publish.d.ts.map +1 -0
  77. package/dist/artifacts/publish/references.d.ts +27 -0
  78. package/dist/artifacts/publish/references.d.ts.map +1 -0
  79. package/dist/artifacts/publish/validate/document.d.ts +17 -0
  80. package/dist/artifacts/publish/validate/document.d.ts.map +1 -0
  81. package/dist/artifacts/publish/validate/file.d.ts +8 -0
  82. package/dist/artifacts/publish/validate/file.d.ts.map +1 -0
  83. package/dist/artifacts/publish/validate/sheet.d.ts +15 -0
  84. package/dist/artifacts/publish/validate/sheet.d.ts.map +1 -0
  85. package/dist/artifacts/publish/validate/slides.d.ts +21 -0
  86. package/dist/artifacts/publish/validate/slides.d.ts.map +1 -0
  87. package/dist/artifacts/references.d.ts +12 -0
  88. package/dist/artifacts/references.d.ts.map +1 -0
  89. package/dist/artifacts/resolve.d.ts +41 -0
  90. package/dist/artifacts/resolve.d.ts.map +1 -0
  91. package/dist/artifacts/theme.d.ts +19 -0
  92. package/dist/artifacts/theme.d.ts.map +1 -0
  93. package/dist/artifacts/warnings.d.ts +11 -0
  94. package/dist/artifacts/warnings.d.ts.map +1 -0
  95. package/dist/artifacts/workbook.d.ts +64 -0
  96. package/dist/artifacts/workbook.d.ts.map +1 -0
  97. package/dist/auth/index.js +10 -10
  98. package/dist/authorization/decision.d.ts +2 -0
  99. package/dist/authorization/decision.d.ts.map +1 -1
  100. package/dist/authorization/grant-kinds.d.ts +2 -2
  101. package/dist/authorization/grant-kinds.d.ts.map +1 -1
  102. package/dist/authorization/index.js +6 -6
  103. package/dist/blob-storage/browser.js +1 -1
  104. package/dist/blob-storage/index.js +2 -2
  105. package/dist/blob-storage/internal.d.ts +1 -1
  106. package/dist/blob-storage/internal.d.ts.map +1 -1
  107. package/dist/blob-storage/internal.js +11 -5
  108. package/dist/blob-storage/internal.js.map +1 -1
  109. package/dist/blob-storage/media-type.d.ts +12 -0
  110. package/dist/blob-storage/media-type.d.ts.map +1 -1
  111. package/dist/bootstrap/index.js +53 -47
  112. package/dist/bootstrap/index.js.map +2 -2
  113. package/dist/{chunk-xfs8x8m9.js → chunk-0bphap9y.js} +5 -5
  114. package/dist/{chunk-1zq2p6g0.js → chunk-1cc1xaf3.js} +3 -3
  115. package/dist/chunk-3jms7je7.js +14 -0
  116. package/dist/chunk-3jms7je7.js.map +10 -0
  117. package/dist/{chunk-s54c868q.js → chunk-3qct2mdc.js} +3 -13
  118. package/dist/chunk-3qct2mdc.js.map +12 -0
  119. package/dist/{chunk-t7x8dmn0.js → chunk-431pyp2c.js} +3 -3
  120. package/dist/{chunk-c85m1hyj.js → chunk-447a5c0p.js} +2 -2
  121. package/dist/chunk-48qjhh6v.js +185 -0
  122. package/dist/chunk-48qjhh6v.js.map +13 -0
  123. package/dist/{chunk-ren4kg2j.js → chunk-561r0yc9.js} +8 -8
  124. package/dist/{chunk-5e43w60z.js → chunk-5948n82c.js} +2 -2
  125. package/dist/{chunk-yzwja0mj.js → chunk-5hx48dnn.js} +2 -2
  126. package/dist/{chunk-x6m907x7.js → chunk-5vems3nx.js} +5 -6
  127. package/dist/{chunk-x6m907x7.js.map → chunk-5vems3nx.js.map} +3 -3
  128. package/dist/{chunk-0rbyz4qy.js → chunk-61y5xs4p.js} +560 -164
  129. package/dist/{chunk-0rbyz4qy.js.map → chunk-61y5xs4p.js.map} +12 -9
  130. package/dist/chunk-65abf64x.js +13 -0
  131. package/dist/chunk-65abf64x.js.map +10 -0
  132. package/dist/{chunk-z3y5kg1x.js → chunk-6eqsgvxk.js} +3 -3
  133. package/dist/{chunk-z3y5kg1x.js.map → chunk-6eqsgvxk.js.map} +2 -2
  134. package/dist/chunk-6rqgmkde.js +2028 -0
  135. package/dist/chunk-6rqgmkde.js.map +29 -0
  136. package/dist/{chunk-d0bqz29d.js → chunk-6vb4st8k.js} +8 -4
  137. package/dist/{chunk-d0bqz29d.js.map → chunk-6vb4st8k.js.map} +3 -3
  138. package/dist/chunk-7q8t23v4.js +467 -0
  139. package/dist/chunk-7q8t23v4.js.map +14 -0
  140. package/dist/{chunk-5j58wjct.js → chunk-858emn8m.js} +6 -6
  141. package/dist/{chunk-hvsb78a1.js → chunk-8frc8a4j.js} +26 -26
  142. package/dist/{chunk-hvsb78a1.js.map → chunk-8frc8a4j.js.map} +2 -2
  143. package/dist/{chunk-3zxk45er.js → chunk-8ncg20rd.js} +3 -68
  144. package/dist/{chunk-3zxk45er.js.map → chunk-8ncg20rd.js.map} +4 -5
  145. package/dist/{chunk-n33z5bjw.js → chunk-918wwnaa.js} +490 -24
  146. package/dist/{chunk-n33z5bjw.js.map → chunk-918wwnaa.js.map} +13 -11
  147. package/dist/{chunk-rrzt8jdy.js → chunk-9j4jw7as.js} +103 -110
  148. package/dist/chunk-9j4jw7as.js.map +14 -0
  149. package/dist/chunk-9kgkfg6v.js +502 -0
  150. package/dist/chunk-9kgkfg6v.js.map +14 -0
  151. package/dist/chunk-a3faa34j.js +74 -0
  152. package/dist/chunk-a3faa34j.js.map +10 -0
  153. package/dist/{chunk-6c6sn0bh.js → chunk-akzryx9h.js} +335 -1167
  154. package/dist/{chunk-6c6sn0bh.js.map → chunk-akzryx9h.js.map} +18 -24
  155. package/dist/chunk-arns890k.js +10 -0
  156. package/dist/chunk-arns890k.js.map +10 -0
  157. package/dist/{chunk-hjzdd750.js → chunk-bk9svbcq.js} +11 -11
  158. package/dist/{chunk-hjzdd750.js.map → chunk-bk9svbcq.js.map} +2 -2
  159. package/dist/{chunk-hkc3jct7.js → chunk-c06hmxyy.js} +2 -10
  160. package/dist/chunk-c06hmxyy.js.map +10 -0
  161. package/dist/{chunk-6p49a5cq.js → chunk-c1rxbz5y.js} +3 -3
  162. package/dist/chunk-cfj9dfbb.js +288 -0
  163. package/dist/chunk-cfj9dfbb.js.map +12 -0
  164. package/dist/{chunk-bx9q3cwv.js → chunk-cn0fwwhy.js} +7 -7
  165. package/dist/{chunk-bx9q3cwv.js.map → chunk-cn0fwwhy.js.map} +1 -1
  166. package/dist/{chunk-gc4ntf7d.js → chunk-cwdzcv37.js} +1 -1
  167. package/dist/{chunk-fa02jy15.js → chunk-cy4mbddw.js} +1 -1
  168. package/dist/{chunk-9w055r5b.js → chunk-d09e3rax.js} +1 -1
  169. package/dist/chunk-d5rjr8c0.js +176 -0
  170. package/dist/chunk-d5rjr8c0.js.map +12 -0
  171. package/dist/{chunk-dk8tkk5f.js → chunk-d7dnxdep.js} +3 -3
  172. package/dist/{chunk-b38szspf.js → chunk-dhcv7yxc.js} +1 -1
  173. package/dist/{chunk-b38szspf.js.map → chunk-dhcv7yxc.js.map} +1 -1
  174. package/dist/{chunk-gsjm1wms.js → chunk-dhdha526.js} +8 -2
  175. package/dist/chunk-dhdha526.js.map +10 -0
  176. package/dist/{chunk-8mx7qw3y.js → chunk-dvd2fp9q.js} +2 -2
  177. package/dist/{chunk-8mx7qw3y.js.map → chunk-dvd2fp9q.js.map} +3 -3
  178. package/dist/{chunk-way52z4h.js → chunk-e17zdm62.js} +6 -12
  179. package/dist/{chunk-way52z4h.js.map → chunk-e17zdm62.js.map} +3 -4
  180. package/dist/{chunk-tpn40322.js → chunk-e6k4thh5.js} +11 -10
  181. package/dist/{chunk-tpn40322.js.map → chunk-e6k4thh5.js.map} +3 -3
  182. package/dist/{chunk-tw03bsmb.js → chunk-eptrvnby.js} +224 -3
  183. package/dist/chunk-eptrvnby.js.map +12 -0
  184. package/dist/{chunk-es1gxsbf.js → chunk-f4pamkt9.js} +8 -10
  185. package/dist/chunk-f4pamkt9.js.map +12 -0
  186. package/dist/chunk-ff5xkv0p.js +211 -0
  187. package/dist/chunk-ff5xkv0p.js.map +10 -0
  188. package/dist/{chunk-d09tj99x.js → chunk-g257jwnc.js} +10 -4
  189. package/dist/{chunk-d09tj99x.js.map → chunk-g257jwnc.js.map} +3 -3
  190. package/dist/chunk-g5bvzyyr.js +32 -0
  191. package/dist/chunk-g5bvzyyr.js.map +10 -0
  192. package/dist/chunk-hke9aeen.js +9 -0
  193. package/dist/chunk-hke9aeen.js.map +10 -0
  194. package/dist/{chunk-1sr8ryzk.js → chunk-hwksyjks.js} +122 -1
  195. package/dist/{chunk-1sr8ryzk.js.map → chunk-hwksyjks.js.map} +3 -3
  196. package/dist/chunk-jcfw4h7m.js +9 -0
  197. package/dist/chunk-jcfw4h7m.js.map +10 -0
  198. package/dist/{chunk-k6q3n2sc.js → chunk-k43ct2ke.js} +20 -11
  199. package/dist/chunk-k43ct2ke.js.map +12 -0
  200. package/dist/{chunk-3t2hgbgd.js → chunk-kge7k6ey.js} +40 -8
  201. package/dist/chunk-kge7k6ey.js.map +15 -0
  202. package/dist/{chunk-tg2cw67r.js → chunk-ky3j490c.js} +2 -2
  203. package/dist/chunk-mjddfa7k.js +129 -0
  204. package/dist/chunk-mjddfa7k.js.map +12 -0
  205. package/dist/{chunk-vpq4shxz.js → chunk-nn5xnx3s.js} +45 -10
  206. package/dist/{chunk-vpq4shxz.js.map → chunk-nn5xnx3s.js.map} +7 -6
  207. package/dist/{chunk-0yh890a4.js → chunk-q5e5tv4b.js} +35 -7
  208. package/dist/{chunk-0yh890a4.js.map → chunk-q5e5tv4b.js.map} +3 -3
  209. package/dist/{chunk-vyf9kfqf.js → chunk-q7gn29y3.js} +1 -1
  210. package/dist/{chunk-yevzdx4y.js → chunk-rmakanzx.js} +10 -12
  211. package/dist/{chunk-yevzdx4y.js.map → chunk-rmakanzx.js.map} +3 -4
  212. package/dist/{chunk-v9xd5wzd.js → chunk-s7jg7pmn.js} +1 -1
  213. package/dist/chunk-tbc1ngpd.js +642 -0
  214. package/dist/chunk-tbc1ngpd.js.map +18 -0
  215. package/dist/chunk-twe4dx8p.js +676 -0
  216. package/dist/chunk-twe4dx8p.js.map +15 -0
  217. package/dist/{chunk-9dmt152s.js → chunk-vf57cr4t.js} +2 -2
  218. package/dist/{chunk-9ybhtmg4.js → chunk-vvxtn22d.js} +1 -1
  219. package/dist/{chunk-jhm3zsa7.js → chunk-wkv3h3q7.js} +64 -2
  220. package/dist/{chunk-jhm3zsa7.js.map → chunk-wkv3h3q7.js.map} +3 -3
  221. package/dist/chunk-x0v3jd47.js +124 -0
  222. package/dist/chunk-x0v3jd47.js.map +10 -0
  223. package/dist/{chunk-7t429e3f.js → chunk-xvsc5m8n.js} +1 -1
  224. package/dist/{chunk-z4m0yz8c.js → chunk-y5tah2kf.js} +1 -1
  225. package/dist/{chunk-fkgc1wt8.js → chunk-z58tm0hm.js} +2 -2
  226. package/dist/datasets/builders.d.ts +15 -2
  227. package/dist/datasets/builders.d.ts.map +1 -1
  228. package/dist/datasets/column-index.d.ts +7 -0
  229. package/dist/datasets/column-index.d.ts.map +1 -0
  230. package/dist/datasets/execution.d.ts +3 -2
  231. package/dist/datasets/execution.d.ts.map +1 -1
  232. package/dist/datasets/write.js +8 -8
  233. package/dist/error-reporting/internal.js +4 -4
  234. package/dist/errors/internal.d.ts +1 -0
  235. package/dist/errors/internal.d.ts.map +1 -1
  236. package/dist/errors/internal.js +7 -4
  237. package/dist/errors/internal.js.map +1 -1
  238. package/dist/events/execution.d.ts +12 -2
  239. package/dist/events/execution.d.ts.map +1 -1
  240. package/dist/events/index.js +4 -4
  241. package/dist/execution/agent.js +56 -49
  242. package/dist/execution/agent.js.map +1 -1
  243. package/dist/execution/authorized-object-reader.d.ts +52 -11
  244. package/dist/execution/authorized-object-reader.d.ts.map +1 -1
  245. package/dist/execution/object-reader-clearance.d.ts +41 -0
  246. package/dist/execution/object-reader-clearance.d.ts.map +1 -0
  247. package/dist/execution/object-reader-ontology.d.ts +12 -0
  248. package/dist/execution/object-reader-ontology.d.ts.map +1 -0
  249. package/dist/execution/object-reader-security.d.ts +45 -0
  250. package/dist/execution/object-reader-security.d.ts.map +1 -0
  251. package/dist/execution/primitive.js +54 -47
  252. package/dist/execution/primitive.js.map +1 -1
  253. package/dist/execution/request.js +48 -41
  254. package/dist/execution/request.js.map +2 -2
  255. package/dist/http/api-routes.d.ts.map +1 -1
  256. package/dist/http/index.js +1 -1
  257. package/dist/index.d.ts +20 -4
  258. package/dist/index.d.ts.map +1 -1
  259. package/dist/index.js +112 -97
  260. package/dist/index.js.map +1 -1
  261. package/dist/lake-storage/in-memory.d.ts +1 -0
  262. package/dist/lake-storage/in-memory.d.ts.map +1 -1
  263. package/dist/lake-storage/index.d.ts +6 -3
  264. package/dist/lake-storage/index.d.ts.map +1 -1
  265. package/dist/lake-storage/index.js +21 -13
  266. package/dist/lake-storage/index.js.map +1 -1
  267. package/dist/lake-storage/lineage.d.ts +94 -0
  268. package/dist/lake-storage/lineage.d.ts.map +1 -0
  269. package/dist/lake-storage/sql-transforms.d.ts +45 -0
  270. package/dist/lake-storage/sql-transforms.d.ts.map +1 -1
  271. package/dist/lake-storage/types.d.ts +55 -1
  272. package/dist/lake-storage/types.d.ts.map +1 -1
  273. package/dist/lake-storage/version-inputs.d.ts +14 -3
  274. package/dist/lake-storage/version-inputs.d.ts.map +1 -1
  275. package/dist/maintenance/ontology-maintenance.d.ts.map +1 -1
  276. package/dist/materializer/index.js +31 -30
  277. package/dist/materializer/index.js.map +1 -1
  278. package/dist/models/execution/index.js +25 -24
  279. package/dist/models/execution/index.js.map +1 -1
  280. package/dist/objects/clearance-redaction.d.ts +27 -0
  281. package/dist/objects/clearance-redaction.d.ts.map +1 -0
  282. package/dist/objects/index.js +54 -47
  283. package/dist/objects/index.js.map +1 -1
  284. package/dist/objects/link/authorization.d.ts +8 -5
  285. package/dist/objects/link/authorization.d.ts.map +1 -1
  286. package/dist/objects/link/upsert-batch.d.ts.map +1 -1
  287. package/dist/objects/object/delete.d.ts.map +1 -1
  288. package/dist/objects/object/upsert-batch.d.ts.map +1 -1
  289. package/dist/objects/object/upsert.d.ts.map +1 -1
  290. package/dist/objects/property-clearance.d.ts +47 -24
  291. package/dist/objects/property-clearance.d.ts.map +1 -1
  292. package/dist/objects/query/clearance-admission.d.ts +10 -0
  293. package/dist/objects/query/clearance-admission.d.ts.map +1 -0
  294. package/dist/objects/query/index.js +29 -28
  295. package/dist/objects/query/index.js.map +1 -1
  296. package/dist/objects/query/link-query-clearance.d.ts +21 -0
  297. package/dist/objects/query/link-query-clearance.d.ts.map +1 -0
  298. package/dist/ontology/builders.d.ts.map +1 -1
  299. package/dist/ontology/docs-markdown.d.ts +1 -1
  300. package/dist/ontology/docs-markdown.d.ts.map +1 -1
  301. package/dist/ontology/index.js +7 -7
  302. package/dist/ontology/internal.js +4 -4
  303. package/dist/ontology/internal.js.map +1 -1
  304. package/dist/pipelines/index.d.ts +2 -0
  305. package/dist/pipelines/index.d.ts.map +1 -1
  306. package/dist/pipelines/index.js +47 -35
  307. package/dist/pipelines/index.js.map +1 -1
  308. package/dist/pipelines/lineage.d.ts +17 -0
  309. package/dist/pipelines/lineage.d.ts.map +1 -0
  310. package/dist/projections/internal.d.ts +2 -2
  311. package/dist/projections/internal.js +30 -29
  312. package/dist/projections/internal.js.map +1 -1
  313. package/dist/runtime/create.d.ts +3 -0
  314. package/dist/runtime/create.d.ts.map +1 -1
  315. package/dist/runtime/host.d.ts +6 -0
  316. package/dist/runtime/host.d.ts.map +1 -1
  317. package/dist/runtime/internal.d.ts +2 -0
  318. package/dist/runtime/internal.d.ts.map +1 -1
  319. package/dist/runtime/internal.js +46 -42
  320. package/dist/runtime/internal.js.map +1 -1
  321. package/dist/runtime/ontology-mutations.d.ts +2 -0
  322. package/dist/runtime/ontology-mutations.d.ts.map +1 -1
  323. package/dist/runtime/resolve-definitions.d.ts.map +1 -1
  324. package/dist/runtime/sixb.d.ts +8 -0
  325. package/dist/runtime/sixb.d.ts.map +1 -1
  326. package/dist/sandboxes/auth.d.ts +16 -0
  327. package/dist/sandboxes/auth.d.ts.map +1 -1
  328. package/dist/sandboxes/config.d.ts.map +1 -1
  329. package/dist/sandboxes/configuration.d.ts +26 -0
  330. package/dist/sandboxes/configuration.d.ts.map +1 -1
  331. package/dist/sandboxes/index.d.ts +1 -1
  332. package/dist/sandboxes/index.d.ts.map +1 -1
  333. package/dist/sandboxes/index.js +14 -13
  334. package/dist/sandboxes/index.js.map +1 -1
  335. package/dist/sandboxes/sandbox.d.ts +28 -5
  336. package/dist/sandboxes/sandbox.d.ts.map +1 -1
  337. package/dist/security/applied-markings-contribution.d.ts +58 -0
  338. package/dist/security/applied-markings-contribution.d.ts.map +1 -0
  339. package/dist/security/applied-markings-host.d.ts +10 -0
  340. package/dist/security/applied-markings-host.d.ts.map +1 -0
  341. package/dist/security/applied-markings-snapshot.d.ts +67 -0
  342. package/dist/security/applied-markings-snapshot.d.ts.map +1 -0
  343. package/dist/security/applied-markings.d.ts +73 -0
  344. package/dist/security/applied-markings.d.ts.map +1 -0
  345. package/dist/security/dataset-version-markings.d.ts +47 -0
  346. package/dist/security/dataset-version-markings.d.ts.map +1 -0
  347. package/dist/security/grants.d.ts +3 -2
  348. package/dist/security/grants.d.ts.map +1 -1
  349. package/dist/security/index.d.ts +2 -1
  350. package/dist/security/index.d.ts.map +1 -1
  351. package/dist/security/internal.d.ts +15 -0
  352. package/dist/security/internal.d.ts.map +1 -0
  353. package/dist/security/internal.js +135 -0
  354. package/dist/security/internal.js.map +10 -0
  355. package/dist/security/marking-propagation.d.ts +62 -0
  356. package/dist/security/marking-propagation.d.ts.map +1 -0
  357. package/dist/security/marking-sets.d.ts +14 -0
  358. package/dist/security/marking-sets.d.ts.map +1 -0
  359. package/dist/security/markings.d.ts +6 -3
  360. package/dist/security/markings.d.ts.map +1 -1
  361. package/dist/security/pipeline-markings.d.ts +20 -0
  362. package/dist/security/pipeline-markings.d.ts.map +1 -0
  363. package/dist/security/project.d.ts +4 -0
  364. package/dist/security/project.d.ts.map +1 -0
  365. package/dist/security/projection-markings.d.ts +71 -0
  366. package/dist/security/projection-markings.d.ts.map +1 -0
  367. package/dist/security/public.js +2 -2
  368. package/dist/security/redactions.d.ts +4 -1
  369. package/dist/security/redactions.d.ts.map +1 -1
  370. package/dist/security/types.d.ts +22 -2
  371. package/dist/security/types.d.ts.map +1 -1
  372. package/dist/security/validation.d.ts.map +1 -1
  373. package/dist/shares/internal.js +24 -23
  374. package/dist/shares/internal.js.map +2 -2
  375. package/dist/storage/action-runs/failure.js +3 -3
  376. package/dist/storage/action-runs/in-memory.d.ts +4 -0
  377. package/dist/storage/action-runs/in-memory.d.ts.map +1 -1
  378. package/dist/storage/action-runs/types.d.ts +8 -0
  379. package/dist/storage/action-runs/types.d.ts.map +1 -1
  380. package/dist/storage/activity/in-memory.d.ts +55 -0
  381. package/dist/storage/activity/in-memory.d.ts.map +1 -0
  382. package/dist/storage/activity/index.d.ts +3 -0
  383. package/dist/storage/activity/index.d.ts.map +1 -0
  384. package/dist/storage/activity/policy.d.ts +96 -0
  385. package/dist/storage/activity/policy.d.ts.map +1 -0
  386. package/dist/storage/activity/types.d.ts +191 -0
  387. package/dist/storage/activity/types.d.ts.map +1 -0
  388. package/dist/storage/agents/in-memory.d.ts +4 -0
  389. package/dist/storage/agents/in-memory.d.ts.map +1 -1
  390. package/dist/storage/agents/provider.d.ts.map +1 -1
  391. package/dist/storage/agents/provider.js +2 -5
  392. package/dist/storage/agents/provider.js.map +1 -1
  393. package/dist/storage/agents/types.d.ts +9 -8
  394. package/dist/storage/agents/types.d.ts.map +1 -1
  395. package/dist/storage/ai-limits/enforcement.js +3 -3
  396. package/dist/storage/artifacts/errors.d.ts +8 -0
  397. package/dist/storage/artifacts/errors.d.ts.map +1 -0
  398. package/dist/storage/artifacts/in-memory.d.ts +34 -0
  399. package/dist/storage/artifacts/in-memory.d.ts.map +1 -0
  400. package/dist/storage/artifacts/index.d.ts +5 -0
  401. package/dist/storage/artifacts/index.d.ts.map +1 -0
  402. package/dist/storage/artifacts/record.d.ts +17 -0
  403. package/dist/storage/artifacts/record.d.ts.map +1 -0
  404. package/dist/storage/artifacts/types.d.ts +184 -0
  405. package/dist/storage/artifacts/types.d.ts.map +1 -0
  406. package/dist/storage/auth/in-memory/sessions.d.ts +2 -1
  407. package/dist/storage/auth/in-memory/sessions.d.ts.map +1 -1
  408. package/dist/storage/auth/index.d.ts +1 -1
  409. package/dist/storage/auth/index.d.ts.map +1 -1
  410. package/dist/storage/auth/types.d.ts +19 -0
  411. package/dist/storage/auth/types.d.ts.map +1 -1
  412. package/dist/storage/connector-connections/provider.js +2 -2
  413. package/dist/storage/executions/in-memory.d.ts +2 -1
  414. package/dist/storage/executions/in-memory.d.ts.map +1 -1
  415. package/dist/storage/executions/index.d.ts +1 -1
  416. package/dist/storage/executions/index.d.ts.map +1 -1
  417. package/dist/storage/executions/provider.d.ts +2 -0
  418. package/dist/storage/executions/provider.d.ts.map +1 -1
  419. package/dist/storage/executions/provider.js +9 -223
  420. package/dist/storage/executions/provider.js.map +3 -4
  421. package/dist/storage/executions/types.d.ts +31 -0
  422. package/dist/storage/executions/types.d.ts.map +1 -1
  423. package/dist/storage/file-upload-sessions/provider.js +11 -11
  424. package/dist/storage/in-memory/index.d.ts +8 -0
  425. package/dist/storage/in-memory/index.d.ts.map +1 -1
  426. package/dist/storage/index.d.ts +6 -4
  427. package/dist/storage/index.d.ts.map +1 -1
  428. package/dist/storage/index.js +54 -53
  429. package/dist/storage/index.js.map +1 -1
  430. package/dist/storage/internal.d.ts +3 -0
  431. package/dist/storage/internal.d.ts.map +1 -1
  432. package/dist/storage/internal.js +66 -16
  433. package/dist/storage/internal.js.map +1 -1
  434. package/dist/storage/ontology/in-memory/sources.d.ts +2 -1
  435. package/dist/storage/ontology/in-memory/sources.d.ts.map +1 -1
  436. package/dist/storage/ontology/index.d.ts +1 -1
  437. package/dist/storage/ontology/index.d.ts.map +1 -1
  438. package/dist/storage/ontology/sources.d.ts +15 -0
  439. package/dist/storage/ontology/sources.d.ts.map +1 -1
  440. package/dist/storage/projection-runs/provider.js +3 -3
  441. package/dist/storage/share-grants/in-memory.d.ts +2 -1
  442. package/dist/storage/share-grants/in-memory.d.ts.map +1 -1
  443. package/dist/storage/share-grants/index.d.ts +1 -1
  444. package/dist/storage/share-grants/index.d.ts.map +1 -1
  445. package/dist/storage/share-grants/types.d.ts +6 -0
  446. package/dist/storage/share-grants/types.d.ts.map +1 -1
  447. package/dist/storage/types.d.ts +4 -0
  448. package/dist/storage/types.d.ts.map +1 -1
  449. package/dist/storage/workflow-runs/in-memory.d.ts +4 -0
  450. package/dist/storage/workflow-runs/in-memory.d.ts.map +1 -1
  451. package/dist/storage/workflow-runs/provider.js +13 -12
  452. package/dist/storage/workflow-runs/provider.js.map +1 -1
  453. package/dist/storage/workflow-runs/types.d.ts +5 -0
  454. package/dist/storage/workflow-runs/types.d.ts.map +1 -1
  455. package/dist/syncs/index.js +35 -34
  456. package/dist/syncs/index.js.map +1 -1
  457. package/dist/testing/action-run-storage-contract.d.ts.map +1 -1
  458. package/dist/testing/activity-storage-contract.d.ts +14 -0
  459. package/dist/testing/activity-storage-contract.d.ts.map +1 -0
  460. package/dist/testing/agent-storage-contract.d.ts.map +1 -1
  461. package/dist/testing/artifact-storage-contract.d.ts +13 -0
  462. package/dist/testing/artifact-storage-contract.d.ts.map +1 -0
  463. package/dist/testing/auth-storage-contract.d.ts.map +1 -1
  464. package/dist/testing/execution-storage-contract.d.ts.map +1 -1
  465. package/dist/testing/index.d.ts +2 -0
  466. package/dist/testing/index.d.ts.map +1 -1
  467. package/dist/testing/index.js +4488 -3137
  468. package/dist/testing/index.js.map +14 -12
  469. package/dist/testing/lake-merge-storage-contract.d.ts.map +1 -1
  470. package/dist/testing/lake-storage-contract.d.ts +2 -0
  471. package/dist/testing/lake-storage-contract.d.ts.map +1 -1
  472. package/dist/testing/ontology-storage-contract.d.ts.map +1 -1
  473. package/dist/testing/share-grant-storage-contract.d.ts.map +1 -1
  474. package/dist/webhooks/internal.js +27 -26
  475. package/dist/webhooks/internal.js.map +2 -2
  476. package/dist/workers/index.js +2 -2
  477. package/dist/workflows/builders.d.ts.map +1 -1
  478. package/dist/workflows/index.js +57 -51
  479. package/dist/workflows/index.js.map +1 -1
  480. package/dist/workflows/types.d.ts +9 -0
  481. package/dist/workflows/types.d.ts.map +1 -1
  482. package/dist/workflows/validation.d.ts +7 -0
  483. package/dist/workflows/validation.d.ts.map +1 -1
  484. package/package.json +25 -1
  485. package/src/actions/execution.ts +18 -13
  486. package/src/actions/request.ts +18 -3
  487. package/src/actions/run-authorization.ts +23 -0
  488. package/src/activity/README.md +155 -0
  489. package/src/activity/connection.ts +217 -0
  490. package/src/activity/device.ts +41 -0
  491. package/src/activity/execution.ts +210 -0
  492. package/src/activity/service.ts +274 -0
  493. package/src/activity/shares.ts +62 -0
  494. package/src/activity/timeline.ts +424 -0
  495. package/src/agents/index.ts +8 -3
  496. package/src/agents/request.ts +5 -0
  497. package/src/agents/skills.ts +6 -0
  498. package/src/agents/types.ts +8 -8
  499. package/src/agents/validation.ts +2 -0
  500. package/src/artifacts/address.ts +132 -0
  501. package/src/artifacts/csv.ts +108 -0
  502. package/src/artifacts/errors.ts +21 -0
  503. package/src/artifacts/execution.ts +153 -0
  504. package/src/artifacts/frames/assets.ts +88 -0
  505. package/src/artifacts/frames/grants.ts +124 -0
  506. package/src/artifacts/frames/index.ts +15 -0
  507. package/src/artifacts/frames/kit.ts +392 -0
  508. package/src/artifacts/frames/probe.ts +309 -0
  509. package/src/artifacts/frames/protocol.ts +174 -0
  510. package/src/artifacts/frames/runtime.ts +213 -0
  511. package/src/artifacts/html.ts +25 -0
  512. package/src/artifacts/ids.ts +18 -0
  513. package/src/artifacts/index.ts +61 -0
  514. package/src/artifacts/kinds.ts +8 -0
  515. package/src/artifacts/limits.ts +27 -0
  516. package/src/artifacts/outline.ts +62 -0
  517. package/src/artifacts/publish/files.ts +87 -0
  518. package/src/artifacts/publish/index.ts +12 -0
  519. package/src/artifacts/publish/publish.ts +250 -0
  520. package/src/artifacts/publish/references.ts +130 -0
  521. package/src/artifacts/publish/validate/document.ts +114 -0
  522. package/src/artifacts/publish/validate/file.ts +19 -0
  523. package/src/artifacts/publish/validate/sheet.ts +251 -0
  524. package/src/artifacts/publish/validate/slides.ts +134 -0
  525. package/src/artifacts/references.ts +11 -0
  526. package/src/artifacts/resolve.ts +97 -0
  527. package/src/artifacts/theme.ts +116 -0
  528. package/src/artifacts/warnings.ts +10 -0
  529. package/src/artifacts/workbook.ts +315 -0
  530. package/src/authorization/decision.ts +5 -0
  531. package/src/authorization/grant-kinds.ts +14 -2
  532. package/src/blob-storage/internal.ts +1 -1
  533. package/src/blob-storage/media-type.ts +69 -0
  534. package/src/datasets/builders.ts +66 -2
  535. package/src/datasets/column-index.ts +19 -0
  536. package/src/datasets/execution.ts +23 -9
  537. package/src/errors/internal.ts +1 -0
  538. package/src/events/execution.ts +134 -21
  539. package/src/execution/authorized-object-reader.ts +270 -256
  540. package/src/execution/object-reader-clearance.ts +91 -0
  541. package/src/execution/object-reader-ontology.ts +63 -0
  542. package/src/execution/object-reader-security.ts +146 -0
  543. package/src/http/api-routes.ts +125 -0
  544. package/src/index.ts +71 -3
  545. package/src/lake-storage/in-memory.ts +26 -3
  546. package/src/lake-storage/index.ts +13 -1
  547. package/src/lake-storage/lineage.ts +385 -0
  548. package/src/lake-storage/sql-transforms.ts +45 -0
  549. package/src/lake-storage/types.ts +59 -1
  550. package/src/lake-storage/version-inputs.ts +35 -6
  551. package/src/maintenance/ontology-maintenance.ts +15 -0
  552. package/src/objects/clearance-redaction.ts +138 -0
  553. package/src/objects/link/authorization.ts +27 -7
  554. package/src/objects/link/remove.ts +2 -2
  555. package/src/objects/link/upsert-batch.ts +7 -5
  556. package/src/objects/link/upsert.ts +2 -2
  557. package/src/objects/object/delete.ts +2 -0
  558. package/src/objects/object/upsert-batch.ts +2 -4
  559. package/src/objects/object/upsert.ts +2 -3
  560. package/src/objects/property-clearance.ts +171 -152
  561. package/src/objects/query/clearance-admission.ts +112 -0
  562. package/src/objects/query/link-query-clearance.ts +73 -0
  563. package/src/ontology/builders.ts +12 -1
  564. package/src/ontology/docs-markdown.ts +1 -1
  565. package/src/pipelines/index.ts +2 -0
  566. package/src/pipelines/lineage.ts +45 -0
  567. package/src/projections/internal.ts +2 -2
  568. package/src/runtime/create.ts +4 -0
  569. package/src/runtime/host.ts +55 -0
  570. package/src/runtime/internal.ts +2 -0
  571. package/src/runtime/ontology-mutations.ts +19 -4
  572. package/src/runtime/resolve-definitions.ts +66 -3
  573. package/src/runtime/sixb.ts +18 -1
  574. package/src/sandboxes/README.md +29 -7
  575. package/src/sandboxes/auth.ts +16 -0
  576. package/src/sandboxes/config.ts +2 -7
  577. package/src/sandboxes/configuration.ts +61 -7
  578. package/src/sandboxes/index.ts +1 -0
  579. package/src/sandboxes/sandbox.ts +27 -5
  580. package/src/security/applied-markings-contribution.ts +277 -0
  581. package/src/security/applied-markings-host.ts +41 -0
  582. package/src/security/applied-markings-snapshot.ts +235 -0
  583. package/src/security/applied-markings.ts +405 -0
  584. package/src/security/dataset-version-markings.ts +163 -0
  585. package/src/security/grants.ts +39 -4
  586. package/src/security/index.ts +3 -0
  587. package/src/security/internal.ts +18 -0
  588. package/src/security/marking-propagation.ts +255 -0
  589. package/src/security/marking-sets.ts +42 -0
  590. package/src/security/markings.ts +29 -178
  591. package/src/security/pipeline-markings.ts +175 -0
  592. package/src/security/project.ts +8 -0
  593. package/src/security/projection-markings.ts +421 -0
  594. package/src/security/redactions.ts +7 -2
  595. package/src/security/types.ts +20 -2
  596. package/src/security/validation.ts +11 -4
  597. package/src/storage/action-runs/in-memory.ts +18 -0
  598. package/src/storage/action-runs/types.ts +8 -0
  599. package/src/storage/activity/in-memory.ts +374 -0
  600. package/src/storage/activity/index.ts +27 -0
  601. package/src/storage/activity/policy.ts +430 -0
  602. package/src/storage/activity/types.ts +211 -0
  603. package/src/storage/agents/in-memory.ts +10 -0
  604. package/src/storage/agents/provider.ts +2 -13
  605. package/src/storage/agents/types.ts +9 -16
  606. package/src/storage/artifacts/errors.ts +16 -0
  607. package/src/storage/artifacts/in-memory.ts +240 -0
  608. package/src/storage/artifacts/index.ts +30 -0
  609. package/src/storage/artifacts/record.ts +200 -0
  610. package/src/storage/artifacts/types.ts +209 -0
  611. package/src/storage/auth/in-memory/sessions.ts +21 -0
  612. package/src/storage/auth/index.ts +2 -0
  613. package/src/storage/auth/types.ts +18 -0
  614. package/src/storage/executions/in-memory.ts +61 -1
  615. package/src/storage/executions/index.ts +3 -0
  616. package/src/storage/executions/provider.ts +12 -0
  617. package/src/storage/executions/types.ts +30 -0
  618. package/src/storage/in-memory/index.ts +16 -0
  619. package/src/storage/index.ts +63 -0
  620. package/src/storage/internal.ts +30 -0
  621. package/src/storage/ontology/in-memory/sources.ts +23 -0
  622. package/src/storage/ontology/index.ts +2 -0
  623. package/src/storage/ontology/sources.ts +17 -0
  624. package/src/storage/share-grants/in-memory.ts +8 -0
  625. package/src/storage/share-grants/index.ts +1 -0
  626. package/src/storage/share-grants/types.ts +8 -0
  627. package/src/storage/types.ts +4 -0
  628. package/src/storage/workflow-runs/in-memory.ts +16 -0
  629. package/src/storage/workflow-runs/types.ts +5 -0
  630. package/src/testing/action-run-storage-contract.ts +25 -0
  631. package/src/testing/activity-storage-contract.ts +840 -0
  632. package/src/testing/agent-storage-contract.ts +22 -21
  633. package/src/testing/artifact-storage-contract.ts +517 -0
  634. package/src/testing/auth-storage-contract.ts +47 -0
  635. package/src/testing/execution-storage-contract.ts +147 -1
  636. package/src/testing/index.ts +9 -0
  637. package/src/testing/lake-merge-storage-contract.ts +38 -0
  638. package/src/testing/lake-storage-contract.ts +247 -2
  639. package/src/testing/materializer-storage-contract.ts +1 -0
  640. package/src/testing/ontology-storage-contract.ts +57 -2
  641. package/src/testing/share-grant-storage-contract.ts +15 -0
  642. package/src/workflows/builders.ts +14 -0
  643. package/src/workflows/types.ts +9 -0
  644. package/src/workflows/validation.ts +72 -0
  645. package/dist/chunk-1k89ecfr.js +0 -85
  646. package/dist/chunk-1k89ecfr.js.map +0 -10
  647. package/dist/chunk-3t2hgbgd.js.map +0 -15
  648. package/dist/chunk-4vyr1j8f.js +0 -128
  649. package/dist/chunk-4vyr1j8f.js.map +0 -11
  650. package/dist/chunk-9gyp8hg1.js +0 -363
  651. package/dist/chunk-9gyp8hg1.js.map +0 -14
  652. package/dist/chunk-es1gxsbf.js.map +0 -13
  653. package/dist/chunk-gsjm1wms.js.map +0 -10
  654. package/dist/chunk-hkc3jct7.js.map +0 -10
  655. package/dist/chunk-k6q3n2sc.js.map +0 -12
  656. package/dist/chunk-rrzt8jdy.js.map +0 -14
  657. package/dist/chunk-s16apyk9.js +0 -256
  658. package/dist/chunk-s16apyk9.js.map +0 -16
  659. package/dist/chunk-s54c868q.js.map +0 -12
  660. package/dist/chunk-tw03bsmb.js.map +0 -11
  661. /package/dist/{chunk-xfs8x8m9.js.map → chunk-0bphap9y.js.map} +0 -0
  662. /package/dist/{chunk-1zq2p6g0.js.map → chunk-1cc1xaf3.js.map} +0 -0
  663. /package/dist/{chunk-t7x8dmn0.js.map → chunk-431pyp2c.js.map} +0 -0
  664. /package/dist/{chunk-c85m1hyj.js.map → chunk-447a5c0p.js.map} +0 -0
  665. /package/dist/{chunk-ren4kg2j.js.map → chunk-561r0yc9.js.map} +0 -0
  666. /package/dist/{chunk-5e43w60z.js.map → chunk-5948n82c.js.map} +0 -0
  667. /package/dist/{chunk-yzwja0mj.js.map → chunk-5hx48dnn.js.map} +0 -0
  668. /package/dist/{chunk-5j58wjct.js.map → chunk-858emn8m.js.map} +0 -0
  669. /package/dist/{chunk-6p49a5cq.js.map → chunk-c1rxbz5y.js.map} +0 -0
  670. /package/dist/{chunk-gc4ntf7d.js.map → chunk-cwdzcv37.js.map} +0 -0
  671. /package/dist/{chunk-fa02jy15.js.map → chunk-cy4mbddw.js.map} +0 -0
  672. /package/dist/{chunk-9w055r5b.js.map → chunk-d09e3rax.js.map} +0 -0
  673. /package/dist/{chunk-dk8tkk5f.js.map → chunk-d7dnxdep.js.map} +0 -0
  674. /package/dist/{chunk-tg2cw67r.js.map → chunk-ky3j490c.js.map} +0 -0
  675. /package/dist/{chunk-vyf9kfqf.js.map → chunk-q7gn29y3.js.map} +0 -0
  676. /package/dist/{chunk-v9xd5wzd.js.map → chunk-s7jg7pmn.js.map} +0 -0
  677. /package/dist/{chunk-9dmt152s.js.map → chunk-vf57cr4t.js.map} +0 -0
  678. /package/dist/{chunk-9ybhtmg4.js.map → chunk-vvxtn22d.js.map} +0 -0
  679. /package/dist/{chunk-7t429e3f.js.map → chunk-xvsc5m8n.js.map} +0 -0
  680. /package/dist/{chunk-z4m0yz8c.js.map → chunk-y5tah2kf.js.map} +0 -0
  681. /package/dist/{chunk-fkgc1wt8.js.map → chunk-z58tm0hm.js.map} +0 -0
@@ -2,16 +2,16 @@
2
2
  import {
3
3
  isFileRef2,
4
4
  isValidFileRef
5
- } from "./chunk-jhm3zsa7.js";
5
+ } from "./chunk-wkv3h3q7.js";
6
6
  import {
7
- withFailureMessage
8
- } from "./chunk-z3y5kg1x.js";
9
- import {
10
- assertEmbeddingModelRef
11
- } from "./chunk-kyjcwqz6.js";
7
+ withFailureMessage2
8
+ } from "./chunk-6eqsgvxk.js";
12
9
  import {
13
10
  OntologyValidationError2
14
11
  } from "./chunk-cqr3acm1.js";
12
+ import {
13
+ assertEmbeddingModelRef
14
+ } from "./chunk-kyjcwqz6.js";
15
15
  import {
16
16
  normalizeDecimalValue2,
17
17
  isDecimalString2
@@ -99,50 +99,50 @@ function validateSchemaValue2(schema, value, path, valueTypesById, diagnosticPat
99
99
  case "string":
100
100
  case "uuid": {
101
101
  if (typeof value !== "string") {
102
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Property ${path} must be a string`), `Property ${diagnosticPath} must be a string.`);
102
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Property ${path} must be a string`), `Property ${diagnosticPath} must be a string.`);
103
103
  }
104
104
  return;
105
105
  }
106
106
  case "boolean": {
107
107
  if (typeof value !== "boolean") {
108
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Property ${path} must be a boolean`), `Property ${diagnosticPath} must be a boolean.`);
108
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Property ${path} must be a boolean`), `Property ${diagnosticPath} must be a boolean.`);
109
109
  }
110
110
  return;
111
111
  }
112
112
  case "integer": {
113
113
  if (typeof value !== "number" || !Number.isInteger(value)) {
114
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Property ${path} must be an integer`), `Property ${diagnosticPath} must be an integer.`);
114
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Property ${path} must be an integer`), `Property ${diagnosticPath} must be an integer.`);
115
115
  }
116
116
  return;
117
117
  }
118
118
  case "double": {
119
119
  if (typeof value !== "number" || !Number.isFinite(value)) {
120
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Property ${path} must be numeric`), `Property ${diagnosticPath} must be numeric.`);
120
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Property ${path} must be numeric`), `Property ${diagnosticPath} must be numeric.`);
121
121
  }
122
122
  return;
123
123
  }
124
124
  case "decimal": {
125
125
  if (!isDecimalString2(value)) {
126
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Property ${path} must be an exact decimal string`), `Property ${diagnosticPath} must be an exact decimal string.`);
126
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Property ${path} must be an exact decimal string`), `Property ${diagnosticPath} must be an exact decimal string.`);
127
127
  }
128
128
  return;
129
129
  }
130
130
  case "date":
131
131
  case "timestamp": {
132
132
  if (!(value instanceof Date) && typeof value !== "string") {
133
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Property ${path} must be a Date or ISO string`), `Property ${diagnosticPath} must be a Date or ISO string.`);
133
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Property ${path} must be a Date or ISO string`), `Property ${diagnosticPath} must be a Date or ISO string.`);
134
134
  }
135
135
  return;
136
136
  }
137
137
  case "fileRef": {
138
138
  if (!isFileRef2(value)) {
139
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Property ${path} must be a fileRef`), `Property ${diagnosticPath} must be a fileRef.`);
139
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Property ${path} must be a fileRef`), `Property ${diagnosticPath} must be a fileRef.`);
140
140
  }
141
141
  return;
142
142
  }
143
143
  case "userRef": {
144
144
  if (!isUserRef(value)) {
145
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Property ${path} must be a user reference { type: "user", id }`), `Property ${diagnosticPath} must be a user reference.`);
145
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Property ${path} must be a user reference { type: "user", id }`), `Property ${diagnosticPath} must be a user reference.`);
146
146
  }
147
147
  return;
148
148
  }
@@ -151,13 +151,13 @@ function validateSchemaValue2(schema, value, path, valueTypesById, diagnosticPat
151
151
  }
152
152
  if (schema.type === "enum") {
153
153
  if (!schema.values.includes(value)) {
154
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Property ${path} must be one of: ${schema.values.join(", ")}`), `Property ${diagnosticPath} must match a declared enum value.`);
154
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Property ${path} must be one of: ${schema.values.join(", ")}`), `Property ${diagnosticPath} must match a declared enum value.`);
155
155
  }
156
156
  return;
157
157
  }
158
158
  if (schema.type === "array") {
159
159
  if (!Array.isArray(value)) {
160
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Property ${path} must be an array`), `Property ${diagnosticPath} must be an array.`);
160
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Property ${path} must be an array`), `Property ${diagnosticPath} must be an array.`);
161
161
  }
162
162
  for (let index = 0;index < value.length; index += 1) {
163
163
  validateSchemaValue2(schema.items, value[index], `${path}[${index}]`, valueTypesById, `${diagnosticPath}[${index}]`);
@@ -166,7 +166,7 @@ function validateSchemaValue2(schema, value, path, valueTypesById, diagnosticPat
166
166
  }
167
167
  if (schema.type === "map") {
168
168
  if (!isRecord2(value)) {
169
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Property ${path} must be an object map`), `Property ${diagnosticPath} must be an object map.`);
169
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Property ${path} must be an object map`), `Property ${diagnosticPath} must be an object map.`);
170
170
  }
171
171
  for (const [key, entry] of Object.entries(value)) {
172
172
  validateSchemaValue2(schema.valueSchema, entry, `${path}.${key}`, valueTypesById, `${diagnosticPath}.*`);
@@ -175,20 +175,20 @@ function validateSchemaValue2(schema, value, path, valueTypesById, diagnosticPat
175
175
  }
176
176
  if (schema.type === "object") {
177
177
  if (!isRecord2(value)) {
178
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Property ${path} must be an object`), `Property ${diagnosticPath} must be an object.`);
178
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Property ${path} must be an object`), `Property ${diagnosticPath} must be an object.`);
179
179
  }
180
180
  const fields = schema.properties;
181
181
  const fieldIds = new Set(Object.keys(fields));
182
182
  for (const fieldId of Object.keys(value)) {
183
183
  if (!fieldIds.has(fieldId)) {
184
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Unknown field '${path}.${fieldId}'`), `Object ${diagnosticPath} contains an undeclared field.`);
184
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Unknown field '${path}.${fieldId}'`), `Object ${diagnosticPath} contains an undeclared field.`);
185
185
  }
186
186
  }
187
187
  for (const [fieldId, field] of Object.entries(fields)) {
188
188
  const fieldValue = value[fieldId];
189
189
  if (fieldValue === undefined) {
190
190
  if (field.required) {
191
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Missing required field '${path}.${fieldId}'`), `Missing required field '${diagnosticPath}.${fieldId}'.`);
191
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Missing required field '${path}.${fieldId}'`), `Missing required field '${diagnosticPath}.${fieldId}'.`);
192
192
  }
193
193
  continue;
194
194
  }
@@ -203,7 +203,7 @@ function validateSchemaValue2(schema, value, path, valueTypesById, diagnosticPat
203
203
  function assertValidFileRefs2(value, path) {
204
204
  if (isFileRef2(value)) {
205
205
  if (!isValidFileRef(value)) {
206
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Property ${path}.mediaType must be one media type, such as "application/pdf"`), `Property ${path}.mediaType must be one media type, such as "application/pdf".`);
206
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Property ${path}.mediaType must be one media type, such as "application/pdf"`), `Property ${path}.mediaType must be one media type, such as "application/pdf".`);
207
207
  }
208
208
  return;
209
209
  }
@@ -220,7 +220,7 @@ function validateFieldValue(field, value, path, valueTypesById, diagnosticPath =
220
220
  if (field.nullable) {
221
221
  return;
222
222
  }
223
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Field ${path} cannot be null`), `Field ${diagnosticPath} cannot be null.`);
223
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Field ${path} cannot be null`), `Field ${diagnosticPath} cannot be null.`);
224
224
  }
225
225
  validateSchemaValue2(field.schema, value, path, valueTypesById, diagnosticPath);
226
226
  }
@@ -503,7 +503,7 @@ function assertKnownProperties2(objectType, properties) {
503
503
  function assertRequiredProperties2(objectType, properties) {
504
504
  for (const property of objectType.properties) {
505
505
  if (property.required && properties[property.id] === undefined) {
506
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Missing required property '${property.id}' for object type '${objectType.id}'`), `Missing required property '${objectType.id}.${property.id}'.`);
506
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Missing required property '${property.id}' for object type '${objectType.id}'`), `Missing required property '${objectType.id}.${property.id}'.`);
507
507
  }
508
508
  }
509
509
  }
@@ -561,13 +561,13 @@ function validatePropertyDefinitions2(objectTypesById, valueTypesById) {
561
561
  }
562
562
  function validatePropertyValue2(property, value, path, valueTypesById) {
563
563
  if (value === undefined) {
564
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Property ${path} cannot be undefined`), `Property ${path} cannot be undefined.`);
564
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Property ${path} cannot be undefined`), `Property ${path} cannot be undefined.`);
565
565
  }
566
566
  if (value === null) {
567
567
  if (property.nullable) {
568
568
  return;
569
569
  }
570
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Property ${path} cannot be null`), `Property ${path} cannot be null.`);
570
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Property ${path} cannot be null`), `Property ${path} cannot be null.`);
571
571
  }
572
572
  validateSchemaValue2(property.schema, value, path, valueTypesById);
573
573
  }
@@ -1549,4 +1549,4 @@ function validateTelemetryUnit2(property, propertyPath, unit, valueTypesById) {
1549
1549
  }
1550
1550
  export { userRef2, collectUserRefIds, userReferenceProblem, validateSchemaValue2, assertValidFileRefs2, resolveValueTypeRef2, resolveValueTypeSchema2, isRecord2, normalizeObjectProperties2, normalizeSchemaValue2, coerceSchemaValueToTyped2, isPrimitiveSchema, primitiveTraits, assertObjectTypeRegistered2, assertPropertyTokenBelongsToObjectType2, assertLinkTokenBelongsToObjectType2, assertKnownProperties2, assertRequiredProperties2, validateObjectProperties2, validatePrimaryProperties2, validatePropertyDefinitions2, validatePropertyValue2, findPrimitiveSchema, assertLinkTargetType2, assertTargetTypeCompatible2, normalizeLinkProperties2, validateLinkProperties2, isExactSchema, isSortableSchema, isTextSchema, isContainsSchema, queryScalarKindForSchema, resolvePropertyQueryCapabilities2, resolveQuerySchema, validateQueryMetadata2, quantitativeTypes2, getUnit2, getUnitsFor2, isValidUnit2, getUnitSymbol2, isQuantitativeTypeId2, isUnitId2, assertTelemetryProperty2, resolveSemanticType2, validateTelemetryUnit2 };
1551
1551
 
1552
- //# debugId=0F13B6300CF2B17164756E2164756E21
1552
+ //# debugId=22574F8751F18B0064756E2164756E21
@@ -14,7 +14,7 @@
14
14
  "/**\n * Sixb Quantitative Types — public API.\n *\n * Two concepts:\n * - **QuantitativeType** — a physical quantity with its valid units.\n * - **Unit** — a specific unit of measurement.\n *\n * ```ts\n * import { quantitativeTypes, getUnit, isValidUnit } from \"@sixb/core\"\n *\n * // Browse what's available\n * quantitativeTypes.Temperature.units.degreeCelsius.symbol // \"°C\"\n *\n * // Validate a unit against a quantity\n * isValidUnit(\"Temperature\", \"degreeCelsius\") // true\n * isValidUnit(\"Temperature\", \"millibar\") // false\n * ```\n */\n\n// ── Core interfaces ─────────────────────────────────────────\n\nexport type { QuantitativeType, Unit } from \"./types\"\n\n// ── Registry + derived types ────────────────────────────────\n\nexport type { QuantitativeTypeId, UnitId, UnitsOf } from \"./quantitative-types\"\nexport { quantitativeTypes } from \"./quantitative-types\"\n\n// ── Helper functions ────────────────────────────────────────\n\nimport type { QuantitativeTypeId, UnitId } from \"./quantitative-types\"\nimport { quantitativeTypes } from \"./quantitative-types\"\nimport type { Unit } from \"./types\"\n\n/** Flat lookup: unit id → { unit data, quantitative type id }. Built once on import. */\nconst unitIndex: Map<string, Unit & { quantitativeTypeId: string }> = new Map()\n\nfor (const [qtId, qt] of Object.entries(quantitativeTypes)) {\n for (const [unitId, unit] of Object.entries(qt.units)) {\n // A unit id may appear under multiple quantities (e.g. densityUnits).\n // Store the first occurrence; the data is identical since they share the\n // same const object.\n if (!unitIndex.has(unitId)) {\n unitIndex.set(unitId, { ...unit, quantitativeTypeId: qtId })\n }\n }\n}\n\n/**\n * Look up a unit by its id.\n *\n * @example\n * ```ts\n * const u = getUnit(\"degreeCelsius\")\n * // => { name: \"Degree Celsius\", symbol: \"°C\", quantitativeTypeId: \"Temperature\" }\n * ```\n */\nexport function getUnit(unitId: string): (Unit & { quantitativeTypeId: string }) | undefined {\n return unitIndex.get(unitId)\n}\n\n/**\n * Get the record of valid units for a quantitative type.\n *\n * @example\n * ```ts\n * const units = getUnitsFor(\"Temperature\")\n * // => { degreeCelsius: { … }, degreeFahrenheit: { … }, kelvin: { … } }\n * ```\n */\nexport function getUnitsFor(quantitativeTypeId: string): Record<string, Unit> | undefined {\n const qt = quantitativeTypes[quantitativeTypeId as QuantitativeTypeId]\n return qt?.units as Record<string, Unit> | undefined\n}\n\n/**\n * Check whether a unit id is valid for a given quantitative type.\n *\n * @example\n * ```ts\n * isValidUnit(\"Temperature\", \"degreeCelsius\") // true\n * isValidUnit(\"Temperature\", \"millibar\") // false\n * ```\n */\nexport function isValidUnit(quantitativeTypeId: string, unitId: string): boolean {\n const units = getUnitsFor(quantitativeTypeId)\n return units != null && unitId in units\n}\n\n/**\n * Get the display symbol for a unit id.\n *\n * @example\n * ```ts\n * getUnitSymbol(\"degreeCelsius\") // \"°C\"\n * getUnitSymbol(\"unknown\") // undefined\n * ```\n */\nexport function getUnitSymbol(unitId: string): string | undefined {\n return unitIndex.get(unitId)?.symbol\n}\n\n/**\n * Type guard: checks if a string is a valid `QuantitativeTypeId`.\n */\nexport function isQuantitativeTypeId(value: string): value is QuantitativeTypeId {\n return value in quantitativeTypes\n}\n\n/**\n * Type guard: checks if a string is a valid `UnitId`.\n */\nexport function isUnitId(value: string): value is UnitId {\n return unitIndex.has(value)\n}\n",
15
15
  "import type { Property, ValueType } from \"..\"\nimport { OntologyValidationError } from \"../errors\"\nimport type { QuantitativeTypeId } from \"../units\"\nimport { isValidUnit } from \"../units\"\nimport { resolveValueTypeRef } from \"./schema\"\n\nexport function assertTelemetryProperty(property: Property): void {\n if (property.mode !== \"telemetry\") {\n throw new OntologyValidationError(`[Sixb] Property ${property.id} is not telemetry-enabled`)\n }\n}\n\nexport function resolveSemanticType(\n property: Property,\n valueTypesById: ReadonlyMap<string, ValueType>\n): QuantitativeTypeId | undefined {\n if (property.semanticType) {\n return property.semanticType\n }\n\n const valueTypeId = resolveValueTypeRef(property.schema)\n if (!valueTypeId) {\n return undefined\n }\n\n return valueTypesById.get(valueTypeId)?.semanticType\n}\n\n/** Validates that unit is present/absent based on semantic type, and that it's a valid unit. */\nexport function validateTelemetryUnit(\n property: Property,\n propertyPath: string,\n unit: string | undefined,\n valueTypesById: ReadonlyMap<string, ValueType>\n): void {\n const semanticType = resolveSemanticType(property, valueTypesById)\n if (semanticType) {\n if (!unit) {\n throw new OntologyValidationError(\n `[Sixb] Missing unit for telemetry property ${propertyPath}`\n )\n }\n if (!isValidUnit(semanticType, unit)) {\n throw new OntologyValidationError(\n `[Sixb] Invalid unit '${unit}' for ${propertyPath} (${semanticType})`\n )\n }\n } else if (unit) {\n throw new OntologyValidationError(\n `[Sixb] Property ${propertyPath} does not define semanticType and cannot accept a unit`\n )\n }\n}\n"
16
16
  ],
17
- "mappings": "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",
18
- "debugId": "0F13B6300CF2B17164756E2164756E21",
17
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAkBO,SAAS,QAAO,CAAC,IAAqB;AAAA,EAC3C,IAAI,OAAO,OAAO,YAAY,CAAC,GAAG,KAAK,GAAG;AAAA,IACxC,MAAM,IAAI,yBAAwB,6CAA6C;AAAA,EACjF;AAAA,EACA,OAAO,OAAO,OAAO,EAAE,MAAM,QAAiB,GAAG,CAAC;AAAA;AAI7C,SAAS,SAAS,CAAC,OAAkC;AAAA,EAC1D,IAAI,OAAO,UAAU,YAAY,UAAU,QAAQ,MAAM,QAAQ,KAAK;AAAA,IAAG,OAAO;AAAA,EAChF,MAAM,SAAS;AAAA,EACf,OACE,OAAO,KAAK,MAAM,EAAE,MAAM,CAAC,QAAQ,QAAQ,UAAU,QAAQ,IAAI,KACjE,OAAO,SAAS,UAChB,OAAO,OAAO,OAAO,YACrB,OAAO,GAAG,KAAK,EAAE,SAAS;AAAA;AASvB,SAAS,iBAAiB,CAC/B,QACA,OACA,gBACA,MACA,mBAAwC,IAAI,KAC/B;AAAA,EACb,IAAI,UAAU,QAAQ,UAAU;AAAA,IAAW,OAAO;AAAA,EAClD,IAAI,OAAO,WAAW,UAAU;AAAA,IAC9B,IAAI,WAAW,aAAa,UAAU,KAAK;AAAA,MAAG,KAAK,IAAI,MAAM,EAAE;AAAA,IAC/D,OAAO;AAAA,EACT;AAAA,EACA,QAAQ,OAAO;AAAA,SACR;AAAA,MACH,IAAI,MAAM,QAAQ,KAAK,GAAG;AAAA,QACxB,WAAW,QAAQ,OAAO;AAAA,UACxB,kBAAkB,OAAO,OAAO,MAAM,gBAAgB,MAAM,gBAAgB;AAAA,QAC9E;AAAA,MACF;AAAA,MACA,OAAO;AAAA,SACJ;AAAA,MACH,IAAI,SAAS,KAAK,GAAG;AAAA,QACnB,WAAW,QAAQ,OAAO,OAAO,KAAK,GAAG;AAAA,UACvC,kBAAkB,OAAO,aAAa,MAAM,gBAAgB,MAAM,gBAAgB;AAAA,QACpF;AAAA,MACF;AAAA,MACA,OAAO;AAAA,SACJ;AAAA,MACH,IAAI,SAAS,KAAK,GAAG;AAAA,QACnB,YAAY,SAAS,UAAU,OAAO,QAAQ,OAAO,UAAU,GAAG;AAAA,UAChE,kBAAkB,MAAM,QAAQ,MAAM,UAAU,gBAAgB,MAAM,gBAAgB;AAAA,QACxF;AAAA,MACF;AAAA,MACA,OAAO;AAAA,SACJ,gBAAgB;AAAA,MACnB,IAAI,iBAAiB,IAAI,OAAO,WAAW;AAAA,QAAG,OAAO;AAAA,MACrD,MAAM,WAAW,OAAO,aAAa,eAAe,IAAI,OAAO,WAAW,GAAG;AAAA,MAC7E,IAAI,CAAC;AAAA,QAAU,OAAO;AAAA,MACtB,OAAO,kBACL,UACA,OACA,gBACA,MACA,IAAI,IAAI,CAAC,GAAG,kBAAkB,OAAO,WAAW,CAAC,CACnD;AAAA,IACF;AAAA,SACK;AAAA,MACH,OAAO;AAAA;AAAA;AAWN,SAAS,oBAAoB,CAClC,MACA,IACA,QACoB;AAAA,EACpB,QAAQ;AAAA,SACD;AAAA,MACH;AAAA,SACG;AAAA,MACH,OAAO,UAAU,yBAAyB;AAAA,SACvC;AAAA,MACH,OAAO,UAAU,yBAAyB;AAAA;AAAA,MAE1C,OAAO,UAAU,yBAAyB,eAAe;AAAA;AAAA;AAI/D,SAAS,QAAQ,CAAC,OAAkD;AAAA,EAClE,OAAO,OAAO,UAAU,YAAY,UAAU,QAAQ,CAAC,MAAM,QAAQ,KAAK;AAAA;;;AC9GrE,SAAS,oBAAmB,CACjC,QACA,OACA,MACA,gBACA,iBAAiB,MACX;AAAA,EACN,IAAI,OAAO,WAAW,UAAU;AAAA,IAC9B,QAAQ;AAAA,WACD;AAAA,WACA,QAAQ;AAAA,QACX,IAAI,OAAO,UAAU,UAAU;AAAA,UAC7B,MAAM,oBACJ,IAAI,yBAAwB,mBAAmB,uBAAuB,GACtE,YAAY,kCACd;AAAA,QACF;AAAA,QACA;AAAA,MACF;AAAA,WACK,WAAW;AAAA,QACd,IAAI,OAAO,UAAU,WAAW;AAAA,UAC9B,MAAM,oBACJ,IAAI,yBAAwB,mBAAmB,wBAAwB,GACvE,YAAY,mCACd;AAAA,QACF;AAAA,QACA;AAAA,MACF;AAAA,WACK,WAAW;AAAA,QACd,IAAI,OAAO,UAAU,YAAY,CAAC,OAAO,UAAU,KAAK,GAAG;AAAA,UACzD,MAAM,oBACJ,IAAI,yBAAwB,mBAAmB,yBAAyB,GACxE,YAAY,oCACd;AAAA,QACF;AAAA,QACA;AAAA,MACF;AAAA,WACK,UAAU;AAAA,QACb,IAAI,OAAO,UAAU,YAAY,CAAC,OAAO,SAAS,KAAK,GAAG;AAAA,UACxD,MAAM,oBACJ,IAAI,yBAAwB,mBAAmB,sBAAsB,GACrE,YAAY,iCACd;AAAA,QACF;AAAA,QACA;AAAA,MACF;AAAA,WACK,WAAW;AAAA,QACd,IAAI,CAAC,iBAAgB,KAAK,GAAG;AAAA,UAC3B,MAAM,oBACJ,IAAI,yBAAwB,mBAAmB,sCAAsC,GACrF,YAAY,iDACd;AAAA,QACF;AAAA,QACA;AAAA,MACF;AAAA,WACK;AAAA,WACA,aAAa;AAAA,QAChB,IAAI,EAAE,iBAAiB,SAAS,OAAO,UAAU,UAAU;AAAA,UACzD,MAAM,oBACJ,IAAI,yBAAwB,mBAAmB,mCAAmC,GAClF,YAAY,8CACd;AAAA,QACF;AAAA,QACA;AAAA,MACF;AAAA,WACK,WAAW;AAAA,QACd,IAAI,CAAC,WAAU,KAAK,GAAG;AAAA,UACrB,MAAM,oBACJ,IAAI,yBAAwB,mBAAmB,wBAAwB,GACvE,YAAY,mCACd;AAAA,QACF;AAAA,QACA;AAAA,MACF;AAAA,WACK,WAAW;AAAA,QACd,IAAI,CAAC,UAAU,KAAK,GAAG;AAAA,UACrB,MAAM,oBACJ,IAAI,yBACF,mBAAmB,oDACrB,GACA,YAAY,0CACd;AAAA,QACF;AAAA,QACA;AAAA,MACF;AAAA;AAAA;AAAA,EAMJ;AAAA,EAEA,IAAI,OAAO,SAAS,QAAQ;AAAA,IAC1B,IAAI,CAAC,OAAO,OAAO,SAAS,KAAc,GAAG;AAAA,MAC3C,MAAM,oBACJ,IAAI,yBACF,mBAAmB,wBAAwB,OAAO,OAAO,KAAK,IAAI,GACpE,GACA,YAAY,kDACd;AAAA,IACF;AAAA,IACA;AAAA,EACF;AAAA,EAEA,IAAI,OAAO,SAAS,SAAS;AAAA,IAC3B,IAAI,CAAC,MAAM,QAAQ,KAAK,GAAG;AAAA,MACzB,MAAM,oBACJ,IAAI,yBAAwB,mBAAmB,uBAAuB,GACtE,YAAY,kCACd;AAAA,IACF;AAAA,IACA,SAAS,QAAQ,EAAG,QAAQ,MAAM,QAAQ,SAAS,GAAG;AAAA,MACpD,qBACE,OAAO,OACP,MAAM,QACN,GAAG,QAAQ,UACX,gBACA,GAAG,kBAAkB,QACvB;AAAA,IACF;AAAA,IACA;AAAA,EACF;AAAA,EAEA,IAAI,OAAO,SAAS,OAAO;AAAA,IACzB,IAAI,CAAC,UAAS,KAAK,GAAG;AAAA,MACpB,MAAM,oBACJ,IAAI,yBAAwB,mBAAmB,4BAA4B,GAC3E,YAAY,uCACd;AAAA,IACF;AAAA,IACA,YAAY,KAAK,UAAU,OAAO,QAAQ,KAAK,GAAG;AAAA,MAChD,qBACE,OAAO,aACP,OACA,GAAG,QAAQ,OACX,gBACA,GAAG,kBACL;AAAA,IACF;AAAA,IACA;AAAA,EACF;AAAA,EAEA,IAAI,OAAO,SAAS,UAAU;AAAA,IAC5B,IAAI,CAAC,UAAS,KAAK,GAAG;AAAA,MACpB,MAAM,oBACJ,IAAI,yBAAwB,mBAAmB,wBAAwB,GACvE,YAAY,mCACd;AAAA,IACF;AAAA,IAEA,MAAM,SAAS,OAAO;AAAA,IACtB,MAAM,WAAW,IAAI,IAAI,OAAO,KAAK,MAAM,CAAC;AAAA,IAC5C,WAAW,WAAW,OAAO,KAAK,KAAK,GAAG;AAAA,MACxC,IAAI,CAAC,SAAS,IAAI,OAAO,GAAG;AAAA,QAC1B,MAAM,oBACJ,IAAI,yBAAwB,yBAAyB,QAAQ,UAAU,GACvE,UAAU,8CACZ;AAAA,MACF;AAAA,IACF;AAAA,IAEA,YAAY,SAAS,UAAU,OAAO,QAAQ,MAAM,GAAG;AAAA,MACrD,MAAM,aAAa,MAAM;AAAA,MACzB,IAAI,eAAe,WAAW;AAAA,QAC5B,IAAI,MAAM,UAAU;AAAA,UAClB,MAAM,oBACJ,IAAI,yBAAwB,kCAAkC,QAAQ,UAAU,GAChF,2BAA2B,kBAAkB,WAC/C;AAAA,QACF;AAAA,QACA;AAAA,MACF;AAAA,MAEA,mBACE,OACA,YACA,GAAG,QAAQ,WACX,gBACA,GAAG,kBAAkB,SACvB;AAAA,IACF;AAAA,IACA;AAAA,EACF;AAAA,EAEA,IAAI,OAAO,SAAS,gBAAgB;AAAA,IAClC,qBACE,wBAAuB,QAAQ,gBAAgB,IAAI,GACnD,OACA,MACA,gBACA,cACF;AAAA,EACF;AAAA;AASK,SAAS,oBAAmB,CAAC,OAAgB,MAAoB;AAAA,EACtE,IAAI,WAAU,KAAK,GAAG;AAAA,IACpB,IAAI,CAAC,eAAe,KAAK,GAAG;AAAA,MAC1B,MAAM,oBACJ,IAAI,yBACF,mBAAmB,kEACrB,GACA,YAAY,mEACd;AAAA,IACF;AAAA,IACA;AAAA,EACF;AAAA,EACA,IAAI,MAAM,QAAQ,KAAK,GAAG;AAAA,IACxB,YAAY,OAAO,SAAS,MAAM,QAAQ;AAAA,MAAG,qBAAoB,MAAM,GAAG,QAAQ,QAAQ;AAAA,EAC5F,EAAO,SAAI,UAAS,KAAK,GAAG;AAAA,IAC1B,YAAY,KAAK,SAAS,OAAO,QAAQ,KAAK;AAAA,MAAG,qBAAoB,MAAM,GAAG,QAAQ,KAAK;AAAA,EAC7F;AAAA;AAGF,SAAS,kBAAkB,CACzB,OACA,OACA,MACA,gBACA,iBAAiB,MACX;AAAA,EACN,IAAI,UAAU,MAAM;AAAA,IAClB,IAAI,MAAM,UAAU;AAAA,MAClB;AAAA,IACF;AAAA,IACA,MAAM,oBACJ,IAAI,yBAAwB,gBAAgB,qBAAqB,GACjE,SAAS,gCACX;AAAA,EACF;AAAA,EAEA,qBAAoB,MAAM,QAAQ,OAAO,MAAM,gBAAgB,cAAc;AAAA;AAGxE,SAAS,oBAAmB,CAAC,QAAoC;AAAA,EACtE,IAAI,OAAO,WAAW,UAAU;AAAA,IAC9B;AAAA,EACF;AAAA,EAEA,IAAI,OAAO,SAAS,gBAAgB;AAAA,IAClC,OAAO,OAAO;AAAA,EAChB;AAAA,EAEA;AAAA;AAGK,SAAS,uBAAsB,CACpC,QACA,gBACA,MACQ;AAAA,EACR,MAAM,WAAW,OAAO,aAAa,eAAe,IAAI,OAAO,WAAW,GAAG;AAAA,EAC7E,IAAI,CAAC,UAAU;AAAA,IACb,MAAM,IAAI,yBACR,gCAAgC,OAAO,mBAAmB,MAC5D;AAAA,EACF;AAAA,EACA,OAAO;AAAA;AAGF,SAAS,SAAQ,CAAC,OAAkD;AAAA,EACzE,OAAO,OAAO,UAAU,YAAY,UAAU,QAAQ,CAAC,MAAM,QAAQ,KAAK;AAAA;;;ACpQrE,SAAS,0BAAyB,CACvC,aACA,YACA,gBACA,MAC2B;AAAA,EAC3B,MAAM,aAAwC,CAAC;AAAA,EAC/C,YAAY,YAAY,UAAU,OAAO,QAAQ,UAAU,GAAG;AAAA,IAC5D,MAAM,WAAW,YAAY,KAAK,CAAC,cAAc,UAAU,OAAO,UAAU;AAAA,IAC5E,IAAI,CAAC;AAAA,MAAU;AAAA,IACf,WAAW,cACT,UAAU,OACN,OACA,sBAAqB,SAAS,QAAQ,OAAO,GAAG,QAAQ,cAAc,cAAc;AAAA,EAC5F;AAAA,EACA,OAAO;AAAA;AAGF,SAAS,qBAAoB,CAClC,QACA,OACA,MACA,gBACW;AAAA,EACX,IAAI,OAAO,WAAW,UAAU;AAAA,IAC9B,QAAQ;AAAA,WACD;AAAA,QACH,OAAO,mBAAmB,OAAO,IAAI;AAAA,WAClC;AAAA,QACH,OAAO,wBAAwB,OAAO,IAAI;AAAA,WACvC;AAAA,QACH,OAAO,iBAAiB,OAAO,IAAI;AAAA,WAChC;AAAA,WACA;AAAA,WACA;AAAA,WACA;AAAA,WACA;AAAA,WACA;AAAA,QACH,iBAAgB,OAAO,IAAI;AAAA,QAC3B,OAAO,gBAAe,KAAK;AAAA,WACxB;AAAA,QACH,OAAO,iBAAiB,OAAO,IAAI;AAAA;AAAA,QAInC,iBAAgB,OAAO,IAAI;AAAA,QAC3B,OAAO,gBAAe,KAAK;AAAA;AAAA,EAEjC;AAAA,EAEA,IAAI,OAAO,SAAS,gBAAgB;AAAA,IAClC,OAAO,sBACL,wBAAuB,QAAQ,gBAAgB,IAAI,GACnD,OACA,MACA,cACF;AAAA,EACF;AAAA,EAEA,IAAI,OAAO,SAAS,QAAQ;AAAA,IAC1B,iBAAgB,OAAO,IAAI;AAAA,IAC3B,OAAO,gBAAe,KAAK;AAAA,EAC7B;AAAA,EAEA,IAAI,OAAO,SAAS,SAAS;AAAA,IAC3B,IAAI,CAAC,MAAM,QAAQ,KAAK,GAAG;AAAA,MACzB,MAAM,IAAI,yBAAwB,mBAAmB,uBAAuB;AAAA,IAC9E;AAAA,IACA,OAAQ,MAA6B,IAAI,CAAC,OAAO,UAC/C,sBAAqB,OAAO,OAAO,OAAO,GAAG,QAAQ,UAAU,cAAc,CAC/E;AAAA,EACF;AAAA,EAEA,IAAI,OAAO,SAAS,OAAO;AAAA,IACzB,MAAM,SAAS,kBAAkB,OAAO,IAAI;AAAA,IAC5C,MAAM,UAAU,OAAO,QAAQ,MAAM,EAAE,IAAI,EAAE,KAAK,WAAW;AAAA,MAC3D;AAAA,MACA,sBAAqB,OAAO,aAAa,OAAO,GAAG,QAAQ,OAAO,cAAc;AAAA,IAClF,CAAC;AAAA,IACD,OAAO,OAAO,YAAY,OAAO;AAAA,EACnC;AAAA,EAEA,MAAM,SAAS,OAAO;AAAA,EACtB,MAAM,SAAS,kBAAkB,OAAO,IAAI;AAAA,EAC5C,MAAM,UAAsC,CAAC;AAAA,EAC7C,YAAY,SAAS,UAAU,OAAO,QAAQ,MAAM,GAAG;AAAA,IACrD,MAAM,aAAa,OAAO;AAAA,IAC1B,IAAI,eAAe,WAAW;AAAA,MAC5B;AAAA,IACF;AAAA,IACA,QAAQ,KAAK;AAAA,MACX;AAAA,MACA,0BAA0B,OAAO,YAAY,GAAG,QAAQ,WAAW,cAAc;AAAA,IACnF,CAAC;AAAA,EACH;AAAA,EACA,OAAO,OAAO,YAAY,OAAO;AAAA;AAGnC,SAAS,yBAAyB,CAChC,OACA,OACA,MACA,gBACW;AAAA,EACX,IAAI,UAAU,MAAM;AAAA,IAClB,OAAO;AAAA,EACT;AAAA,EAEA,OAAO,sBAAqB,MAAM,QAAQ,OAAO,MAAM,cAAc;AAAA;AAGvE,SAAS,iBAAiB,CAAC,OAAgB,MAAuC;AAAA,EAChF,IAAI,OAAO,UAAU,YAAY,UAAU,QAAQ,MAAM,QAAQ,KAAK,GAAG;AAAA,IACvE,MAAM,IAAI,yBAAwB,mBAAmB,wBAAwB;AAAA,EAC/E;AAAA,EACA,OAAO;AAAA;AAGT,SAAS,kBAAkB,CAAC,OAAgB,MAAsB;AAAA,EAChE,MAAM,OAAO,kBAAkB,OAAO,IAAI;AAAA,EAC1C,OAAO,KAAK,YAAY,EAAE,MAAM,GAAG,EAAE;AAAA;AAGvC,SAAS,uBAAuB,CAAC,OAAgB,MAAsB;AAAA,EACrE,OAAO,kBAAkB,OAAO,IAAI,EAAE,YAAY;AAAA;AAGpD,SAAS,gBAAgB,CAAC,OAAgB,MAAsB;AAAA,EAC9D,IAAI,OAAO,UAAU,UAAU;AAAA,IAC7B,MAAM,IAAI,yBAAwB,mBAAmB,sCAAsC;AAAA,EAC7F;AAAA,EAEA,IAAI;AAAA,IACF,OAAO,uBAAsB,KAAK;AAAA,IAClC,MAAM;AAAA,IACN,MAAM,IAAI,yBAAwB,mBAAmB,sCAAsC;AAAA;AAAA;AAK/F,SAAS,gBAAgB,CAAC,OAAgB,MAAyB;AAAA,EACjE,IAAI,CAAC,UAAU,KAAK,GAAG;AAAA,IACrB,MAAM,IAAI,yBACR,mBAAmB,oDACrB;AAAA,EACF;AAAA,EACA,OAAO,EAAE,MAAM,QAAQ,IAAI,MAAM,GAAG;AAAA;AAGtC,SAAS,iBAAiB,CAAC,OAAgB,MAAoB;AAAA,EAC7D,MAAM,OAAO,iBAAiB,OAAO,QAAQ,IAAI,KAAK,OAAO,KAAK,CAAC;AAAA,EACnE,IAAI,OAAO,MAAM,KAAK,QAAQ,CAAC,GAAG;AAAA,IAChC,MAAM,IAAI,yBAAwB,mBAAmB,2BAA2B;AAAA,EAClF;AAAA,EACA,OAAO;AAAA;AAUF,SAAS,yBAAwB,CACtC,QACA,OACA,gBACS;AAAA,EACT,IAAI,UAAU,QAAQ,UAAU,WAAW;AAAA,IACzC,OAAO;AAAA,EACT;AAAA,EAEA,IAAI,OAAO,WAAW,UAAU;AAAA,IAC9B,QAAQ;AAAA,WACD;AAAA,WACA;AAAA,QACH,OAAO,iBAAiB,OAAO,QAAQ,IAAI,KAAK,OAAO,KAAK,CAAC;AAAA,WAC1D;AAAA,WACA;AAAA,WACA;AAAA,WACA;AAAA,WACA;AAAA,WACA;AAAA,WACA;AAAA,WACA;AAAA,QACH,OAAO;AAAA;AAAA,QAGP,OAAO;AAAA;AAAA,EAEb;AAAA,EAEA,IAAI,OAAO,SAAS,gBAAgB;AAAA,IAClC,OAAO,0BACL,wBAAuB,QAAQ,gBAAgB,EAAE,GACjD,OACA,cACF;AAAA,EACF;AAAA,EAEA,IAAI,OAAO,SAAS,QAAQ;AAAA,IAC1B,OAAO;AAAA,EACT;AAAA,EAEA,IAAI,OAAO,SAAS,SAAS;AAAA,IAC3B,IAAI,CAAC,MAAM,QAAQ,KAAK;AAAA,MAAG,OAAO;AAAA,IAClC,OAAQ,MAA6B,IAAI,CAAC,UACxC,0BAAyB,OAAO,OAAO,OAAO,cAAc,CAC9D;AAAA,EACF;AAAA,EAEA,IAAI,OAAO,SAAS,OAAO;AAAA,IACzB,IAAI,CAAC,UAAS,KAAK;AAAA,MAAG,OAAO;AAAA,IAC7B,OAAO,OAAO,YACZ,OAAO,QAAQ,KAAK,EAAE,IAAI,EAAE,KAAK,WAAW;AAAA,MAC1C;AAAA,MACA,0BAAyB,OAAO,aAAa,OAAO,cAAc;AAAA,IACpE,CAAC,CACH;AAAA,EACF;AAAA,EAEA,IAAI,CAAC,UAAS,KAAK;AAAA,IAAG,OAAO;AAAA,EAC7B,MAAM,SAAkC,KAAK,MAAM;AAAA,EACnD,YAAY,SAAS,UAAU,OAAO,QAAQ,OAAO,UAAU,GAAG;AAAA,IAChE,IAAI,MAAM,aAAa;AAAA,MAAW;AAAA,IAClC,OAAO,WAAW,0BAAyB,MAAM,QAAQ,MAAM,UAAU,cAAc;AAAA,EACzF;AAAA,EACA,OAAO;AAAA;;;ACnNT,IAAM,aAAa;AAAA,EACjB,OAAO;AAAA,EACP,aAAa;AAAA,EACb,UAAU;AAAA,EACV,MAAM;AAAA,EACN,UAAU;AAAA,EACV,OAAO;AAAA,EACP,WAAW;AAAA,EACX,gBAAgB;AAClB;AAEA,IAAM,mBAAmB;AAAA,EACvB,QAAQ,KAAK,YAAY,iBAAiB,UAAU,MAAM,MAAM,UAAU,KAAK;AAAA,EAC/E,MAAM,KAAK,YAAY,iBAAiB,QAAQ,UAAU,KAAK;AAAA,EAC/D,SAAS,KAAK,YAAY,iBAAiB,UAAU;AAAA,EACrD,QAAQ,KAAK,YAAY,iBAAiB,SAAS;AAAA,EACnD,SAAS,KAAK,YAAY,iBAAiB,UAAU;AAAA,EACrD,MAAM,KAAK,YAAY,iBAAiB,OAAO;AAAA,EAC/C,WAAW,KAAK,YAAY,iBAAiB,YAAY;AAAA,EACzD,SAAS,KAAK,YAAY,iBAAiB,WAAW,UAAU,MAAM;AAAA,EAEtE,SAAS;AAAA,IACP,iBAAiB;AAAA,IACjB,OAAO;AAAA,IACP,aAAa;AAAA,IACb,UAAU;AAAA,IACV,MAAM;AAAA,IACN,UAAU;AAAA,IACV,OAAO;AAAA,IACP,WAAW;AAAA,IACX,gBAAgB;AAAA,EAClB;AAAA,EAGA,SAAS;AAAA,IACP,iBAAiB;AAAA,IACjB,OAAO;AAAA,IACP,aAAa;AAAA,IACb,UAAU;AAAA,IACV,MAAM;AAAA,IACN,UAAU;AAAA,IACV,OAAO;AAAA,IACP,WAAW;AAAA,IACX,gBAAgB;AAAA,EAClB;AACF;AAEO,SAAS,iBAAiB,CAAC,QAA4C;AAAA,EAC5E,OAAO,OAAO,WAAW,YAAY,OAAO,OAAO,kBAAkB,MAAM;AAAA;AAQtE,SAAS,eAAe,CAAC,QAAsD;AAAA,EACpF,OAAO,kBAAkB,MAAM,IAAI,iBAAiB,UAAU;AAAA;;;AClFzD,SAAS,2BAA0B,CACxC,iBACA,YACM;AAAA,EACN,IAAI,CAAC,gBAAgB,IAAI,WAAW,EAAE,GAAG;AAAA,IACvC,MAAM,IAAI,yBACR,yDAAyD,WAAW,IACtE;AAAA,EACF;AAAA;AAGK,SAAS,uCAAsC,CACpD,YACA,UACM;AAAA,EACN,IAAI,SAAS,iBAAiB,WAAW,IAAI;AAAA,IAC3C,MAAM,IAAI,yBACR,yBAAyB,SAAS,gBAAgB,SAAS,0BAA0B,WAAW,IAClG;AAAA,EACF;AAAA;AAGK,SAAS,mCAAkC,CAChD,YACA,MACmF;AAAA,EACnF,IAAI,CAAC,gBAAgB,IAAI,GAAG;AAAA,IAC1B,MAAM,IAAI,yBACR,qCAAqC,WAAW,qCAClD;AAAA,EACF;AAAA,EAEA,IAAI,KAAK,iBAAiB,WAAW,IAAI;AAAA,IACvC,MAAM,IAAI,yBACR,qBAAqB,KAAK,gBAAgB,KAAK,0BAA0B,WAAW,IACtF;AAAA,EACF;AAAA;AAGF,SAAS,eAAe,CACtB,OAC4E;AAAA,EAC5E,IAAI,OAAO,UAAU,YAAY,UAAU;AAAA,IAAM,OAAO;AAAA,EACxD,IACE,EAAE,kBAAkB,UACpB,EAAE,QAAQ,UACV,EAAE,wBAAwB,UAC1B,EAAE,UAAU,QACZ;AAAA,IACA,OAAO;AAAA,EACT;AAAA,EAEA,OACE,OAAO,MAAM,iBAAiB,YAC9B,OAAO,MAAM,OAAO,YACpB,mBAAmB,MAAM,kBAAkB,KAC3C,OAAO,MAAM,SAAS,YACtB,MAAM,SAAS;AAAA;AAInB,SAAS,kBAAkB,CAAC,OAAqD;AAAA,EAC/E,OAAO,OAAO,UAAU,YAAa,MAAM,QAAQ,KAAK,KAAK,MAAM,MAAM,QAAQ;AAAA;AAGnF,SAAS,QAAQ,CAAC,OAAiC;AAAA,EACjD,OAAO,OAAO,UAAU;AAAA;AAGnB,SAAS,sBAAqB,CACnC,YACA,YACM;AAAA,EACN,MAAM,WAAW,IAAI,IAAI,WAAW,WAAW,IAAI,CAAC,aAAa,SAAS,EAAE,CAAC;AAAA,EAC7E,WAAW,cAAc,OAAO,KAAK,UAAU,GAAG;AAAA,IAChD,IAAI,CAAC,SAAS,IAAI,UAAU,GAAG;AAAA,MAC7B,MAAM,IAAI,yBACR,4BAA4B,gCAAgC,WAAW,KACzE;AAAA,IACF;AAAA,EACF;AAAA;AAGK,SAAS,yBAAwB,CACtC,YACA,YACM;AAAA,EACN,WAAW,YAAY,WAAW,YAAY;AAAA,IAC5C,IAAI,SAAS,YAAY,WAAW,SAAS,QAAQ,WAAW;AAAA,MAC9D,MAAM,oBACJ,IAAI,yBACF,qCAAqC,SAAS,wBAAwB,WAAW,KACnF,GACA,8BAA8B,WAAW,MAAM,SAAS,MAC1D;AAAA,IACF;AAAA,EACF;AAAA;AAIK,SAAS,yBAAwB,CACtC,YACA,YACA,gBACM;AAAA,EACN,YAAY,YAAY,UAAU,OAAO,QAAQ,UAAU,GAAG;AAAA,IAC5D,MAAM,WAAW,WAAW,WAAW,KAAK,CAAC,cAAc,UAAU,OAAO,UAAU;AAAA,IACtF,IAAI,CAAC,UAAU;AAAA,MACb;AAAA,IACF;AAAA,IACA,uBAAsB,UAAU,OAAO,GAAG,WAAW,MAAM,cAAc,cAAc;AAAA,EACzF;AAAA;AASK,SAAS,0BAAyB,CACvC,iBACqB;AAAA,EACrB,MAAM,SAAS,IAAI;AAAA,EAEnB,YAAY,QAAQ,eAAe,iBAAiB;AAAA,IAClD,MAAM,YAAY,WAAW,WAAW,OAAO,CAAC,MAAM,EAAE,OAAO;AAAA,IAE/D,IAAI,UAAU,WAAW,GAAG;AAAA,MAC1B,MAAM,IAAI,yBACR,uBAAuB,sCACrB,0EACJ;AAAA,IACF;AAAA,IACA,IAAI,UAAU,SAAS,GAAG;AAAA,MACxB,MAAM,IAAI,yBACR,uBAAuB,eAAe,UAAU,uCAClD;AAAA,IACF;AAAA,IAEA,MAAM,UAAU,UAAU;AAAA,IAC1B,IAAI,CAAC,QAAQ,UAAU;AAAA,MACrB,MAAM,IAAI,yBACR,4BAA4B,QAAQ,WAAW,0BACjD;AAAA,IACF;AAAA,IACA,IAAI,QAAQ,WAAW,UAAU;AAAA,MAC/B,MAAM,IAAI,yBACR,4BAA4B,QAAQ,WAAW,2CAA2C,OAAO,QAAQ,MAAM,IACjH;AAAA,IACF;AAAA,IAEA,OAAO,IAAI,QAAQ,QAAQ,EAAE;AAAA,EAC/B;AAAA,EAEA,OAAO;AAAA;AAGF,SAAS,4BAA2B,CACzC,iBACA,gBACM;AAAA,EACN,YAAY,QAAQ,eAAe,iBAAiB;AAAA,IAClD,WAAW,YAAY,WAAW,YAAY;AAAA,MAC5C,wBAAwB,UAAU,aAAa,UAAU,SAAS,OAAO,cAAc;AAAA,MACvF,IAAI,SAAS,SAAS;AAAA,QAAa;AAAA,MAEnC,MAAM,YAAY,oBAChB,SAAS,QACT,gBACA,CAAC,WAAW,gBAAgB,MAAM,GAAG,cAAc,KACrD;AAAA,MACA,IAAI,WAAW;AAAA,QACb,MAAM,IAAI,yBACR,8BAA8B,SAAS,WAAW,sBAAsB,WAC1E;AAAA,MACF;AAAA,IACF;AAAA,IACA,WAAW,QAAQ,WAAW,OAAO;AAAA,MACnC,WAAW,YAAY,KAAK,cAAc,CAAC,GAAG;AAAA,QAC5C,MAAM,OAAO,kBAAkB,UAAU,KAAK,MAAM,SAAS;AAAA,QAC7D,wBAAwB,UAAU,MAAM,cAAc;AAAA,QAEtD,IACE,oBAAoB,SAAS,QAAQ,gBAAgB,CAAC,WAAW,WAAW,SAAS,GACrF;AAAA,UACA,MAAM,IAAI,yBACR,UAAU,sFACZ;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAAA;AAGK,SAAS,sBAAqB,CACnC,UACA,OACA,MACA,gBACM;AAAA,EACN,IAAI,UAAU,WAAW;AAAA,IACvB,MAAM,oBACJ,IAAI,yBAAwB,mBAAmB,0BAA0B,GACzE,YAAY,2BACd;AAAA,EACF;AAAA,EAEA,IAAI,UAAU,MAAM;AAAA,IAClB,IAAI,SAAS,UAAU;AAAA,MACrB;AAAA,IACF;AAAA,IACA,MAAM,oBACJ,IAAI,yBAAwB,mBAAmB,qBAAqB,GACpE,YAAY,sBACd;AAAA,EACF;AAAA,EAEA,qBAAoB,SAAS,QAAQ,OAAO,MAAM,cAAc;AAAA;AAO3D,SAAS,mBAAmB,CACjC,QACA,gBACA,SACA,mBAAmB,IAAI,KACM;AAAA,EAC7B,IAAI,OAAO,WAAW,UAAU;AAAA,IAC9B,OAAO,QAAQ,MAAM,IAAI,SAAS;AAAA,EACpC;AAAA,EAEA,IAAI,OAAO,SAAS,SAAS;AAAA,IAC3B,OAAO,oBAAoB,OAAO,OAAO,gBAAgB,SAAS,gBAAgB;AAAA,EACpF;AAAA,EAEA,IAAI,OAAO,SAAS,OAAO;AAAA,IACzB,OAAO,oBAAoB,OAAO,aAAa,gBAAgB,SAAS,gBAAgB;AAAA,EAC1F;AAAA,EAEA,IAAI,OAAO,SAAS,UAAU;AAAA,IAC5B,WAAW,SAAS,OAAO,OAAO,OAAO,UAAU,GAAG;AAAA,MACpD,MAAM,YAAY,oBAAoB,MAAM,QAAQ,gBAAgB,SAAS,gBAAgB;AAAA,MAC7F,IAAI;AAAA,QAAW,OAAO;AAAA,IACxB;AAAA,IACA;AAAA,EACF;AAAA,EAEA,IAAI,OAAO,SAAS,gBAAgB;AAAA,IAClC,IAAI,iBAAiB,IAAI,OAAO,WAAW,GAAG;AAAA,MAC5C;AAAA,IACF;AAAA,IAEA,iBAAiB,IAAI,OAAO,WAAW;AAAA,IACvC,MAAM,WAAW,OAAO,aAAa,eAAe,IAAI,OAAO,WAAW,GAAG;AAAA,IAC7E,OAAO,WACH,oBAAoB,UAAU,gBAAgB,SAAS,gBAAgB,IACvE;AAAA,EACN;AAAA,EAEA;AAAA;AAOF,SAAS,uBAAuB,CAC9B,UACA,MACA,gBACM;AAAA,EACN,IAAI,CAAC,wBAAwB,SAAS,QAAQ,cAAc;AAAA,IAAG;AAAA,EAC/D,MAAM,IAAI,yBACR,UAAU,mHAAmH,SAAS,2BACxI;AAAA;AAGF,SAAS,uBAAuB,CAC9B,QACA,gBACA,OAAO,IAAI,KACF;AAAA,EACT,IAAI,OAAO,WAAW,YAAY,WAAW,QAAQ,KAAK,IAAI,MAAM;AAAA,IAAG,OAAO;AAAA,EAC9E,KAAK,IAAI,MAAM;AAAA,EACf,MAAM,OAAO;AAAA,EACb,QAAQ,KAAK;AAAA,SACN;AAAA,MACH,OAAO;AAAA,SACJ;AAAA,MACH,OAAO,wBAAwB,KAAK,OAAO,gBAAgB,IAAI;AAAA,SAC5D;AAAA,MACH,OAAO,wBAAwB,KAAK,aAAa,gBAAgB,IAAI;AAAA,SAClE;AAAA,MACH,OACE,OAAO,KAAK,eAAe,YAC3B,KAAK,eAAe,QACpB,OAAO,OAAO,KAAK,UAAU,EAAE,KAAK,CAAC,UACnC,wBAAyB,OAAgC,QAAQ,gBAAgB,IAAI,CACvF;AAAA,SAEC;AAAA,MACH,OAAO,wBACL,KAAK,aAAa,eAAe,IAAI,OAAO,KAAK,WAAW,CAAC,GAAG,QAChE,gBACA,IACF;AAAA;AAAA,MAEA,OAAO;AAAA;AAAA;;;ACjTN,SAAS,qBAAoB,CAClC,cACA,QACA,gBACA,cACA,mBACM;AAAA,EACN,MAAM,QAAQ,oBACV,kBAAkB,eAAe,oBAAoB,YAAY,IACjE,iBAAiB,eAAe;AAAA,EACpC,IAAI,CAAC,OAAO;AAAA,IACV,MAAM,WAAW,MAAM,QAAQ,eAAe,kBAAkB,IAC5D,eAAe,mBAAmB,KAAK,KAAK,IAC5C,eAAe;AAAA,IACnB,MAAM,IAAI,yBACR,eAAe,gBAAgB,uBAAuB,mBAAmB,eAC3E;AAAA,EACF;AAAA;AAOK,SAAS,2BAA0B,CACxC,aACA,gBACA,cACA,SACM;AAAA,EACN,IAAI,mBAAmB;AAAA,IAAK;AAAA,EAC5B,MAAM,QAAQ,MAAM,QAAQ,cAAc,IAAI,iBAAiB,CAAC,cAAc;AAAA,EAC9E,IAAI,MAAM,SAAS,GAAG;AAAA,IAAG;AAAA,EACzB,WAAW,QAAQ,OAAO;AAAA,IACxB,IAAI,iBAAiB,QAAQ,YAAY,IAAI,EAAE,SAAS,YAAY;AAAA,MAAG;AAAA,EACzE;AAAA,EACA,MAAM,WAAW,MAAM,KAAK,KAAK;AAAA,EACjC,MAAM,IAAI,yBACR,UAAU,yBAAyB,yDAAyD,WAC9F;AAAA;AAGK,SAAS,wBAAuB,CACrC,YACA,MACA,YACA,gBACuC;AAAA,EACvC,IAAI,eAAe;AAAA,IAAW;AAAA,EAC9B,OAAO,2BACL,KAAK,cAAc,CAAC,GACpB,YACA,gBACA,GAAG,WAAW,MAAM,KAAK,IAC3B;AAAA;AAGK,SAAS,uBAAsB,CACpC,YACA,MACA,YACA,oBACA,gBACM;AAAA,EACN,MAAM,iBAAiB,KAAK,cAAc,CAAC;AAAA,EAC3C,MAAM,WAAW,cAAc,CAAC;AAAA,EAEhC,IAAI,eAAe,WAAW,GAAG;AAAA,IAC/B,IAAI,OAAO,KAAK,QAAQ,EAAE,SAAS,GAAG;AAAA,MACpC,MAAM,IAAI,yBACR,eAAe,WAAW,MAAM,KAAK,oCACvC;AAAA,IACF;AAAA,IACA;AAAA,EACF;AAAA,EAEA,MAAM,mBAAmB,IAAI,IAAI,eAAe,IAAI,CAAC,aAAa,SAAS,EAAE,CAAC;AAAA,EAC9E,WAAW,cAAc,OAAO,KAAK,QAAQ,GAAG;AAAA,IAC9C,IAAI,CAAC,iBAAiB,IAAI,UAAU,GAAG;AAAA,MACrC,MAAM,IAAI,yBACR,iCAAiC,yBAAyB,WAAW,MAAM,KAAK,KAClF;AAAA,IACF;AAAA,EACF;AAAA,EAEA,YAAY,YAAY,UAAU,OAAO,QAAQ,QAAQ,GAAG;AAAA,IAC1D,MAAM,WAAW,eAAe,KAAK,CAAC,cAAc,UAAU,OAAO,UAAU;AAAA,IAC/E,IAAI,CAAC,UAAU;AAAA,MACb;AAAA,IACF;AAAA,IAEA,uBACE,UACA,OACA,GAAG,WAAW,MAAM,KAAK,MAAM,cAC/B,cACF;AAAA,EACF;AAAA,EAGA,MAAM,SAAS;AAAA,OACT,sBAAsB,CAAC;AAAA,OACxB;AAAA,EACL;AAAA,EAEA,WAAW,YAAY,gBAAgB;AAAA,IACrC,IAAI,SAAS,YAAY,OAAO,SAAS,QAAQ,WAAW;AAAA,MAC1D,MAAM,IAAI,yBACR,0CAA0C,SAAS,iBAAiB,WAAW,MAAM,KAAK,KAC5F;AAAA,IACF;AAAA,EACF;AAAA;;;AClHK,SAAS,aAAa,CAAC,QAAyB;AAAA,EACrD,IAAI,OAAO,WAAW;AAAA,IAAU,OAAO,gBAAgB,MAAM,GAAG,UAAU;AAAA,EAC1E,OAAO,OAAO,SAAS;AAAA;AAIlB,SAAS,mBAAmB,CAAC,QAAyB;AAAA,EAC3D,IAAI,OAAO,WAAW;AAAA,IAAU,OAAO,gBAAgB,MAAM,GAAG,gBAAgB;AAAA,EAChF,OAAO,OAAO,SAAS;AAAA;AAIlB,SAAS,kBAAkB,CAAC,QAAyB;AAAA,EAC1D,OACE,cAAc,MAAM,KACnB,OAAO,WAAW,aAAa,OAAO,SAAS,WAAW,OAAO,SAAS;AAAA;AAKxE,SAAS,gBAAgB,CAAC,QAAyB;AAAA,EACxD,IAAI,OAAO,WAAW;AAAA,IAAU,OAAO,gBAAgB,MAAM,GAAG,aAAa;AAAA,EAC7E,OAAO,OAAO,SAAS;AAAA;AAIlB,SAAS,YAAY,CAAC,QAAyB;AAAA,EACpD,IAAI,OAAO,WAAW;AAAA,IAAU,OAAO,gBAAgB,MAAM,GAAG,SAAS;AAAA,EACzE,OAAO,OAAO,SAAS,UAAU,OAAO,cAAc;AAAA;AAIjD,SAAS,gBAAgB,CAAC,QAAyB;AAAA,EACxD,IAAI,OAAO,WAAW;AAAA,IAAU,OAAO,gBAAgB,MAAM,GAAG,aAAa;AAAA,EAC7E,OAAO,OAAO,SAAS,WAAW,OAAO,SAAS;AAAA;AAI7C,SAAS,aAAa,CAAC,QAAyB;AAAA,EACrD,IAAI,OAAO,WAAW;AAAA,IAAU,OAAO,gBAAgB,MAAM,GAAG,UAAU;AAAA,EAC1E,OAAO,OAAO,SAAS;AAAA;AAGlB,SAAS,wBAAwB,CAAC,QAA6C;AAAA,EACpF,IAAI,OAAO,WAAW;AAAA,IAAU,OAAO,gBAAgB,MAAM,GAAG;AAAA,EAChE,IAAI,OAAO,SAAS;AAAA,IAAQ,OAAO,OAAO,cAAc,YAAY,YAAY;AAAA,EAChF;AAAA;AAuBF,IAAM,oBAAsD,CAAC,MAAM,IAAI;AACvE,IAAM,kBAAoD,CAAC,MAAM,OAAO,MAAM,QAAQ;AACtF,IAAM,kBAAoD,CAAC,MAAM,OAAO,MAAM,KAAK;AACnF,IAAM,iBAAmD;AAAA,EACvD;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAOO,SAAS,iCAAgC,CAC9C,UACA,gBAC2B;AAAA,EAC3B,MAAM,QAAQ,SAAS,OAAO,eAAe,OAAO,SAAS,QAAQ;AAAA,EACrE,MAAM,SAAS,mBAAmB,SAAS,QAAQ,cAAc;AAAA,EACjE,MAAM,YAAY,IAAI,IAA2B,SAAS,UAAU,oBAAoB,CAAC,CAAC;AAAA,EAE1F,IAAI,OAAO,eAAe,QAAQ,QAAQ;AAAA,IACxC,IAAI,cAAc,MAAM;AAAA,MAAG,WAAW,MAAM;AAAA,QAAiB,UAAU,IAAI,EAAE;AAAA,IAC7E,IAAI,iBAAiB,MAAM;AAAA,MAAG,WAAW,MAAM;AAAA,QAAiB,UAAU,IAAI,EAAE;AAAA,IAChF,IAAI,iBAAiB,MAAM;AAAA,MAAG,UAAU,IAAI,UAAU;AAAA,EACxD;AAAA,EAEA,OAAO;AAAA,IACL,WAAW,eAAe,OAAO,CAAC,OAAO,UAAU,IAAI,EAAE,CAAC;AAAA,IAC1D,UAAU,OAAO,aAAa,QAAQ,WAAW,aAAa,iBAAiB,MAAM;AAAA,IACrF,OAAO,OAAO,UAAU,QAAQ,WAAW,aAAa,cAAc,MAAM;AAAA,IAC5E,MACE,OAAO,SAAS,QAChB,SAAS,SAAS,eAClB,WAAW,aACX,aAAa,MAAM;AAAA,EACvB;AAAA;AAGK,SAAS,kBAAkB,CAChC,QACA,gBACA,OAAO,IAAI,KACS;AAAA,EACpB,IAAI,OAAO,WAAW,YAAY,OAAO,SAAS;AAAA,IAAgB,OAAO;AAAA,EACzE,IAAI,KAAK,IAAI,OAAO,WAAW;AAAA,IAAG;AAAA,EAClC,KAAK,IAAI,OAAO,WAAW;AAAA,EAC3B,MAAM,WAAW,OAAO,aAAa,eAAe,IAAI,OAAO,WAAW,GAAG;AAAA,EAC7E,OAAO,WAAW,mBAAmB,UAAU,gBAAgB,IAAI,IAAI;AAAA;;;ACvHzE,IAAM,gBAAyC,CAAC,cAAc,YAAY,QAAQ,SAAS,OAAO;AAE3F,SAAS,sBAAqB,CACnC,iBACA,gBACM;AAAA,EACN,YAAY,QAAQ,eAAe,iBAAiB;AAAA,IAClD,gCAAgC,QAAQ,WAAW,YAAY,cAAc;AAAA,IAE7E,WAAW,QAAQ,WAAW,OAAO;AAAA,MACnC,IAAI,KAAK,YAAY;AAAA,QACnB,gCAAgC,GAAG,UAAU,KAAK,MAAM,KAAK,YAAY,cAAc;AAAA,MACzF;AAAA,IACF;AAAA,IAEA,6BAA6B,QAAQ,YAAY,cAAc;AAAA,IAC/D,qBAAqB,QAAQ,YAAY,cAAc;AAAA,EACzD;AAAA;AAGF,SAAS,+BAA+B,CACtC,WACA,YACA,gBACM;AAAA,EACN,WAAW,YAAY,YAAY;AAAA,IACjC,8BAA8B,WAAW,UAAU,cAAc;AAAA,EACnE;AAAA;AAGF,SAAS,6BAA6B,CACpC,WACA,UACA,gBACM;AAAA,EACN,MAAM,QAAQ,SAAS;AAAA,EACvB,IAAI,CAAC;AAAA,IAAO;AAAA,EACZ,IAAI,YAAY,OAAO;AAAA,IACrB,MAAM,IAAI,yBACR,oBAAoB,SAAS,WAAW,mGAC1C;AAAA,EACF;AAAA,EAEA,MAAM,kBAAkB,cAAc,OAAO,CAAC,YAAY,MAAM,aAAa,IAAI;AAAA,EACjF,KAAK,gBAAgB,SAAS,KAAK,MAAM,WAAW,cAAc,MAAM,eAAe,MAAM;AAAA,IAC3F,MAAM,IAAI,yBACR,uCAAuC,SAAS,WAAW,2EAC7D;AAAA,EACF;AAAA,EAEA,IAAI,MAAM,WAAW,WAAW;AAAA,IAC9B,IAAI,CAAC,OAAO,SAAS,MAAM,MAAM,KAAK,MAAM,UAAU,GAAG;AAAA,MACvD,MAAM,IAAI,yBACR,uCAAuC,SAAS,WAAW,wEAC7D;AAAA,IACF;AAAA,IACA,IAAI,MAAM,SAAS,MAAM;AAAA,MACvB,MAAM,IAAI,yBACR,uCAAuC,SAAS,WAAW,wDAC7D;AAAA,IACF;AAAA,EACF;AAAA,EAEA,IAAI,gBAAgB,WAAW;AAAA,IAAG;AAAA,EAElC,MAAM,SAAS,uBAAuB,UAAU,WAAW,cAAc;AAAA,EAEzE,IAAI,MAAM,QAAQ,CAAC,aAAa,MAAM,GAAG;AAAA,IACvC,MAAM,IAAI,yBACR,uCAAuC,SAAS,WAAW,mEAC7D;AAAA,EACF;AAAA,EAEA,IAAI,MAAM,SAAS,CAAC,oBAAoB,MAAM,GAAG;AAAA,IAC/C,MAAM,IAAI,yBACR,uCAAuC,SAAS,WAAW,yEAC7D;AAAA,EACF;AAAA,EAEA,IAAI,MAAM,cAAc,CAAC,mBAAmB,MAAM,GAAG;AAAA,IACnD,MAAM,IAAI,yBACR,uCAAuC,SAAS,WAAW,iEAC7D;AAAA,EACF;AAAA,EAEA,IAAI,MAAM,YAAY,CAAC,iBAAiB,MAAM,GAAG;AAAA,IAC/C,MAAM,IAAI,yBACR,uCAAuC,SAAS,WAAW,6DAC7D;AAAA,EACF;AAAA,EAEA,IAAI,MAAM,SAAS,CAAC,cAAc,MAAM,GAAG;AAAA,IACzC,MAAM,IAAI,yBACR,uCAAuC,SAAS,WAAW,+DAC7D;AAAA,EACF;AAAA;AAGF,SAAS,4BAA4B,CACnC,QACA,YACA,gBACM;AAAA,EACN,MAAM,SAAS,WAAW;AAAA,EAC1B,IAAI,CAAC;AAAA,IAAQ;AAAA,EACb,IAAI,YAAY,QAAQ;AAAA,IACtB,MAAM,IAAI,yBACR,uBAAuB,gGACzB;AAAA,EACF;AAAA,EAEA,YAAY,MAAM,YAAY,OAAO,QAAQ,OAAO,WAAW,CAAC,CAAC,GAAG;AAAA,IAClE,IAAI,CAAC,0BAA0B,KAAK,IAAI;AAAA,MACtC,MAAM,IAAI,yBAAwB,sCAAsC,MAAM;AAAA,IAChF,wBAAwB,QAAQ,KAAK;AAAA,IACrC,IACE,CAAC,MAAM,QAAQ,QAAQ,MAAM,KAC7B,QAAQ,OAAO,WAAW,KAC1B,IAAI,IAAI,QAAQ,MAAM,EAAE,SAAS,QAAQ,OAAO,QAChD;AAAA,MACA,MAAM,IAAI,yBACR,yBAAyB,+CAC3B;AAAA,IACF;AAAA,IACA,WAAW,MAAM,QAAQ,QAAQ;AAAA,MAC/B,MAAM,WAAW,sBAAsB,QAAQ,YAAY,IAAI,kBAAkB,MAAM;AAAA,MACvF,kCAAkC,QAAQ,UAAU,kBAAkB,MAAM;AAAA,MAC5E,IAAI,CAAC,aAAa,uBAAuB,UAAU,QAAQ,cAAc,CAAC,GAAG;AAAA,QAC3E,MAAM,IAAI,yBAAwB,sCAAsC,UAAU,IAAI;AAAA,MACxF;AAAA,IACF;AAAA,EACF;AAAA,EACA,MAAM,oBAAoB,WAAW,WAAW,KAAK,CAAC,aAAa,SAAS,OAAO,GAAG;AAAA,EAEtF,IAAI,OAAO,OAAO;AAAA,IAChB,MAAM,QAAQ,sBAAsB,QAAQ,YAAY,OAAO,OAAO,cAAc;AAAA,IACpF,kCAAkC,QAAQ,OAAO,cAAc;AAAA,IAC/D,MAAM,SAAS,uBAAuB,OAAO,QAAQ,cAAc;AAAA,IACnE,IAAI,CAAC,aAAa,MAAM,GAAG;AAAA,MACzB,MAAM,IAAI,yBACR,uBAAuB,oCAAoC,MAAM,2CACnE;AAAA,IACF;AAAA,EACF;AAAA,EAEA,WAAW,cAAc,OAAO,eAAe,CAAC,GAAG;AAAA,IACjD,MAAM,WAAW,sBAAsB,QAAQ,YAAY,YAAY,oBAAoB;AAAA,IAC3F,kCAAkC,QAAQ,UAAU,oBAAoB;AAAA,IACxE,wBAAwB,QAAQ,UAAU,QAAQ,oBAAoB;AAAA,EACxE;AAAA,EAEA,WAAW,cAAc,OAAO,SAAS,CAAC,GAAG;AAAA,IAC3C,MAAM,WAAW,sBAAsB,QAAQ,YAAY,YAAY,cAAc;AAAA,IACrF,kCAAkC,QAAQ,UAAU,cAAc;AAAA,IAClE,IAAI,SAAS,OAAO,mBAAmB;AAAA,MACrC,wBAAwB,QAAQ,UAAU,SAAS,cAAc;AAAA,IACnE;AAAA,EACF;AAAA;AAGF,SAAS,qBAAqB,CAC5B,QACA,YACA,YACA,cACU;AAAA,EACV,MAAM,WAAW,WAAW,WAAW,KAAK,CAAC,cAAc,UAAU,OAAO,UAAU;AAAA,EACtF,IAAI,CAAC,UAAU;AAAA,IACb,MAAM,IAAI,yBACR,uBAAuB,WAAW,6CAA6C,aACjF;AAAA,EACF;AAAA,EACA,OAAO;AAAA;AAGT,SAAS,iCAAiC,CACxC,QACA,UACA,cACM;AAAA,EACN,IAAI,SAAS,SAAS,aAAa;AAAA,IACjC,MAAM,IAAI,yBACR,uBAAuB,WAAW,+CAA+C,SAAS,yHAC5F;AAAA,EACF;AAAA;AAGF,SAAS,uBAAuB,CAC9B,QACA,UACA,MACA,cACM;AAAA,EACN,IAAI,SAAS,OAAO,eAAe,QAAQ,SAAS,MAAM,UAAU,MAAM;AAAA,IACxE;AAAA,EACF;AAAA,EAEA,MAAM,IAAI,yBACR,uBAAuB,WAAW,qCAAqC,SAAS,oEAAoE,YACtJ;AAAA;AAGF,SAAS,sBAAsB,CAC7B,UACA,WACA,gBACQ;AAAA,EACR,OAAO,cAAc,SAAS,QAAQ,gBAAgB,GAAG,aAAa,SAAS,IAAI;AAAA;AAGrF,SAAS,aAAa,CACpB,QACA,gBACA,MACA,mBAAmB,IAAI,KACf;AAAA,EACR,IAAI,OAAO,WAAW,UAAU;AAAA,IAC9B,OAAO;AAAA,EACT;AAAA,EAEA,IAAI,OAAO,SAAS,gBAAgB;AAAA,IAClC,OAAO;AAAA,EACT;AAAA,EAEA,IAAI,iBAAiB,IAAI,OAAO,WAAW,GAAG;AAAA,IAC5C,MAAM,IAAI,yBACR,iCAAiC,OAAO,qCAAqC,MAC/E;AAAA,EACF;AAAA,EAEA,MAAM,WAAW,OAAO,aAAa,eAAe,IAAI,OAAO,WAAW,GAAG;AAAA,EAC7E,IAAI,CAAC,UAAU;AAAA,IACb,MAAM,IAAI,yBACR,6BAA6B,yCAAyC,OAAO,cAC/E;AAAA,EACF;AAAA,EAEA,iBAAiB,IAAI,OAAO,WAAW;AAAA,EACvC,OAAO,cAAc,UAAU,gBAAgB,MAAM,gBAAgB;AAAA;AAGvE,SAAS,oBAAoB,CAC3B,QACA,YACA,YACM;AAAA,EACN,WAAW,SAAS,WAAW,OAAO,WAAW,CAAC,GAAG;AAAA,IACnD,MAAM,SACJ,MAAM,SAAS,SAAS,MAAM,OAAO,IAAI,CAAC,UAAU,MAAM,UAAU,IAAI,CAAC,MAAM,UAAU;AAAA,IAC3F,MAAM,UAAU,MAAM,WAAW,CAAC;AAAA,IAClC,IACE,CAAC,OAAO,UACR,OAAO,SAAS,QAAQ,SAAS,KACjC,IAAI,IAAI,CAAC,GAAG,QAAQ,GAAG,OAAO,CAAC,EAAE,SAAS,OAAO,SAAS,QAAQ;AAAA,MAElE,MAAM,IAAI,yBACR,0BAA0B,mDAC5B;AAAA,IACF,IAAI,MAAM,SAAS,UAAU,QAAQ,SAAS;AAAA,MAC5C,MAAM,IAAI,yBACR,+BAA+B,sCACjC;AAAA,IACF,WAAW,MAAM,CAAC,GAAG,QAAQ,GAAG,OAAO,GAAG;AAAA,MACxC,MAAM,WAAW,WAAW,WAAW,KAAK,CAAC,aAAa,SAAS,OAAO,EAAE;AAAA,MAC5E,IAAI,CAAC;AAAA,QACH,MAAM,IAAI,yBACR,0BAA0B,wCAAwC,KACpE;AAAA,MACF,IAAI,SAAS,SAAS;AAAA,QACpB,MAAM,IAAI,yBACR,2DAA2D,UAAU,KACvE;AAAA,MACF,MAAM,OAAO,QAAQ,SAAS,EAAE,IAAI,eAAe,MAAM,SAAS,SAAS,aAAa;AAAA,MACxF,wBAAwB,QAAQ,UAAU,MAAM,eAAe;AAAA,MAC/D,IAAI,QAAQ,SAAS,EAAE,GAAG;AAAA,QACxB,MAAM,SAAS,mBAAmB,SAAS,QAAQ,UAAU;AAAA,QAC7D,IAAI,CAAC,UAAU,yBAAyB,MAAM,MAAM;AAAA,UAClD,MAAM,IAAI,yBACR,gDAAgD,UAAU,KAC5D;AAAA,MACJ;AAAA,IACF;AAAA,IACA,IACE,MAAM,SAAS,UACf,MAAM,OAAO,KACX,CAAC,UACC,MAAM,cAAc,aAAa,MAAM,cAAc,SAAS,MAAM,cAAc,MACtF;AAAA,MAEA,MAAM,IAAI,yBACR,wDAAwD,SAC1D;AAAA,EACJ;AAAA;;;AC5RF,IAAM,aAAa;AAAA,EACjB,aAAa,EAAE,MAAM,iBAAiB,QAAQ,OAAI;AAAA,EAClD,aAAa,EAAE,MAAM,iBAAiB,QAAQ,SAAI;AAAA,EAClD,QAAQ,EAAE,MAAM,UAAU,QAAQ,MAAM;AAAA,EACxC,aAAa,EAAE,MAAM,iBAAiB,QAAQ,SAAI;AAAA,EAClD,MAAM,EAAE,MAAM,QAAQ,QAAQ,MAAM;AACtC;AAEA,IAAM,eAAe;AAAA,EACnB,mBAAmB,EAAE,MAAM,wBAAwB,QAAQ,UAAO;AAAA,EAClE,uBAAuB,EAAE,MAAM,4BAA4B,QAAQ,WAAQ;AAAA,EAC3E,wBAAwB,EAAE,MAAM,6BAA6B,QAAQ,cAAQ;AAAA,EAC7E,wBAAwB,EAAE,MAAM,6BAA6B,QAAQ,WAAQ;AAC/E;AAEA,IAAM,aAAa;AAAA,EACjB,QAAQ,EAAE,MAAM,UAAU,QAAQ,IAAI;AAAA,EACtC,OAAO,EAAE,MAAM,SAAS,QAAQ,KAAK;AAAA,EACrC,OAAO,EAAE,MAAM,SAAS,QAAQ,MAAM;AAAA,EACtC,KAAK,EAAE,MAAM,OAAO,QAAQ,IAAI;AAClC;AAEA,IAAM,cAAc;AAAA,EAClB,kBAAkB,EAAE,MAAM,qBAAqB,QAAQ,KAAK;AAAA,EAC5D,YAAY,EAAE,MAAM,cAAc,QAAQ,KAAK;AAAA,EAC/C,MAAM,EAAE,MAAM,QAAQ,QAAQ,KAAK;AAAA,EACnC,MAAM,EAAE,MAAM,QAAQ,QAAQ,KAAK;AAAA,EACnC,WAAW,EAAE,MAAM,aAAa,QAAQ,KAAK;AAAA,EAC7C,OAAO,EAAE,MAAM,SAAS,QAAQ,IAAI;AAAA,EACpC,YAAY,EAAE,MAAM,cAAc,QAAQ,QAAK;AAAA,EAC/C,MAAM,EAAE,MAAM,QAAQ,QAAQ,KAAK;AAAA,EACnC,YAAY,EAAE,MAAM,cAAc,QAAQ,KAAK;AAAA,EAC/C,WAAW,EAAE,MAAM,aAAa,QAAQ,KAAK;AAAA,EAC7C,cAAc,EAAE,MAAM,iBAAiB,QAAQ,MAAM;AACvD;AAEA,IAAM,aAAa;AAAA,EACjB,2BAA2B,EAAE,MAAM,iCAAiC,QAAQ,QAAQ;AAAA,EACpF,kBAAkB,EAAE,MAAM,sBAAsB,QAAQ,OAAO;AAAA,EAC/D,UAAU,EAAE,MAAM,YAAY,QAAQ,KAAK;AAAA,EAC3C,YAAY,EAAE,MAAM,cAAc,QAAQ,KAAK;AAAA,EAC/C,cAAc,EAAE,MAAM,kBAAkB,QAAQ,MAAM;AAAA,EACtD,gBAAgB,EAAE,MAAM,oBAAoB,QAAQ,MAAM;AAAA,EAC1D,+BAA+B,EAAE,MAAM,sCAAsC,QAAQ,SAAS;AAAA,EAC9F,kBAAkB,EAAE,MAAM,sBAAsB,QAAQ,OAAO;AAAA,EAC/D,oBAAoB,EAAE,MAAM,wBAAwB,QAAQ,OAAO;AAAA,EACnE,UAAU,EAAE,MAAM,YAAY,QAAQ,KAAK;AAAA,EAC3C,qBAAqB,EAAE,MAAM,0BAA0B,QAAQ,SAAS;AAAA,EACxE,kBAAkB,EAAE,MAAM,sBAAsB,QAAQ,OAAO;AAAA,EAC/D,UAAU,EAAE,MAAM,YAAY,QAAQ,KAAK;AAAA,EAC3C,WAAW,EAAE,MAAM,aAAa,QAAQ,QAAK;AAAA,EAC7C,WAAW,EAAE,MAAM,aAAa,QAAQ,KAAK;AAAA,EAC7C,oBAAoB,EAAE,MAAM,wBAAwB,QAAQ,KAAK;AAAA,EACjE,MAAM,EAAE,MAAM,QAAQ,QAAQ,IAAI;AACpC;AAEA,IAAM,gBAAgB;AAAA,EACpB,iBAAiB,EAAE,MAAM,qBAAqB,QAAQ,MAAM;AAAA,EAC5D,iBAAiB,EAAE,MAAM,qBAAqB,QAAQ,MAAM;AAAA,EAC5D,qBAAqB,EAAE,MAAM,yBAAyB,QAAQ,MAAM;AAAA,EACpE,kBAAkB,EAAE,MAAM,sBAAsB,QAAQ,MAAM;AAAA,EAC9D,SAAS,EAAE,MAAM,WAAW,QAAQ,IAAI;AAAA,EACxC,OAAO,EAAE,MAAM,SAAS,QAAQ,GAAG;AACrC;AAOO,IAAM,qBAAoB;AAAA,EAC/B,cAAc;AAAA,IACZ,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,4BAA4B,EAAE,MAAM,iCAAiC,QAAQ,WAAQ;AAAA,MACrF,QAAQ,EAAE,MAAM,WAAW,QAAQ,IAAI;AAAA,MACvC,uBAAuB,EAAE,MAAM,4BAA4B,QAAQ,UAAO;AAAA,IAC5E;AAAA,EACF;AAAA,EACA,OAAO;AAAA,IACL,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,EACT;AAAA,EACA,qBAAqB;AAAA,IACnB,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,wBAAwB,EAAE,MAAM,6BAA6B,QAAQ,YAAS;AAAA,IAChF;AAAA,EACF;AAAA,EACA,iBAAiB;AAAA,IACf,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,iBAAiB,EAAE,MAAM,qBAAqB,QAAQ,SAAM;AAAA,MAC5D,iBAAiB,EAAE,MAAM,qBAAqB,QAAQ,QAAQ;AAAA,MAC9D,qBAAqB,EAAE,MAAM,yBAAyB,QAAQ,MAAM;AAAA,MACpE,qBAAqB,EAAE,MAAM,yBAAyB,QAAQ,MAAM;AAAA,IACtE;AAAA,EACF;AAAA,EACA,gBAAgB;AAAA,IACd,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,oBAAoB,EAAE,MAAM,wBAAwB,QAAQ,OAAO;AAAA,MACnE,oBAAoB,EAAE,MAAM,wBAAwB,QAAQ,OAAO;AAAA,MACnE,oBAAoB,EAAE,MAAM,wBAAwB,QAAQ,OAAO;AAAA,MACnE,gBAAgB,EAAE,MAAM,oBAAoB,QAAQ,MAAM;AAAA,IAC5D;AAAA,EACF;AAAA,EACA,eAAe;AAAA,IACb,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,gBAAgB,EAAE,MAAM,mBAAmB,QAAQ,MAAM;AAAA,MACzD,gBAAgB,EAAE,MAAM,mBAAmB,QAAQ,MAAM;AAAA,MACzD,gBAAgB,EAAE,MAAM,mBAAmB,QAAQ,MAAM;AAAA,MACzD,iBAAiB,EAAE,MAAM,oBAAoB,QAAQ,MAAM;AAAA,MAC3D,YAAY,EAAE,MAAM,eAAe,QAAQ,KAAK;AAAA,IAClD;AAAA,EACF;AAAA,EACA,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,MAAM,EAAE,MAAM,QAAQ,QAAQ,KAAK;AAAA,MACnC,SAAS,EAAE,MAAM,WAAW,QAAQ,KAAK;AAAA,MACzC,kBAAkB,EAAE,MAAM,qBAAqB,QAAQ,SAAM;AAAA,MAC7D,YAAY,EAAE,MAAM,eAAe,QAAQ,SAAM;AAAA,MACjD,YAAY,EAAE,MAAM,eAAe,QAAQ,SAAM;AAAA,MACjD,iBAAiB,EAAE,MAAM,oBAAoB,QAAQ,SAAM;AAAA,MAC3D,aAAa,EAAE,MAAM,gBAAgB,QAAQ,QAAK;AAAA,MAClD,kBAAkB,EAAE,MAAM,qBAAqB,QAAQ,SAAM;AAAA,IAC/D;AAAA,EACF;AAAA,EACA,aAAa;AAAA,IACX,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,OAAO,EAAE,MAAM,SAAS,QAAQ,IAAI;AAAA,MACpC,YAAY,EAAE,MAAM,cAAc,QAAQ,QAAK;AAAA,MAC/C,YAAY,EAAE,MAAM,cAAc,QAAQ,KAAK;AAAA,MAC/C,WAAW,EAAE,MAAM,aAAa,QAAQ,KAAK;AAAA,MAC7C,WAAW,EAAE,MAAM,aAAa,QAAQ,KAAK;AAAA,IAC/C;AAAA,EACF;AAAA,EACA,eAAe;AAAA,IACb,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,EACT;AAAA,EACA,SAAS;AAAA,IACP,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,QAAQ,EAAE,MAAM,UAAU,QAAQ,IAAI;AAAA,MACtC,YAAY,EAAE,MAAM,cAAc,QAAQ,KAAK;AAAA,MAC/C,aAAa,EAAE,MAAM,eAAe,QAAQ,QAAK;AAAA,MACjD,aAAa,EAAE,MAAM,eAAe,QAAQ,KAAK;AAAA,IACnD;AAAA,EACF;AAAA,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,cAAc,EAAE,MAAM,kBAAkB,QAAQ,MAAM;AAAA,MACtD,eAAe,EAAE,MAAM,mBAAmB,QAAQ,MAAM;AAAA,MACxD,kBAAkB,EAAE,MAAM,sBAAsB,QAAQ,UAAU;AAAA,MAClE,mBAAmB,EAAE,MAAM,uBAAuB,QAAQ,QAAQ;AAAA,MAClE,kBAAkB,EAAE,MAAM,sBAAsB,QAAQ,UAAU;AAAA,MAClE,mBAAmB,EAAE,MAAM,uBAAuB,QAAQ,QAAQ;AAAA,MAClE,kBAAkB,EAAE,MAAM,sBAAsB,QAAQ,UAAU;AAAA,MAClE,mBAAmB,EAAE,MAAM,uBAAuB,QAAQ,QAAQ;AAAA,MAClE,kBAAkB,EAAE,MAAM,sBAAsB,QAAQ,UAAU;AAAA,MAClE,mBAAmB,EAAE,MAAM,uBAAuB,QAAQ,QAAQ;AAAA,MAClE,kBAAkB,EAAE,MAAM,sBAAsB,QAAQ,UAAU;AAAA,MAClE,mBAAmB,EAAE,MAAM,uBAAuB,QAAQ,QAAQ;AAAA,MAClE,kBAAkB,EAAE,MAAM,sBAAsB,QAAQ,UAAU;AAAA,MAClE,mBAAmB,EAAE,MAAM,uBAAuB,QAAQ,QAAQ;AAAA,MAClE,kBAAkB,EAAE,MAAM,sBAAsB,QAAQ,UAAU;AAAA,MAClE,mBAAmB,EAAE,MAAM,uBAAuB,QAAQ,QAAQ;AAAA,IACpE;AAAA,EACF;AAAA,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,KAAK,EAAE,MAAM,OAAO,QAAQ,MAAM;AAAA,MAClC,MAAM,EAAE,MAAM,QAAQ,QAAQ,IAAI;AAAA,MAClC,SAAS,EAAE,MAAM,WAAW,QAAQ,QAAQ;AAAA,MAC5C,UAAU,EAAE,MAAM,YAAY,QAAQ,MAAM;AAAA,MAC5C,SAAS,EAAE,MAAM,WAAW,QAAQ,QAAQ;AAAA,MAC5C,UAAU,EAAE,MAAM,YAAY,QAAQ,MAAM;AAAA,MAC5C,SAAS,EAAE,MAAM,WAAW,QAAQ,QAAQ;AAAA,MAC5C,UAAU,EAAE,MAAM,YAAY,QAAQ,MAAM;AAAA,MAC5C,SAAS,EAAE,MAAM,WAAW,QAAQ,QAAQ;AAAA,MAC5C,UAAU,EAAE,MAAM,YAAY,QAAQ,MAAM;AAAA,MAC5C,SAAS,EAAE,MAAM,WAAW,QAAQ,QAAQ;AAAA,MAC5C,UAAU,EAAE,MAAM,YAAY,QAAQ,MAAM;AAAA,MAC5C,SAAS,EAAE,MAAM,WAAW,QAAQ,QAAQ;AAAA,MAC5C,UAAU,EAAE,MAAM,YAAY,QAAQ,MAAM;AAAA,MAC5C,SAAS,EAAE,MAAM,WAAW,QAAQ,QAAQ;AAAA,MAC5C,UAAU,EAAE,MAAM,YAAY,QAAQ,MAAM;AAAA,IAC9C;AAAA,EACF;AAAA,EACA,SAAS;AAAA,IACP,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,EACT;AAAA,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,EACT;AAAA,EACA,gBAAgB;AAAA,IACd,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,YAAY,EAAE,MAAM,eAAe,QAAQ,KAAK;AAAA,MAChD,SAAS,EAAE,MAAM,WAAW,QAAQ,IAAI;AAAA,MACxC,iBAAiB,EAAE,MAAM,oBAAoB,QAAQ,MAAM;AAAA,IAC7D;AAAA,EACF;AAAA,EACA,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,oBAAoB,EAAE,MAAM,wBAAwB,QAAQ,MAAM;AAAA,MAClE,cAAc,EAAE,MAAM,gBAAgB,QAAQ,KAAK;AAAA,MACnD,WAAW,EAAE,MAAM,aAAa,QAAQ,KAAK;AAAA,MAC7C,cAAc,EAAE,MAAM,iBAAiB,QAAQ,MAAM;AAAA,MACrD,OAAO,EAAE,MAAM,SAAS,QAAQ,IAAI;AAAA,MACpC,wBAAwB,EAAE,MAAM,6BAA6B,QAAQ,OAAO;AAAA,MAC5E,WAAW,EAAE,MAAM,aAAa,QAAQ,KAAK;AAAA,MAC7C,cAAc,EAAE,MAAM,iBAAiB,QAAQ,MAAM;AAAA,MACrD,kBAAkB,EAAE,MAAM,oBAAoB,QAAQ,MAAM;AAAA,MAC5D,WAAW,EAAE,MAAM,aAAa,QAAQ,KAAK;AAAA,MAC7C,cAAc,EAAE,MAAM,iBAAiB,QAAQ,MAAM;AAAA,MACrD,eAAe,EAAE,MAAM,kBAAkB,QAAQ,MAAM;AAAA,MACvD,cAAc,EAAE,MAAM,iBAAiB,QAAQ,MAAM;AAAA,MACrD,UAAU,EAAE,MAAM,aAAa,QAAQ,KAAK;AAAA,IAC9C;AAAA,EACF;AAAA,EACA,YAAY;AAAA,IACV,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,EACT;AAAA,EACA,OAAO;AAAA,IACL,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,EACT;AAAA,EACA,WAAW;AAAA,IACT,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,WAAW,EAAE,MAAM,aAAa,QAAQ,MAAM;AAAA,MAC9C,OAAO,EAAE,MAAM,SAAS,QAAQ,KAAK;AAAA,MACrC,WAAW,EAAE,MAAM,aAAa,QAAQ,MAAM;AAAA,MAC9C,WAAW,EAAE,MAAM,aAAa,QAAQ,MAAM;AAAA,MAC9C,YAAY,EAAE,MAAM,cAAc,QAAQ,MAAM;AAAA,IAClD;AAAA,EACF;AAAA,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,EACT;AAAA,EACA,aAAa;AAAA,IACX,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,YAAY,EAAE,MAAM,cAAc,QAAQ,KAAK;AAAA,MAC/C,KAAK,EAAE,MAAM,OAAO,QAAQ,KAAK;AAAA,IACnC;AAAA,EACF;AAAA,EACA,YAAY;AAAA,IACV,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,OAAO,EAAE,MAAM,SAAS,QAAQ,IAAI;AAAA,MACpC,YAAY,EAAE,MAAM,cAAc,QAAQ,QAAK;AAAA,MAC/C,YAAY,EAAE,MAAM,cAAc,QAAQ,KAAK;AAAA,IACjD;AAAA,EACF;AAAA,EACA,uBAAuB;AAAA,IACrB,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,MAAM,EAAE,MAAM,QAAQ,QAAQ,KAAK;AAAA,MACnC,WAAW,EAAE,MAAM,aAAa,QAAQ,SAAM;AAAA,MAC9C,cAAc,EAAE,MAAM,gBAAgB,QAAQ,SAAM;AAAA,MACpD,WAAW,EAAE,MAAM,aAAa,QAAQ,MAAM;AAAA,MAC9C,cAAc,EAAE,MAAM,gBAAgB,QAAQ,MAAM;AAAA,MACpD,SAAS,EAAE,MAAM,WAAW,QAAQ,KAAK;AAAA,IAC3C;AAAA,EACF;AAAA,EACA,YAAY;AAAA,IACV,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,oBAAoB,EAAE,MAAM,yBAAyB,QAAQ,UAAO;AAAA,IACtE;AAAA,EACF;AAAA,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,EACT;AAAA,EACA,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,EACT;AAAA,EACA,WAAW;AAAA,IACT,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,EACT;AAAA,EACA,WAAW;AAAA,IACT,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,uBAAuB,EAAE,MAAM,4BAA4B,QAAQ,WAAQ;AAAA,IAC7E;AAAA,EACF;AAAA,EACA,YAAY;AAAA,IACV,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,EACT;AAAA,EACA,cAAc;AAAA,IACZ,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,OAAO,EAAE,MAAM,SAAS,QAAQ,KAAK;AAAA,IACvC;AAAA,EACF;AAAA,EACA,mBAAmB;AAAA,IACjB,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,SAAS,EAAE,MAAM,WAAW,QAAQ,KAAK;AAAA,IAC3C;AAAA,EACF;AAAA,EACA,cAAc;AAAA,IACZ,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,SAAS,EAAE,MAAM,WAAW,QAAQ,KAAK;AAAA,MACzC,OAAO,EAAE,MAAM,SAAS,QAAQ,KAAK;AAAA,IACvC;AAAA,EACF;AAAA,EACA,mBAAmB;AAAA,IACjB,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,OAAO,EAAE,MAAM,SAAS,QAAQ,IAAI;AAAA,MACpC,OAAO,EAAE,MAAM,SAAS,QAAQ,IAAI;AAAA,IACtC;AAAA,EACF;AAAA,EACA,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,MAAM,EAAE,MAAM,QAAQ,QAAQ,IAAI;AAAA,MAClC,UAAU,EAAE,MAAM,YAAY,QAAQ,KAAK;AAAA,MAC3C,WAAW,EAAE,MAAM,gBAAgB,QAAQ,KAAK;AAAA,MAChD,WAAW,EAAE,MAAM,aAAa,QAAQ,QAAK;AAAA,MAC7C,WAAW,EAAE,MAAM,aAAa,QAAQ,KAAK;AAAA,MAC7C,MAAM,EAAE,MAAM,QAAQ,QAAQ,OAAO;AAAA,MACrC,OAAO,EAAE,MAAM,SAAS,QAAQ,IAAI;AAAA,IACtC;AAAA,EACF;AAAA,EACA,cAAc;AAAA,IACZ,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,aAAa,EAAE,MAAM,iBAAiB,QAAQ,MAAM;AAAA,MACpD,eAAe,EAAE,MAAM,mBAAmB,QAAQ,MAAM;AAAA,MACxD,iBAAiB,EAAE,MAAM,qBAAqB,QAAQ,OAAO;AAAA,MAC7D,mBAAmB,EAAE,MAAM,uBAAuB,QAAQ,OAAO;AAAA,MACjE,kBAAkB,EAAE,MAAM,kBAAkB,QAAQ,OAAO;AAAA,IAC7D;AAAA,EACF;AAAA,EACA,OAAO;AAAA,IACL,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,EACT;AAAA,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,KAAK,EAAE,MAAM,OAAO,QAAQ,MAAM;AAAA,MAClC,YAAY,EAAE,MAAM,cAAc,QAAQ,OAAO;AAAA,MACjD,aAAa,EAAE,MAAM,eAAe,QAAQ,MAAM;AAAA,MAClD,iBAAiB,EAAE,MAAM,qBAAqB,QAAQ,OAAO;AAAA,MAC7D,eAAe,EAAE,MAAM,mBAAmB,QAAQ,aAAQ;AAAA,MAC1D,YAAY,EAAE,MAAM,cAAc,QAAQ,MAAM;AAAA,MAChD,UAAU,EAAE,MAAM,YAAY,QAAQ,OAAO;AAAA,MAC7C,sBAAsB,EAAE,MAAM,0BAA0B,QAAQ,OAAO;AAAA,MACvE,QAAQ,EAAE,MAAM,UAAU,QAAQ,KAAK;AAAA,MACvC,oBAAoB,EAAE,MAAM,yBAAyB,QAAQ,MAAM;AAAA,IACrE;AAAA,EACF;AAAA,EACA,eAAe;AAAA,IACb,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,WAAW,EAAE,MAAM,aAAa,QAAQ,KAAK;AAAA,MAC7C,eAAe,EAAE,MAAM,iBAAiB,QAAQ,MAAM;AAAA,MACtD,eAAe,EAAE,MAAM,iBAAiB,QAAQ,MAAM;AAAA,MACtD,eAAe,EAAE,MAAM,iBAAiB,QAAQ,MAAM;AAAA,IACxD;AAAA,EACF;AAAA,EACA,gBAAgB;AAAA,IACd,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,4BAA4B,EAAE,MAAM,iCAAiC,QAAQ,QAAQ;AAAA,MACrF,4BAA4B,EAAE,MAAM,iCAAiC,QAAQ,QAAQ;AAAA,MACrF,4BAA4B,EAAE,MAAM,iCAAiC,QAAQ,QAAQ;AAAA,MACrF,wBAAwB,EAAE,MAAM,6BAA6B,QAAQ,OAAO;AAAA,IAC9E;AAAA,EACF;AAAA,EACA,eAAe;AAAA,IACb,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,wBAAwB,EAAE,MAAM,4BAA4B,QAAQ,OAAO;AAAA,MAC3E,wBAAwB,EAAE,MAAM,4BAA4B,QAAQ,OAAO;AAAA,MAC3E,wBAAwB,EAAE,MAAM,4BAA4B,QAAQ,OAAO;AAAA,MAC3E,yBAAyB,EAAE,MAAM,6BAA6B,QAAQ,OAAO;AAAA,MAC7E,oBAAoB,EAAE,MAAM,wBAAwB,QAAQ,MAAM;AAAA,IACpE;AAAA,EACF;AAAA,EACA,iBAAiB;AAAA,IACf,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,EACT;AAAA,EACA,kBAAkB;AAAA,IAChB,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,EACT;AAAA,EACA,YAAY;AAAA,IACV,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,SAAS,EAAE,MAAM,WAAW,QAAQ,UAAK;AAAA,MACzC,SAAS,EAAE,MAAM,WAAW,QAAQ,UAAK;AAAA,MACzC,UAAU,EAAE,MAAM,YAAY,QAAQ,UAAK;AAAA,MAC3C,KAAK,EAAE,MAAM,OAAO,QAAQ,SAAI;AAAA,IAClC;AAAA,EACF;AAAA,EACA,eAAe;AAAA,IACb,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,KAAK,EAAE,MAAM,OAAO,QAAQ,IAAI;AAAA,MAChC,SAAS,EAAE,MAAM,WAAW,QAAQ,KAAK;AAAA,IAC3C;AAAA,EACF;AAAA,EACA,aAAa;AAAA,IACX,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,eAAe,EAAE,MAAM,kBAAkB,QAAQ,QAAK;AAAA,MACtD,kBAAkB,EAAE,MAAM,qBAAqB,QAAQ,QAAK;AAAA,MAC5D,QAAQ,EAAE,MAAM,UAAU,QAAQ,IAAI;AAAA,IACxC;AAAA,EACF;AAAA,EACA,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,EACT;AAAA,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,KAAK,EAAE,MAAM,OAAO,QAAQ,IAAI;AAAA,MAChC,MAAM,EAAE,MAAM,QAAQ,QAAQ,IAAI;AAAA,MAClC,aAAa,EAAE,MAAM,eAAe,QAAQ,QAAK;AAAA,MACjD,aAAa,EAAE,MAAM,eAAe,QAAQ,KAAK;AAAA,MACjD,QAAQ,EAAE,MAAM,UAAU,QAAQ,MAAM;AAAA,MACxC,YAAY,EAAE,MAAM,cAAc,QAAQ,KAAK;AAAA,MAC/C,QAAQ,EAAE,MAAM,UAAU,QAAQ,IAAI;AAAA,MACtC,MAAM,EAAE,MAAM,QAAQ,QAAQ,KAAK;AAAA,IACrC;AAAA,EACF;AAAA,EACA,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,aAAa,EAAE,MAAM,gBAAgB,QAAQ,SAAM;AAAA,IACrD;AAAA,EACF;AAAA,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,qBAAqB,EAAE,MAAM,yBAAyB,QAAQ,OAAO;AAAA,MACrE,kBAAkB,EAAE,MAAM,sBAAsB,QAAQ,OAAO;AAAA,MAC/D,oBAAoB,EAAE,MAAM,wBAAwB,QAAQ,OAAO;AAAA,MACnE,MAAM,EAAE,MAAM,QAAQ,QAAQ,KAAK;AAAA,MACnC,cAAc,EAAE,MAAM,kBAAkB,QAAQ,MAAM;AAAA,MACtD,gBAAgB,EAAE,MAAM,oBAAoB,QAAQ,MAAM;AAAA,MAC1D,aAAa,EAAE,MAAM,iBAAiB,QAAQ,MAAM;AAAA,MACpD,eAAe,EAAE,MAAM,mBAAmB,QAAQ,OAAO;AAAA,IAC3D;AAAA,EACF;AAAA,EACA,SAAS;AAAA,IACP,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,UAAU,EAAE,MAAM,YAAY,QAAQ,KAAK;AAAA,MAC3C,UAAU,EAAE,MAAM,YAAY,QAAQ,KAAK;AAAA,MAC3C,WAAW,EAAE,MAAM,aAAa,QAAQ,QAAK;AAAA,MAC7C,WAAW,EAAE,MAAM,aAAa,QAAQ,KAAK;AAAA,MAC7C,MAAM,EAAE,MAAM,QAAQ,QAAQ,IAAI;AAAA,IACpC;AAAA,EACF;AAAA,EACA,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,iBAAiB,EAAE,MAAM,oBAAoB,QAAQ,SAAM;AAAA,MAC3D,WAAW,EAAE,MAAM,cAAc,QAAQ,SAAM;AAAA,MAC/C,WAAW,EAAE,MAAM,cAAc,QAAQ,SAAM;AAAA,MAC/C,YAAY,EAAE,MAAM,eAAe,QAAQ,QAAK;AAAA,MAChD,YAAY,EAAE,MAAM,eAAe,QAAQ,QAAQ;AAAA,MACnD,QAAQ,EAAE,MAAM,UAAU,QAAQ,MAAM;AAAA,MACxC,OAAO,EAAE,MAAM,SAAS,QAAQ,IAAI;AAAA,MACpC,YAAY,EAAE,MAAM,cAAc,QAAQ,KAAK;AAAA,IACjD;AAAA,EACF;AAAA,EACA,gBAAgB;AAAA,IACd,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,MACL,oBAAoB,EAAE,MAAM,yBAAyB,QAAQ,MAAM;AAAA,MACnE,mBAAmB,EAAE,MAAM,wBAAwB,QAAQ,UAAO;AAAA,MAClE,qBAAqB,EAAE,MAAM,0BAA0B,QAAQ,YAAS;AAAA,MACxE,qBAAqB,EAAE,MAAM,0BAA0B,QAAQ,UAAO;AAAA,MACtE,eAAe,EAAE,MAAM,mBAAmB,QAAQ,QAAQ;AAAA,MAC1D,iBAAiB,EAAE,MAAM,qBAAqB,QAAQ,UAAU;AAAA,MAChE,cAAc,EAAE,MAAM,kBAAkB,QAAQ,MAAM;AAAA,MACtD,gBAAgB,EAAE,MAAM,oBAAoB,QAAQ,QAAQ;AAAA,MAC5D,gBAAgB,EAAE,MAAM,oBAAoB,QAAQ,MAAM;AAAA,MAC1D,mBAAmB,EAAE,MAAM,uBAAuB,QAAQ,OAAO;AAAA,MACjE,qBAAqB,EAAE,MAAM,yBAAyB,QAAQ,SAAS;AAAA,MACvE,qBAAqB,EAAE,MAAM,yBAAyB,QAAQ,OAAO;AAAA,IACvE;AAAA,EACF;AACF;;ACriBA,IAAM,YAAgE,IAAI;AAE1E,YAAY,MAAM,OAAO,OAAO,QAAQ,kBAAiB,GAAG;AAAA,EAC1D,YAAY,QAAQ,SAAS,OAAO,QAAQ,GAAG,KAAK,GAAG;AAAA,IAIrD,IAAI,CAAC,UAAU,IAAI,MAAM,GAAG;AAAA,MAC1B,UAAU,IAAI,QAAQ,KAAK,MAAM,oBAAoB,KAAK,CAAC;AAAA,IAC7D;AAAA,EACF;AACF;AAWO,SAAS,QAAO,CAAC,QAAqE;AAAA,EAC3F,OAAO,UAAU,IAAI,MAAM;AAAA;AAYtB,SAAS,YAAW,CAAC,oBAA8D;AAAA,EACxF,MAAM,KAAK,mBAAkB;AAAA,EAC7B,OAAO,IAAI;AAAA;AAYN,SAAS,YAAW,CAAC,oBAA4B,QAAyB;AAAA,EAC/E,MAAM,QAAQ,aAAY,kBAAkB;AAAA,EAC5C,OAAO,SAAS,QAAQ,UAAU;AAAA;AAY7B,SAAS,cAAa,CAAC,QAAoC;AAAA,EAChE,OAAO,UAAU,IAAI,MAAM,GAAG;AAAA;AAMzB,SAAS,qBAAoB,CAAC,OAA4C;AAAA,EAC/E,OAAO,SAAS;AAAA;AAMX,SAAS,SAAQ,CAAC,OAAgC;AAAA,EACvD,OAAO,UAAU,IAAI,KAAK;AAAA;;;AC3GrB,SAAS,wBAAuB,CAAC,UAA0B;AAAA,EAChE,IAAI,SAAS,SAAS,aAAa;AAAA,IACjC,MAAM,IAAI,yBAAwB,mBAAmB,SAAS,6BAA6B;AAAA,EAC7F;AAAA;AAGK,SAAS,oBAAmB,CACjC,UACA,gBACgC;AAAA,EAChC,IAAI,SAAS,cAAc;AAAA,IACzB,OAAO,SAAS;AAAA,EAClB;AAAA,EAEA,MAAM,cAAc,qBAAoB,SAAS,MAAM;AAAA,EACvD,IAAI,CAAC,aAAa;AAAA,IAChB;AAAA,EACF;AAAA,EAEA,OAAO,eAAe,IAAI,WAAW,GAAG;AAAA;AAInC,SAAS,sBAAqB,CACnC,UACA,cACA,MACA,gBACM;AAAA,EACN,MAAM,eAAe,qBAAoB,UAAU,cAAc;AAAA,EACjE,IAAI,cAAc;AAAA,IAChB,IAAI,CAAC,MAAM;AAAA,MACT,MAAM,IAAI,yBACR,8CAA8C,cAChD;AAAA,IACF;AAAA,IACA,IAAI,CAAC,aAAY,cAAc,IAAI,GAAG;AAAA,MACpC,MAAM,IAAI,yBACR,wBAAwB,aAAa,iBAAiB,eACxD;AAAA,IACF;AAAA,EACF,EAAO,SAAI,MAAM;AAAA,IACf,MAAM,IAAI,yBACR,mBAAmB,oEACrB;AAAA,EACF;AAAA;",
18
+ "debugId": "22574F8751F18B0064756E2164756E21",
19
19
  "names": []
20
20
  }
@@ -1,7 +1,7 @@
1
1
  // @bun
2
2
  import {
3
3
  isFileRef2
4
- } from "./chunk-jhm3zsa7.js";
4
+ } from "./chunk-wkv3h3q7.js";
5
5
  import {
6
6
  BlobStorageError2
7
7
  } from "./chunk-h8teetr0.js";
@@ -82,71 +82,6 @@ function expiryFrom(createdAt, expiresInMs) {
82
82
  }
83
83
  return new Date(expiresAt);
84
84
  }
85
- // src/blob-storage/file-content.ts
86
- function resolveFileRefAtPath2(root, path) {
87
- const value = resolveJsonPointer(root, path);
88
- return isFileRef2(value) ? value : null;
89
- }
90
- async function statFileRef2(blobStorage, fileRef) {
91
- const stat = await blobStorage.stat(fileRef.blobId);
92
- return stat && stat.blobId === fileRef.blobId && stat.digest === fileRef.digest && stat.sizeBytes === fileRef.sizeBytes ? stat : null;
93
- }
94
- async function openFileRef2(blobStorage, fileRef) {
95
- const stat = await statFileRef2(blobStorage, fileRef);
96
- if (!stat)
97
- return null;
98
- return { fileRef, body: openOnFirstRead(blobStorage, fileRef.blobId) };
99
- }
100
- function openOnFirstRead(blobStorage, blobId) {
101
- let reader;
102
- return new ReadableStream({
103
- async pull(controller) {
104
- reader ??= (await blobStorage.open(blobId)).getReader();
105
- const { done, value } = await reader.read();
106
- if (done)
107
- controller.close();
108
- else
109
- controller.enqueue(value);
110
- },
111
- async cancel(reason) {
112
- await reader?.cancel(reason);
113
- }
114
- }, { highWaterMark: 0 });
115
- }
116
- function jsonPointerSegment2(segment) {
117
- return String(segment).replaceAll("~", "~0").replaceAll("/", "~1");
118
- }
119
- function resolveJsonPointer(root, pointer) {
120
- if (pointer === "") {
121
- return root;
122
- }
123
- if (!pointer.startsWith("/")) {
124
- return;
125
- }
126
- let current = root;
127
- for (const rawSegment of pointer.slice(1).split("/")) {
128
- const segment = decodeJsonPointerSegment(rawSegment);
129
- if (Array.isArray(current)) {
130
- const index = Number.parseInt(segment, 10);
131
- if (!Number.isInteger(index) || index < 0 || index.toString() !== segment) {
132
- return;
133
- }
134
- if (!Object.hasOwn(current, segment)) {
135
- return;
136
- }
137
- current = current[index];
138
- continue;
139
- }
140
- if (typeof current !== "object" || current === null || !Object.hasOwn(current, segment)) {
141
- return;
142
- }
143
- current = current[segment];
144
- }
145
- return current;
146
- }
147
- function decodeJsonPointerSegment(segment) {
148
- return segment.replaceAll("~1", "/").replaceAll("~0", "~");
149
- }
150
- export { FILE_DOWNLOAD_ROUTE_PREFIX2, createFileDownloadUrl, revokeFileDownloadUrl, resolveFileDownload2, resolveFileRefAtPath2, statFileRef2, openFileRef2, jsonPointerSegment2 };
85
+ export { FILE_DOWNLOAD_ROUTE_PREFIX2, createFileDownloadUrl, revokeFileDownloadUrl, resolveFileDownload2 };
151
86
 
152
- //# debugId=14717FDAE9DF0DDF64756E2164756E21
87
+ //# debugId=C8FBB8115796391A64756E2164756E21
@@ -1,11 +1,10 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../src/blob-storage/download-urls.ts", "../src/blob-storage/file-content.ts"],
3
+ "sources": ["../src/blob-storage/download-urls.ts"],
4
4
  "sourcesContent": [
5
- "import { createHash, randomBytes, randomUUID } from \"node:crypto\"\nimport type { FileDownloadGrantRecord, FileDownloadGrantStorage, Storage } from \"../storage\"\nimport { BlobStorageError } from \"./errors\"\nimport type { BlobStorage, FileRef } from \"./types\"\nimport { isFileRef } from \"./validation\"\n\n/**\n * Download URLs let a third party that cannot hold a Sixb session — a social network fetching\n * media to publish, for instance — read one file for a bounded time.\n *\n * Each URL carries a random token. Storage keeps only its SHA-256, with the file, the expiry, and\n * the execution that issued it. The API looks the token up on every request, so any process\n * sharing the storage can issue a URL, and a URL can be revoked before it expires.\n *\n * The API serves the bytes itself rather than redirecting to the blob provider: fetchers such as\n * TikTok refuse redirects and accept only hosts whose ownership the developer verified.\n */\n\n/** Path prefix of the public route that serves download URLs. */\nexport const FILE_DOWNLOAD_ROUTE_PREFIX = \"/api/files/downloads/\"\n\nconst DEFAULT_EXPIRY_MS = 60 * 60 * 1000\n// SQLite compares ISO timestamps as text, which orders them correctly only for four-digit years.\nconst LATEST_EXPIRY_MS = Date.UTC(9999, 11, 31, 23, 59, 59, 999)\n/** 32 random bytes in base64url. */\nconst TOKEN_PATTERN = /^[A-Za-z0-9_-]{43}$/\n\nexport interface CreateFileDownloadUrlOptions {\n /** How long the URL stays valid. Defaults to one hour. */\n readonly expiresInMs?: number\n}\n\nexport interface FileDownloadUrl {\n /** Pass to `blobs.revokeDownloadUrl()` to stop the URL before it expires. */\n readonly id: string\n readonly url: string\n readonly expiresAt: Date\n}\n\n/** What issuing and revoking need from the execution that asks. */\nexport interface FileDownloadUrlContext {\n readonly projectId: string\n readonly storage: Storage\n readonly blobStorage: BlobStorage\n readonly executionId: string\n readonly apiPublicOrigin: string | undefined\n}\n\nexport async function createFileDownloadUrl(\n context: FileDownloadUrlContext,\n file: FileRef,\n options: CreateFileDownloadUrlOptions = {}\n): Promise<FileDownloadUrl> {\n if (!isFileRef(file)) {\n throw new Error(\"[Sixb] blobs.createDownloadUrl() requires a valid file reference.\")\n }\n const createdAt = new Date()\n const expiresAt = expiryFrom(createdAt, options.expiresInMs ?? DEFAULT_EXPIRY_MS)\n const grants = requireGrantStorage(context.storage)\n if (context.apiPublicOrigin === undefined) {\n throw new Error(\n \"[Sixb] blobs.createDownloadUrl() needs the API's public origin. Set SIXB_API_PUBLIC_ORIGIN for the API and every worker.\"\n )\n }\n // Fail here, not when a third party fetches the URL minutes later and gets a bare 404.\n const stat = await context.blobStorage.stat(file.blobId)\n if (!stat || stat.digest !== file.digest || stat.sizeBytes !== file.sizeBytes) {\n throw new BlobStorageError(`[Sixb] No stored blob matches file '${file.blobId}'.`)\n }\n\n const token = randomBytes(32).toString(\"base64url\")\n const { logicalPath: _logicalPath, ...served } = file\n const grant: FileDownloadGrantRecord = {\n id: `filedownload_${randomUUID()}`,\n projectId: context.projectId,\n tokenHash: hashToken(token),\n file: served,\n executionId: context.executionId,\n createdAt,\n expiresAt,\n }\n await grants.create(grant)\n\n return {\n id: grant.id,\n url: new URL(`${FILE_DOWNLOAD_ROUTE_PREFIX}${token}`, context.apiPublicOrigin).toString(),\n expiresAt: grant.expiresAt,\n }\n}\n\nexport async function revokeFileDownloadUrl(\n context: FileDownloadUrlContext,\n id: string\n): Promise<void> {\n const revoked = await requireGrantStorage(context.storage).revoke({\n projectId: context.projectId,\n id,\n revokedAt: new Date(),\n })\n if (!revoked) {\n throw new Error(`[Sixb] Download URL '${id}' does not exist.`)\n }\n}\n\n/** The file a token serves, or `null` when the token is unknown, expired, or revoked. */\nexport async function resolveFileDownload(\n host: { readonly id: string; readonly storage: Storage },\n token: string\n): Promise<FileRef | null> {\n const grants = host.storage.fileDownloadGrants\n if (!grants || !TOKEN_PATTERN.test(token)) return null\n\n const grant = await grants.findByTokenHash({ projectId: host.id, tokenHash: hashToken(token) })\n if (!grant || grant.revokedAt || grant.expiresAt.getTime() <= Date.now()) return null\n return grant.file\n}\n\nfunction hashToken(token: string): string {\n return createHash(\"sha256\").update(token).digest(\"hex\")\n}\n\nfunction requireGrantStorage(storage: Storage): FileDownloadGrantStorage {\n if (!storage.fileDownloadGrants) {\n throw new Error(\"[Sixb] Download URLs require storage.fileDownloadGrants.\")\n }\n return storage.fileDownloadGrants\n}\n\nfunction expiryFrom(createdAt: Date, expiresInMs: number): Date {\n if (!Number.isSafeInteger(expiresInMs) || expiresInMs <= 0) {\n throw new Error(\"[Sixb] expiresInMs must be a positive integer.\")\n }\n const expiresAt = createdAt.getTime() + expiresInMs\n if (expiresAt > LATEST_EXPIRY_MS) {\n throw new Error(\"[Sixb] expiresInMs must end before the year 10000.\")\n }\n return new Date(expiresAt)\n}\n",
6
- "import type { BlobInfo, BlobStorage, FileRef, OpenedFileRef } from \"./types\"\nimport { isFileRef } from \"./validation\"\n\n/**\n * A file is served only through the record that references it: the caller reads that record with\n * its own authority, resolves the FileRef inside it, then checks the FileRef against the stored\n * blob. File content routes and the SDK's `file().open()` share these steps.\n */\n\n/** The FileRef at a JSON Pointer in an authorized record, or null when none is there. */\nexport function resolveFileRefAtPath(root: unknown, path: string): FileRef | null {\n const value = resolveJsonPointer(root, path)\n return isFileRef(value) ? value : null\n}\n\n/** The stored blob a FileRef names, or null when it is absent or no longer matches it. */\nexport async function statFileRef(\n blobStorage: Pick<BlobStorage, \"stat\">,\n fileRef: FileRef\n): Promise<BlobInfo | null> {\n const stat = await blobStorage.stat(fileRef.blobId)\n return stat &&\n stat.blobId === fileRef.blobId &&\n stat.digest === fileRef.digest &&\n stat.sizeBytes === fileRef.sizeBytes\n ? stat\n : null\n}\n\n/**\n * Open a FileRef resolved from an authorized record, or return null when its blob is gone. The\n * blob itself is opened on the body's first read, so a body nobody reads holds nothing.\n */\nexport async function openFileRef(\n blobStorage: Pick<BlobStorage, \"stat\" | \"open\">,\n fileRef: FileRef\n): Promise<OpenedFileRef | null> {\n const stat = await statFileRef(blobStorage, fileRef)\n if (!stat) return null\n return { fileRef, body: openOnFirstRead(blobStorage, fileRef.blobId) }\n}\n\nfunction openOnFirstRead(\n blobStorage: Pick<BlobStorage, \"open\">,\n blobId: string\n): ReadableStream<Uint8Array> {\n let reader: ReadableStreamDefaultReader<Uint8Array> | undefined\n return new ReadableStream<Uint8Array>(\n {\n async pull(controller) {\n reader ??= (await blobStorage.open(blobId)).getReader()\n const { done, value } = await reader.read()\n if (done) controller.close()\n else controller.enqueue(value)\n },\n async cancel(reason) {\n await reader?.cancel(reason)\n },\n },\n // No read-ahead: the first pull waits for the first read.\n { highWaterMark: 0 }\n )\n}\n\n/** Escape one segment of a JSON Pointer. */\nexport function jsonPointerSegment(segment: string | number): string {\n return String(segment).replaceAll(\"~\", \"~0\").replaceAll(\"/\", \"~1\")\n}\n\nfunction resolveJsonPointer(root: unknown, pointer: string): unknown {\n if (pointer === \"\") {\n return root\n }\n\n if (!pointer.startsWith(\"/\")) {\n return undefined\n }\n\n let current = root\n for (const rawSegment of pointer.slice(1).split(\"/\")) {\n const segment = decodeJsonPointerSegment(rawSegment)\n if (Array.isArray(current)) {\n const index = Number.parseInt(segment, 10)\n if (!Number.isInteger(index) || index < 0 || index.toString() !== segment) {\n return undefined\n }\n if (!Object.hasOwn(current, segment)) {\n return undefined\n }\n current = current[index]\n continue\n }\n\n if (typeof current !== \"object\" || current === null || !Object.hasOwn(current, segment)) {\n return undefined\n }\n\n current = (current as Record<string, unknown>)[segment]\n }\n\n return current\n}\n\nfunction decodeJsonPointerSegment(segment: string): string {\n return segment.replaceAll(\"~1\", \"/\").replaceAll(\"~0\", \"~\")\n}\n"
5
+ "import { createHash, randomBytes, randomUUID } from \"node:crypto\"\nimport type { FileDownloadGrantRecord, FileDownloadGrantStorage, Storage } from \"../storage\"\nimport { BlobStorageError } from \"./errors\"\nimport type { BlobStorage, FileRef } from \"./types\"\nimport { isFileRef } from \"./validation\"\n\n/**\n * Download URLs let a third party that cannot hold a Sixb session — a social network fetching\n * media to publish, for instance — read one file for a bounded time.\n *\n * Each URL carries a random token. Storage keeps only its SHA-256, with the file, the expiry, and\n * the execution that issued it. The API looks the token up on every request, so any process\n * sharing the storage can issue a URL, and a URL can be revoked before it expires.\n *\n * The API serves the bytes itself rather than redirecting to the blob provider: fetchers such as\n * TikTok refuse redirects and accept only hosts whose ownership the developer verified.\n */\n\n/** Path prefix of the public route that serves download URLs. */\nexport const FILE_DOWNLOAD_ROUTE_PREFIX = \"/api/files/downloads/\"\n\nconst DEFAULT_EXPIRY_MS = 60 * 60 * 1000\n// SQLite compares ISO timestamps as text, which orders them correctly only for four-digit years.\nconst LATEST_EXPIRY_MS = Date.UTC(9999, 11, 31, 23, 59, 59, 999)\n/** 32 random bytes in base64url. */\nconst TOKEN_PATTERN = /^[A-Za-z0-9_-]{43}$/\n\nexport interface CreateFileDownloadUrlOptions {\n /** How long the URL stays valid. Defaults to one hour. */\n readonly expiresInMs?: number\n}\n\nexport interface FileDownloadUrl {\n /** Pass to `blobs.revokeDownloadUrl()` to stop the URL before it expires. */\n readonly id: string\n readonly url: string\n readonly expiresAt: Date\n}\n\n/** What issuing and revoking need from the execution that asks. */\nexport interface FileDownloadUrlContext {\n readonly projectId: string\n readonly storage: Storage\n readonly blobStorage: BlobStorage\n readonly executionId: string\n readonly apiPublicOrigin: string | undefined\n}\n\nexport async function createFileDownloadUrl(\n context: FileDownloadUrlContext,\n file: FileRef,\n options: CreateFileDownloadUrlOptions = {}\n): Promise<FileDownloadUrl> {\n if (!isFileRef(file)) {\n throw new Error(\"[Sixb] blobs.createDownloadUrl() requires a valid file reference.\")\n }\n const createdAt = new Date()\n const expiresAt = expiryFrom(createdAt, options.expiresInMs ?? DEFAULT_EXPIRY_MS)\n const grants = requireGrantStorage(context.storage)\n if (context.apiPublicOrigin === undefined) {\n throw new Error(\n \"[Sixb] blobs.createDownloadUrl() needs the API's public origin. Set SIXB_API_PUBLIC_ORIGIN for the API and every worker.\"\n )\n }\n // Fail here, not when a third party fetches the URL minutes later and gets a bare 404.\n const stat = await context.blobStorage.stat(file.blobId)\n if (!stat || stat.digest !== file.digest || stat.sizeBytes !== file.sizeBytes) {\n throw new BlobStorageError(`[Sixb] No stored blob matches file '${file.blobId}'.`)\n }\n\n const token = randomBytes(32).toString(\"base64url\")\n const { logicalPath: _logicalPath, ...served } = file\n const grant: FileDownloadGrantRecord = {\n id: `filedownload_${randomUUID()}`,\n projectId: context.projectId,\n tokenHash: hashToken(token),\n file: served,\n executionId: context.executionId,\n createdAt,\n expiresAt,\n }\n await grants.create(grant)\n\n return {\n id: grant.id,\n url: new URL(`${FILE_DOWNLOAD_ROUTE_PREFIX}${token}`, context.apiPublicOrigin).toString(),\n expiresAt: grant.expiresAt,\n }\n}\n\nexport async function revokeFileDownloadUrl(\n context: FileDownloadUrlContext,\n id: string\n): Promise<void> {\n const revoked = await requireGrantStorage(context.storage).revoke({\n projectId: context.projectId,\n id,\n revokedAt: new Date(),\n })\n if (!revoked) {\n throw new Error(`[Sixb] Download URL '${id}' does not exist.`)\n }\n}\n\n/** The file a token serves, or `null` when the token is unknown, expired, or revoked. */\nexport async function resolveFileDownload(\n host: { readonly id: string; readonly storage: Storage },\n token: string\n): Promise<FileRef | null> {\n const grants = host.storage.fileDownloadGrants\n if (!grants || !TOKEN_PATTERN.test(token)) return null\n\n const grant = await grants.findByTokenHash({ projectId: host.id, tokenHash: hashToken(token) })\n if (!grant || grant.revokedAt || grant.expiresAt.getTime() <= Date.now()) return null\n return grant.file\n}\n\nfunction hashToken(token: string): string {\n return createHash(\"sha256\").update(token).digest(\"hex\")\n}\n\nfunction requireGrantStorage(storage: Storage): FileDownloadGrantStorage {\n if (!storage.fileDownloadGrants) {\n throw new Error(\"[Sixb] Download URLs require storage.fileDownloadGrants.\")\n }\n return storage.fileDownloadGrants\n}\n\nfunction expiryFrom(createdAt: Date, expiresInMs: number): Date {\n if (!Number.isSafeInteger(expiresInMs) || expiresInMs <= 0) {\n throw new Error(\"[Sixb] expiresInMs must be a positive integer.\")\n }\n const expiresAt = createdAt.getTime() + expiresInMs\n if (expiresAt > LATEST_EXPIRY_MS) {\n throw new Error(\"[Sixb] expiresInMs must end before the year 10000.\")\n }\n return new Date(expiresAt)\n}\n"
7
6
  ],
8
- "mappings": "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",
9
- "debugId": "14717FDAE9DF0DDF64756E2164756E21",
7
+ "mappings": "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",
8
+ "debugId": "C8FBB8115796391A64756E2164756E21",
10
9
  "names": []
11
10
  }