@opendatalabs/personal-server-ts-core 1.33.8 → 1.34.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (330) hide show
  1. package/dist/additions/budget.d.ts +28 -0
  2. package/dist/additions/budget.d.ts.map +1 -0
  3. package/dist/additions/budget.js +119 -0
  4. package/dist/additions/budget.js.map +1 -0
  5. package/dist/additions/durable.d.ts +64 -0
  6. package/dist/additions/durable.d.ts.map +1 -0
  7. package/dist/additions/durable.js +591 -0
  8. package/dist/additions/durable.js.map +1 -0
  9. package/dist/additions/first-added.d.ts +32 -48
  10. package/dist/additions/first-added.d.ts.map +1 -1
  11. package/dist/additions/first-added.js +68 -123
  12. package/dist/additions/first-added.js.map +1 -1
  13. package/dist/additions/index.d.ts +3 -0
  14. package/dist/additions/index.d.ts.map +1 -1
  15. package/dist/additions/index.js +3 -0
  16. package/dist/additions/index.js.map +1 -1
  17. package/dist/additions/ledger-store.js +1 -1
  18. package/dist/additions/record-rules.d.ts.map +1 -1
  19. package/dist/additions/record-rules.js +7 -0
  20. package/dist/additions/record-rules.js.map +1 -1
  21. package/dist/additions/summary.d.ts +88 -1
  22. package/dist/additions/summary.d.ts.map +1 -1
  23. package/dist/additions/summary.js +173 -8
  24. package/dist/additions/summary.js.map +1 -1
  25. package/dist/additions/version-inventory.d.ts +80 -0
  26. package/dist/additions/version-inventory.d.ts.map +1 -0
  27. package/dist/additions/version-inventory.js +232 -0
  28. package/dist/additions/version-inventory.js.map +1 -0
  29. package/dist/api/index.d.ts +70 -2
  30. package/dist/api/index.d.ts.map +1 -1
  31. package/dist/api/index.js +506 -79
  32. package/dist/api/index.js.map +1 -1
  33. package/dist/auth/index.d.ts +1 -1
  34. package/dist/auth/index.d.ts.map +1 -1
  35. package/dist/auth/index.js +1 -1
  36. package/dist/auth/index.js.map +1 -1
  37. package/dist/auth/request.d.ts +6 -0
  38. package/dist/auth/request.d.ts.map +1 -1
  39. package/dist/auth/request.js +66 -4
  40. package/dist/auth/request.js.map +1 -1
  41. package/dist/contracts/data.d.ts +54 -8
  42. package/dist/contracts/data.d.ts.map +1 -1
  43. package/dist/contracts/data.js +178 -35
  44. package/dist/contracts/data.js.map +1 -1
  45. package/dist/contracts/index.d.ts +1 -1
  46. package/dist/contracts/index.d.ts.map +1 -1
  47. package/dist/derivatives/registration.d.ts +0 -5
  48. package/dist/derivatives/registration.d.ts.map +1 -1
  49. package/dist/derivatives/registration.js +2 -1
  50. package/dist/derivatives/registration.js.map +1 -1
  51. package/dist/errors/pdpp-catalog.d.ts +36 -0
  52. package/dist/errors/pdpp-catalog.d.ts.map +1 -0
  53. package/dist/errors/pdpp-catalog.js +86 -0
  54. package/dist/errors/pdpp-catalog.js.map +1 -0
  55. package/dist/grants/index.d.ts +2 -0
  56. package/dist/grants/index.d.ts.map +1 -1
  57. package/dist/grants/index.js +4 -0
  58. package/dist/grants/index.js.map +1 -1
  59. package/dist/grants/pdpp-binding-store.d.ts +89 -0
  60. package/dist/grants/pdpp-binding-store.d.ts.map +1 -0
  61. package/dist/grants/pdpp-binding-store.js +112 -0
  62. package/dist/grants/pdpp-binding-store.js.map +1 -0
  63. package/dist/grants/pdpp-binding.d.ts +169 -0
  64. package/dist/grants/pdpp-binding.d.ts.map +1 -0
  65. package/dist/grants/pdpp-binding.js +236 -0
  66. package/dist/grants/pdpp-binding.js.map +1 -0
  67. package/dist/legacy-projection/bindings.d.ts +28 -1
  68. package/dist/legacy-projection/bindings.d.ts.map +1 -1
  69. package/dist/legacy-projection/bindings.js +622 -189
  70. package/dist/legacy-projection/bindings.js.map +1 -1
  71. package/dist/legacy-projection/claude-source-record.d.ts +22 -0
  72. package/dist/legacy-projection/claude-source-record.d.ts.map +1 -0
  73. package/dist/legacy-projection/claude-source-record.js +360 -0
  74. package/dist/legacy-projection/claude-source-record.js.map +1 -0
  75. package/dist/legacy-projection/declared-text.d.ts +41 -0
  76. package/dist/legacy-projection/declared-text.d.ts.map +1 -0
  77. package/dist/legacy-projection/declared-text.js +199 -0
  78. package/dist/legacy-projection/declared-text.js.map +1 -0
  79. package/dist/legacy-projection/github-browser-bindings.d.ts.map +1 -1
  80. package/dist/legacy-projection/github-browser-bindings.js +89 -5
  81. package/dist/legacy-projection/github-browser-bindings.js.map +1 -1
  82. package/dist/legacy-projection/github-legacy-fields.d.ts +6 -0
  83. package/dist/legacy-projection/github-legacy-fields.d.ts.map +1 -0
  84. package/dist/legacy-projection/github-legacy-fields.js +202 -0
  85. package/dist/legacy-projection/github-legacy-fields.js.map +1 -0
  86. package/dist/legacy-projection/index.d.ts +3 -1
  87. package/dist/legacy-projection/index.d.ts.map +1 -1
  88. package/dist/legacy-projection/index.js +49 -1
  89. package/dist/legacy-projection/index.js.map +1 -1
  90. package/dist/legacy-projection/oura-browser-bindings.d.ts.map +1 -1
  91. package/dist/legacy-projection/oura-browser-bindings.js +43 -41
  92. package/dist/legacy-projection/oura-browser-bindings.js.map +1 -1
  93. package/dist/legacy-projection/types.d.ts +38 -2
  94. package/dist/legacy-projection/types.d.ts.map +1 -1
  95. package/dist/mcp/resources.d.ts.map +1 -1
  96. package/dist/mcp/resources.js +3 -0
  97. package/dist/mcp/resources.js.map +1 -1
  98. package/dist/mcp/tools.d.ts.map +1 -1
  99. package/dist/mcp/tools.js +11 -2
  100. package/dist/mcp/tools.js.map +1 -1
  101. package/dist/pdpp/approval.d.ts +271 -0
  102. package/dist/pdpp/approval.d.ts.map +1 -0
  103. package/dist/pdpp/approval.js +467 -0
  104. package/dist/pdpp/approval.js.map +1 -0
  105. package/dist/pdpp/client-identity.d.ts +88 -0
  106. package/dist/pdpp/client-identity.d.ts.map +1 -0
  107. package/dist/pdpp/client-identity.js +196 -0
  108. package/dist/pdpp/client-identity.js.map +1 -0
  109. package/dist/pdpp/client-metadata.d.ts +95 -0
  110. package/dist/pdpp/client-metadata.d.ts.map +1 -0
  111. package/dist/pdpp/client-metadata.js +96 -0
  112. package/dist/pdpp/client-metadata.js.map +1 -0
  113. package/dist/pdpp/commitments.d.ts +75 -0
  114. package/dist/pdpp/commitments.d.ts.map +1 -0
  115. package/dist/pdpp/commitments.js +113 -0
  116. package/dist/pdpp/commitments.js.map +1 -0
  117. package/dist/pdpp/declaration.d.ts +118 -0
  118. package/dist/pdpp/declaration.d.ts.map +1 -0
  119. package/dist/pdpp/declaration.js +836 -0
  120. package/dist/pdpp/declaration.js.map +1 -0
  121. package/dist/pdpp/index.d.ts +37 -0
  122. package/dist/pdpp/index.d.ts.map +1 -0
  123. package/dist/pdpp/index.js +23 -0
  124. package/dist/pdpp/index.js.map +1 -0
  125. package/dist/pdpp/issuance.d.ts +126 -0
  126. package/dist/pdpp/issuance.d.ts.map +1 -0
  127. package/dist/pdpp/issuance.js +180 -0
  128. package/dist/pdpp/issuance.js.map +1 -0
  129. package/dist/pdpp/pkce.d.ts +53 -0
  130. package/dist/pdpp/pkce.d.ts.map +1 -0
  131. package/dist/pdpp/pkce.js +109 -0
  132. package/dist/pdpp/pkce.js.map +1 -0
  133. package/dist/pdpp/redirect.d.ts +60 -0
  134. package/dist/pdpp/redirect.d.ts.map +1 -0
  135. package/dist/pdpp/redirect.js +125 -0
  136. package/dist/pdpp/redirect.js.map +1 -0
  137. package/dist/pdpp/resolve.d.ts +109 -0
  138. package/dist/pdpp/resolve.d.ts.map +1 -0
  139. package/dist/pdpp/resolve.js +393 -0
  140. package/dist/pdpp/resolve.js.map +1 -0
  141. package/dist/pdpp/review.d.ts +280 -0
  142. package/dist/pdpp/review.d.ts.map +1 -0
  143. package/dist/pdpp/review.js +205 -0
  144. package/dist/pdpp/review.js.map +1 -0
  145. package/dist/pdpp/selection.d.ts +50 -0
  146. package/dist/pdpp/selection.d.ts.map +1 -0
  147. package/dist/pdpp/selection.js +442 -0
  148. package/dist/pdpp/selection.js.map +1 -0
  149. package/dist/pdpp/store.d.ts +228 -0
  150. package/dist/pdpp/store.d.ts.map +1 -0
  151. package/dist/pdpp/store.js +542 -0
  152. package/dist/pdpp/store.js.map +1 -0
  153. package/dist/pdpp/tokens.d.ts +181 -0
  154. package/dist/pdpp/tokens.d.ts.map +1 -0
  155. package/dist/pdpp/tokens.js +419 -0
  156. package/dist/pdpp/tokens.js.map +1 -0
  157. package/dist/pdpp/types.d.ts +441 -0
  158. package/dist/pdpp/types.d.ts.map +1 -0
  159. package/dist/pdpp/types.js +61 -0
  160. package/dist/pdpp/types.js.map +1 -0
  161. package/dist/pdpp-version.d.ts +28 -0
  162. package/dist/pdpp-version.d.ts.map +1 -0
  163. package/dist/pdpp-version.js +28 -0
  164. package/dist/pdpp-version.js.map +1 -0
  165. package/dist/policy/data-read.d.ts +24 -0
  166. package/dist/policy/data-read.d.ts.map +1 -1
  167. package/dist/policy/data-read.js +60 -3
  168. package/dist/policy/data-read.js.map +1 -1
  169. package/dist/policy/data-write.d.ts.map +1 -1
  170. package/dist/policy/data-write.js +3 -0
  171. package/dist/policy/data-write.js.map +1 -1
  172. package/dist/policy/index.d.ts +1 -0
  173. package/dist/policy/index.d.ts.map +1 -1
  174. package/dist/policy/index.js +1 -0
  175. package/dist/policy/index.js.map +1 -1
  176. package/dist/policy/reserved-scopes.d.ts +3 -0
  177. package/dist/policy/reserved-scopes.d.ts.map +1 -0
  178. package/dist/policy/reserved-scopes.js +5 -0
  179. package/dist/policy/reserved-scopes.js.map +1 -0
  180. package/dist/ports/index.d.ts +63 -0
  181. package/dist/ports/index.d.ts.map +1 -1
  182. package/dist/ports/index.js.map +1 -1
  183. package/dist/ports/pdpp-auth.d.ts +129 -0
  184. package/dist/ports/pdpp-auth.d.ts.map +1 -0
  185. package/dist/ports/pdpp-auth.js +60 -0
  186. package/dist/ports/pdpp-auth.js.map +1 -0
  187. package/dist/ports/pdpp-auth.test-utils.d.ts +9 -0
  188. package/dist/ports/pdpp-auth.test-utils.d.ts.map +1 -0
  189. package/dist/ports/pdpp-auth.test-utils.js +18 -0
  190. package/dist/ports/pdpp-auth.test-utils.js.map +1 -0
  191. package/dist/schemas/server-config.d.ts +44 -0
  192. package/dist/schemas/server-config.d.ts.map +1 -1
  193. package/dist/schemas/server-config.js +91 -0
  194. package/dist/schemas/server-config.js.map +1 -1
  195. package/dist/signing/request-signer.d.ts +2 -0
  196. package/dist/signing/request-signer.d.ts.map +1 -1
  197. package/dist/signing/request-signer.js +1 -0
  198. package/dist/signing/request-signer.js.map +1 -1
  199. package/dist/storage/adapters/interface.d.ts +3 -0
  200. package/dist/storage/adapters/interface.d.ts.map +1 -1
  201. package/dist/storage/adapters/vana-audience.d.ts +12 -0
  202. package/dist/storage/adapters/vana-audience.d.ts.map +1 -0
  203. package/dist/storage/adapters/vana-audience.js +72 -0
  204. package/dist/storage/adapters/vana-audience.js.map +1 -0
  205. package/dist/storage/adapters/vana.d.ts +2 -0
  206. package/dist/storage/adapters/vana.d.ts.map +1 -1
  207. package/dist/storage/adapters/vana.js +53 -20
  208. package/dist/storage/adapters/vana.js.map +1 -1
  209. package/dist/storage/canonical-legacy-projection.d.ts +262 -0
  210. package/dist/storage/canonical-legacy-projection.d.ts.map +1 -0
  211. package/dist/storage/canonical-legacy-projection.js +761 -0
  212. package/dist/storage/canonical-legacy-projection.js.map +1 -0
  213. package/dist/storage/index/manager.d.ts +29 -2
  214. package/dist/storage/index/manager.d.ts.map +1 -1
  215. package/dist/storage/index/schema.d.ts +1 -1
  216. package/dist/storage/index/schema.js +1 -1
  217. package/dist/storage/index/types.d.ts +7 -1
  218. package/dist/storage/index/types.d.ts.map +1 -1
  219. package/dist/storage/legacy-projection.d.ts +4 -3
  220. package/dist/storage/legacy-projection.d.ts.map +1 -1
  221. package/dist/storage/legacy-projection.js +145 -42
  222. package/dist/storage/legacy-projection.js.map +1 -1
  223. package/dist/storage/legacy-scope-coverage-exceptions.d.ts +8 -0
  224. package/dist/storage/legacy-scope-coverage-exceptions.d.ts.map +1 -0
  225. package/dist/storage/legacy-scope-coverage-exceptions.js +10 -0
  226. package/dist/storage/legacy-scope-coverage-exceptions.js.map +1 -0
  227. package/dist/storage/legacy-scope-coverage.d.ts +53 -0
  228. package/dist/storage/legacy-scope-coverage.d.ts.map +1 -0
  229. package/dist/storage/legacy-scope-coverage.js +403 -0
  230. package/dist/storage/legacy-scope-coverage.js.map +1 -0
  231. package/dist/storage/legacy-scope-entity-keys.d.ts +4 -0
  232. package/dist/storage/legacy-scope-entity-keys.d.ts.map +1 -0
  233. package/dist/storage/legacy-scope-entity-keys.js +92 -0
  234. package/dist/storage/legacy-scope-entity-keys.js.map +1 -0
  235. package/dist/storage/legacy-scope-view.d.ts +154 -0
  236. package/dist/storage/legacy-scope-view.d.ts.map +1 -0
  237. package/dist/storage/legacy-scope-view.js +735 -0
  238. package/dist/storage/legacy-scope-view.js.map +1 -0
  239. package/dist/storage/pdpp-records/completion.d.ts +91 -0
  240. package/dist/storage/pdpp-records/completion.d.ts.map +1 -0
  241. package/dist/storage/pdpp-records/completion.js +170 -0
  242. package/dist/storage/pdpp-records/completion.js.map +1 -0
  243. package/dist/storage/pdpp-records/cursor.d.ts +41 -0
  244. package/dist/storage/pdpp-records/cursor.d.ts.map +1 -0
  245. package/dist/storage/pdpp-records/cursor.js +49 -0
  246. package/dist/storage/pdpp-records/cursor.js.map +1 -0
  247. package/dist/storage/pdpp-records/declaration-witness.d.ts +58 -0
  248. package/dist/storage/pdpp-records/declaration-witness.d.ts.map +1 -0
  249. package/dist/storage/pdpp-records/declaration-witness.js +230 -0
  250. package/dist/storage/pdpp-records/declaration-witness.js.map +1 -0
  251. package/dist/storage/pdpp-records/enforcement.d.ts +52 -0
  252. package/dist/storage/pdpp-records/enforcement.d.ts.map +1 -0
  253. package/dist/storage/pdpp-records/enforcement.js +116 -0
  254. package/dist/storage/pdpp-records/enforcement.js.map +1 -0
  255. package/dist/storage/pdpp-records/index.d.ts +5 -0
  256. package/dist/storage/pdpp-records/index.d.ts.map +1 -0
  257. package/dist/storage/pdpp-records/index.js +5 -0
  258. package/dist/storage/pdpp-records/index.js.map +1 -0
  259. package/dist/storage/pdpp-records/ingest-plan.d.ts +39 -0
  260. package/dist/storage/pdpp-records/ingest-plan.d.ts.map +1 -0
  261. package/dist/storage/pdpp-records/ingest-plan.js +103 -0
  262. package/dist/storage/pdpp-records/ingest-plan.js.map +1 -0
  263. package/dist/storage/pdpp-records/interface.d.ts +104 -0
  264. package/dist/storage/pdpp-records/interface.d.ts.map +1 -0
  265. package/dist/storage/pdpp-records/interface.js +2 -0
  266. package/dist/storage/pdpp-records/interface.js.map +1 -0
  267. package/dist/storage/pdpp-records/memory-store.d.ts +9 -0
  268. package/dist/storage/pdpp-records/memory-store.d.ts.map +1 -0
  269. package/dist/storage/pdpp-records/memory-store.js +466 -0
  270. package/dist/storage/pdpp-records/memory-store.js.map +1 -0
  271. package/dist/storage/pdpp-records/portable.d.ts +9 -0
  272. package/dist/storage/pdpp-records/portable.d.ts.map +1 -0
  273. package/dist/storage/pdpp-records/portable.js +8 -0
  274. package/dist/storage/pdpp-records/portable.js.map +1 -0
  275. package/dist/storage/pdpp-records/read-port.d.ts +44 -0
  276. package/dist/storage/pdpp-records/read-port.d.ts.map +1 -0
  277. package/dist/storage/pdpp-records/read-port.js +22 -0
  278. package/dist/storage/pdpp-records/read-port.js.map +1 -0
  279. package/dist/storage/pdpp-records/record-key.d.ts +52 -0
  280. package/dist/storage/pdpp-records/record-key.d.ts.map +1 -0
  281. package/dist/storage/pdpp-records/record-key.js +97 -0
  282. package/dist/storage/pdpp-records/record-key.js.map +1 -0
  283. package/dist/storage/pdpp-records/schema.d.ts +41 -0
  284. package/dist/storage/pdpp-records/schema.d.ts.map +1 -0
  285. package/dist/storage/pdpp-records/schema.js +153 -0
  286. package/dist/storage/pdpp-records/schema.js.map +1 -0
  287. package/dist/storage/pdpp-records/stream-declaration.d.ts +88 -0
  288. package/dist/storage/pdpp-records/stream-declaration.d.ts.map +1 -0
  289. package/dist/storage/pdpp-records/stream-declaration.js +57 -0
  290. package/dist/storage/pdpp-records/stream-declaration.js.map +1 -0
  291. package/dist/storage/pdpp-records/types.d.ts +138 -0
  292. package/dist/storage/pdpp-records/types.d.ts.map +1 -0
  293. package/dist/storage/pdpp-records/types.js +38 -0
  294. package/dist/storage/pdpp-records/types.js.map +1 -0
  295. package/dist/sync/data-point-feed.d.ts +3 -0
  296. package/dist/sync/data-point-feed.d.ts.map +1 -1
  297. package/dist/sync/data-point-feed.js +17 -1
  298. package/dist/sync/data-point-feed.js.map +1 -1
  299. package/dist/sync/delete-data-port.d.ts +2 -0
  300. package/dist/sync/delete-data-port.d.ts.map +1 -1
  301. package/dist/sync/delete-data-port.js +1 -1
  302. package/dist/sync/delete-data-port.js.map +1 -1
  303. package/dist/sync/engine/sync-manager.d.ts.map +1 -1
  304. package/dist/sync/engine/sync-manager.js +5 -2
  305. package/dist/sync/engine/sync-manager.js.map +1 -1
  306. package/dist/sync/index.d.ts +3 -1
  307. package/dist/sync/index.d.ts.map +1 -1
  308. package/dist/sync/index.js +4 -0
  309. package/dist/sync/index.js.map +1 -1
  310. package/dist/sync/pdpp-import.d.ts +192 -0
  311. package/dist/sync/pdpp-import.d.ts.map +1 -0
  312. package/dist/sync/pdpp-import.js +441 -0
  313. package/dist/sync/pdpp-import.js.map +1 -0
  314. package/dist/sync/scope-deletions.d.ts +10 -0
  315. package/dist/sync/scope-deletions.d.ts.map +1 -1
  316. package/dist/sync/scope-deletions.js +40 -7
  317. package/dist/sync/scope-deletions.js.map +1 -1
  318. package/dist/sync/workers/download.d.ts +14 -0
  319. package/dist/sync/workers/download.d.ts.map +1 -1
  320. package/dist/sync/workers/download.js +149 -13
  321. package/dist/sync/workers/download.js.map +1 -1
  322. package/dist/sync/workers/upload.d.ts +2 -0
  323. package/dist/sync/workers/upload.d.ts.map +1 -1
  324. package/dist/sync/workers/upload.js +7 -0
  325. package/dist/sync/workers/upload.js.map +1 -1
  326. package/dist/test-utils/memory-storage.d.ts +1 -1
  327. package/dist/test-utils/memory-storage.d.ts.map +1 -1
  328. package/dist/test-utils/memory-storage.js +11 -5
  329. package/dist/test-utils/memory-storage.js.map +1 -1
  330. package/package.json +54 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"canonical-legacy-projection.js","sourceRoot":"","sources":["../../src/storage/canonical-legacy-projection.ts"],"names":[],"mappings":"AACA,OAAO,EACL,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,yBAAyB,EACzB,qBAAqB,EACrB,wBAAwB,EACxB,0BAA0B,EAC1B,iCAAiC,GAIlC,MAAM,+BAA+B,CAAC;AAKvC,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACrB,kBAAkB,EAClB,kCAAkC,EAClC,iBAAiB,GAElB,MAAM,uCAAuC,CAAC;AAE/C,OAAO,EACL,mBAAmB,EACnB,uBAAuB,EACvB,wBAAwB,EACxB,wBAAwB,GAEzB,MAAM,8CAA8C,CAAC;AACtD,OAAO,EACL,kBAAkB,EAClB,kBAAkB,GAInB,MAAM,4BAA4B,CAAC;AAEpC;;;;;;;;;;GAUG;AAEH,kFAAkF;AAClF,MAAM,CAAC,MAAM,8BAA8B,GAAG,yBAAyB,CAAC;AAExE,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAC9B,MAAM,mBAAmB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAC7C,MAAM,gBAAgB,GAAG,oCAAoC,CAAC;AAC9D,MAAM,mBAAmB,GAAG,uCAAuC,CAAC;AAyOpE;;;GAGG;AACH,MAAM,UAAU,0BAA0B,CACxC,KAAwD,EACxD,KAA+D;IAE/D,MAAM,OAAO,GAAG,KAAK;SAClB,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC;SAC/B,MAAM,CACL,CAAC,OAAO,EAAE,EAAE,CACV,OAAO,CAAC,SAAS,KAAK,IAAI;QAC1B,OAAO,CAAC,MAAM,KAAK,IAAI;QACvB,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,CAAC;QAC/D,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,OAAO,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,CAAC,CACxE,CAAC;IACJ,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;IACvB,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,EAAE,MAAM,EAAE,CAAC;QACzC,OAAO;YACL,EAAE,EAAE,IAAI;YACR,SAAS,EAAE;gBACT,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,MAAM,EAAE,IAAI,CAAC,MAAM;aACpB;SACF,CAAC;IACJ,CAAC;IACD,OAAO;QACL,EAAE,EAAE,KAAK;QACT,MAAM,EAAE,aAAa;QACrB,MAAM,EAAE,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,sBAAsB;QACvE,UAAU,EAAE,OAAO,CAAC,MAAM;KAC3B,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,KAAoC;IAEpC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;IAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,IAAI,iBAAiB,CAAC,CAAC,CAAC;IAE9E,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,KAAK,QAAQ,CAAC;IAC9C,MAAM,UAAU,GAAG,QAAQ;QACzB,CAAC,CAAC,mBAAmB,CAAC,SAAS,CAAC,MAAM,CAAC;QACvC,CAAC,CAAC,mBAAmB,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC5C,MAAM,MAAM,GAAG,0BAA0B,CAAC,KAAK,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;IACjE,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IAC9C,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;QAC3B,OAAO,WAAW,CAAC;YACjB,MAAM,EAAE,eAAe;YACvB,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK;SACpE,CAAC,CAAC;IACL,CAAC;IACD,IACE,CAAC,OAAO,CAAC,UAAU,KAAK,sBAAsB;QAC5C,SAAS,CAAC,QAAQ,KAAK,gBAAgB,CAAC;QAC1C,CAAC,QAAQ;YACP,CAAC,CAAC,kBAAkB,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,SAAS,CAAC,MAAM;YAC7D,CAAC,CAAC,iBAAiB,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,SAAS,CAAC,QAAQ,CAAC,EACjE,CAAC;QACD,OAAO,WAAW,CAAC,EAAE,MAAM,EAAE,uBAAuB,EAAE,KAAK,EAAE,CAAC,CAAC;IACjE,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC;IAEzC,MAAM,QAAQ,GAAG,KAAK,CAAC,YAAY,CAAC,GAAG,EAAE,CACvC,KAAK,CAAC,gBAAgB,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE;QACjD,CAAC,CAAC;YACE,EAAE,EAAE,KAAc;YAClB,MAAM,EAAE,YAAY,CAAC,kCAAkC,CAAC;SACzD;QACH,CAAC,CAAC,eAAe,CACb,KAAK,EACL,SAAS,EACT,OAAO,EACP,OAAO,CAAC,QAAQ,KAAK,SAAS,EAC9B,QAAQ,EACR,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,cAAc,CAAC;YACxC,CAAC,KAAK,CAAC,cAAc,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;YACjC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,KAAK,CAAC,cAAe,CAAC;YACtD,CAAC,CAAC,mBAAmB,EACvB,KAAK,CAAC,yBAAyB,KAAK,IAAI,EACxC,KAAK,CAAC,yBAAyB,KAAK,IAAI,EACxC,KAAK,CAAC,YAAY,CACnB,CACN,CAAC;IACF,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,QAAQ,CAAC,MAAM,CAAC;IAEzC,OAAO,eAAe,CAAC;QACrB,KAAK;QACL,SAAS;QACT,OAAO;QACP,OAAO;QACP,UAAU;QACV,kBAAkB,EAAE,KAAK,CAAC,kBAAkB,KAAK,IAAI;QACrD,qBAAqB,EAAE,KAAK,CAAC,qBAAqB,KAAK,IAAI;QAC3D,GAAG,QAAQ;KACZ,CAAC,CAAC;AACL,CAAC;AAmBD,0EAA0E;AAC1E,SAAS,eAAe,CACtB,KAA+B,EAC/B,SAAuC,EACvC,OAAiB,EACjB,YAAqB,EACrB,QAAgB,EAChB,cAAsB,EACtB,yBAAkC,EAClC,yBAAkC,EAClC,YAA6D;IAE7D,MAAM,EAAE,QAAQ,EAAE,GAAG,SAAS,CAAC;IAC/B,MAAM,OAAO,GAAG,KAAK,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IACnD,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IACrD,IAAI,QAAQ;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC;IAClE,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC9C,MAAM,aAAa,GAA4C,EAAE,CAAC;IAClE,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,YAAY,EAAE,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QACnE,IAAI,MAAM;YAAE,aAAa,CAAC,MAAM,CAAC,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IAC9D,CAAC;IAED,MAAM,YAAY,GAAG,IAAI,GAAG,EAA8B,CAAC;IAC3D,MAAM,SAAS,GAAa,EAAE,CAAC;IAC/B,IAAI,CAAC;QACH,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;YAC5D,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC7B,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YACnD,CAAC;YACD,4DAA4D;YAC5D,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC;gBAC9C,OAAO;oBACL,EAAE,EAAE,KAAK;oBACT,MAAM,EAAE,YAAY,CAAC,GAAG,MAAM,kCAAkC,CAAC;iBAClE,CAAC;YACJ,CAAC;YACD,MAAM,OAAO,GAAG,YAAY;gBAC1B,CAAC,CAAC,cAAc,CAAC,IAAI,EAAE,KAAK,CAAC,gBAAgB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;gBAChE,CAAC,CAAC,IAAI,CAAC;YACT,IAAI,CAAC,OAAO;gBAAE,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACrC,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,IAAI,IAAI,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IACE,KAAK,YAAY,kBAAkB;YACnC,KAAK,YAAY,kBAAkB,EACnC,CAAC;YACD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,uBAAuB,CAAC,EAAE,CAAC;QACtE,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;IACD,MAAM,WAAW,GAAG,IAAI,GAAG,EAAqC,CAAC;IACjE,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,qBAAqB,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5D,IACE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC;YAChC,OAAO,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM;YACjC,OAAO,CAAC,UAAU,KAAK,OAAO,CAAC,UAAU;YACzC,OAAO,CAAC,SAAS,KAAK,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,EAC9D,CAAC;YACD,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAED,oEAAoE;IACpE,8EAA8E;IAC9E,IACE,WAAW,CAAC,IAAI,KAAK,CAAC;QACtB,OAAO,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,KAAK,CAAC,CAAC,EACjD,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,EAAE,CAAC;IAC1E,CAAC;IACD,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,CACpC,CAAC,MAAM,EAAE,EAAE,CACT,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC;QACxB,CAAC,yBAAyB;YACxB,CAAC,CAAC,yBAAyB;gBACzB,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CACtD,CAAC;IACF,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,WAAW,CAAC;gBAClB,MAAM,EAAE,2BAA2B;gBACnC,OAAO,EAAE,eAAe;aACzB,CAAC;SACH,CAAC;IACJ,CAAC;IAED,4EAA4E;IAC5E,6EAA6E;IAC7E,MAAM,YAAY,GAAG,IAAI,GAAG,EAA8B,CAAC;IAC3D,IAAI,aAAa,GAAG,CAAC,CAAC;IACtB,MAAM,eAAe,GAAG,IAAI,GAAG,EAAU,CAAC;IAC1C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,UAAU,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACvE,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QACtC,MAAM,cAAc,GAAG,iBAAiB,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;QAChE,IACE,CAAC,cAAc;YACf,CAAC,SAAS,CAAC,QAAQ,KAAK,gBAAgB;gBACtC,CAAC,MAAM,KAAK,eAAe,IAAI,MAAM,KAAK,UAAU,CAAC,CAAC,EACxD,CAAC;YACD,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,MAAM,EAAE,WAAW,CAAC;oBAClB,MAAM,EAAE,iCAAiC;oBACzC,MAAM;oBACN,WAAW,EAAE,UAAU,CAAC,MAAM;oBAC9B,OAAO,EACL,iFAAiF;iBACpF,CAAC;aACH,CAAC;QACJ,CAAC;QACD,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;YAC7B,IAAI,GAAG,CAAC;YACR,IAAI,CAAC;gBACH,GAAG,GAAG,cAAc;oBAClB,CAAC,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,EAAE,cAAc,CAAC;oBACjD,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACpC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,cAAc,IAAI,CAAC,CAAC,KAAK,YAAY,uBAAuB,CAAC;oBAChE,MAAM,KAAK,CAAC;gBACd,OAAO;oBACL,EAAE,EAAE,KAAK;oBACT,MAAM,EAAE,WAAW,CAAC;wBAClB,MAAM,EAAE,4BAA4B;wBACpC,MAAM,EAAE,cAAc;4BACpB,CAAC,CAAC,wBAAwB;4BAC1B,CAAC,CAAE,KAAiC,CAAC,OAAO;qBAC/C,CAAC;iBACH,CAAC;YACJ,CAAC;YACD,IAAI,cAAc;gBAAE,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACpD,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC3C,IAAI,IAAI,CAAC;YACT,IAAI,CAAC;gBACH,IAAI,GAAG,KAAK,EAAE,IAAI,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACxD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,cAAc;oBAAE,MAAM,KAAK,CAAC;gBACjC,OAAO;oBACL,EAAE,EAAE,KAAK;oBACT,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,kBAAkB,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC;iBACpE,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,IAAI,IAAI,cAAc,EAAE,CAAC;gBAC5B,OAAO;oBACL,EAAE,EAAE,KAAK;oBACT,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,kBAAkB,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC;iBACpE,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,IAAI;gBACP,OAAO;oBACL,EAAE,EAAE,KAAK;oBACT,MAAM,EAAE,WAAW,CAAC;wBAClB,MAAM,EAAE,4BAA4B;wBACpC,MAAM,EAAE,yBAAyB;qBAClC,CAAC;iBACH,CAAC;YACJ,IACE,IAAI,CAAC,MAAM,KAAK,GAAG,CAAC,MAAM;gBAC1B,IAAI,CAAC,QAAQ,KAAK,kBAAkB;gBACpC,IAAI,CAAC,SAAS,KAAK,GAAG,CAAC,IAAI;gBAC3B,IAAI,CAAC,MAAM,KAAK,GAAG,CAAC,MAAM,EAC1B,CAAC;gBACD,OAAO;oBACL,EAAE,EAAE,KAAK;oBACT,MAAM,EAAE,WAAW,CAAC;wBAClB,MAAM,EAAE,4BAA4B;wBACpC,MAAM,EAAE,wBAAwB;qBACjC,CAAC;iBACH,CAAC;YACJ,CAAC;YACD,IAAI,KAAK;gBAAE,SAAS;YACpB,MAAM,GAAG,GAAG,aAAa,GAAG,GAAG,CAAC,IAAI,CAAC;YACrC,mEAAmE;YACnE,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC/B,OAAO;oBACL,EAAE,EAAE,KAAK;oBACT,MAAM,EAAE,WAAW,CAAC;wBAClB,MAAM,EAAE,2BAA2B;wBACnC,QAAQ,EAAE,cAAc;qBACzB,CAAC;iBACH,CAAC;YACJ,CAAC;YACD,aAAa,GAAG,GAAG,CAAC;YACpB,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;IACD,IAAI,aAAa,GAAG,cAAc,EAAE,CAAC;QACnC,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,WAAW,CAAC;gBAClB,MAAM,EAAE,2BAA2B;gBACnC,aAAa;gBACb,QAAQ,EAAE,cAAc;aACzB,CAAC;SACH,CAAC;IACJ,CAAC;IACD,KAAK,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,YAAY,EAAE,CAAC;QAC9C,IAAI,KAAK,CAAC;QACV,IAAI,CAAC;YACH,KAAK,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,CAAC;QACvC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC;gBAAE,MAAM,KAAK,CAAC;YAC9C,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,kBAAkB,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC;aACpE,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,KAAK,IAAI,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YAC1C,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,kBAAkB,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC;aACpE,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,KAAK;YACR,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,MAAM,EAAE,WAAW,CAAC;oBAClB,MAAM,EAAE,4BAA4B;oBACpC,MAAM,EAAE,yBAAyB;iBAClC,CAAC;aACH,CAAC;QACJ,IAAI,KAAK,CAAC,UAAU,KAAK,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC;YAClD,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,MAAM,EAAE,WAAW,CAAC;oBAClB,MAAM,EAAE,4BAA4B;oBACpC,MAAM,EAAE,wBAAwB;iBACjC,CAAC;aACH,CAAC;QACJ,CAAC;QACD,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;IACjC,CAAC;IACD,OAAO;QACL,EAAE,EAAE,IAAI;QACR,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,OAAO;QACP,YAAY;QACZ,SAAS;QACT,WAAW;QACX,YAAY;QACZ,aAAa;KACd,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAS,cAAc,CACrB,IAAwB,EACxB,OAAiB;IAEjB,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IACjC,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IACpE,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7E,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAC3D,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;AAChF,CAAC;AAYD,KAAK,UAAU,eAAe,CAC5B,KAAmB;IAEnB,MAAM,EACJ,KAAK,EACL,SAAS,EACT,OAAO,EACP,OAAO,EACP,UAAU,EACV,YAAY,EACZ,SAAS,EACT,WAAW,GACZ,GAAG,KAAK,CAAC;IACV,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC;IACpC,MAAM,eAAe,GAAG,MAAM,CAAC,WAAW,CACxC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC,CAAC,CAAC,CACzE,CAAC;IAEF,MAAM,QAAQ,GAAG,EAAE,CAAC;IACpB,MAAM,eAAe,GACnB,SAAS,CAAC,QAAQ,KAAK,gBAAgB;QACvC,CAAC,KAAK,KAAK,sBAAsB,IAAI,KAAK,KAAK,iBAAiB,CAAC,CAAC;IACpE,IAAI,eAAe,IAAI,KAAK,CAAC,qBAAqB,EAAE,CAAC;QACnD,MAAM,YAAY,GAChB,KAAK,KAAK,sBAAsB,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,UAAU,CAAC;QAClE,MAAM,mBAAmB,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CACvE,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAC1B,CAAC,MAAM,CAAC;QACT,IAAI,mBAAmB,GAAG,CAAC,EAAE,CAAC;YAC5B,OAAO,WAAW,CAAC;gBACjB,MAAM,EAAE,kBAAkB;gBAC1B,WAAW,EAAE,mBAAmB;aACjC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,UAAU,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACvE,IACE,eAAe;YACf,CAAC,iBAAiB,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YAC/C,CAAC,MAAM,KAAK,eAAe,IAAI,MAAM,KAAK,UAAU,CAAC,EACrD,CAAC;YACD,IAAI,CAAC;gBACH,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;oBAC7B,MAAM,GAAG,GAAG,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBAC1C,QAAQ,CAAC,IAAI,CACX,GAAG,CAAC,MAAM,wBAAwB,CAChC,GAAG,EACH,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI;wBACpC,IAAI,EAAE,SAAS;wBACf,KAAK,EAAE,SAAS;qBACjB,CACF,CAAC,CACH,CAAC;gBACJ,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,CAAC,KAAK,YAAY,uBAAuB,CAAC;oBAAE,MAAM,KAAK,CAAC;gBAC7D,OAAO,WAAW,CAAC;oBACjB,MAAM,EAAE,4BAA4B;oBACpC,MAAM,EAAE,KAAK,CAAC,OAAO;iBACtB,CAAC,CAAC;YACL,CAAC;YACD,SAAS;QACX,CAAC;QACD,IACE,UAAU,CAAC,MAAM,GAAG,CAAC;YACrB,CAAC,iBAAiB,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,EAC/C,CAAC;YACD,OAAO,WAAW,CAAC;gBACjB,MAAM,EAAE,iCAAiC;gBACzC,MAAM;gBACN,WAAW,EAAE,UAAU,CAAC,MAAM;gBAC9B,OAAO,EACL,iFAAiF;aACpF,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,MAAM,WAAW,GAAG,iBAAiB,CACnC,YAAY,EACZ,WAAW,EACX,aAAa,CACd,CAAC;IACF,IAAI,WAAW,KAAK,IAAI;QACtB,OAAO,WAAW,CAAC,EAAE,MAAM,EAAE,sBAAsB,EAAE,CAAC,CAAC;IAEzD,IAAI,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CACvC,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAC5E,CAAC;IACF,0EAA0E;IAC1E,kEAAkE;IAClE,IAAI,iBAAiB,GAA2B,EAAE,CAAC;IACnD,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,kCAAkC,CAChD,OAAO,EACP,KAAK,CAAC,aAAa,EACnB,KAAK,EACL,IAAI,CACL,CAAC;QACF,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC1B,iBAAiB,GAAG,OAAO,CAAC,WAAW,CAAC;IAC1C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,CAAC,CAAC,KAAK,YAAY,iBAAiB,CAAC;YAAE,MAAM,KAAK,CAAC;QACvD,OAAO,SAAS,CAAC,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,eAAe,CAAC,CAAC;IAClE,CAAC;IACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAE,CAAC;QAC3B,MAAM,KAAK,GAAG,iBAAiB,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;QACpE,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC;YAAE,SAAS;QAChE,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,qBAAqB,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACtD,OAAO,CAAC,CAAC,CAAC,GAAG;gBACX,GAAG,MAAM;gBACT,IAAI,EAAE,MAAM,kBAAkB,CAC5B,MAAM,CAAC,IAAI,EACX,KAAK,EACL,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI;oBACpC,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,SAAS;iBACjB,CACF;aACF,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,WAAW,CAAC;gBACjB,MAAM,EAAE,4BAA4B;gBACpC,MAAM,EAAE,uBAAuB;aAChC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,IAAI,CAAC;YACH,OAAO,GAAG,wBAAwB,CAChC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,EACnE,QAAQ,CACT,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,CAAC,KAAK,YAAY,uBAAuB,CAAC;gBAAE,MAAM,KAAK,CAAC;YAC7D,OAAO,WAAW,CAAC;gBACjB,MAAM,EAAE,4BAA4B;gBACpC,MAAM,EAAE,KAAK,CAAC,OAAO;aACtB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,MAAM,SAAS,GAAG,iCAAiC,CAAC,KAAK,EAAE,OAAO,EAAE;QAClE,cAAc,EAAE,OAAO;QACvB,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrC,GAAG,EAAE,WAAW;QAChB,wEAAwE;QACxE,oEAAoE;QACpE,iBAAiB,EAAE,OAAO,CAAC,QAAQ,KAAK,SAAS,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;KAC1E,CAAC,CAAC;IACH,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC;QAClB,OAAO,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;IACrD,CAAC;IAED,MAAM,SAAS,GAA0C,EAAE,CAAC;IAC5D,MAAM,WAAW,GAA4C,EAAE,CAAC;IAChE,MAAM,QAAQ,GACZ,SAAS,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACzB,MAAM;QACN,MAAM,EAAE,cAAc;QACtB,MAAM,EACJ,iGAAiG;KACpG,CAAC,CAAC,CAAC;IACN,KAAK,MAAM,UAAU,IAAI;QACvB,GAAG,iBAAiB;QACpB,GAAG,CAAC,SAAS,CAAC,WAAW,IAAI,EAAE,CAAC;KACjC,EAAE,CAAC;QACF,IACE,UAAU,CAAC,IAAI,KAAK,iBAAiB;YACrC,UAAU,CAAC,IAAI,KAAK,iBAAiB,EACrC,CAAC;YACD,CAAC,UAAU,CAAC,IAAI,KAAK,iBAAiB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC;gBACrE,MAAM,EAAE,UAAU,CAAC,MAAM;gBACzB,KAAK,EAAE,UAAU,CAAC,KAAK;gBACvB,OAAO,EAAE,UAAU,CAAC,OAAO;aAC5B,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,wEAAwE;IACxE,iEAAiE;IACjE,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAC9B,MAAM,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACvE,MAAM,aAAa,GAAG,SAAS,CAAC,MAAM,CACpC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,UAAU,CACvC,CAAC;IACF,MAAM,WAAW,GAAG,aAAa,CAAC,MAAM,CACtC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,GAAG,KAAK,CAAC,KAAK,EACjC,CAAC,CACF,CAAC;IACF,IAAI,UAAU,IAAI,UAAU,GAAG,CAAC,IAAI,WAAW,IAAI,UAAU,EAAE,CAAC;QAC9D,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,YAAY;YACpB,MAAM,EAAE,mBAAmB;YAC3B,MAAM,EAAE,UAAU;YAClB,UAAU;YACV,OAAO,EAAE,WAAW;YACpB,OAAO,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;YACtE,eAAe;SAChB,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC;QAClC,KAAK;QACL,SAAS;QACT,OAAO;QACP,UAAU;QACV,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,OAAO;QACP,YAAY;QACZ,SAAS;QACT,WAAW;QACX,OAAO,EAAE,aAAa;QACtB,aAAa,EAAE,KAAK,CAAC,aAAa;KACnC,CAAC,CAAC;IAEH,OAAO;QACL,EAAE,EAAE,IAAI;QACR,GAAG,CAAC,SAAS,CAAC,mBAAmB;YAC/B,CAAC,CAAC,EAAE,mBAAmB,EAAE,SAAS,CAAC,mBAAmB,EAAE;YACxD,CAAC,CAAC,EAAE,CAAC;QACP,QAAQ,EAAE;YACR,OAAO,EAAE,KAAK;YACd,KAAK;YACL,WAAW;YACX,IAAI,EAAE,SAAS,CAAC,OAAO;SACxB;QACD,GAAG,CAAC,KAAK,CAAC,kBAAkB;YAC1B,CAAC,CAAC;gBACE,qBAAqB,EAAE,MAAM,CAAC,WAAW,CACvC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;oBACrB,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBACxC,IAAI,OAAO;wBAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;oBACxD,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;oBAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;oBAC3D,IACE,KAAK,CAAC,MAAM,KAAK,CAAC;wBAClB,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAC5C,CAAC;wBACD,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;oBACxB,CAAC;oBACD,OAAO;wBACL,MAAM;wBACN,IAAI,IAAI,CACN,KAAK,CAAC,MAAM,CACV,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,EACxC,MAAM,CAAC,iBAAiB,CACzB,CACF,CAAC,WAAW,EAAE;qBAChB,CAAC;gBACJ,CAAC,CAAC,CACH;gBACD,qBAAqB,EAAE,MAAM,CAAC,WAAW,CACvC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;oBACtB,MAAM;oBACN,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,iBAAiB,IAAI,IAAI;iBACnD,CAAC,CACH;aACF;YACH,CAAC,CAAC,EAAE,CAAC;QACP,QAAQ;QACR,QAAQ,EACN,SAAS,CAAC,MAAM,KAAK,CAAC;YACtB,WAAW,CAAC,MAAM,KAAK,CAAC;YACxB,QAAQ,CAAC,MAAM,KAAK,CAAC;QACvB,WAAW,EAAE;YACX,eAAe;YACf,SAAS;YACT,WAAW;YACX,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC7C;KACF,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,MAAc;IAClC,OAAO,WAAW,CAAC,EAAE,MAAM,EAAE,yBAAyB,EAAE,MAAM,EAAE,CAAC,CAAC;AACpE,CAAC;AAED,8FAA8F;AAC9F,SAAS,WAAW,CAClB,KAA+B,EAC/B,QAAgB,EAChB,MAAc,EACd,KAAa;IAEb,MAAM,IAAI,GAAuB,EAAE,CAAC;IACpC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,IAAI,MAA0B,CAAC;IAC/B,IAAI,OAA2B,CAAC;IAChC,IAAI,KAAK,GAAG,IAAI,CAAC;IACjB,SAAS,CAAC;QACR,MAAM,IAAI,GAAG,KAAK,CAAC,WAAW,CAAC,MAAM,EAAE;YACrC,WAAW,EAAE,CAAC,QAAQ,CAAC;YACvB,KAAK;YACL,MAAM;YACN,KAAK,EAAE,KAAK;SACb,CAAC,CAAC;QACH,IAAI,KAAK;YAAE,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;aAC7B,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO;YAAE,OAAO,GAAG,MAAM,qBAAqB,CAAC;QACzE,KAAK,GAAG,KAAK,CAAC;QACd,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YAC5B,MAAM,QAAQ,GAAG,GAAG,GAAG,CAAC,QAAQ,SAAS,GAAG,CAAC,SAAS,EAAE,CAAC;YACzD,IACE,GAAG,CAAC,QAAQ,KAAK,QAAQ;gBACzB,GAAG,CAAC,MAAM,KAAK,MAAM;gBACrB,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAClB,CAAC;gBACD,OAAO,GAAG,MAAM,qCAAqC,CAAC;YACxD,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACnB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjB,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAC/B,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,KAAK,MAAM,EAAE,CAAC;YACnD,OAAO,GAAG,MAAM,yBAAyB,CAAC;QAC5C,CAAC;QACD,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CACtB,OAAmC,EACnC,SAAuC;IAKvC,MAAM,MAAM,GAAG,CACb,KAA2E,EAC3E,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,wBAAiC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;IACpE,IAAI,OAAO,CAAC,QAAQ,KAAK,IAAI;QAAE,OAAO,MAAM,CAAC,gBAAgB,CAAC,CAAC;IAC/D,IAAI,OAAO,CAAC,SAAS,KAAK,IAAI;QAAE,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC;IACzD,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,CAAC,QAAQ;QAAE,OAAO,MAAM,CAAC,iBAAiB,CAAC,CAAC;IAC9E,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,MAAM;QAAE,OAAO,MAAM,CAAC,iBAAiB,CAAC,CAAC;IAC1E,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,SAAS,CAChB,KAAsB,EACtB,eAAuC;IAEvC,IACE,KAAK,CAAC,IAAI,KAAK,eAAe;QAC9B,KAAK,CAAC,IAAI,KAAK,qBAAqB;QACpC,KAAK,CAAC,IAAI,KAAK,KAAK,EACpB,CAAC;QACD,OAAO,WAAW,CAAC;YACjB,MAAM,EAAE,eAAe;YACvB,MAAM,EACJ,KAAK,CAAC,IAAI,KAAK,KAAK;gBAClB,CAAC,CAAC;oBACE,IAAI,EAAE,KAAK;oBACX,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,iBAAiB,EAAE,EAAE;iBACtB;gBACH,CAAC,CAAC,KAAK;SACZ,CAAC,CAAC;IACL,CAAC;IACD,OAAO;QACL,EAAE,EAAE,KAAK;QACT,MAAM,EAAE,YAAY;QACpB,MAAM,EAAE,qBAAqB;QAC7B,KAAK;QACL,eAAe;KAChB,CAAC;AACJ,CAAC;AAQD,SAAS,WAAW,CAClB,OAA0C;IAE1C,OAAO;QACL,EAAE,EAAE,KAAK;QACT,MAAM,EAAE,aAAa;QACrB,GAAG,OAAO;KACkB,CAAC;AACjC,CAAC;AAED,SAAS,UAAU,CAAC,GAAqB;IACvC,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,QAAQ,CAAC,OAAwB,EAAE,MAAc;IACxD,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,EAAE,WAAW,IAAI,CAAC,CAAC;AAC5E,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,iBAAiB,CACxB,YAA6C,EAC7C,WAAmD,EACnD,OAAwB;IAExB,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,KAAK,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,YAAY,EAAE,CAAC;QAC1C,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACxC,IAAI,OAAO;YAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;;YAC/C,KAAK,MAAM,GAAG,IAAI,IAAI;gBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC1D,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,IAAI,KAAK,CAAC,WAAW,KAAK,IAAI;gBAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IACD,IAAI,MAAM,GAAG,MAAM,CAAC,iBAAiB,CAAC;IACtC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YAAE,OAAO,IAAI,CAAC;QAClC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAChC,CAAC;IACD,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACzE,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,KAY3B;IACC,MAAM,QAAQ,GAAG,EAAE,CAAC;IACpB,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QACnC,MAAM,IAAI,GAAG,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QAClD,QAAQ,CAAC,IAAI,CAAC;YACZ,MAAM;YACN,KAAK,EAAE,IAAI,CAAC,MAAM;YAClB,WAAW,EACT,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,EAAE,WAAW;gBACnE,IAAI;YACN,IAAI,EAAE,MAAM,SAAS,CACnB,IAAI;iBACD,GAAG,CACF,CAAC,GAAG,EAAE,EAAE,CACN,GAAG,GAAG,CAAC,SAAS,SAAS,GAAG,CAAC,OAAO,SAAS,GAAG,CAAC,SAAS,EAAE,CAC/D;iBACA,IAAI,CAAC,IAAI,CAAC,CACd;SACF,CAAC,CAAC;IACL,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,SAAS,CAC5B,IAAI,CAAC,SAAS,CAAC;QACb,QAAQ,EAAE,8BAA8B;QACxC,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ;QAClC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ;QAClC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,MAAM;QAC9B,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,IAAI;QACpC,WAAW,EAAE;YACX,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU;YACpC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,WAAW;YAClC,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU;YACpC,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU;YACpC,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU;SACrC;QACD,qEAAqE;QACrE,mDAAmD;QACnD,QAAQ;QACR,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,sEAAsE;QACtE,gEAAgE;QAChE,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;YAC5C,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC9C,OAAO,OAAO;gBACZ,CAAC,CAAC;oBACE;wBACE,MAAM;wBACN,MAAM,EAAE,OAAO,CAAC,MAAM;wBACtB,UAAU,EAAE,OAAO,CAAC,UAAU;wBAC9B,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;wBAC5C,SAAS,EAAE,OAAO,CAAC,SAAS;qBAC7B;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;QACT,CAAC,CAAC;KACH,CAAC,CACH,CAAC;IACF,OAAO,MAAM,MAAM,EAAE,CAAC;AACxB,CAAC;AAED,KAAK,UAAU,SAAS,CAAC,IAAY;IACnC,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CACtC,SAAS,EACT,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAC/B,CAAC;IACF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAC7C,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAChC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACb,CAAC;AAED,SAAS,UAAU,CACjB,KAAa,EACb,UAA8B;IAE9B,OAAO,UAAU;QACf,CAAC,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC;QACjD,CAAC,CAAC,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AACvC,CAAC;AAED,6EAA6E;AAC7E,SAAS,mBAAmB,CAAC,QAAgB;IAC3C,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1D,OAAO,yBAAyB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;AAC1D,CAAC;AAED,gFAAgF;AAChF,SAAS,mBAAmB,CAAC,MAAc;IACzC,OAAO,yBAAyB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AAChE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,UAAkB;IACnD,OAAO,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED,gFAAgF;AAChF,SAAS,iBAAiB,CAAC,UAAkB;IAC3C,IAAI,UAAU,KAAK,sBAAsB;QAAE,OAAO,gBAAgB,CAAC;IACnE,OAAO,UAAU,CAAC,UAAU,CAAC,mBAAmB,CAAC;QAC/C,CAAC,CAAC,gBAAgB,GAAG,UAAU,CAAC,KAAK,CAAC,mBAAmB,CAAC,MAAM,CAAC;QACjE,CAAC,CAAC,UAAU,CAAC;AACjB,CAAC"}
@@ -1,6 +1,32 @@
1
1
  import type { IndexEntry, IndexListOptions, NewIndexEntry, ScopeSummary } from "./types.js";
2
2
  export interface IndexManager {
3
3
  insert(entry: NewIndexEntry): IndexEntry;
4
+ /** Check a legacy write and allocate its CAS revision in one SQLite transaction. */
5
+ insertIfCurrent(entry: NewIndexEntry, precondition?: {
6
+ kind: "none";
7
+ } | {
8
+ kind: "match";
9
+ version: number;
10
+ }): {
11
+ ok: true;
12
+ entry: IndexEntry;
13
+ } | {
14
+ ok: false;
15
+ currentVersion: number | null;
16
+ currentProducer: string | null;
17
+ };
18
+ /**
19
+ * Close a recovered scope for CAS writes when deleted history cannot be
20
+ * proven. Reads remain available; writes fail through the precondition path.
21
+ */
22
+ closeScopeForWrites(scope: string): void;
23
+ /** A durable revision and open-state proof exist for this scope. */
24
+ hasTrustedRevisionJournal(scope: string): boolean;
25
+ /**
26
+ * Internal recovery path for already persisted envelopes. Bypasses the
27
+ * closed-for-writes guard while preserving CAS allocation and journals.
28
+ */
29
+ insertRecovered(entry: NewIndexEntry): IndexEntry;
4
30
  findByPath(path: string): IndexEntry | undefined;
5
31
  findByScope(options: IndexListOptions): IndexEntry[];
6
32
  findLatestByScope(scope: string): IndexEntry | undefined;
@@ -20,6 +46,7 @@ export interface IndexManager {
20
46
  scopes: ScopeSummary[];
21
47
  total: number;
22
48
  };
49
+ listIndexedScopes(): string[];
23
50
  findClosestByScope(scope: string, at: string): IndexEntry | undefined;
24
51
  findByFileId(fileId: string): IndexEntry | undefined;
25
52
  /** Find an index entry by its DPv2 data-point id (download dedup). */
@@ -38,8 +65,8 @@ export interface IndexManager {
38
65
  */
39
66
  updateFileId(path: string, fileId: string): boolean;
40
67
  /**
41
- * Returns the highest stored `version` for a scope, or 0 if none. Used by
42
- * `insert` to derive the next expectedVersion for DPv2 AddData.
68
+ * Returns the highest DPv2 sync version for a scope, or 0 if none.
69
+ * This is independent from legacy CAS revision.
43
70
  */
44
71
  findLatestVersionByScope(scope: string): number;
45
72
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/storage/index/manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,gBAAgB,EAChB,aAAa,EACb,YAAY,EACb,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,KAAK,EAAE,aAAa,GAAG,UAAU,CAAC;IACzC,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAAC;IACjD,WAAW,CAAC,OAAO,EAAE,gBAAgB,GAAG,UAAU,EAAE,CAAC;IACrD,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAAC;IACzD,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACpC,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IACpC;;;;OAIG;IACH,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5C,kBAAkB,CAAC,OAAO,CAAC,EAAE;QAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,GAAG;QAAE,MAAM,EAAE,YAAY,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9C,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAAC;IACtE,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAAC;IACrD,sEAAsE;IACtE,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAAC;IAC/D;;;;OAIG;IACH,YAAY,CAAC,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,UAAU,EAAE,CAAC;IACzD;;;OAGG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;IACpD;;;OAGG;IACH,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IAChD;;;;OAIG;IACH,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC;IACrE;;;;;;OAMG;IACH,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;IACtD,4EAA4E;IAC5E,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACrC,KAAK,IAAI,IAAI,CAAC;CACf"}
1
+ {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/storage/index/manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,gBAAgB,EAChB,aAAa,EACb,YAAY,EACb,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,KAAK,EAAE,aAAa,GAAG,UAAU,CAAC;IACzC,oFAAoF;IACpF,eAAe,CACb,KAAK,EAAE,aAAa,EACpB,YAAY,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG;QAAE,IAAI,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,GAElE;QAAE,EAAE,EAAE,IAAI,CAAC;QAAC,KAAK,EAAE,UAAU,CAAA;KAAE,GAC/B;QACE,EAAE,EAAE,KAAK,CAAC;QACV,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;QAC9B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;KAChC,CAAC;IACN;;;OAGG;IACH,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACzC,oEAAoE;IACpE,yBAAyB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;IAClD;;;OAGG;IACH,eAAe,CAAC,KAAK,EAAE,aAAa,GAAG,UAAU,CAAC;IAClD,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAAC;IACjD,WAAW,CAAC,OAAO,EAAE,gBAAgB,GAAG,UAAU,EAAE,CAAC;IACrD,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAAC;IACzD,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACpC,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IACpC;;;;OAIG;IACH,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5C,kBAAkB,CAAC,OAAO,CAAC,EAAE;QAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,GAAG;QAAE,MAAM,EAAE,YAAY,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9C,iBAAiB,IAAI,MAAM,EAAE,CAAC;IAC9B,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAAC;IACtE,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAAC;IACrD,sEAAsE;IACtE,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAAC;IAC/D;;;;OAIG;IACH,YAAY,CAAC,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,UAAU,EAAE,CAAC;IACzD;;;OAGG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;IACpD;;;OAGG;IACH,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IAChD;;;;OAIG;IACH,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC;IACrE;;;;;;OAMG;IACH,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;IACtD,4EAA4E;IAC5E,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACrC,KAAK,IAAI,IAAI,CAAC;CACf"}
@@ -1,2 +1,2 @@
1
- export declare const INDEX_SCHEMA_VERSION = 3;
1
+ export declare const INDEX_SCHEMA_VERSION = 5;
2
2
  //# sourceMappingURL=schema.d.ts.map
@@ -1,2 +1,2 @@
1
- export const INDEX_SCHEMA_VERSION = 3;
1
+ export const INDEX_SCHEMA_VERSION = 5;
2
2
  //# sourceMappingURL=schema.js.map
@@ -8,12 +8,18 @@ export interface IndexEntry {
8
8
  createdAt: string;
9
9
  sizeBytes: number;
10
10
  version: number;
11
+ casRevision?: number;
11
12
  dataPointId: string | null;
12
13
  afterTombstoneVersion?: number | null;
14
+ /** Server-stamped origin of a legacy cache version. Null for older/manual writes. */
15
+ producer?: "pdpp-projector" | "pdpp-import-projection" | null;
16
+ /** JSON provenance stored outside the grantee-visible data object. */
17
+ producerProvenance?: string | null;
13
18
  }
14
- export type NewIndexEntry = Omit<IndexEntry, "id" | "createdAt" | "schemaId" | "version" | "dataPointId"> & {
19
+ export type NewIndexEntry = Omit<IndexEntry, "id" | "createdAt" | "schemaId" | "version" | "casRevision" | "dataPointId"> & {
15
20
  schemaId?: string | null;
16
21
  version?: number;
22
+ casRevision?: number;
17
23
  dataPointId?: string | null;
18
24
  };
19
25
  export interface IndexListOptions {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/storage/index/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAIlB,OAAO,EAAE,MAAM,CAAC;IAGhB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAO3B,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvC;AAED,MAAM,MAAM,aAAa,GAAG,IAAI,CAC9B,UAAU,EACV,IAAI,GAAG,WAAW,GAAG,UAAU,GAAG,SAAS,GAAG,aAAa,CAC5D,GAAG;IACF,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAIzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B,CAAC;AAEF,MAAM,WAAW,gBAAgB;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB,EAAE,MAAM,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;IAClC,iDAAiD;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/storage/index/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAGlB,OAAO,EAAE,MAAM,CAAC;IAIhB,WAAW,CAAC,EAAE,MAAM,CAAC;IAGrB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAO3B,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,qFAAqF;IACrF,QAAQ,CAAC,EAAE,gBAAgB,GAAG,wBAAwB,GAAG,IAAI,CAAC;IAC9D,sEAAsE;IACtE,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC;AAED,MAAM,MAAM,aAAa,GAAG,IAAI,CAC9B,UAAU,EACV,IAAI,GAAG,WAAW,GAAG,UAAU,GAAG,SAAS,GAAG,aAAa,GAAG,aAAa,CAC5E,GAAG;IACF,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAGzB,OAAO,CAAC,EAAE,MAAM,CAAC;IAGjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B,CAAC;AAEF,MAAM,WAAW,gBAAgB;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB,EAAE,MAAM,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;IAClC,iDAAiD;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB"}
@@ -65,13 +65,14 @@ export interface SupersedeResult {
65
65
  /**
66
66
  * After a `{records}` version of a projected scope is committed, delete the
67
67
  * scope's older owner-written legacy versions: the new version serves the
68
- * same legacy view, so they are a second copy.
68
+ * same legacy view, so they are a second copy. YouTube legacy versions are
69
+ * retained and replaced only in the read view.
69
70
  *
70
71
  * It deletes nothing unless `storage` is a served port (see
71
72
  * `withLegacyProjection`) whose projection of the new version is complete:
72
73
  * no join stream missing and no row left out. It also deletes nothing when
73
- * the projection holds fewer items than the newest legacy version, or lacks
74
- * any item id that version holds, so an empty or time-windowed run cannot
74
+ * the projection holds fewer items than a legacy version, or lacks
75
+ * any item identity that version holds, so an empty or time-windowed run cannot
75
76
  * replace a full history. For Claude scopes it also deletes nothing when an
76
77
  * item holds fewer nested messages or documents than the legacy item. A legacy version must carry the scope's legacy
77
78
  * collection key (`conversations` for `chatgpt.conversations`); PDPP
@@ -1 +1 @@
1
- {"version":3,"file":"legacy-projection.d.ts","sourceRoot":"","sources":["../../src/storage/legacy-projection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EAIL,KAAK,oBAAoB,EACzB,KAAK,eAAe,EACrB,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAqBzD;;;;;;;;GAQG;AACH,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,gBAAgB,GAAG,kBAAkB,CAAC;AAE9E,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,OAAO,GACZ,cAAc,CAKhB;AAED,MAAM,MAAM,qBAAqB,GAC7B;IACE,IAAI,EAAE,mBAAmB,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,eAAe,CAAC;CACxB,GACD;IACE,IAAI,EAAE,wBAAwB,CAAC;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,oBAAoB,EAAE,CAAC;CACrC,CAAC;AAEN,MAAM,WAAW,uBAAuB;IACtC;;;OAGG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC;CAClD;AAwBD;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,eAAe,EACpB,OAAO,GAAE,uBAA4B,GACpC,eAAe,CAgQjB;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAcjE;AAwGD,MAAM,WAAW,eAAe;IAC9B,8CAA8C;IAC9C,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,6DAA6D;IAC7D,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,eAAe,EACxB,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,eAAe,CAAC,CA+F1B"}
1
+ {"version":3,"file":"legacy-projection.d.ts","sourceRoot":"","sources":["../../src/storage/legacy-projection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EAIL,KAAK,oBAAoB,EACzB,KAAK,eAAe,EACrB,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AA0BzD;;;;;;;;GAQG;AACH,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,gBAAgB,GAAG,kBAAkB,CAAC;AAE9E,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,OAAO,GACZ,cAAc,CAKhB;AAED,MAAM,MAAM,qBAAqB,GAC7B;IACE,IAAI,EAAE,mBAAmB,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,eAAe,CAAC;CACxB,GACD;IACE,IAAI,EAAE,wBAAwB,CAAC;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,oBAAoB,EAAE,CAAC;CACrC,CAAC;AAEN,MAAM,WAAW,uBAAuB;IACtC;;;OAGG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC;CAClD;AAwBD;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,eAAe,EACpB,OAAO,GAAE,uBAA4B,GACpC,eAAe,CAqRjB;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAcjE;AAwGD,MAAM,WAAW,eAAe;IAC9B,8CAA8C;IAC9C,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,6DAA6D;IAC7D,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,eAAe,EACxB,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,eAAe,CAAC,CAsH1B"}
@@ -19,11 +19,16 @@ import { buildDataBlocksAsync } from "./blocks/build.js";
19
19
  import { readBuiltScopeBlocks } from "./blocks/page.js";
20
20
  import { previewEnvelopeValue } from "./preview.js";
21
21
  /**
22
- * Sources whose `{records}` bodies are projected. Other sources either emit
23
- * legacy wrappers themselves (GitHub, Strava) or have no real-shape parity
24
- * evidence yet (Oura), so their stored bodies are served as stored.
22
+ * Sources whose `{records}` bodies have complete, tested legacy bindings.
23
+ * Other sources either emit legacy wrappers themselves (GitHub, Strava) or
24
+ * lack real-shape parity evidence (Oura), so their stored bodies are served
25
+ * as stored.
25
26
  */
26
- const PROJECTED_SOURCES = new Set(["chatgpt", "claude"]);
27
+ const PROJECTED_SOURCES = new Set([
28
+ "chatgpt",
29
+ "claude",
30
+ "youtube",
31
+ ]);
27
32
  /** Keys the server stamps into `data`; they are not part of the body. */
28
33
  const SERVER_STAMP_KEYS = new Set([
29
34
  "$writtenBy",
@@ -39,9 +44,9 @@ export function classifyStoredBody(scope, data) {
39
44
  const SERVED = Symbol.for("personal-server-ts.legacy-projection.served");
40
45
  /** A served port's own projected view of one stored version, for supersede. */
41
46
  const PROJECTED_VIEW = Symbol.for("personal-server-ts.legacy-projection.projected-view");
42
- const textEncoder = new TextEncoder();
43
47
  /** How many stored versions' body forms one served port remembers. */
44
48
  const FORM_CACHE_SIZE = 64;
49
+ const textEncoder = new TextEncoder();
45
50
  /**
46
51
  * Wrap a raw storage port so reads of projected scopes return legacy bodies.
47
52
  * Wrapping an already wrapped port returns it unchanged.
@@ -52,9 +57,8 @@ export function withLegacyProjection(raw, options = {}) {
52
57
  // One entry, keyed by the versions of every input. It saves re-projecting
53
58
  // on repeated reads of the same data; it is not a persistent cache.
54
59
  let memo = null;
55
- // The body form of each stored version read so far, so a version that is
56
- // not projected (most often a legacy body) is parsed to classify it once,
57
- // not on every read. Bounded; the oldest entry goes first.
60
+ // Classification is safe to reuse only for the same immutable stored
61
+ // version. The requested version is classified before the projection cache.
58
62
  const forms = new Map();
59
63
  const rememberForm = (version, form) => {
60
64
  forms.set(version, form);
@@ -77,12 +81,27 @@ export function withLegacyProjection(raw, options = {}) {
77
81
  // in time: the one its own run wrote, before or after it.
78
82
  const supersededAt = nextVersionTime(raw, scope, collectedAt);
79
83
  const inputs = binding.pdppStreams.map((stream) => {
80
- const storedScope = `${source}.${stream}`;
81
- const entry = storedScope === scope
82
- ? raw.findEntry({ scope, at: collectedAt })
84
+ const canonicalScope = `${source}.${stream}`;
85
+ const requestedEntry = raw.findEntry({ scope, at: collectedAt });
86
+ // For a single-stream alias, prefer the exact requested version when
87
+ // it exists. This keeps alias writes, body classification and cursors
88
+ // tied to the version the caller asked to read.
89
+ let storedScope = binding.pdppStreams.length === 1 && requestedEntry
90
+ ? scope
91
+ : canonicalScope;
92
+ let entry = storedScope === scope
93
+ ? requestedEntry
83
94
  : supersededAt === undefined
84
95
  ? raw.findEntry({ scope: storedScope })
85
96
  : nearestBefore(raw, storedScope, collectedAt, supersededAt);
97
+ // Some PDPP streams have a legacy scope alias (for example,
98
+ // youtube.history -> youtube.watch_history). Lite stores the stream
99
+ // envelope under that alias, so use it as the single stream input when
100
+ // no canonical stream-scope entry exists.
101
+ if (!entry && binding.pdppStreams.length === 1 && storedScope !== scope) {
102
+ storedScope = scope;
103
+ entry = requestedEntry;
104
+ }
86
105
  return {
87
106
  stream,
88
107
  storedScope,
@@ -93,19 +112,24 @@ export function withLegacyProjection(raw, options = {}) {
93
112
  };
94
113
  });
95
114
  const ownVersion = inputs.find((input) => input.storedScope === scope)?.version;
96
- if (ownVersion) {
97
- const form = forms.get(ownVersion);
98
- if (form !== undefined && form !== "pdpp-projected") {
99
- return { view: null };
100
- }
115
+ let own;
116
+ let form = ownVersion ? forms.get(ownVersion) : undefined;
117
+ if (form === undefined) {
118
+ own = await raw.readEnvelope(scope, collectedAt);
119
+ form = classifyStoredBody(scope, own.data);
120
+ if (ownVersion)
121
+ rememberForm(ownVersion, form);
101
122
  }
102
- const key = JSON.stringify([scope, inputs.map((input) => input.version)]);
123
+ if (form !== "pdpp-projected")
124
+ return { view: null, own };
125
+ const key = JSON.stringify([
126
+ scope,
127
+ ownVersion,
128
+ inputs.map(({ storedScope, version }) => [storedScope, version]),
129
+ ]);
103
130
  if (memo?.key === key)
104
- return { view: memo.value };
105
- const own = await raw.readEnvelope(scope, collectedAt);
106
- const form = classifyStoredBody(scope, own.data);
107
- if (ownVersion)
108
- rememberForm(ownVersion, form);
131
+ return { view: memo.value, own };
132
+ own ??= await raw.readEnvelope(scope, collectedAt);
109
133
  let value = null;
110
134
  if (form === "pdpp-projected") {
111
135
  value = await project(scope, collectedAt, own, inputs);
@@ -138,8 +162,9 @@ export function withLegacyProjection(raw, options = {}) {
138
162
  if (rows.some(isTaggedRecord))
139
163
  continue;
140
164
  fetchedStreams.push(input.stream);
141
- if (input.collectedAt > now)
165
+ if (Date.parse(input.collectedAt) > Date.parse(now)) {
142
166
  now = input.collectedAt;
167
+ }
143
168
  for (const row of rows) {
144
169
  records.push({ stream: input.stream, data: row });
145
170
  }
@@ -378,13 +403,14 @@ function isRecordsBody(data) {
378
403
  /**
379
404
  * After a `{records}` version of a projected scope is committed, delete the
380
405
  * scope's older owner-written legacy versions: the new version serves the
381
- * same legacy view, so they are a second copy.
406
+ * same legacy view, so they are a second copy. YouTube legacy versions are
407
+ * retained and replaced only in the read view.
382
408
  *
383
409
  * It deletes nothing unless `storage` is a served port (see
384
410
  * `withLegacyProjection`) whose projection of the new version is complete:
385
411
  * no join stream missing and no row left out. It also deletes nothing when
386
- * the projection holds fewer items than the newest legacy version, or lacks
387
- * any item id that version holds, so an empty or time-windowed run cannot
412
+ * the projection holds fewer items than a legacy version, or lacks
413
+ * any item identity that version holds, so an empty or time-windowed run cannot
388
414
  * replace a full history. For Claude scopes it also deletes nothing when an
389
415
  * item holds fewer nested messages or documents than the legacy item. A legacy version must carry the scope's legacy
390
416
  * collection key (`conversations` for `chatgpt.conversations`); PDPP
@@ -399,6 +425,9 @@ export async function supersedeLegacyVersions(storage, scope, committedAt) {
399
425
  superseded: [],
400
426
  refused,
401
427
  });
428
+ if (scope.startsWith("youtube.")) {
429
+ return refuse("YouTube legacy versions are retained for read-time projection");
430
+ }
402
431
  const readStored = (storage.readStoredEnvelope ?? storage.readEnvelope).bind(storage);
403
432
  const committed = await readStored(scope, committedAt);
404
433
  if (classifyStoredBody(scope, committed.data) !== "pdpp-projected") {
@@ -413,6 +442,9 @@ export async function supersedeLegacyVersions(storage, scope, committedAt) {
413
442
  return refuse(`the projection is partial (${kinds.join(", ")})`);
414
443
  }
415
444
  const collection = legacyCollectionKey(scope);
445
+ if (!collection) {
446
+ return refuse(`the legacy collection for ${scope} is unsupported`);
447
+ }
416
448
  const projectedItems = view.envelope.data[collection];
417
449
  const projectedCount = projectedItems.length;
418
450
  const committedMs = Date.parse(committedAt);
@@ -441,23 +473,37 @@ export async function supersedeLegacyVersions(storage, scope, committedAt) {
441
473
  legacy.push({
442
474
  collectedAt,
443
475
  count: items.length,
444
- ids: items.map(itemId).filter((id) => id !== undefined),
445
476
  items,
446
477
  });
447
478
  }
448
479
  const newest = legacy.reduce((best, version) => !best || Date.parse(version.collectedAt) > Date.parse(best.collectedAt)
449
480
  ? version
450
481
  : best, undefined);
451
- if (newest && projectedCount < newest.count) {
452
- return refuse(`the projection has ${projectedCount} ${collection}; the newest legacy version has ${newest.count}`);
482
+ const projectedCounts = new Map();
483
+ for (const item of projectedItems) {
484
+ const identity = itemIdentity(scope, item);
485
+ if (!identity)
486
+ continue;
487
+ projectedCounts.set(identity, (projectedCounts.get(identity) ?? 0) + 1);
453
488
  }
454
- if (newest) {
455
- const projectedIds = new Set(projectedItems.map(itemId).filter((id) => id !== undefined));
456
- const missing = newest.ids.filter((id) => !projectedIds.has(id));
457
- if (missing.length > 0) {
458
- return refuse(`the projection lacks ${missing.length} of the ${collection} in the newest legacy version`);
489
+ for (const version of legacy) {
490
+ const versionLabel = version === newest ? "the newest legacy version" : "a legacy version";
491
+ if (projectedCount < version.count) {
492
+ return refuse(`the projection has ${projectedCount} ${collection}; ${versionLabel} has ${version.count}`);
493
+ }
494
+ const requiredCounts = new Map();
495
+ for (const item of version.items) {
496
+ const identity = itemIdentity(scope, item);
497
+ if (!identity) {
498
+ return refuse(`a legacy ${collection} item has no provable identity`);
499
+ }
500
+ requiredCounts.set(identity, (requiredCounts.get(identity) ?? 0) + 1);
501
+ }
502
+ const missing = [...requiredCounts].reduce((count, [identity, required]) => count + Math.max(0, required - (projectedCounts.get(identity) ?? 0)), 0);
503
+ if (missing > 0) {
504
+ return refuse(`the projection lacks ${missing} of the ${collection} in ${versionLabel}`);
459
505
  }
460
- const shortfall = nestedShortfall(scope, newest.items, projectedItems);
506
+ const shortfall = nestedShortfall(scope, version.items, projectedItems);
461
507
  if (shortfall)
462
508
  return refuse(shortfall);
463
509
  }
@@ -486,6 +532,10 @@ const NESTED_ITEMS = {
486
532
  held: arrayLength(field(item, "messages")),
487
533
  selfShort: false,
488
534
  }),
535
+ "youtube.playlistItems": (item) => ({
536
+ held: arrayLength(field(item, "items")),
537
+ selfShort: false,
538
+ }),
489
539
  "claude.projects": (item) => {
490
540
  const detail = field(item, "detail");
491
541
  const rawDocs = field(detail, "raw_docs");
@@ -511,18 +561,48 @@ function nestedShortfall(scope, legacyItems, projectedItems) {
511
561
  const nested = NESTED_ITEMS[scope];
512
562
  if (!nested)
513
563
  return undefined;
514
- const projectedById = new Map(projectedItems.map((item) => [itemId(item), nested(item).held]));
515
- const short = legacyItems.filter((item) => (projectedById.get(itemId(item)) ?? 0) < nested(item).held);
564
+ const heldByIdentity = (items) => {
565
+ const held = new Map();
566
+ for (const item of items) {
567
+ const identity = itemIdentity(scope, item);
568
+ if (!identity)
569
+ continue;
570
+ const values = held.get(identity) ?? [];
571
+ values.push(nested(item).held);
572
+ held.set(identity, values);
573
+ }
574
+ for (const values of held.values())
575
+ values.sort((left, right) => right - left);
576
+ return held;
577
+ };
578
+ const legacyHeld = heldByIdentity(legacyItems);
579
+ const projectedHeld = heldByIdentity(projectedItems);
580
+ let short = 0;
581
+ for (const [identity, required] of legacyHeld) {
582
+ const available = projectedHeld.get(identity) ?? [];
583
+ short += required.filter((count, index) => (available[index] ?? 0) < count).length;
584
+ }
516
585
  // A project whose own source lists docs the projection lacks.
517
586
  const incomplete = projectedItems.filter((item) => nested(item).selfShort);
518
- const count = short.length + incomplete.length;
587
+ const count = short + incomplete.length;
519
588
  return count > 0
520
- ? `the projection holds fewer nested rows than the source or the newest legacy version for ${count} of the ${legacyCollectionKey(scope)}`
589
+ ? `the projection holds fewer nested rows than the source or a legacy version for ${count} of the ${legacyCollectionKey(scope)}`
521
590
  : undefined;
522
591
  }
523
- /** `chatgpt.conversations` → `conversations`: the array a legacy body holds. */
592
+ const LEGACY_COLLECTION_KEYS = {
593
+ "youtube.profile": null,
594
+ "youtube.history": "history",
595
+ "youtube.subscriptions": "subscriptions",
596
+ "youtube.playlists": "playlists",
597
+ "youtube.playlistItems": "playlists",
598
+ "youtube.likes": "likedVideos",
599
+ "youtube.watchLater": "watchLater",
600
+ };
601
+ /** The array a legacy body holds, or null for singleton/unsupported shapes. */
524
602
  function legacyCollectionKey(scope) {
525
- return scope.slice(scope.indexOf(".") + 1);
603
+ return scope in LEGACY_COLLECTION_KEYS
604
+ ? LEGACY_COLLECTION_KEYS[scope]
605
+ : scope.slice(scope.indexOf(".") + 1);
526
606
  }
527
607
  /**
528
608
  * The items of an owner-written legacy body of `scope`, or null when the
@@ -535,9 +615,32 @@ function legacyCollection(scope, data) {
535
615
  }
536
616
  if (isRecordsBody(data) || "$writtenBy" in data)
537
617
  return null;
538
- const items = data[legacyCollectionKey(scope)];
618
+ const collection = legacyCollectionKey(scope);
619
+ if (!collection)
620
+ return null;
621
+ const items = data[collection];
539
622
  return Array.isArray(items) ? items : null;
540
623
  }
624
+ /** Stable identity fields for scopes whose legacy keys differ from `id`. */
625
+ const IDENTITY_FIELDS = {
626
+ "youtube.history": ["videoId", "videoUrl"],
627
+ "youtube.subscriptions": ["channelId", "channelUrl"],
628
+ "youtube.playlists": ["playlistId", "url"],
629
+ "youtube.playlistItems": ["playlistId"],
630
+ "youtube.likes": ["videoId", "videoUrl"],
631
+ "youtube.watchLater": ["videoId", "videoUrl"],
632
+ };
633
+ /** Stable identity used to prove that a projection covers a legacy item. */
634
+ function itemIdentity(scope, item) {
635
+ for (const key of IDENTITY_FIELDS[scope] ?? []) {
636
+ const value = field(item, key);
637
+ if (typeof value === "string" && value.length > 0) {
638
+ return `${key}:${value}`;
639
+ }
640
+ }
641
+ const id = itemId(item);
642
+ return id === undefined ? undefined : `id:${id}`;
643
+ }
541
644
  /** A legacy item's `id` (or `uuid`), when it has a string one. */
542
645
  function itemId(item) {
543
646
  if (item === null || typeof item !== "object")
@@ -1 +1 @@
1
- {"version":3,"file":"legacy-projection.js","sourceRoot":"","sources":["../../src/storage/legacy-projection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"legacy-projection.js","sourceRoot":"","sources":["../../src/storage/legacy-projection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EACL,qBAAqB,EACrB,iCAAiC,GAIlC,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAExD,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAEpD;;;;;GAKG;AACH,MAAM,iBAAiB,GAAwB,IAAI,GAAG,CAAC;IACrD,SAAS;IACT,QAAQ;IACR,SAAS;CACV,CAAC,CAAC;AAEH,yEAAyE;AACzE,MAAM,iBAAiB,GAAwB,IAAI,GAAG,CAAC;IACrD,YAAY;IACZ,UAAU;CACX,CAAC,CAAC;AAaH,MAAM,UAAU,kBAAkB,CAChC,KAAa,EACb,IAAa;IAEb,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC1C,OAAO,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC;QAClE,CAAC,CAAC,gBAAgB;QAClB,CAAC,CAAC,kBAAkB,CAAC;AACzB,CAAC;AAwBD,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;AACzE,+EAA+E;AAC/E,MAAM,cAAc,GAAG,MAAM,CAAC,GAAG,CAC/B,qDAAqD,CACtD,CAAC;AAEF,sEAAsE;AACtE,MAAM,eAAe,GAAG,EAAE,CAAC;AAa3B,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;AAEtC;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAClC,GAAoB,EACpB,UAAmC,EAAE;IAErC,IAAK,GAA2B,CAAC,MAAM,CAAC;QAAE,OAAO,GAAG,CAAC;IAErD,0EAA0E;IAC1E,oEAAoE;IACpE,IAAI,IAAI,GAAoD,IAAI,CAAC;IACjE,qEAAqE;IACrE,4EAA4E;IAC5E,MAAM,KAAK,GAAG,IAAI,GAAG,EAA0B,CAAC;IAChD,MAAM,YAAY,GAAG,CAAC,OAAe,EAAE,IAAoB,EAAE,EAAE;QAC7D,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACzB,IAAI,KAAK,CAAC,IAAI,GAAG,eAAe,EAAE,CAAC;YACjC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAM,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC,CAAC;IACF;;;OAGG;IACH,KAAK,UAAU,OAAO,CACpB,KAAa,EACb,WAAmB;QAEnB,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC;YAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QACpD,MAAM,OAAO,GAAG,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC;QAClD,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;QAClD,uEAAuE;QACvE,mEAAmE;QACnE,uEAAuE;QACvE,0DAA0D;QAC1D,MAAM,YAAY,GAAG,eAAe,CAAC,GAAG,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;QAC9D,MAAM,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YAChD,MAAM,cAAc,GAAG,GAAG,MAAM,IAAI,MAAM,EAAE,CAAC;YAC7C,MAAM,cAAc,GAAG,GAAG,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;YACjE,qEAAqE;YACrE,sEAAsE;YACtE,gDAAgD;YAChD,IAAI,WAAW,GACb,OAAO,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,IAAI,cAAc;gBAChD,CAAC,CAAC,KAAK;gBACP,CAAC,CAAC,cAAc,CAAC;YACrB,IAAI,KAAK,GACP,WAAW,KAAK,KAAK;gBACnB,CAAC,CAAC,cAAc;gBAChB,CAAC,CAAC,YAAY,KAAK,SAAS;oBAC1B,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;oBACvC,CAAC,CAAC,aAAa,CAAC,GAAG,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;YACnE,4DAA4D;YAC5D,oEAAoE;YACpE,uEAAuE;YACvE,0CAA0C;YAC1C,IAAI,CAAC,KAAK,IAAI,OAAO,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,IAAI,WAAW,KAAK,KAAK,EAAE,CAAC;gBACxE,WAAW,GAAG,KAAK,CAAC;gBACpB,KAAK,GAAG,cAAc,CAAC;YACzB,CAAC;YACD,OAAO;gBACL,MAAM;gBACN,WAAW;gBACX,WAAW,EAAE,WAAW,KAAK,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,EAAE,WAAW;gBACrE,iEAAiE;gBACjE,kEAAkE;gBAClE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,EAAE,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI;aAC3D,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAC5B,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,KAAK,KAAK,CACvC,EAAE,OAAO,CAAC;QACX,IAAI,GAAiC,CAAC;QACtC,IAAI,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1D,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,GAAG,GAAG,MAAM,GAAG,CAAC,YAAY,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;YACjD,IAAI,GAAG,kBAAkB,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YAC3C,IAAI,UAAU;gBAAE,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QACjD,CAAC;QACD,IAAI,IAAI,KAAK,gBAAgB;YAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;QAC1D,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC;YACzB,KAAK;YACL,UAAU;YACV,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;SACjE,CAAC,CAAC;QACH,IAAI,IAAI,EAAE,GAAG,KAAK,GAAG;YAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC;QAExD,GAAG,KAAK,MAAM,GAAG,CAAC,YAAY,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAEnD,IAAI,KAAK,GAAqB,IAAI,CAAC;QACnC,IAAI,IAAI,KAAK,gBAAgB,EAAE,CAAC;YAC9B,KAAK,GAAG,MAAM,OAAO,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;YACvD,IAAI,KAAK;gBAAE,KAAK,CAAC,IAAI,GAAG,GAAG,CAAC;QAC9B,CAAC;QACD,IAAI,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;QACtB,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;IAC9B,CAAC;IAED,KAAK,UAAU,SAAS,CACtB,KAAa,EACb,WAAmB;QAEnB,OAAO,CAAC,MAAM,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;IAClD,CAAC;IAED,KAAK,UAAU,OAAO,CACpB,KAAa,EACb,WAAmB,EACnB,GAAqB,EACrB,MAAuE;QAEvE,MAAM,OAAO,GAAiB,EAAE,CAAC;QACjC,MAAM,cAAc,GAAa,EAAE,CAAC;QACpC,sEAAsE;QACtE,0CAA0C;QAC1C,IAAI,GAAG,GAAG,WAAW,CAAC;QACtB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,CAAC,KAAK,CAAC,WAAW;gBAAE,SAAS;YACjC,MAAM,QAAQ,GACZ,KAAK,CAAC,WAAW,KAAK,KAAK;gBACzB,CAAC,CAAC,GAAG;gBACL,CAAC,CAAC,MAAM,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;YACnE,IAAI,kBAAkB,CAAC,KAAK,CAAC,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,QAAQ,EAAE,CAAC;gBACtE,SAAS;YACX,CAAC;YACD,MAAM,IAAI,GAAI,QAAQ,CAAC,IAA+C;iBACnE,OAAO,CAAC;YACX,IAAI,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC;gBAAE,SAAS;YACxC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAClC,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;gBACpD,GAAG,GAAG,KAAK,CAAC,WAAW,CAAC;YAC1B,CAAC;YACD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;gBACvB,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;YACpD,CAAC;QACH,CAAC;QAED,MAAM,MAAM,GAAG,iCAAiC,CAAC,KAAK,EAAE,OAAO,EAAE;YAC/D,cAAc;YACd,GAAG;YACH,iBAAiB,EAAE,IAAI;YACvB,uBAAuB,EAAE,IAAI;SAC9B,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,OAAO,CAAC,OAAO,EAAE,CAAC;gBAChB,IAAI,EAAE,mBAAmB;gBACzB,KAAK;gBACL,WAAW;gBACX,KAAK,EAAE,MAAM,CAAC,KAAK;aACpB,CAAC,CAAC;YACH,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC;YAC/B,OAAO,CAAC,OAAO,EAAE,CAAC;gBAChB,IAAI,EAAE,wBAAwB;gBAC9B,KAAK;gBACL,WAAW;gBACX,WAAW,EAAE,MAAM,CAAC,WAAW;aAChC,CAAC,CAAC;QACL,CAAC;QACD,sEAAsE;QACtE,sEAAsE;QACtE,MAAM,QAAQ,GAAG,EAAE,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,OAAO,EAAsB,CAAC;QACtE,OAAO;YACL,QAAQ;YACR,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YACnD,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM;gBAC5B,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE;gBACrC,CAAC,CAAC,EAAE,CAAC;SACR,CAAC;IACJ,CAAC;IAED,KAAK,UAAU,WAAW,CACxB,KAAa,EACb,IAAe;QAEf,IAAI,CAAC,KAAK,KAAK,MAAM,oBAAoB,CAAC;YACxC,KAAK;YACL,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW;YACtC,GAAG,CAAC,OAAQ,IAAI,CAAC,QAAmC,CAAC,QAAQ,KAAK,QAAQ;gBACxE,CAAC,CAAC,EAAE,QAAQ,EAAG,IAAI,CAAC,QAAiC,CAAC,QAAQ,EAAE;gBAChE,CAAC,CAAC,EAAE,CAAC;YACP,OAAO,EAAE,IAAI,CAAC,QAAQ;SACvB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,MAAM,SAAS,GAGX;QACF,CAAC,MAAM,CAAC,EAAE,IAAI;QACd,CAAC,cAAc,CAAC,EAAE,SAAS;QAC3B,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE,WAAW;YACnC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,MAAM,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;YACxD,OAAO,IAAI,EAAE,QAAQ,IAAI,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QACvE,CAAC;QACD,kBAAkB,CAAC,KAAK,EAAE,WAAW;YACnC,OAAO,GAAG,CAAC,YAAY,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAC9C,CAAC;KACF,CAAC;IACF,IAAI,GAAG,CAAC,iBAAiB,EAAE,CAAC;QAC1B,MAAM,QAAQ,GAAG,GAAG,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjD,SAAS,CAAC,iBAAiB,GAAG,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,CACzD,CAAC,MAAM,SAAS,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,EAAE,KAAK;YAC5C,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IACjC,CAAC;IACD,IAAI,GAAG,CAAC,kBAAkB,EAAE,CAAC;QAC3B,MAAM,SAAS,GAAG,GAAG,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACnD,SAAS,CAAC,kBAAkB,GAAG,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE;YAC1D,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;YACjD,IAAI,CAAC,IAAI;gBAAE,OAAO,SAAS,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;YAChD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;YACzB,OAAO,IAAI,cAAc,CAAa;gBACpC,KAAK,CAAC,UAAU;oBACd,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;oBAC1B,UAAU,CAAC,KAAK,EAAE,CAAC;gBACrB,CAAC;aACF,CAAC,CAAC;QACL,CAAC,CAAC;IACJ,CAAC;IACD,IAAI,GAAG,CAAC,mBAAmB,EAAE,CAAC;QAC5B,MAAM,UAAU,GAAG,GAAG,CAAC,mBAAmB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrD,SAAS,CAAC,mBAAmB,GAAG,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,EAAE;YACxE,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;YACjD,OAAO,IAAI;gBACT,CAAC,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,QAAQ,CAAC;gBAC3D,CAAC,CAAC,UAAU,CAAC,KAAK,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;QAClD,CAAC,CAAC;IACJ,CAAC;IACD,IAAI,GAAG,CAAC,eAAe,EAAE,CAAC;QACxB,MAAM,SAAS,GAAG,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAChD,SAAS,CAAC,eAAe,GAAG,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE;YAClE,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;YACjD,OAAO,IAAI;gBACT,CAAC,CAAC,oBAAoB,CAAC,MAAM,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE;oBACnD,GAAG,SAAS;oBACZ,UAAU,EAAE,IAAI,CAAC,IAAI;iBACtB,CAAC;gBACJ,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;QAC/C,CAAC,CAAC;IACJ,CAAC;IACD,IAAI,GAAG,CAAC,iBAAiB,EAAE,CAAC;QAC1B,MAAM,WAAW,GAAG,GAAG,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACpD,SAAS,CAAC,iBAAiB,GAAG,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE;YACzD,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;YACjD,OAAO,IAAI;gBACT,CAAC,CAAC,CAAC,MAAM,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,QAAQ;gBAC3C,CAAC,CAAC,WAAW,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QACtC,CAAC,CAAC;IACJ,CAAC;IACD,uEAAuE;IACvE,yEAAyE;IACzE,+BAA+B;IAC/B,IAAI,GAAG,CAAC,cAAc,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC5C,SAAS,CAAC,cAAc,GAAG,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,CACtD,CAAC,MAAM,MAAM,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;YAClC,CAAC,MAAM,SAAS,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,KAAK,IAAI,CAAC;IACnD,CAAC;IACD,IAAI,GAAG,CAAC,kBAAkB,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,GAAG,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAChD,SAAS,CAAC,kBAAkB,GAAG,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,CAC1D,CAAC,MAAM,MAAM,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;YAClC,CAAC,MAAM,SAAS,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,KAAK,IAAI,CAAC;IACnD,CAAC;IAED,OAAO,IAAI,KAAK,CAAC,GAAG,EAAE;QACpB,GAAG,CAAC,MAAM,EAAE,QAAQ;YAClB,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE,CAAC;gBAC9D,OAAO,SAAS,CAAC,QAAkC,CAAC,CAAC;YACvD,CAAC;YACD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;YACpD,OAAO,OAAO,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAClE,CAAC;QACD,GAAG,CAAC,MAAM,EAAE,QAAQ;YAClB,OAAO,CACL,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC;gBACzD,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAC9B,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,yBAAyB,CAAC,KAAa;IACrD,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC/B,IAAI,GAAG,IAAI,CAAC;QAAE,OAAO,EAAE,CAAC;IACxB,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACnC,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;IACpC,OAAO,CAAC,GAAG,qBAAqB,CAAC,MAAM,EAAE,CAAC;SACvC,MAAM,CACL,CAAC,OAAO,EAAE,EAAE,CACV,OAAO,CAAC,KAAK,KAAK,KAAK;QACvB,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,MAAM,GAAG,CAAC;QACtC,gBAAgB,CAAC,OAAO,CAAC,KAAK,CAAC;QAC/B,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,CACvC;SACA,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AACrC,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAa;IACrC,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC/B,OAAO,CACL,GAAG,GAAG,CAAC;QACP,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAC1C,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC,CACjC,CAAC;AACJ,CAAC;AAED,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAE9B,oEAAoE;AACpE,SAAS,YAAY,CACnB,GAAoB,EACpB,KAAa,EACb,IAAoC;IAEpC,KAAK,IAAI,MAAM,GAAG,CAAC,GAAI,MAAM,IAAI,iBAAiB,EAAE,CAAC;QACnD,MAAM,IAAI,GAAG,GAAG,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE,MAAM,EAAE,CAAC,CAAC;QAC3E,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,KAAK,IAAI,IAAI,CAAC,MAAM,GAAG,iBAAiB;YAAE,OAAO,KAAK,CAAC;IAC7D,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,eAAe,CACtB,GAAoB,EACpB,KAAa,EACb,WAAmB;IAEnB,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IACnC,MAAM,MAAM,GAAG,GAAG,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IACxC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC;QAAE,OAAO,SAAS,CAAC;IACxE,IAAI,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAC1C,YAAY,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE;QACjC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAC3C,IAAI,IAAI,GAAG,EAAE;YAAE,IAAI,GAAG,IAAI,CAAC;QAC3B,OAAO,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;IACtB,CAAC,CAAC,CAAC;IACH,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;GAGG;AACH,SAAS,aAAa,CACpB,GAAoB,EACpB,KAAa,EACb,WAAmB,EACnB,KAAa;IAEb,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IACnC,wEAAwE;IACxE,gEAAgE;IAChE,IAAI,KAA6B,CAAC;IAClC,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE;QAClD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAC3C,IAAI,IAAI,GAAG,EAAE,EAAE,CAAC;YACd,IAAI,IAAI,GAAG,KAAK;gBAAE,KAAK,GAAG,KAAK,CAAC;YAChC,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;IACH,IAAI,CAAC,KAAK,IAAI,CAAC,QAAQ;QAAE,OAAO,KAAK,IAAI,QAAQ,CAAC;IAClD,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACvC,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC;QACrC,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,QAAQ,CAAC;AACf,CAAC;AAED,iFAAiF;AACjF,SAAS,cAAc,CAAC,GAAY;IAClC,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAClE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAA2C,CAAC;IACrE,OAAO,CACL,OAAO,MAAM,KAAK,QAAQ;QAC1B,IAAI,KAAK,IAAI;QACb,OAAO,IAAI,KAAK,QAAQ;QACxB,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CACrB,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CACpB,IAAa;IAEb,IAAI,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACrE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5E,OAAO,CACL,IAAI,CAAC,MAAM,KAAK,CAAC;QACjB,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS;QACrB,KAAK,CAAC,OAAO,CAAE,IAA6B,CAAC,OAAO,CAAC,CACtD,CAAC;AACJ,CAAC;AASD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,OAAwB,EACxB,KAAa,EACb,WAAmB;IAEnB,MAAM,MAAM,GAAG,CAAC,OAAe,EAAmB,EAAE,CAAC,CAAC;QACpD,UAAU,EAAE,EAAE;QACd,OAAO;KACR,CAAC,CAAC;IACH,IAAI,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QACjC,OAAO,MAAM,CACX,+DAA+D,CAChE,CAAC;IACJ,CAAC;IACD,MAAM,UAAU,GAAG,CAAC,OAAO,CAAC,kBAAkB,IAAI,OAAO,CAAC,YAAY,CAAC,CAAC,IAAI,CAC1E,OAAO,CACR,CAAC;IACF,MAAM,SAAS,GAAG,MAAM,UAAU,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IACvD,IAAI,kBAAkB,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,CAAC,KAAK,gBAAgB,EAAE,CAAC;QACnE,OAAO,MAAM,CAAC,0DAA0D,CAAC,CAAC;IAC5E,CAAC;IACD,MAAM,aAAa,GACjB,OAGD,CAAC,cAAc,CAAC,CAAC;IAClB,MAAM,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC,MAAM,aAAa,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5E,IAAI,CAAC,IAAI;QAAE,OAAO,MAAM,CAAC,qCAAqC,CAAC,CAAC;IAChE,IAAI,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChE,OAAO,MAAM,CAAC,8BAA8B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACnE,CAAC;IACD,MAAM,UAAU,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAC9C,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,MAAM,CAAC,6BAA6B,KAAK,iBAAiB,CAAC,CAAC;IACrE,CAAC;IACD,MAAM,cAAc,GAAI,IAAI,CAAC,QAAQ,CAAC,IAAgC,CACpE,UAAU,CACE,CAAC;IACf,MAAM,cAAc,GAAG,cAAc,CAAC,MAAM,CAAC;IAE7C,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAC5C,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,QAAQ,GAAG,GAAG,CAAC;IACrB,KAAK,IAAI,MAAM,GAAG,CAAC,GAAI,MAAM,IAAI,QAAQ,EAAE,CAAC;QAC1C,MAAM,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;QACtE,KAAK,MAAM,KAAK,IAAI,IAAI,EAAE,CAAC;YACzB,iEAAiE;YACjE,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,WAAW,EAAE,CAAC;gBAChD,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAChC,CAAC;QACH,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,GAAG,QAAQ;YAAE,MAAM;IACpC,CAAC;IAED,MAAM,MAAM,GAIN,EAAE,CAAC;IACT,KAAK,MAAM,WAAW,IAAI,KAAK,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QACtD,wDAAwD;QACxD,IAAI,gBAAgB,CAAC,QAAQ,CAAC;YAAE,SAAS;QACzC,MAAM,KAAK,GAAG,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;QACrD,IAAI,KAAK,KAAK,IAAI;YAAE,SAAS;QAC7B,MAAM,CAAC,IAAI,CAAC;YACV,WAAW;YACX,KAAK,EAAE,KAAK,CAAC,MAAM;YACnB,KAAK;SACN,CAAC,CAAC;IACL,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAC1B,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAChB,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC;QACrE,CAAC,CAAC,OAAO;QACT,CAAC,CAAC,IAAI,EACV,SAAS,CACV,CAAC;IACF,MAAM,eAAe,GAAG,IAAI,GAAG,EAAkB,CAAC;IAClD,KAAK,MAAM,IAAI,IAAI,cAAc,EAAE,CAAC;QAClC,MAAM,QAAQ,GAAG,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,QAAQ;YAAE,SAAS;QACxB,eAAe,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1E,CAAC;IACD,KAAK,MAAM,OAAO,IAAI,MAAM,EAAE,CAAC;QAC7B,MAAM,YAAY,GAChB,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,kBAAkB,CAAC;QACxE,IAAI,cAAc,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;YACnC,OAAO,MAAM,CACX,sBAAsB,cAAc,IAAI,UAAU,KAAK,YAAY,QAAQ,OAAO,CAAC,KAAK,EAAE,CAC3F,CAAC;QACJ,CAAC;QACD,MAAM,cAAc,GAAG,IAAI,GAAG,EAAkB,CAAC;QACjD,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YACjC,MAAM,QAAQ,GAAG,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YAC3C,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,MAAM,CAAC,YAAY,UAAU,gCAAgC,CAAC,CAAC;YACxE,CAAC;YACD,cAAc,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACxE,CAAC;QACD,MAAM,OAAO,GAAG,CAAC,GAAG,cAAc,CAAC,CAAC,MAAM,CACxC,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,EAAE,CAC9B,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EACtE,CAAC,CACF,CAAC;QACF,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;YAChB,OAAO,MAAM,CACX,wBAAwB,OAAO,WAAW,UAAU,OAAO,YAAY,EAAE,CAC1E,CAAC;QACJ,CAAC;QACD,MAAM,SAAS,GAAG,eAAe,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;QACxE,IAAI,SAAS;YAAE,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC;IAC1C,CAAC;IAED,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,KAAK,MAAM,EAAE,WAAW,EAAE,IAAI,MAAM,EAAE,CAAC;QACrC,IAAI,MAAM,OAAO,CAAC,aAAa,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,CAAC;YACpD,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;IACD,OAAO,EAAE,UAAU,EAAE,CAAC;AACxB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,YAAY,GAGd;IACF,sBAAsB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACjC,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAC1C,SAAS,EAAE,KAAK;KACjB,CAAC;IACF,uBAAuB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAClC,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACvC,SAAS,EAAE,KAAK;KACjB,CAAC;IACF,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE;QAC1B,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACrC,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAC1C,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QAClD,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,QAAQ,CAAC,CAAC;QAC3E,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QAChD,OAAO;YACL,IAAI,EAAE,IAAI,GAAG,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM;YACvC,SAAS,EAAE,IAAI,GAAG,MAAM,CAAC,MAAM;SAChC,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,SAAS,KAAK,CAAC,KAAc,EAAE,GAAW;IACxC,OAAO,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ;QAChD,CAAC,CAAE,KAAiC,CAAC,GAAG,CAAC;QACzC,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED,SAAS,WAAW,CAAC,KAAc;IACjC,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AACjD,CAAC;AAED,wEAAwE;AACxE,SAAS,eAAe,CACtB,KAAa,EACb,WAAsB,EACtB,cAAyB;IAEzB,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IACnC,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAC9B,MAAM,cAAc,GAAG,CAAC,KAAgB,EAAE,EAAE;QAC1C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAoB,CAAC;QACzC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,QAAQ,GAAG,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YAC3C,IAAI,CAAC,QAAQ;gBAAE,SAAS;YACxB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACxC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;YAC/B,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC7B,CAAC;QACD,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,MAAM,EAAE;YAChC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;QAC7C,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IACF,MAAM,UAAU,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;IAC/C,MAAM,aAAa,GAAG,cAAc,CAAC,cAAc,CAAC,CAAC;IACrD,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,UAAU,EAAE,CAAC;QAC9C,MAAM,SAAS,GAAG,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACpD,KAAK,IAAI,QAAQ,CAAC,MAAM,CACtB,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,CAClD,CAAC,MAAM,CAAC;IACX,CAAC;IACD,8DAA8D;IAC9D,MAAM,UAAU,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC;IAC3E,MAAM,KAAK,GAAG,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC;IACxC,OAAO,KAAK,GAAG,CAAC;QACd,CAAC,CAAC,kFAAkF,KAAK,WAAW,mBAAmB,CAAC,KAAK,CAAC,EAAE;QAChI,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED,MAAM,sBAAsB,GAA4C;IACtE,iBAAiB,EAAE,IAAI;IACvB,iBAAiB,EAAE,SAAS;IAC5B,uBAAuB,EAAE,eAAe;IACxC,mBAAmB,EAAE,WAAW;IAChC,uBAAuB,EAAE,WAAW;IACpC,eAAe,EAAE,aAAa;IAC9B,oBAAoB,EAAE,YAAY;CACnC,CAAC;AAEF,+EAA+E;AAC/E,SAAS,mBAAmB,CAAC,KAAa;IACxC,OAAO,KAAK,IAAI,sBAAsB;QACpC,CAAC,CAAC,sBAAsB,CAAC,KAAK,CAAE;QAChC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;AAC1C,CAAC;AAED;;;;GAIG;AACH,SAAS,gBAAgB,CAAC,KAAa,EAAE,IAAa;IACpD,IAAI,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACrE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,YAAY,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IAC7D,MAAM,UAAU,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAC9C,IAAI,CAAC,UAAU;QAAE,OAAO,IAAI,CAAC;IAC7B,MAAM,KAAK,GAAI,IAAgC,CAAC,UAAU,CAAC,CAAC;IAC5D,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7C,CAAC;AAED,4EAA4E;AAC5E,MAAM,eAAe,GAAgD;IACnE,iBAAiB,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC;IAC1C,uBAAuB,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC;IACpD,mBAAmB,EAAE,CAAC,YAAY,EAAE,KAAK,CAAC;IAC1C,uBAAuB,EAAE,CAAC,YAAY,CAAC;IACvC,eAAe,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC;IACxC,oBAAoB,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC;CAC9C,CAAC;AAEF,4EAA4E;AAC5E,SAAS,YAAY,CAAC,KAAa,EAAE,IAAa;IAChD,KAAK,MAAM,GAAG,IAAI,eAAe,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;QAC/C,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAC/B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClD,OAAO,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC;QAC3B,CAAC;IACH,CAAC;IACD,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IACxB,OAAO,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;AACnD,CAAC;AAED,kEAAkE;AAClE,SAAS,MAAM,CAAC,IAAa;IAC3B,IAAI,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IAChE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,IAAwC,CAAC;IAC9D,OAAO,OAAO,EAAE,KAAK,QAAQ;QAC3B,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,OAAO,IAAI,KAAK,QAAQ;YACxB,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,SAAS,CAAC;AAClB,CAAC"}
@@ -0,0 +1,8 @@
1
+ /** Reviewed legacy collector defects for coverage comparison. */
2
+ export declare const LEGACY_COVERAGE_EXCEPTIONS: readonly [{
3
+ readonly scope: "chatgpt.memories";
4
+ readonly path: "$.memories[].created_at";
5
+ readonly reason: "legacy collector wrote collection time; canonical carries source creation time";
6
+ readonly authority: "canonical";
7
+ }];
8
+ //# sourceMappingURL=legacy-scope-coverage-exceptions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"legacy-scope-coverage-exceptions.d.ts","sourceRoot":"","sources":["../../src/storage/legacy-scope-coverage-exceptions.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,eAAO,MAAM,0BAA0B;;;;;EAQ7B,CAAC"}
@@ -0,0 +1,10 @@
1
+ /** Reviewed legacy collector defects for coverage comparison. */
2
+ export const LEGACY_COVERAGE_EXCEPTIONS = [
3
+ {
4
+ scope: "chatgpt.memories",
5
+ path: "$.memories[].created_at",
6
+ reason: "legacy collector wrote collection time; canonical carries source creation time",
7
+ authority: "canonical",
8
+ },
9
+ ];
10
+ //# sourceMappingURL=legacy-scope-coverage-exceptions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"legacy-scope-coverage-exceptions.js","sourceRoot":"","sources":["../../src/storage/legacy-scope-coverage-exceptions.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC;QACE,KAAK,EAAE,kBAAkB;QACzB,IAAI,EAAE,yBAAyB;QAC/B,MAAM,EACJ,gFAAgF;QAClF,SAAS,EAAE,WAAW;KACvB;CACO,CAAC"}