@powersync/service-module-mongodb-storage 0.0.0-dev-20260602073133 → 0.0.0-dev-20260909133214

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 (275) hide show
  1. package/CHANGELOG.md +177 -5
  2. package/dist/migrations/db/migrations/1782950400000-checkpoint-requested-at-index.d.ts +3 -0
  3. package/dist/migrations/db/migrations/1782950400000-checkpoint-requested-at-index.js +41 -0
  4. package/dist/migrations/db/migrations/1782950400000-checkpoint-requested-at-index.js.map +1 -0
  5. package/dist/storage/MongoBucketStorage.d.ts +71 -18
  6. package/dist/storage/MongoBucketStorage.js +516 -202
  7. package/dist/storage/MongoBucketStorage.js.map +1 -1
  8. package/dist/storage/implementation/MongoBucketBatch.d.ts +71 -29
  9. package/dist/storage/implementation/MongoBucketBatch.js +140 -66
  10. package/dist/storage/implementation/MongoBucketBatch.js.map +1 -1
  11. package/dist/storage/implementation/MongoChecksums.d.ts +41 -13
  12. package/dist/storage/implementation/MongoChecksums.js +36 -121
  13. package/dist/storage/implementation/MongoChecksums.js.map +1 -1
  14. package/dist/storage/implementation/MongoCompactor.d.ts +28 -90
  15. package/dist/storage/implementation/MongoCompactor.js +87 -481
  16. package/dist/storage/implementation/MongoCompactor.js.map +1 -1
  17. package/dist/storage/implementation/MongoHydrationState.d.ts +11 -0
  18. package/dist/storage/implementation/MongoHydrationState.js +49 -0
  19. package/dist/storage/implementation/MongoHydrationState.js.map +1 -0
  20. package/dist/storage/implementation/MongoParameterCompactor.d.ts +82 -8
  21. package/dist/storage/implementation/MongoParameterCompactor.js +312 -76
  22. package/dist/storage/implementation/MongoParameterCompactor.js.map +1 -1
  23. package/dist/storage/implementation/MongoParsedSyncConfigSet.d.ts +21 -0
  24. package/dist/storage/implementation/MongoParsedSyncConfigSet.js +93 -0
  25. package/dist/storage/implementation/MongoParsedSyncConfigSet.js.map +1 -0
  26. package/dist/storage/implementation/MongoPersistedReplicationStream.d.ts +36 -0
  27. package/dist/storage/implementation/MongoPersistedReplicationStream.js +90 -0
  28. package/dist/storage/implementation/MongoPersistedReplicationStream.js.map +1 -0
  29. package/dist/storage/implementation/MongoPersistedSyncConfigContent.d.ts +25 -0
  30. package/dist/storage/implementation/MongoPersistedSyncConfigContent.js +125 -0
  31. package/dist/storage/implementation/MongoPersistedSyncConfigContent.js.map +1 -0
  32. package/dist/storage/implementation/MongoStorageProvider.js +41 -4
  33. package/dist/storage/implementation/MongoStorageProvider.js.map +1 -1
  34. package/dist/storage/implementation/MongoSyncBucketStorage.d.ts +81 -37
  35. package/dist/storage/implementation/MongoSyncBucketStorage.js +159 -86
  36. package/dist/storage/implementation/MongoSyncBucketStorage.js.map +1 -1
  37. package/dist/storage/implementation/MongoSyncRulesLock.d.ts +1 -1
  38. package/dist/storage/implementation/MongoSyncRulesLock.js +23 -11
  39. package/dist/storage/implementation/MongoSyncRulesLock.js.map +1 -1
  40. package/dist/storage/implementation/MongoWriteCheckpointAPI.d.ts +11 -8
  41. package/dist/storage/implementation/MongoWriteCheckpointAPI.js +159 -33
  42. package/dist/storage/implementation/MongoWriteCheckpointAPI.js.map +1 -1
  43. package/dist/storage/implementation/SyncRuleStateUpdate.d.ts +11 -5
  44. package/dist/storage/implementation/SyncRuleStateUpdate.js +14 -6
  45. package/dist/storage/implementation/SyncRuleStateUpdate.js.map +1 -1
  46. package/dist/storage/implementation/common/MongoSyncBucketStorageCheckpoint.d.ts +28 -0
  47. package/dist/storage/implementation/common/MongoSyncBucketStorageCheckpoint.js +2 -0
  48. package/dist/storage/implementation/common/MongoSyncBucketStorageCheckpoint.js.map +1 -0
  49. package/dist/storage/implementation/common/PersistedBatch.d.ts +34 -2
  50. package/dist/storage/implementation/common/PersistedBatch.js +63 -10
  51. package/dist/storage/implementation/common/PersistedBatch.js.map +1 -1
  52. package/dist/storage/implementation/common/VersionedPowerSyncMongoBase.js +1 -1
  53. package/dist/storage/implementation/common/VersionedPowerSyncMongoBase.js.map +1 -1
  54. package/dist/storage/implementation/createMongoSyncBucketStorage.d.ts +2 -2
  55. package/dist/storage/implementation/createMongoSyncBucketStorage.js +4 -4
  56. package/dist/storage/implementation/createMongoSyncBucketStorage.js.map +1 -1
  57. package/dist/storage/implementation/db.d.ts +4 -1
  58. package/dist/storage/implementation/db.js +31 -16
  59. package/dist/storage/implementation/db.js.map +1 -1
  60. package/dist/storage/implementation/models.d.ts +55 -13
  61. package/dist/storage/implementation/models.js.map +1 -1
  62. package/dist/storage/implementation/v1/MongoBucketBatchV1.d.ts +15 -1
  63. package/dist/storage/implementation/v1/MongoBucketBatchV1.js +135 -107
  64. package/dist/storage/implementation/v1/MongoBucketBatchV1.js.map +1 -1
  65. package/dist/storage/implementation/v1/MongoChecksumsV1.d.ts +4 -4
  66. package/dist/storage/implementation/v1/MongoChecksumsV1.js +119 -7
  67. package/dist/storage/implementation/v1/MongoChecksumsV1.js.map +1 -1
  68. package/dist/storage/implementation/v1/MongoCompactorV1.d.ts +47 -7
  69. package/dist/storage/implementation/v1/MongoCompactorV1.js +478 -8
  70. package/dist/storage/implementation/v1/MongoCompactorV1.js.map +1 -1
  71. package/dist/storage/implementation/v1/MongoParameterCompactorV1.d.ts +16 -2
  72. package/dist/storage/implementation/v1/MongoParameterCompactorV1.js +20 -9
  73. package/dist/storage/implementation/v1/MongoParameterCompactorV1.js.map +1 -1
  74. package/dist/storage/implementation/v1/MongoSyncBucketStorageV1.d.ts +33 -27
  75. package/dist/storage/implementation/v1/MongoSyncBucketStorageV1.js +146 -73
  76. package/dist/storage/implementation/v1/MongoSyncBucketStorageV1.js.map +1 -1
  77. package/dist/storage/implementation/v1/SingleBucketStoreV1.d.ts +9 -10
  78. package/dist/storage/implementation/v1/SingleBucketStoreV1.js +2 -8
  79. package/dist/storage/implementation/v1/SingleBucketStoreV1.js.map +1 -1
  80. package/dist/storage/implementation/v1/VersionedPowerSyncMongoV1.d.ts +2 -1
  81. package/dist/storage/implementation/v1/VersionedPowerSyncMongoV1.js +3 -0
  82. package/dist/storage/implementation/v1/VersionedPowerSyncMongoV1.js.map +1 -1
  83. package/dist/storage/implementation/v1/models.d.ts +10 -1
  84. package/dist/storage/implementation/v1/models.js +1 -0
  85. package/dist/storage/implementation/v1/models.js.map +1 -1
  86. package/dist/storage/implementation/v3/BucketDataContextV3.d.ts +13 -0
  87. package/dist/storage/implementation/v3/BucketDataContextV3.js +23 -0
  88. package/dist/storage/implementation/v3/BucketDataContextV3.js.map +1 -0
  89. package/dist/storage/implementation/v3/CompactionLease.d.ts +50 -0
  90. package/dist/storage/implementation/v3/CompactionLease.js +131 -0
  91. package/dist/storage/implementation/v3/CompactionLease.js.map +1 -0
  92. package/dist/storage/implementation/v3/MongoBucketBatchV3.d.ts +16 -5
  93. package/dist/storage/implementation/v3/MongoBucketBatchV3.js +393 -262
  94. package/dist/storage/implementation/v3/MongoBucketBatchV3.js.map +1 -1
  95. package/dist/storage/implementation/v3/MongoChecksumsV3.d.ts +30 -9
  96. package/dist/storage/implementation/v3/MongoChecksumsV3.js +161 -20
  97. package/dist/storage/implementation/v3/MongoChecksumsV3.js.map +1 -1
  98. package/dist/storage/implementation/v3/MongoCompactorV3.d.ts +108 -18
  99. package/dist/storage/implementation/v3/MongoCompactorV3.js +1115 -47
  100. package/dist/storage/implementation/v3/MongoCompactorV3.js.map +1 -1
  101. package/dist/storage/implementation/v3/MongoParameterCompactorV3.d.ts +12 -3
  102. package/dist/storage/implementation/v3/MongoParameterCompactorV3.js +13 -8
  103. package/dist/storage/implementation/v3/MongoParameterCompactorV3.js.map +1 -1
  104. package/dist/storage/implementation/v3/MongoStoppedSyncConfigCleanup.d.ts +54 -0
  105. package/dist/storage/implementation/v3/MongoStoppedSyncConfigCleanup.js +319 -0
  106. package/dist/storage/implementation/v3/MongoStoppedSyncConfigCleanup.js.map +1 -0
  107. package/dist/storage/implementation/v3/MongoSyncBucketStorageV3.d.ts +61 -36
  108. package/dist/storage/implementation/v3/MongoSyncBucketStorageV3.js +353 -161
  109. package/dist/storage/implementation/v3/MongoSyncBucketStorageV3.js.map +1 -1
  110. package/dist/storage/implementation/v3/MongoWriteCheckpointAPIV3.d.ts +26 -0
  111. package/dist/storage/implementation/v3/MongoWriteCheckpointAPIV3.js +82 -0
  112. package/dist/storage/implementation/v3/MongoWriteCheckpointAPIV3.js.map +1 -0
  113. package/dist/storage/implementation/v3/PersistedBatchV3.d.ts +8 -3
  114. package/dist/storage/implementation/v3/PersistedBatchV3.js +131 -29
  115. package/dist/storage/implementation/v3/PersistedBatchV3.js.map +1 -1
  116. package/dist/storage/implementation/v3/SourceRecordStoreV3.d.ts +3 -3
  117. package/dist/storage/implementation/v3/SourceRecordStoreV3.js +13 -11
  118. package/dist/storage/implementation/v3/SourceRecordStoreV3.js.map +1 -1
  119. package/dist/storage/implementation/v3/VersionedPowerSyncMongoV3.d.ts +26 -14
  120. package/dist/storage/implementation/v3/VersionedPowerSyncMongoV3.js +73 -29
  121. package/dist/storage/implementation/v3/VersionedPowerSyncMongoV3.js.map +1 -1
  122. package/dist/storage/implementation/v3/bucket-format.d.ts +13 -0
  123. package/dist/storage/implementation/v3/bucket-format.js +79 -0
  124. package/dist/storage/implementation/v3/bucket-format.js.map +1 -0
  125. package/dist/storage/implementation/v3/chunking.d.ts +10 -0
  126. package/dist/storage/implementation/v3/chunking.js +30 -0
  127. package/dist/storage/implementation/v3/chunking.js.map +1 -0
  128. package/dist/storage/implementation/v3/compact-utils.d.ts +107 -0
  129. package/dist/storage/implementation/v3/compact-utils.js +216 -0
  130. package/dist/storage/implementation/v3/compact-utils.js.map +1 -0
  131. package/dist/storage/implementation/v3/compaction-constants.d.ts +5 -0
  132. package/dist/storage/implementation/v3/compaction-constants.js +6 -0
  133. package/dist/storage/implementation/v3/compaction-constants.js.map +1 -0
  134. package/dist/storage/implementation/v3/models.d.ts +187 -23
  135. package/dist/storage/implementation/v3/models.js +11 -28
  136. package/dist/storage/implementation/v3/models.js.map +1 -1
  137. package/dist/storage/implementation/v3/object-storage/BucketDataObjectStorage.d.ts +20 -0
  138. package/dist/storage/implementation/v3/object-storage/BucketDataObjectStorage.js +48 -0
  139. package/dist/storage/implementation/v3/object-storage/BucketDataObjectStorage.js.map +1 -0
  140. package/dist/storage/implementation/v3/object-storage/ObjectStorage.d.ts +33 -0
  141. package/dist/storage/implementation/v3/object-storage/ObjectStorage.js +12 -0
  142. package/dist/storage/implementation/v3/object-storage/ObjectStorage.js.map +1 -0
  143. package/dist/storage/implementation/v3/object-storage/ObjectStorageLifecycle.d.ts +68 -0
  144. package/dist/storage/implementation/v3/object-storage/ObjectStorageLifecycle.js +154 -0
  145. package/dist/storage/implementation/v3/object-storage/ObjectStorageLifecycle.js.map +1 -0
  146. package/dist/storage/implementation/v3/object-storage/ObjectStorageUsage.d.ts +37 -0
  147. package/dist/storage/implementation/v3/object-storage/ObjectStorageUsage.js +167 -0
  148. package/dist/storage/implementation/v3/object-storage/ObjectStorageUsage.js.map +1 -0
  149. package/dist/storage/implementation/v3/object-storage/S3ObjectStorage.d.ts +67 -0
  150. package/dist/storage/implementation/v3/object-storage/S3ObjectStorage.js +439 -0
  151. package/dist/storage/implementation/v3/object-storage/S3ObjectStorage.js.map +1 -0
  152. package/dist/storage/implementation/v3/source-table-utils.d.ts +63 -0
  153. package/dist/storage/implementation/v3/source-table-utils.js +206 -0
  154. package/dist/storage/implementation/v3/source-table-utils.js.map +1 -0
  155. package/dist/storage/storage-index.d.ts +5 -4
  156. package/dist/storage/storage-index.js +5 -4
  157. package/dist/storage/storage-index.js.map +1 -1
  158. package/dist/types/types.d.ts +71 -3
  159. package/dist/types/types.js +58 -2
  160. package/dist/types/types.js.map +1 -1
  161. package/dist/utils/test-utils.d.ts +1 -2
  162. package/dist/utils/test-utils.js +7 -1
  163. package/dist/utils/test-utils.js.map +1 -1
  164. package/dist/utils/util.d.ts +9 -2
  165. package/dist/utils/util.js +131 -5
  166. package/dist/utils/util.js.map +1 -1
  167. package/package.json +13 -19
  168. package/src/migrations/db/migrations/1782950400000-checkpoint-requested-at-index.ts +55 -0
  169. package/src/storage/MongoBucketStorage.ts +728 -242
  170. package/src/storage/implementation/MongoBucketBatch.ts +196 -91
  171. package/src/storage/implementation/MongoChecksums.ts +93 -153
  172. package/src/storage/implementation/MongoCompactor.ts +106 -631
  173. package/src/storage/implementation/MongoHydrationState.ts +61 -0
  174. package/src/storage/implementation/MongoParameterCompactor.ts +392 -87
  175. package/src/storage/implementation/MongoParsedSyncConfigSet.ts +122 -0
  176. package/src/storage/implementation/MongoPersistedReplicationStream.ts +118 -0
  177. package/src/storage/implementation/MongoPersistedSyncConfigContent.ts +156 -0
  178. package/src/storage/implementation/MongoStorageProvider.ts +48 -4
  179. package/src/storage/implementation/MongoSyncBucketStorage.ts +226 -118
  180. package/src/storage/implementation/MongoSyncRulesLock.ts +28 -12
  181. package/src/storage/implementation/MongoWriteCheckpointAPI.ts +194 -52
  182. package/src/storage/implementation/SyncRuleStateUpdate.ts +13 -6
  183. package/src/storage/implementation/common/MongoSyncBucketStorageCheckpoint.ts +31 -0
  184. package/src/storage/implementation/common/PersistedBatch.ts +83 -15
  185. package/src/storage/implementation/common/VersionedPowerSyncMongoBase.ts +1 -1
  186. package/src/storage/implementation/createMongoSyncBucketStorage.ts +21 -7
  187. package/src/storage/implementation/db.ts +40 -22
  188. package/src/storage/implementation/models.ts +58 -14
  189. package/src/storage/implementation/v1/MongoBucketBatchV1.ts +174 -125
  190. package/src/storage/implementation/v1/MongoChecksumsV1.ts +154 -12
  191. package/src/storage/implementation/v1/MongoCompactorV1.ts +594 -25
  192. package/src/storage/implementation/v1/MongoParameterCompactorV1.ts +25 -9
  193. package/src/storage/implementation/v1/MongoSyncBucketStorageV1.ts +226 -129
  194. package/src/storage/implementation/v1/SingleBucketStoreV1.ts +18 -27
  195. package/src/storage/implementation/v1/VersionedPowerSyncMongoV1.ts +11 -1
  196. package/src/storage/implementation/v1/models.ts +12 -1
  197. package/src/storage/implementation/v3/BucketDataContextV3.ts +32 -0
  198. package/src/storage/implementation/v3/CompactionLease.ts +152 -0
  199. package/src/storage/implementation/v3/MongoBucketBatchV3.ts +502 -324
  200. package/src/storage/implementation/v3/MongoChecksumsV3.ts +250 -32
  201. package/src/storage/implementation/v3/MongoCompactorV3.ts +1439 -70
  202. package/src/storage/implementation/v3/MongoParameterCompactorV3.ts +19 -9
  203. package/src/storage/implementation/v3/MongoStoppedSyncConfigCleanup.ts +473 -0
  204. package/src/storage/implementation/v3/MongoSyncBucketStorageV3.ts +453 -211
  205. package/src/storage/implementation/v3/MongoWriteCheckpointAPIV3.ts +111 -0
  206. package/src/storage/implementation/v3/PersistedBatchV3.ts +169 -45
  207. package/src/storage/implementation/v3/SourceRecordStoreV3.ts +12 -12
  208. package/src/storage/implementation/v3/VersionedPowerSyncMongoV3.ts +99 -38
  209. package/src/storage/implementation/v3/bucket-format.ts +99 -0
  210. package/src/storage/implementation/v3/chunking.ts +40 -0
  211. package/src/storage/implementation/v3/compact-utils.ts +320 -0
  212. package/src/storage/implementation/v3/compaction-constants.ts +5 -0
  213. package/src/storage/implementation/v3/models.ts +228 -58
  214. package/src/storage/implementation/v3/object-storage/BucketDataObjectStorage.ts +62 -0
  215. package/src/storage/implementation/v3/object-storage/ObjectStorage.ts +44 -0
  216. package/src/storage/implementation/v3/object-storage/ObjectStorageLifecycle.ts +182 -0
  217. package/src/storage/implementation/v3/object-storage/ObjectStorageUsage.ts +230 -0
  218. package/src/storage/implementation/v3/object-storage/S3ObjectStorage.ts +573 -0
  219. package/src/storage/implementation/v3/source-table-utils.ts +398 -0
  220. package/src/storage/storage-index.ts +14 -4
  221. package/src/types/types.ts +76 -2
  222. package/src/utils/test-utils.ts +8 -3
  223. package/src/utils/util.ts +188 -7
  224. package/test/src/__snapshots__/storage.test.ts.snap +4 -54
  225. package/test/src/__snapshots__/storage_sync.test.ts.snap +652 -645
  226. package/test/src/cleanup-stopped-sync-configs.test.ts +698 -0
  227. package/test/src/compact-utils.test.ts +226 -0
  228. package/test/src/helpers/MemoryObjectStorage.ts +61 -0
  229. package/test/src/helpers/s3TestFactory.ts +69 -0
  230. package/test/src/object_storage_lifecycle.test.ts +59 -0
  231. package/test/src/object_storage_usage.test.ts +255 -0
  232. package/test/src/parameter_compacting_v1.test.ts +120 -0
  233. package/test/src/parameter_compacting_v3.test.ts +192 -0
  234. package/test/src/parameter_compaction_fence.test.ts +276 -0
  235. package/test/src/setup.ts +6 -1
  236. package/test/src/storage.test.ts +478 -13
  237. package/test/src/storage_compacting.test.ts +2516 -107
  238. package/test/src/storage_object_storage_inline_threshold.test.ts +116 -0
  239. package/test/src/storage_s3_checksums.test.ts +190 -0
  240. package/test/src/storage_s3_compaction_lifecycle.test.ts +543 -0
  241. package/test/src/storage_s3_reading.test.ts +768 -0
  242. package/test/src/storage_s3_writing.test.ts +136 -0
  243. package/test/src/storage_sync.test.ts +1507 -76
  244. package/test/src/storeCurrentData.test.ts +227 -0
  245. package/test/src/util.ts +3 -2
  246. package/tsconfig.json +1 -4
  247. package/tsconfig.tsbuildinfo +1 -1
  248. package/dist/storage/implementation/BucketDefinitionMapping.d.ts +0 -15
  249. package/dist/storage/implementation/BucketDefinitionMapping.js +0 -58
  250. package/dist/storage/implementation/BucketDefinitionMapping.js.map +0 -1
  251. package/dist/storage/implementation/MongoPersistedSyncRules.d.ts +0 -14
  252. package/dist/storage/implementation/MongoPersistedSyncRules.js +0 -67
  253. package/dist/storage/implementation/MongoPersistedSyncRules.js.map +0 -1
  254. package/dist/storage/implementation/MongoPersistedSyncRulesContent.d.ts +0 -29
  255. package/dist/storage/implementation/MongoPersistedSyncRulesContent.js +0 -76
  256. package/dist/storage/implementation/MongoPersistedSyncRulesContent.js.map +0 -1
  257. package/dist/storage/implementation/common/MongoSyncBucketStorageContext.d.ts +0 -13
  258. package/dist/storage/implementation/common/MongoSyncBucketStorageContext.js +0 -2
  259. package/dist/storage/implementation/common/MongoSyncBucketStorageContext.js.map +0 -1
  260. package/dist/storage/implementation/common/SingleBucketStore.d.ts +0 -54
  261. package/dist/storage/implementation/common/SingleBucketStore.js +0 -3
  262. package/dist/storage/implementation/common/SingleBucketStore.js.map +0 -1
  263. package/dist/storage/implementation/v3/MongoParameterLookupV3.d.ts +0 -4
  264. package/dist/storage/implementation/v3/MongoParameterLookupV3.js +0 -9
  265. package/dist/storage/implementation/v3/MongoParameterLookupV3.js.map +0 -1
  266. package/dist/storage/implementation/v3/SingleBucketStoreV3.d.ts +0 -18
  267. package/dist/storage/implementation/v3/SingleBucketStoreV3.js +0 -48
  268. package/dist/storage/implementation/v3/SingleBucketStoreV3.js.map +0 -1
  269. package/src/storage/implementation/BucketDefinitionMapping.ts +0 -75
  270. package/src/storage/implementation/MongoPersistedSyncRules.ts +0 -82
  271. package/src/storage/implementation/MongoPersistedSyncRulesContent.ts +0 -101
  272. package/src/storage/implementation/common/MongoSyncBucketStorageContext.ts +0 -15
  273. package/src/storage/implementation/common/SingleBucketStore.ts +0 -63
  274. package/src/storage/implementation/v3/MongoParameterLookupV3.ts +0 -11
  275. package/src/storage/implementation/v3/SingleBucketStoreV3.ts +0 -68
@@ -1 +1 @@
1
- {"version":3,"file":"MongoBucketStorage.js","sourceRoot":"","sources":["../../src/storage/MongoBucketStorage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MongoBucketStorage.js","sourceRoot":"","sources":["../../src/storage/MongoBucketStorage.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,sBAAsB,EACtB,uCAAuC,EACvC,OAAO,EACR,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,UAAU,EACV,SAAS,EACT,MAAM,EACN,yBAAyB,EACzB,YAAY,EACb,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,EAAE,IAAI,IAAI,EAAE,MAAM,MAAM,CAAC;AAElC,OAAO,KAAK,SAAS,MAAM,gCAAgC,CAAC;AAG5D,OAAO,EACL,mCAAmC,EACnC,oCAAoC,EACpC,YAAY,EACb,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAChC,OAAO,EAAE,iCAAiC,EAAE,MAAM,mBAAmB,CAAC;AACtE,OAAO,EAAE,6BAA6B,EAAE,MAAM,kBAAkB,CAAC;AAEjE,OAAO,EAAE,4BAA4B,EAAE,MAAM,kDAAkD,CAAC;AAEhG,OAAO,EAAE,qBAAqB,EAAuC,MAAM,4BAA4B,CAAC;AAExG,OAAO,EAAE,+BAA+B,EAAE,MAAM,qDAAqD,CAAC;AACtG,OAAO,EAAE,6BAA6B,EAAE,MAAM,yCAAyC,CAAC;AAGxF,OAAO,EAAE,kBAAkB,EAAE,MAAM,0DAA0D,CAAC;AA0B9F,MAAM,OAAO,kBAAmB,SAAQ,OAAO,CAAC,oBAAoB;IAYxD;IAXV,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC;IAEH,MAAM,CAAoB;IAC3B,2BAA2B,CAAS;IAE5C,kBAAkB,CAAqC;IAE/C,EAAE,CAAiB;IAEnC,YACE,EAAkB,EACV,OAAkC;QAE1C,KAAK,EAAE,CAAC;QAFA,YAAO,GAAP,OAAO,CAA2B;QAG1C,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,MAAM,CAAC;QACxB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,2BAA2B,GAAG,OAAO,CAAC,2BAA2B,CAAC;IACzE,CAAC;IAED,KAAK,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;QACzB,QAAQ;IACV,CAAC;IAED,WAAW,CACT,iBAAqD,EACrD,OAA2B;QAE3B,IAAI,CAAC,CAAC,iBAAiB,YAAY,+BAA+B,CAAC,EAAE,CAAC;YACpE,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAC9D,CAAC;QACD,IAAI,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,GAAG,iBAAiB,CAAC;QACvE,IAAK,OAAO,mBAA2B,IAAI,QAAQ,EAAE,CAAC;YACpD,mBAAmB,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAC;QACpD,CAAC;QACD,MAAM,aAAa,GAAG,iBAAiB,CAAC,gBAAgB,EAAE,CAAC;QAC3D,MAAM,eAAe,GAAG,4BAA4B,CAClD,IAAI,EACJ,mBAAmB,EACnB,iBAAiB,EACjB,qBAAqB,EACrB,SAAS,EACT;YACE,eAAe,EAAE,IAAI,CAAC,OAAO,CAAC,eAAe;YAC7C,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc;YAC3C,kBAAkB,EAAE,IAAI,CAAC,OAAO,CAAC,kBAAkB;YACnD,aAAa;YACb,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa;YACzC,oBAAoB,EAAE,IAAI,CAAC,OAAO,CAAC,oBAAoB;YACvD,sBAAsB,EAAE,IAAI,CAAC,OAAO,CAAC,sBAAsB,IAAI,iCAAiC;SACjG,CACF,CAAC;QACF,IAAI,CAAC,OAAO,EAAE,kBAAkB,EAAE,CAAC;YACjC,IAAI,CAAC,gBAAgB,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,kBAAkB,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;QAC1E,CAAC;QAED,eAAe,CAAC,gBAAgB,CAAC;YAC/B,YAAY,EAAE,CAAC,KAAK,EAAE,EAAE;gBACtB,KAAK,CAAC,gBAAgB,CAAC;oBACrB,gBAAgB,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC,OAAO,CAAC,CAAC;iBAC7F,CAAC,CAAC;YACL,CAAC;SACF,CAAC,CAAC;QACH,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,mBAAmB;QACvB,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC;YAC/C,KAAK,EAAE,CAAC;SACT,CAAC,CAAC;QACH,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC;YACf,MAAM,IAAI,YAAY,CACpB,SAAS,CAAC,WAAW,EACrB,oEAAoE,CACrE,CAAC;QACJ,CAAC;QAED,OAAO;YACL,EAAE;YACF,IAAI,EAAE,SAAS,CAAC,qBAAqB;SACtC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,mBAA2B;QAClD,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;YAC3C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,8BAA8B,CAAC,OAAO,CAAC,CAAC;YAChE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAAC,CAAC;YAE/D,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,mBAAmB,IAAI,mBAAmB,EAAE,CAAC;gBAC5E,iDAAiD;gBACjD,oEAAoE;gBACpE,MAAM,IAAI,CAAC,4BAA4B,CACrC,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,yBAAyB,EAAE,IAAI,EAAE,CAAC,EACjE,OAAO,CACR,CAAC;gBACF,MAAM,kBAAkB,GAAG,MAAM,EAAE,OAAO,CAAC,mBAAmB,IAAI,mBAAmB,CAAC;gBACtF,IAAI,kBAAkB,EAAE,CAAC;oBACvB,kFAAkF;oBAClF,MAAM,IAAI,CAAC,+BAA+B,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBAC9D,CAAC;YACH,CAAC;iBAAM,IAAI,IAAI,IAAI,IAAI,IAAI,MAAM,EAAE,OAAO,CAAC,mBAAmB,IAAI,mBAAmB,EAAE,CAAC;gBACtF,8EAA8E;gBAC9E,MAAM,IAAI,CAAC,4BAA4B,CACrC,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,yBAAyB,EAAE,IAAI,EAAE,CAAC,EACnE,OAAO,CACR,CAAC;gBAEF,wFAAwF;gBACxF,iEAAiE;gBACjE,yCAAyC;gBACzC,MAAM,IAAI,CAAC,+BAA+B,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAC9D,CAAC;iBAAM,IAAI,IAAI,IAAI,IAAI,IAAI,MAAM,EAAE,OAAO,CAAC,mBAAmB,IAAI,mBAAmB,EAAE,CAAC;gBACtF,qFAAqF;gBACrF,MAAM,IAAI,CAAC,+BAA+B,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAC9D,CAAC;iBAAM,CAAC;gBACN,+EAA+E;YACjF,CAAC;QACH,CAAC,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC;IACnC,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,+BAA+B,CAAC,MAAkC,EAAE,OAA4B;QAC5G,MAAM,kBAAkB,GAAG,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC;QACvD,IAAI,kBAAkB,IAAI,IAAI,EAAE,CAAC;YAC/B,eAAe;YACf,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAC/C;gBACE,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,mBAAmB;gBACvC,KAAK,EAAE,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE;aAC9E,EACD;gBACE,IAAI,EAAE;oBACJ,KAAK,EAAE,OAAO,CAAC,aAAa,CAAC,OAAO;iBACrC;aACF,EACD,EAAE,OAAO,EAAE,CACZ,CAAC;YACF,IAAI,MAAM,CAAC,YAAY,IAAI,CAAC,EAAE,CAAC;gBAC7B,oFAAoF;gBACpF,4FAA4F;gBAC5F,MAAM,IAAI,yBAAyB,CACjC,6BAA6B,MAAM,CAAC,OAAO,CAAC,mBAAmB,yBAAyB,CACzF,CAAC;YACJ,CAAC;YACD,OAAO;QACT,CAAC;QAED,MAAM,oBAAoB,GAAG,IAAI,QAAQ,CAAC,kBAAkB,CAAC,CAAC;QAC9D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAC/C;YACE,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,mBAAmB;YACvC,KAAK,EAAE,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE;YAC7E,YAAY,EAAE;gBACZ,qDAAqD;gBACrD,UAAU,EAAE;oBACV,GAAG,EAAE,oBAAoB;oBACzB,KAAK,EAAE,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE;iBAC9E;aACF;SACF,EACD;YACE,IAAI,EAAE;gBACJ,KAAK,EAAE,OAAO,CAAC,aAAa,CAAC,OAAO;gBACpC,qFAAqF;gBACrF,2CAA2C;gBAC3C,oCAAoC,EAAE,OAAO,CAAC,aAAa,CAAC,OAAO;gBACnE,0EAA0E;gBAC1E,wCAAwC,EAAE,OAAO,CAAC,aAAa,CAAC,IAAI;aACrE;SACF,EACD;YACE,OAAO;YACP,YAAY,EAAE;gBACZ;oBACE,kBAAkB,EAAE,oBAAoB;oBACxC,oBAAoB,EAAE,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE;iBAC7F;gBACD;oBACE,sBAAsB,EAAE,EAAE,GAAG,EAAE,oBAAoB,EAAE;oBACrD,wBAAwB,EAAE,OAAO,CAAC,aAAa,CAAC,UAAU;iBAC3D;aACF;SACF,CACF,CAAC;QACF,IAAI,MAAM,CAAC,YAAY,IAAI,CAAC,EAAE,CAAC;YAC7B,oFAAoF;YACpF,4FAA4F;YAC5F,MAAM,IAAI,yBAAyB,CACjC,6BAA6B,MAAM,CAAC,OAAO,CAAC,mBAAmB,yBAAyB,CACzF,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,4BAA4B,CAAC,OAAuC,EAAE,OAA4B;QAC9G,MAAM,cAAc,GAClB,OAAO,CAAC,cAAc;YACtB,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc;YAC3C,IAAI,CAAC,OAAO,CAAC,qBAAqB;YAClC,OAAO,CAAC,uBAAuB,CAAC;QAClC,MAAM,aAAa,GAAG,qBAAqB,CAAC,cAAc,CAAC,CAAC;QAC5D,IAAI,aAAa,CAAC,uBAAuB,EAAE,CAAC;YAC1C,OAAO,IAAI,CAAC,+BAA+B,CAAC,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;QAC/F,CAAC;QACD,OAAO,IAAI,CAAC,+BAA+B,CAAC,OAAO,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;IAChF,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,+BAA+B,CAC3C,OAAuC,EACvC,cAAsB,EACtB,aAA4B,EAC5B,OAA4B;QAE5B,MAAM,SAAS,GAAG,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,aAAa,CAA8B,CAAC;QAEhF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAC7C;YACE,KAAK,EAAE,OAAO,CAAC,aAAa,CAAC,MAAM;YACnC,eAAe,EAAE,cAAc;SAChC,EACD,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CACzC,CAAC;QACF,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;YACnB,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;YAE5F,IACE,CAAC,OAAO,CAAC,yBAAyB;gBAClC,IAAI,CAAC,OAAO,CAAC,2BAA2B;gBACxC,YAAY,CACV,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,IAAI,IAAI,CAAC,EACxD,OAAO,CAAC,MAAM,EACd,MAAM,CACP,EACD,CAAC;gBACD,MAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;gBAC9C,MAAM,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC;gBAC/C,OAAO,MAAM,IAAI,CAAC,wBAAwB,CAAC;oBACzC,SAAS;oBACT,QAAQ,EAAE,MAAM;oBAChB,kBAAkB;oBAClB,OAAO;oBACP,cAAc;oBACd,OAAO;iBACR,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,MAAM,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC;QAE/C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,cAAc,CAAC,gBAAgB,CAC1D;YACE,GAAG,EAAE,YAAY;SAClB,EACD;YACE,IAAI,EAAE;gBACJ,KAAK,EAAE,EAAE;aACV;SACF,EACD;YACE,MAAM,EAAE,IAAI;YACZ,cAAc,EAAE,OAAO;YACvB,OAAO;SACR,CACF,CAAC;QAEF,MAAM,EAAE,GAAG,MAAM,CAAC,MAAO,CAAC,KAAK,CAAC,CAAC;QACjC,MAAM,qBAAqB,GAAG,6BAA6B,CAAC,IAAI,CAAC,2BAA2B,EAAE,EAAE,CAAC,CAAC;QAElG,MAAM,OAAO,GACX,OAAO,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI;YACzB,CAAC,CAAC,wFAAwF;gBACxF,uCAAuC,CAAC,oBAAoB,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;YACrF,CAAC,CAAC,0DAA0D;gBAC1D,uCAAuC,CAAC,8CAA8C,CACpF,EAAE,EACF,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EACxB,EAAE,CACH,CAAC;QAER,MAAM,aAAa,GAAyB;YAC1C,GAAG,EAAE,IAAI,QAAQ,EAAE;YACnB,qBAAqB,EAAE,EAAE;YACzB,UAAU,EAAE,IAAI,IAAI,EAAE;YACtB,eAAe,EAAE,cAAc;YAC/B,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI;YAC5B,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,eAAe,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI;YACpC,YAAY,EAAE,OAAO,CAAC,SAAS,EAAE;SAClC,CAAC;QACF,MAAM,SAAS,CAAC,qBAAqB,CAAC,SAAS,CAAC,aAAa,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;QAE5E,MAAM,GAAG,GAAgC;YACvC,GAAG,EAAE,EAAE;YACP,eAAe,EAAE,cAAc;YAC/B,YAAY,EAAE;gBACZ;oBACE,GAAG,EAAE,aAAa,CAAC,GAAG;oBACtB,KAAK,EAAE,OAAO,CAAC,aAAa,CAAC,UAAU;oBACvC,eAAe,EAAE,IAAI;oBACrB,mBAAmB,EAAE,IAAI;oBACzB,oBAAoB,EAAE,IAAI;oBAC1B,aAAa,EAAE,KAAK;iBACrB;aACF;YACD,YAAY,EAAE,SAAS;YACvB,KAAK,EAAE,OAAO,CAAC,aAAa,CAAC,UAAU;YACvC,SAAS,EAAE,qBAAqB;YAChC,kBAAkB,EAAE,IAAI;YACxB,gBAAgB,EAAE,IAAI;YACtB,mBAAmB,EAAE,IAAI;YACzB,iBAAiB,EAAE,IAAI;SACxB,CAAC;QAEF,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;QACrD,MAAM,KAAK,GAAG,IAAI,+BAA+B,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;QACjF,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,uFAAuF;YACvF,+EAA+E;YAC/E,8CAA8C;YAC9C,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC5B,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,KAAK,CAAC,yBAAyB,CACrC,SAAoC,EACpC,QAAqC,EACrC,OAA4B;QAE5B,MAAM,eAAe,GAAG,QAAQ,CAAC,YAAY;aAC1C,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,IAAI,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC;aAChE,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAE/B,OAAO,SAAS,CAAC,qBAAqB;aACnC,IAAI,CACH;YACE,GAAG,EAAE,EAAE,GAAG,EAAE,eAAe,EAAE;SAC9B,EACD,EAAE,OAAO,EAAE,CACZ;aACA,OAAO,EAAE,CAAC;IACf,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,oCAAoC,CAChD,SAAoC,EACpC,mBAA2B,EAC3B,OAA4B;QAE5B,OAAO,SAAS,CAAC,qBAAqB;aACnC,IAAI,CACH;YACE,qBAAqB,EAAE,mBAAmB;SAC3C,EACD;YACE,OAAO;YACP,UAAU,EAAE;gBACV,YAAY,EAAE,CAAC;aAChB;SACF,CACF;aACA,OAAO,EAAE,CAAC;IACf,CAAC;IAEO,+BAA+B,CAAC,OAA+D;QACrG,MAAM,CAAC,IAAI,CAAC,iDAAiD,oCAAoC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAChH,CAAC;IAEO,KAAK,CAAC,wBAAwB,CAAC,OAOtC;QACC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,kBAAkB,EAAE,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;QAC7G,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACzD,IAAI,EAAE,GAAG,CAAC,eAAgB,CAAC,IAAI;YAC/B,OAAO,EAAE,uCAAuC,CAAC,oBAAoB,CAAC,GAAG,CAAC,YAAY,CAAC;SACxF,CAAC,CAAC,CAAC;QACJ,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,oCAAoC,CAAC,SAAS,EAAE,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QACjH,MAAM,gBAAgB,GAAG,sBAAsB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAC1D,uCAAuC,CAAC,oBAAoB,CAAC,GAAG,CAAC,YAAY,CAAC,CAC/E,CAAC;QACF,MAAM,aAAa,GAAG,uCAAuC,CAAC,sCAAsC,CAClG,iBAAiB,EACjB,aAAa,CAAC,MAAM,CAAC,IAAK,CAAC,IAAI,EAC/B,gBAAgB,CACjB,CAAC;QACF,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC;QACtC,IAAI,CAAC,+BAA+B,CAClC,mCAAmC,CAAC;YAClC,cAAc,EAAE,kBAAkB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAC7C,uCAAuC,CAAC,oBAAoB,CAAC,GAAG,CAAC,YAAY,CAAC,CAC/E;YACD,UAAU,EAAE,OAAO;YACnB,aAAa,EAAE,aAAa,CAAC,MAAM,CAAC,MAAM;YAC1C,cAAc,EAAE,aAAa,CAAC,OAAO;SACtC,CAAC,CACH,CAAC;QAEF,MAAM,aAAa,GAAyB;YAC1C,GAAG,EAAE,IAAI,QAAQ,EAAE;YACnB,qBAAqB,EAAE,QAAQ,CAAC,GAAG;YACnC,UAAU,EAAE,IAAI,IAAI,EAAE;YACtB,eAAe,EAAE,cAAc;YAC/B,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,IAAI;YAClC,aAAa,EAAE,aAAa,CAAC,aAAa;YAC1C,eAAe,EAAE,aAAa,CAAC,MAAM,CAAC,IAAI;YAC1C,YAAY,EAAE,OAAO,CAAC,SAAS,EAAE;SAClC,CAAC;QACF,MAAM,SAAS,CAAC,qBAAqB,CAAC,SAAS,CAAC,aAAa,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;QAC5E,MAAM,eAAe,GAA0B;YAC7C,GAAG,EAAE,aAAa,CAAC,GAAG;YACtB,KAAK,EAAE,OAAO,CAAC,aAAa,CAAC,UAAU;YACvC,eAAe,EAAE,IAAI;YACrB,mBAAmB,EAAE,IAAI;YACzB,oBAAoB,EAAE,IAAI;YAC1B,aAAa,EAAE,KAAK;SACrB,CAAC;QAEF,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAChC,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,EACrB;YACE,KAAK,EAAE;gBACL,YAAY,EAAE,eAAe;aAC9B;YACD,IAAI,EAAE;gBACJ,gBAAgB,EAAE,IAAI;gBACtB,mBAAmB,EAAE,IAAI;aAC1B;SACF,EACD,EAAE,OAAO,EAAE,CACZ,CAAC;QACF,MAAM,gBAAgB,GAAG;YACvB,GAAG,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,IAAI,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC;YACzF,eAAe;SAChB,CAAC;QACF,MAAM,MAAM,GAAG,IAAI,+BAA+B,CAChD,IAAI,CAAC,EAAE,EACP;YACE,GAAG,QAAQ;YACX,YAAY,EAAE,gBAAgB;SAC/B,EACD,CAAC,GAAG,kBAAkB,EAAE,aAAa,CAAC,CACvC,CAAC;QACF,4FAA4F;QAC5F,2FAA2F;QAC3F,kBAAkB;QAClB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,OAAuC;QAC3D,IAAI,KAAkD,CAAC;QACvD,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;YAC3C,KAAK,GAAG,MAAM,IAAI,CAAC,4BAA4B,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACpE,CAAC,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC;QACjC,OAAO,KAAM,CAAC;IAChB,CAAC;IAEO,KAAK,CAAC,eAAe,CAAI,QAAsD;QACrF,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC;IACjF,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,+BAA+B,CAC3C,OAAuC,EACvC,cAAsB,EACtB,OAA4B;QAE5B,MAAM,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC;QAE/C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,cAAc,CAAC,gBAAgB,CAC1D;YACE,GAAG,EAAE,YAAY;SAClB,EACD;YACE,IAAI,EAAE;gBACJ,KAAK,EAAE,EAAE;aACV;SACF,EACD;YACE,MAAM,EAAE,IAAI;YACZ,cAAc,EAAE,OAAO;YACvB,OAAO;SACR,CACF,CAAC;QAEF,MAAM,EAAE,GAAG,MAAM,CAAC,MAAO,CAAC,KAAK,CAAC,CAAC;QACjC,MAAM,SAAS,GAAG,6BAA6B,CAAC,IAAI,CAAC,2BAA2B,EAAE,EAAE,CAAC,CAAC;QAEtF,8FAA8F;QAC9F,0FAA0F;QAC1F,wFAAwF;QACxF,yFAAyF;QACzF,4FAA4F;QAC5F,2DAA2D;QAC3D,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;QAEtF,MAAM,GAAG,GAAuB;YAC9B,GAAG,EAAE,EAAE;YACP,eAAe,EAAE,cAAc;YAC/B,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI;YAC5B,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,eAAe,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI;YACpC,eAAe,EAAE,IAAI;YACrB,mBAAmB,EAAE,IAAI;YACzB,oBAAoB,EAAE,IAAI;YAC1B,YAAY,EAAE,IAAI;YAClB,aAAa,EAAE,KAAK;YACpB,YAAY,EAAE,SAAS;YACvB,KAAK,EAAE,OAAO,CAAC,aAAa,CAAC,UAAU;YACvC,SAAS,EAAE,SAAS;YACpB,kBAAkB,EAAE,IAAI;YACxB,gBAAgB,EAAE,IAAI;YACtB,mBAAmB,EAAE,IAAI;YACzB,iBAAiB,EAAE,IAAI;YACvB,oBAAoB,EAAE,EAAE,gBAAgB,EAAE,UAAU,EAAE,KAAK,IAAI,EAAE,EAAE;SACpE,CAAC;QAEF,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;QACrD,MAAM,KAAK,GAAG,IAAI,+BAA+B,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QAChE,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,8CAA8C;YAC9C,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC5B,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,0BAA0B,CAAC,OAA4B;QACnE,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CACjC;YACE,KAAK,EAAE,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE;YAC7E,oBAAoB,EAAE,OAAO,CAAC,aAAa,CAAC,UAAU;SACvD,EACD;YACE,IAAI,EAAE;gBACJ,8BAA8B,EAAE,OAAO,CAAC,aAAa,CAAC,IAAI;aAC3D;SACF,EACD;YACE,OAAO;YACP,YAAY,EAAE,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC;SACrE,CACF,CAAC;QAEF,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CACjC;YACE,KAAK,EAAE,OAAO,CAAC,aAAa,CAAC,UAAU;SACxC,EACD,6BAA6B,EAAE,EAC/B,EAAE,OAAO,EAAE,CACZ,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,mBAAmB;QACvB,OAAO,IAAI,CAAC,2BAA2B,EAAE,CAAC;IAC5C,CAAC;IAEO,KAAK,CAAC,2BAA2B,CAAC,OAA6B;QACrE,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAC1C;YACE,KAAK,EAAE,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE;SAC9E,EACD,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CACzC,CAAC;QAEF,OAAO,IAAI,CAAC,yBAAyB,CACnC,GAAG,EACH,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,EAC7D,EAAE,kBAAkB,EAAE,OAAO,IAAI,IAAI,EAAE,EACvC,OAAO,CACR,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,wBAAwB,CACpC,GAAgC,EAChC,WAAoC,EACpC,OAA6B;QAE7B,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,aAAa,GAAG,qBAAqB,CAAC,GAAG,CAAC,eAAe,IAAI,sBAAsB,CAAC,CAAC;QAE3F,IAAI,aAAa,CAAC,uBAAuB,EAAE,CAAC;YAC1C,MAAM,EAAE,GAAG,GAAkC,CAAC;YAC9C,MAAM,QAAQ,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;YAC9E,IAAI,QAAQ,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;gBACzB,OAAO,IAAI,CAAC;YACd,CAAC;YAED,mFAAmF;YACnF,8CAA8C;YAC9C,gGAAgG;YAChG,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,aAAa,CAA8B,CAAC;YACzE,MAAM,cAAc,GAAG,MAAM,EAAE,CAAC,qBAAqB;iBAClD,IAAI,CACH;gBACE,GAAG,EAAE,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;aACnD,EACD,EAAE,OAAO,EAAE,CACZ;iBACA,OAAO,EAAE,CAAC;YAEb,IAAI,cAAc,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;gBAC/B,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO,IAAI,+BAA+B,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,cAAc,CAAC,CAAC;QAC1E,CAAC;QAED,OAAO,IAAI,+BAA+B,CAAC,IAAI,CAAC,EAAE,EAAE,GAAyB,CAAC,CAAC;IACjF,CAAC;IAED,KAAK,CAAC,sBAAsB;QAC1B,OAAO,IAAI,CAAC,8BAA8B,EAAE,CAAC;IAC/C,CAAC;IAEO,KAAK,CAAC,8BAA8B,CAC1C,OAA6B;QAE7B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAC1C;YACE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,aAAa,CAAC,UAAU,EAAE,EAAE,EAAE,oBAAoB,EAAE,OAAO,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC;SAC/G,EACD,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CACzC,CAAC;QAEF,OAAO,IAAI,CAAC,yBAAyB,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;IAC9F,CAAC;IAED,KAAK,CAAC,gCAAgC;QACpC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU;aAClC,IAAI,CAAC;YACJ,KAAK,EAAE,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,EAAE,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE;SACjF,CAAC;aACD,OAAO,EAAE,CAAC;QAEb,OAAO,CACL,MAAM,OAAO,CAAC,GAAG,CACf,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YACf,OAAO,IAAI,CAAC,wBAAwB,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,EAAE,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;QAC9G,CAAC,CAAC,CACH,CACF,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,4BAA4B;QAChC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU;aAClC,IAAI,CAAC;YACJ,KAAK,EAAE,OAAO,CAAC,aAAa,CAAC,IAAI;SAClC,CAAC;aACD,OAAO,EAAE,CAAC;QAEb,OAAO,CACL,MAAM,OAAO,CAAC,GAAG,CACf,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YACf,OAAO,IAAI,CAAC,wBAAwB,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1E,CAAC,CAAC,CACH,CACF,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;IAC7B,CAAC;IAEO,KAAK,CAAC,yBAAyB,CACrC,GAAgC,EAChC,WAAoC,EACpC,UAA4C,EAAE,EAC9C,OAA6B;QAE7B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;QAC9E,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;QAC5C,MAAM,WAAW,GAAG,IAAI,CAAC;QAEzB,OAAO;YACL,OAAO;YACP,iBAAiB,EAAE,MAAM;YACzB,IAAI,OAAO;gBACT,gDAAgD;gBAChD,+FAA+F;gBAC/F,wBAAwB;gBACxB,IACE,OAAO,CAAC,kBAAkB;oBAC1B,WAAW,CAAC,kBAAkB,EAAE,iBAAiB,CAAC,gBAAgB,IAAI,MAAM,CAAC,gBAAgB,EAC7F,CAAC;oBACD,OAAO,WAAW,CAAC,kBAAkB,CAAC;gBACxC,CAAC;gBAED,MAAM,QAAQ,GAAG,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;gBACjD,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;oBAC/B,WAAW,CAAC,kBAAkB,GAAG,QAAQ,CAAC;gBAC5C,CAAC;gBACD,OAAO,QAAQ,CAAC;YAClB,CAAC;SACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,iBAAiB;QACrB,MAAM,iBAAiB,GAAG,CAAC,CAAU,EAAE,EAAE;YACvC,IAAI,SAAS,CAAC,6BAA6B,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/C,sCAAsC;gBACtC,OAAO,CAAC,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YACzC,CAAC;iBAAM,CAAC;gBACN,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC,CAAC;QAEF,MAAM,yBAAyB,GAAG,KAAK,EAA4B,UAA+B,EAAE,EAAE;YACpG,6FAA6F;YAC7F,wEAAwE;YACxE,MAAM,MAAM,GACV,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,cAAc,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM;gBAC5G,CAAC,CAAC;YACJ,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO,CAAC,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YACzC,CAAC;YAED,OAAO,UAAU;iBACd,SAAS,CAAC;gBACT;oBACE,UAAU,EAAE;wBACV,YAAY,EAAE,EAAE;qBACjB;iBACF;aACF,CAAC;iBACD,OAAO,EAAE;iBACT,KAAK,CAAC,iBAAiB,CAAC,CAAC;QAC9B,CAAC,CAAC;QAEF,MAAM,oBAAoB,GAAG,MAAM,yBAAyB,CAAC,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;QAClF,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,2BAA2B,EAAE,CAAC;QAC3E,MAAM,uBAAuB,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/C,sBAAsB,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CACxC,UAAU;aACP,SAAS,CAAC;YACT;gBACE,UAAU,EAAE;oBACV,YAAY,EAAE,EAAE;iBACjB;aACF;SACF,CAAC;aACD,OAAO,EAAE;aACT,KAAK,CAAC,iBAAiB,CAAC,CAC5B,CACF,CAAC;QAEF,MAAM,oBAAoB,GAAG,MAAM,yBAAyB,CAAC,IAAI,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC;QAExF,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,kCAAkC,EAAE,CAAC;QAClF,MAAM,uBAAuB,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/C,sBAAsB,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CACxC,UAAU;aACP,SAAS,CAAC;YACT;gBACE,UAAU,EAAE;oBACV,YAAY,EAAE,EAAE;iBACjB;aACF;SACF,CAAC;aACD,OAAO,EAAE;aACT,KAAK,CAAC,iBAAiB,CAAC,CAC5B,CACF,CAAC;QAEF,MAAM,0BAA0B,GAAG,MAAM,yBAAyB,CAAC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC;QAEzF,MAAM,yBAAyB,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,gCAAgC,EAAE,CAAC;QACnF,MAAM,wBAAwB,GAAG,MAAM,OAAO,CAAC,GAAG,CAChD,yBAAyB,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAC3C,UAAU;aACP,SAAS,CAAC;YACT;gBACE,UAAU,EAAE;oBACV,YAAY,EAAE,EAAE;iBACjB;aACF;SACF,CAAC;aACD,OAAO,EAAE;aACT,KAAK,CAAC,iBAAiB,CAAC,CAC5B,CACF,CAAC;QAEF,MAAM,eAAe,GAAG,qBAAqB,CAAC,OAAO,CAAC,iBAAiB,CAEtE,CAAC;QACF,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,eAAe,CAA8B,CAAC;QAC7E,MAAM,4BAA4B,GAAG,MAAM,kBAAkB,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;QAE3F,MAAM,YAAY,GAAG,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU;aAC3C,IAAI,CAAC,EAAE,eAAe,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,iBAAiB,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,EAAE,CAAC;aAC3G,OAAO,EAAE,CAA2E,CAAC;QAExF,MAAM,eAAe,GAAG,IAAI,GAAG,EAAkB,CAAC;QAClD,MAAM,iBAAiB,GAAG,CACxB,UAAsC,EACtC,SAA0D,EAC1D,MAAc,EACd,KAA0B,EAC1B,EAAE;YACF,MAAM,KAAK,GAAG,UAAU,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,IAAI,MAAM,cAAc,CAAC,CAAC,CAAC;YACpF,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;gBAClB,OAAO;YACT,CAAC;YACD,KAAK,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;QAC/F,CAAC,CAAC;QAEF,sBAAsB,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,EAAE,CACnD,iBAAiB,CAAC,UAAU,EAAE,uBAAuB,CAAC,KAAK,CAAC,EAAE,cAAc,EAAE,eAAe,CAAC,CAC/F,CAAC;QACF,sBAAsB,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,EAAE,CACnD,iBAAiB,CAAC,UAAU,EAAE,uBAAuB,CAAC,KAAK,CAAC,EAAE,kBAAkB,EAAE,eAAe,CAAC,CACnG,CAAC;QACF,yBAAyB,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,EAAE,CACtD,iBAAiB,CAAC,UAAU,EAAE,wBAAwB,CAAC,KAAK,CAAC,EAAE,iBAAiB,EAAE,eAAe,CAAC,CACnG,CAAC;QAEF,MAAM,aAAa,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAChH,MAAM,qBAAqB,GACzB,aAAa,CAAC,MAAM,IAAI,CAAC;YACvB,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,MAAM,IAAI,CAAC,qBAAqB;iBAC7B,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,EAAE,CAAC;iBACpG,OAAO,EAAE,CAAC;QACnB,MAAM,yBAAyB,GAAG,IAAI,GAAG,CACvC,qBAAqB,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,UAAU,CAAC,CAAC,CACtF,CAAC;QAEF,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAGjC,CAAC;QACJ,MAAM,OAAO,CAAC,GAAG,CACf,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAChC,MAAM,YAAY,GAAG,MAAM,IAAI;iBAC5B,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC;iBACxB,IAAI,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,sBAAsB,EAAE,CAAC,EAAE,2BAA2B,EAAE,CAAC,EAAE,EAAE,CAAC;iBAC/F,OAAO,EAAE,CAAC;YACb,oBAAoB,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QACrD,CAAC,CAAC,CACH,CAAC;QAEF,MAAM,6BAA6B,GAAG,IAAI,GAAG,EAAkB,CAAC;QAChE,KAAK,MAAM,KAAK,IAAI,4BAA4B,EAAE,CAAC;YACjD,6BAA6B,CAAC,GAAG,CAC/B,GAAG,KAAK,CAAC,qBAAqB,IAAI,KAAK,CAAC,aAAa,EAAE,EACvD,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAC3B,CAAC;QACJ,CAAC;QAED,MAAM,kBAAkB,GAAG,CAAC,MAAc,EAAE,QAAgB,EAAE,GAAwB,EAAE,EAAE,CACxF,CAAC,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,QAAQ,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAEtG,MAAM,iBAAiB,GAAuC,EAAE,CAAC;QACjE,KAAK,MAAM,MAAM,IAAI,YAAY,EAAE,CAAC;YAClC,MAAM,YAAY,GAAG,oBAAoB,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;YAChE,KAAK,MAAM,UAAU,IAAI,MAAM,CAAC,YAAY,IAAI,EAAE,EAAE,CAAC;gBACnD,MAAM,UAAU,GAAG,yBAAyB,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;gBAC/E,IAAI,UAAU,IAAI,IAAI,EAAE,CAAC;oBACvB,SAAS;gBACX,CAAC;gBAED,MAAM,OAAO,GAAG,uCAAuC,CAAC,oBAAoB,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;gBACtG,MAAM,mBAAmB,GAAG,OAAO,CAAC,sBAAsB,EAAE,CAAC;gBAC7D,MAAM,iBAAiB,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC;gBACzD,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC,mBAAmB,CAAC,CAAC;gBAC3D,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC,iBAAiB,CAAC,CAAC;gBACvD,MAAM,eAAe,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE;oBACjE,IACE,CAAC,CAAC,WAAW,CAAC,sBAAsB,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,qBAAqB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;wBACvF,CAAC,CAAC,WAAW,CAAC,2BAA2B,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,EAC1F,CAAC;wBACD,OAAO,KAAK,CAAC;oBACf,CAAC;oBACD,OAAO,KAAK,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,kBAAkB,MAAM,CAAC,GAAG,IAAI,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC7G,CAAC,EAAE,CAAC,CAAC,CAAC;gBAEN,iBAAiB,CAAC,IAAI,CAAC;oBACrB,cAAc,EAAE,UAAU,CAAC,GAAG,CAAC,WAAW,EAAE;oBAC5C,iBAAiB,EAAE,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC;oBAC3C,aAAa,EAAE,UAAU,CAAC,aAAa;oBACvC,4BAA4B,EAAE,kBAAkB,CAAC,cAAc,EAAE,MAAM,CAAC,GAAG,EAAE,qBAAqB,CAAC;oBACnG,kCAAkC,EAAE,kBAAkB,CAAC,kBAAkB,EAAE,MAAM,CAAC,GAAG,EAAE,mBAAmB,CAAC;oBAC3G,+BAA+B,EAAE,eAAe;oBAChD,+BAA+B,EAAE,CAAC,GAAG,qBAAqB,CAAC,CAAC,MAAM,CAChE,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,6BAA6B,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,IAAI,YAAY,EAAE,CAAC,IAAI,CAAC,CAAC,EAC1G,CAAC,CACF;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,MAAM,sBAAsB,GAAG,4BAA4B,CAAC,MAAM,CAChE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,GAAG,KAAK,CAAC,YAAY,EAC5C,EAAE,CACH,CAAC;QACF,OAAO;YACL,qBAAqB,EACnB,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC;gBACjD,uBAAuB,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,CAAC,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzG,qBAAqB,EACnB,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC;gBACjD,uBAAuB,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,CAAC,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzG,sBAAsB,EACpB,MAAM,CAAC,0BAA0B,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,IAAI,CAAC,CAAC;gBAC9D,wBAAwB,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,CAAC,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;YACjH,yBAAyB,EAAE,MAAM,CAAC,sBAAsB,CAAC;YACzD,mBAAmB,EAAE,iBAAiB;SACvC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,sBAAsB;QAC1B,IAAI,QAAQ,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC;YAC5C,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;SACvB,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,OAAO,GAAG,IAAI,SAAS,CAAC,KAAK,CAAC,gBAAgB,CAAC;gBACnD,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK;gBACzB,IAAI,EAAE,4BAA4B;aACnC,CAAC,CAAC;YAEH,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;gBAC5B,MAAM,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC;oBAC/B,GAAG,EAAE,IAAI,EAAE;iBACZ,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,QAAQ,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC;gBACxC,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;aACvB,CAAC,CAAC;QACL,CAAC;QAED,OAAO,QAAS,CAAC,GAAG,CAAC;IACvB,CAAC;CACF"}
@@ -1,23 +1,34 @@
1
1
  import { mongo } from '@powersync/lib-service-mongodb';
2
- import { HydratedSyncConfig, SqlEventDescriptor } from '@powersync/service-sync-rules';
2
+ import { EventDefinitionId, HydratedEventDescriptor, HydratedSyncConfig } from '@powersync/service-sync-rules';
3
3
  import * as bson from 'bson';
4
4
  import { BaseObserver, Logger } from '@powersync/lib-services-framework';
5
- import { BucketStorageMarkRecordUnavailable, InternalOpId, PerformanceTracer, storage } from '@powersync/service-core';
6
- import { BucketDefinitionMapping } from './BucketDefinitionMapping.js';
5
+ import { BucketDefinitionMapping, BucketStorageMarkRecordUnavailable, InternalOpId, PerformanceTracer, storage } from '@powersync/service-core';
7
6
  import { PersistedBatch } from './common/PersistedBatch.js';
8
7
  import { SourceRecordStore } from './common/SourceRecordStore.js';
9
8
  import type { VersionedPowerSyncMongo } from './db.js';
9
+ import { MongoParsedSyncConfigSet } from './MongoParsedSyncConfigSet.js';
10
+ import { ObjectStorage } from './v3/object-storage/ObjectStorage.js';
10
11
  export interface MongoBucketBatchOptions {
11
12
  db: VersionedPowerSyncMongo;
12
- syncRules: HydratedSyncConfig;
13
- groupId: number;
14
- slotName: string;
15
- syncConfigId?: bson.ObjectId | null;
16
- lastCheckpointLsn: string | null;
17
- keepaliveOp: InternalOpId | null;
13
+ /**
14
+ * The parsed sync config set for this batch.
15
+ *
16
+ * The batch derives both the hydrated sync rules and the bucket definition mapping from
17
+ * this single set, so they always come from the same parse. Do not add separate
18
+ * syncRules/mapping options - pairing values from different parses is exactly the bug
19
+ * this shape prevents.
20
+ */
21
+ parsedSyncConfig: MongoParsedSyncConfigSet;
22
+ replicationStreamId: number;
23
+ replicationStreamName: string;
24
+ syncConfigIds?: bson.ObjectId[];
25
+ /**
26
+ * Seeds the in-memory persisted-op tracking for v1 storage. Not used by v3 storage, which
27
+ * tracks the persisted-op head durably on the replication stream document instead.
28
+ */
29
+ keepaliveOp?: InternalOpId | null;
18
30
  resumeFromLsn: string | null;
19
31
  storeCurrentData: boolean;
20
- mapping: BucketDefinitionMapping;
21
32
  /**
22
33
  * Set to true for initial replication.
23
34
  */
@@ -26,6 +37,12 @@ export interface MongoBucketBatchOptions {
26
37
  hooks: storage.StorageHooks | undefined;
27
38
  logger: Logger;
28
39
  tracer?: PerformanceTracer<'storage' | 'evaluate'>;
40
+ /**
41
+ * Aborts in-flight object storage uploads when replication stops.
42
+ */
43
+ signal?: AbortSignal;
44
+ objectStorage?: ObjectStorage;
45
+ inlineThresholdBytes?: number;
29
46
  }
30
47
  export declare abstract class MongoBucketBatch extends BaseObserver<storage.BucketBatchStorageListener> implements storage.BucketStorageBatch {
31
48
  protected readonly options: MongoBucketBatchOptions;
@@ -34,34 +51,35 @@ export declare abstract class MongoBucketBatch extends BaseObserver<storage.Buck
34
51
  readonly db: VersionedPowerSyncMongo;
35
52
  readonly session: mongo.ClientSession;
36
53
  protected readonly sync_rules: HydratedSyncConfig;
37
- protected readonly group_id: number;
38
- private readonly slot_name;
54
+ protected readonly replicationStreamId: number;
55
+ private readonly replicationStreamName;
56
+ /**
57
+ * Source-level setting for whether raw row data should be stored in current_data.
58
+ *
59
+ * Some sources always send complete rows (MongoDB, MySQL with binlog_row_image=full),
60
+ * in which case this is false for the whole batch. For sources where it depends on the
61
+ * table (Postgres REPLICA IDENTITY), this is true and the decision is refined per-table
62
+ * via SourceTable.storeCurrentData. The effective per-record value is the conjunction of
63
+ * the two.
64
+ */
39
65
  private readonly storeCurrentData;
40
66
  readonly skipExistingRows: boolean;
41
67
  protected readonly mapping: BucketDefinitionMapping;
68
+ protected readonly objectStorageUsageWriterId: string;
42
69
  private batch;
43
- private write_checkpoint_batch;
70
+ protected write_checkpoint_batch: storage.CustomWriteCheckpointOptions[];
44
71
  private markRecordUnavailable;
45
72
  private hooks;
46
73
  private clearedError;
47
- private tracer;
48
- /**
49
- * Last LSN received associated with a checkpoint.
50
- *
51
- * This could be either:
52
- * 1. A commit LSN.
53
- * 2. A keepalive message LSN.
54
- */
55
- protected last_checkpoint_lsn: string | null;
56
- protected persisted_op: InternalOpId | null;
74
+ protected tracer: PerformanceTracer<'storage' | 'evaluate'>;
57
75
  /**
58
76
  * Last written op, if any. This may not reflect a consistent checkpoint.
59
77
  */
60
78
  last_flushed_op: InternalOpId | null;
61
79
  /**
62
- * lastCheckpointLsn is the last consistent commit.
80
+ * LSN to resume replication from.
63
81
  *
64
- * While that is generally a "safe" point to resume from, there are cases where we may want to resume from a different point:
82
+ * This is typically the last commit LSN, but there are cases where it differs:
65
83
  * 1. After an initial snapshot, we don't have a consistent commit yet, but need to resume from the snapshot LSN.
66
84
  * 2. If "no_checkpoint_before_lsn" is set far in advance, it may take a while to reach that point. We
67
85
  * may want to resume at incremental points before that.
@@ -71,7 +89,6 @@ export declare abstract class MongoBucketBatch extends BaseObserver<storage.Buck
71
89
  resumeFromLsn: string | null;
72
90
  constructor(options: MongoBucketBatchOptions);
73
91
  addCustomWriteCheckpoint(checkpoint: storage.BatchedCustomWriteCheckpointOptions): void;
74
- get lastCheckpointLsn(): string | null;
75
92
  abstract resolveTables(options: storage.ResolveTablesOptions): Promise<storage.ResolveTablesResult>;
76
93
  protected abstract createPersistedBatch(writtenSize: number): PersistedBatch;
77
94
  protected abstract get sourceRecordStore(): SourceRecordStore;
@@ -86,12 +103,34 @@ export declare abstract class MongoBucketBatch extends BaseObserver<storage.Buck
86
103
  }): Promise<void>;
87
104
  abstract markTableSnapshotRequired(table: storage.SourceTable): Promise<void>;
88
105
  abstract markTableSnapshotDone(tables: storage.SourceTable[], no_checkpoint_before_lsn?: string): Promise<storage.SourceTable[]>;
106
+ protected abstract batchCreateCustomWriteCheckpoints(session: mongo.ClientSession, opId: InternalOpId): Promise<void>;
107
+ /** Perform any version-specific setup required before writing custom checkpoints. */
108
+ protected prepareCustomWriteCheckpoints(): Promise<void>;
89
109
  flush(options?: storage.BatchBucketFlushOptions): Promise<storage.FlushedResult | null>;
90
110
  private flushInner;
91
111
  private replicateBatch;
92
112
  private saveOperation;
93
113
  protected withTransaction(cb: () => Promise<void>): Promise<void>;
94
114
  private withReplicationTransaction;
115
+ /**
116
+ * Hook called inside the replication flush transaction, after ops have been persisted.
117
+ *
118
+ * The base implementation does nothing; v3 storage overrides this to `$max` the stream-level
119
+ * `last_persisted_op` durably within the same transaction.
120
+ */
121
+ protected onReplicationTransactionFlush(_session: mongo.ClientSession, _lastOp: InternalOpId): Promise<void>;
122
+ /**
123
+ * Called after a replication transaction has successfully committed, with the last persisted op id.
124
+ *
125
+ * v1 storage tracks this in memory to fold into the next checkpoint. v3 storage does not need it:
126
+ * the stream-level `last_persisted_op` is already advanced durably by
127
+ * {@link onReplicationTransactionFlush} within the same transaction, and checkpoints read it
128
+ * from the document.
129
+ *
130
+ * Keep calls to this adjacent to {@link withReplicationTransaction} usage - both must observe
131
+ * every path that persists ops.
132
+ */
133
+ protected recordPersistedOp(_lastOp: InternalOpId): void;
95
134
  [Symbol.asyncDispose](): Promise<void>;
96
135
  dispose(): Promise<void>;
97
136
  save(record: storage.SaveOptions): Promise<storage.FlushedResult | null>;
@@ -102,9 +141,12 @@ export declare abstract class MongoBucketBatch extends BaseObserver<storage.Buck
102
141
  truncate(sourceTables: storage.SourceTable[]): Promise<storage.FlushedResult | null>;
103
142
  truncateSingle(sourceTable: storage.SourceTable): Promise<InternalOpId>;
104
143
  updateTableProgress(table: storage.SourceTable, progress: Partial<storage.TableSnapshotStatus>): Promise<storage.SourceTable>;
105
- protected clearError(): Promise<void>;
144
+ protected clearError(session: mongo.ClientSession): Promise<void>;
106
145
  /**
107
- * Gets relevant {@link SqlEventDescriptor}s for the given {@link SourceTable}
146
+ * Gets relevant {@link HydratedEventDescriptor}s for the given {@link SourceTable}
108
147
  */
109
- protected getTableEvents(table: storage.SourceTable): SqlEventDescriptor[];
148
+ protected getTableEvents(table: storage.SourceTable): {
149
+ event: HydratedEventDescriptor;
150
+ eventId?: EventDefinitionId;
151
+ }[];
110
152
  }