@spine-event-engine/server 2.0.0-snapshot.2

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 (354) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +569 -0
  3. package/REFERENCE.md +488 -0
  4. package/dist/bus/command-bus.d.ts +61 -0
  5. package/dist/bus/command-bus.d.ts.map +1 -0
  6. package/dist/bus/command-bus.js +201 -0
  7. package/dist/bus/command-bus.js.map +1 -0
  8. package/dist/bus/command-dispatcher-registry.d.ts +33 -0
  9. package/dist/bus/command-dispatcher-registry.d.ts.map +1 -0
  10. package/dist/bus/command-dispatcher-registry.js +75 -0
  11. package/dist/bus/command-dispatcher-registry.js.map +1 -0
  12. package/dist/bus/command-dispatcher.d.ts +25 -0
  13. package/dist/bus/command-dispatcher.d.ts.map +1 -0
  14. package/dist/bus/command-dispatcher.js +15 -0
  15. package/dist/bus/command-dispatcher.js.map +1 -0
  16. package/dist/bus/command-errors.d.ts +23 -0
  17. package/dist/bus/command-errors.d.ts.map +1 -0
  18. package/dist/bus/command-errors.js +52 -0
  19. package/dist/bus/command-errors.js.map +1 -0
  20. package/dist/bus/event-bus.d.ts +113 -0
  21. package/dist/bus/event-bus.d.ts.map +1 -0
  22. package/dist/bus/event-bus.js +518 -0
  23. package/dist/bus/event-bus.js.map +1 -0
  24. package/dist/bus/event-dispatcher-origin-schemas.d.ts +17 -0
  25. package/dist/bus/event-dispatcher-origin-schemas.d.ts.map +1 -0
  26. package/dist/bus/event-dispatcher-origin-schemas.js +32 -0
  27. package/dist/bus/event-dispatcher-origin-schemas.js.map +1 -0
  28. package/dist/bus/event-dispatcher-registry.d.ts +48 -0
  29. package/dist/bus/event-dispatcher-registry.d.ts.map +1 -0
  30. package/dist/bus/event-dispatcher-registry.js +176 -0
  31. package/dist/bus/event-dispatcher-registry.js.map +1 -0
  32. package/dist/bus/event-dispatcher.d.ts +48 -0
  33. package/dist/bus/event-dispatcher.d.ts.map +1 -0
  34. package/dist/bus/event-dispatcher.js +15 -0
  35. package/dist/bus/event-dispatcher.js.map +1 -0
  36. package/dist/context/bounded-context.d.ts +606 -0
  37. package/dist/context/bounded-context.d.ts.map +1 -0
  38. package/dist/context/bounded-context.js +1780 -0
  39. package/dist/context/bounded-context.js.map +1 -0
  40. package/dist/context/entity-inbox.d.ts +63 -0
  41. package/dist/context/entity-inbox.d.ts.map +1 -0
  42. package/dist/context/entity-inbox.js +380 -0
  43. package/dist/context/entity-inbox.js.map +1 -0
  44. package/dist/context/local-inbox-handoff.d.ts +244 -0
  45. package/dist/context/local-inbox-handoff.d.ts.map +1 -0
  46. package/dist/context/local-inbox-handoff.js +334 -0
  47. package/dist/context/local-inbox-handoff.js.map +1 -0
  48. package/dist/context/projection-handoff.d.ts +46 -0
  49. package/dist/context/projection-handoff.d.ts.map +1 -0
  50. package/dist/context/projection-handoff.js +172 -0
  51. package/dist/context/projection-handoff.js.map +1 -0
  52. package/dist/context/tenant-index.d.ts +41 -0
  53. package/dist/context/tenant-index.d.ts.map +1 -0
  54. package/dist/context/tenant-index.js +92 -0
  55. package/dist/context/tenant-index.js.map +1 -0
  56. package/dist/delivery/conditional-pickup.d.ts +25 -0
  57. package/dist/delivery/conditional-pickup.d.ts.map +1 -0
  58. package/dist/delivery/conditional-pickup.js +26 -0
  59. package/dist/delivery/conditional-pickup.js.map +1 -0
  60. package/dist/delivery/delivery-builder.d.ts +216 -0
  61. package/dist/delivery/delivery-builder.d.ts.map +1 -0
  62. package/dist/delivery/delivery-builder.js +323 -0
  63. package/dist/delivery/delivery-builder.js.map +1 -0
  64. package/dist/delivery/delivery-lease.d.ts +15 -0
  65. package/dist/delivery/delivery-lease.d.ts.map +1 -0
  66. package/dist/delivery/delivery-lease.js +44 -0
  67. package/dist/delivery/delivery-lease.js.map +1 -0
  68. package/dist/delivery/delivery-loop.d.ts +113 -0
  69. package/dist/delivery/delivery-loop.d.ts.map +1 -0
  70. package/dist/delivery/delivery-loop.js +119 -0
  71. package/dist/delivery/delivery-loop.js.map +1 -0
  72. package/dist/delivery/delivery-monitor.d.ts +165 -0
  73. package/dist/delivery/delivery-monitor.d.ts.map +1 -0
  74. package/dist/delivery/delivery-monitor.js +168 -0
  75. package/dist/delivery/delivery-monitor.js.map +1 -0
  76. package/dist/delivery/delivery-ports.d.ts +141 -0
  77. package/dist/delivery/delivery-ports.d.ts.map +1 -0
  78. package/dist/delivery/delivery-ports.js +15 -0
  79. package/dist/delivery/delivery-ports.js.map +1 -0
  80. package/dist/delivery/delivery-run-control.d.ts +50 -0
  81. package/dist/delivery/delivery-run-control.d.ts.map +1 -0
  82. package/dist/delivery/delivery-run-control.js +66 -0
  83. package/dist/delivery/delivery-run-control.js.map +1 -0
  84. package/dist/delivery/delivery-run-coordinator.d.ts +218 -0
  85. package/dist/delivery/delivery-run-coordinator.d.ts.map +1 -0
  86. package/dist/delivery/delivery-run-coordinator.js +609 -0
  87. package/dist/delivery/delivery-run-coordinator.js.map +1 -0
  88. package/dist/delivery/delivery-storage-error.d.ts +13 -0
  89. package/dist/delivery/delivery-storage-error.d.ts.map +1 -0
  90. package/dist/delivery/delivery-storage-error.js +30 -0
  91. package/dist/delivery/delivery-storage-error.js.map +1 -0
  92. package/dist/delivery/delivery-supervisor.d.ts +175 -0
  93. package/dist/delivery/delivery-supervisor.d.ts.map +1 -0
  94. package/dist/delivery/delivery-supervisor.js +469 -0
  95. package/dist/delivery/delivery-supervisor.js.map +1 -0
  96. package/dist/delivery/delivery-worker.d.ts +180 -0
  97. package/dist/delivery/delivery-worker.d.ts.map +1 -0
  98. package/dist/delivery/delivery-worker.js +232 -0
  99. package/dist/delivery/delivery-worker.js.map +1 -0
  100. package/dist/delivery/delivery.d.ts +238 -0
  101. package/dist/delivery/delivery.d.ts.map +1 -0
  102. package/dist/delivery/delivery.js +400 -0
  103. package/dist/delivery/delivery.js.map +1 -0
  104. package/dist/delivery/inbox-records.d.ts +19 -0
  105. package/dist/delivery/inbox-records.d.ts.map +1 -0
  106. package/dist/delivery/inbox-records.js +291 -0
  107. package/dist/delivery/inbox-records.js.map +1 -0
  108. package/dist/delivery/inbox-storage.d.ts +81 -0
  109. package/dist/delivery/inbox-storage.d.ts.map +1 -0
  110. package/dist/delivery/inbox-storage.js +353 -0
  111. package/dist/delivery/inbox-storage.js.map +1 -0
  112. package/dist/delivery/inbox.d.ts +263 -0
  113. package/dist/delivery/inbox.d.ts.map +1 -0
  114. package/dist/delivery/inbox.js +172 -0
  115. package/dist/delivery/inbox.js.map +1 -0
  116. package/dist/delivery/parked-delivery-obligations.d.ts +182 -0
  117. package/dist/delivery/parked-delivery-obligations.d.ts.map +1 -0
  118. package/dist/delivery/parked-delivery-obligations.js +390 -0
  119. package/dist/delivery/parked-delivery-obligations.js.map +1 -0
  120. package/dist/delivery/shard-index.d.ts +41 -0
  121. package/dist/delivery/shard-index.d.ts.map +1 -0
  122. package/dist/delivery/shard-index.js +67 -0
  123. package/dist/delivery/shard-index.js.map +1 -0
  124. package/dist/delivery/sharded-work-registry.d.ts +114 -0
  125. package/dist/delivery/sharded-work-registry.d.ts.map +1 -0
  126. package/dist/delivery/sharded-work-registry.js +360 -0
  127. package/dist/delivery/sharded-work-registry.js.map +1 -0
  128. package/dist/entity/entity-metadata.d.ts +173 -0
  129. package/dist/entity/entity-metadata.d.ts.map +1 -0
  130. package/dist/entity/entity-metadata.js +187 -0
  131. package/dist/entity/entity-metadata.js.map +1 -0
  132. package/dist/entity/entity-storage-descriptor.d.ts +64 -0
  133. package/dist/entity/entity-storage-descriptor.d.ts.map +1 -0
  134. package/dist/entity/entity-storage-descriptor.js +227 -0
  135. package/dist/entity/entity-storage-descriptor.js.map +1 -0
  136. package/dist/entity/entity-transaction.d.ts +372 -0
  137. package/dist/entity/entity-transaction.d.ts.map +1 -0
  138. package/dist/entity/entity-transaction.js +413 -0
  139. package/dist/entity/entity-transaction.js.map +1 -0
  140. package/dist/entity/entity-transition-validation.d.ts +47 -0
  141. package/dist/entity/entity-transition-validation.d.ts.map +1 -0
  142. package/dist/entity/entity-transition-validation.js +327 -0
  143. package/dist/entity/entity-transition-validation.js.map +1 -0
  144. package/dist/entity/entity.d.ts +499 -0
  145. package/dist/entity/entity.d.ts.map +1 -0
  146. package/dist/entity/entity.js +829 -0
  147. package/dist/entity/entity.js.map +1 -0
  148. package/dist/entity/implicit-required-id.d.ts +15 -0
  149. package/dist/entity/implicit-required-id.d.ts.map +1 -0
  150. package/dist/entity/implicit-required-id.js +123 -0
  151. package/dist/entity/implicit-required-id.js.map +1 -0
  152. package/dist/entity/spec-scanner.d.ts +14 -0
  153. package/dist/entity/spec-scanner.d.ts.map +1 -0
  154. package/dist/entity/spec-scanner.js +37 -0
  155. package/dist/entity/spec-scanner.js.map +1 -0
  156. package/dist/handler/build-time-handler-analyzer.d.ts +150 -0
  157. package/dist/handler/build-time-handler-analyzer.d.ts.map +1 -0
  158. package/dist/handler/build-time-handler-analyzer.js +1101 -0
  159. package/dist/handler/build-time-handler-analyzer.js.map +1 -0
  160. package/dist/handler/command-registration-readiness.d.ts +99 -0
  161. package/dist/handler/command-registration-readiness.d.ts.map +1 -0
  162. package/dist/handler/command-registration-readiness.js +118 -0
  163. package/dist/handler/command-registration-readiness.js.map +1 -0
  164. package/dist/handler/event-handler-filter.d.ts +43 -0
  165. package/dist/handler/event-handler-filter.d.ts.map +1 -0
  166. package/dist/handler/event-handler-filter.js +128 -0
  167. package/dist/handler/event-handler-filter.js.map +1 -0
  168. package/dist/handler/event-registration-readiness.d.ts +196 -0
  169. package/dist/handler/event-registration-readiness.d.ts.map +1 -0
  170. package/dist/handler/event-registration-readiness.js +187 -0
  171. package/dist/handler/event-registration-readiness.js.map +1 -0
  172. package/dist/handler/external.d.ts +10 -0
  173. package/dist/handler/external.d.ts.map +1 -0
  174. package/dist/handler/external.js +15 -0
  175. package/dist/handler/external.js.map +1 -0
  176. package/dist/handler/generated-handler-registry.d.ts +154 -0
  177. package/dist/handler/generated-handler-registry.d.ts.map +1 -0
  178. package/dist/handler/generated-handler-registry.js +223 -0
  179. package/dist/handler/generated-handler-registry.js.map +1 -0
  180. package/dist/handler/generated-registry-discovery.d.ts +94 -0
  181. package/dist/handler/generated-registry-discovery.d.ts.map +1 -0
  182. package/dist/handler/generated-registry-discovery.js +228 -0
  183. package/dist/handler/generated-registry-discovery.js.map +1 -0
  184. package/dist/handler/generated-registry-writer.d.ts +58 -0
  185. package/dist/handler/generated-registry-writer.d.ts.map +1 -0
  186. package/dist/handler/generated-registry-writer.js +458 -0
  187. package/dist/handler/generated-registry-writer.js.map +1 -0
  188. package/dist/handler/handler-codegen.d.ts +48 -0
  189. package/dist/handler/handler-codegen.d.ts.map +1 -0
  190. package/dist/handler/handler-codegen.js +214 -0
  191. package/dist/handler/handler-codegen.js.map +1 -0
  192. package/dist/handler/handler-decorators.d.ts +134 -0
  193. package/dist/handler/handler-decorators.d.ts.map +1 -0
  194. package/dist/handler/handler-decorators.js +239 -0
  195. package/dist/handler/handler-decorators.js.map +1 -0
  196. package/dist/handler/handler-metadata.d.ts +510 -0
  197. package/dist/handler/handler-metadata.d.ts.map +1 -0
  198. package/dist/handler/handler-metadata.js +391 -0
  199. package/dist/handler/handler-metadata.js.map +1 -0
  200. package/dist/handler/registration-readiness-metadata.d.ts +68 -0
  201. package/dist/handler/registration-readiness-metadata.d.ts.map +1 -0
  202. package/dist/handler/registration-readiness-metadata.js +170 -0
  203. package/dist/handler/registration-readiness-metadata.js.map +1 -0
  204. package/dist/handler/rejection-source.d.ts +11 -0
  205. package/dist/handler/rejection-source.d.ts.map +1 -0
  206. package/dist/handler/rejection-source.js +25 -0
  207. package/dist/handler/rejection-source.js.map +1 -0
  208. package/dist/index.d.ts +46 -0
  209. package/dist/index.d.ts.map +1 -0
  210. package/dist/index.js +54 -0
  211. package/dist/index.js.map +1 -0
  212. package/dist/integration/external-messages.d.ts +49 -0
  213. package/dist/integration/external-messages.d.ts.map +1 -0
  214. package/dist/integration/external-messages.js +112 -0
  215. package/dist/integration/external-messages.js.map +1 -0
  216. package/dist/integration/integration-broker.d.ts +74 -0
  217. package/dist/integration/integration-broker.d.ts.map +1 -0
  218. package/dist/integration/integration-broker.js +444 -0
  219. package/dist/integration/integration-broker.js.map +1 -0
  220. package/dist/integration/third-party-context.d.ts +56 -0
  221. package/dist/integration/third-party-context.d.ts.map +1 -0
  222. package/dist/integration/third-party-context.js +130 -0
  223. package/dist/integration/third-party-context.js.map +1 -0
  224. package/dist/repository/command-errors.d.ts +25 -0
  225. package/dist/repository/command-errors.d.ts.map +1 -0
  226. package/dist/repository/command-errors.js +43 -0
  227. package/dist/repository/command-errors.js.map +1 -0
  228. package/dist/repository/command-routing.d.ts +72 -0
  229. package/dist/repository/command-routing.d.ts.map +1 -0
  230. package/dist/repository/command-routing.js +98 -0
  231. package/dist/repository/command-routing.js.map +1 -0
  232. package/dist/repository/commit-fence.d.ts +22 -0
  233. package/dist/repository/commit-fence.d.ts.map +1 -0
  234. package/dist/repository/commit-fence.js +37 -0
  235. package/dist/repository/commit-fence.js.map +1 -0
  236. package/dist/repository/event-routing.d.ts +71 -0
  237. package/dist/repository/event-routing.d.ts.map +1 -0
  238. package/dist/repository/event-routing.js +96 -0
  239. package/dist/repository/event-routing.js.map +1 -0
  240. package/dist/repository/primitive-id.d.ts +86 -0
  241. package/dist/repository/primitive-id.d.ts.map +1 -0
  242. package/dist/repository/primitive-id.js +110 -0
  243. package/dist/repository/primitive-id.js.map +1 -0
  244. package/dist/repository/repository.d.ts +670 -0
  245. package/dist/repository/repository.d.ts.map +1 -0
  246. package/dist/repository/repository.js +3298 -0
  247. package/dist/repository/repository.js.map +1 -0
  248. package/dist/repository/routing-declarations.d.ts +75 -0
  249. package/dist/repository/routing-declarations.d.ts.map +1 -0
  250. package/dist/repository/routing-declarations.js +101 -0
  251. package/dist/repository/routing-declarations.js.map +1 -0
  252. package/dist/repository/state-update-routing.d.ts +66 -0
  253. package/dist/repository/state-update-routing.d.ts.map +1 -0
  254. package/dist/repository/state-update-routing.js +91 -0
  255. package/dist/repository/state-update-routing.js.map +1 -0
  256. package/dist/runtime/runtime.d.ts +156 -0
  257. package/dist/runtime/runtime.d.ts.map +1 -0
  258. package/dist/runtime/runtime.js +215 -0
  259. package/dist/runtime/runtime.js.map +1 -0
  260. package/dist/runtime/signal-intake.d.ts +84 -0
  261. package/dist/runtime/signal-intake.d.ts.map +1 -0
  262. package/dist/runtime/signal-intake.js +94 -0
  263. package/dist/runtime/signal-intake.js.map +1 -0
  264. package/dist/runtime/signal-metadata.d.ts +242 -0
  265. package/dist/runtime/signal-metadata.d.ts.map +1 -0
  266. package/dist/runtime/signal-metadata.js +368 -0
  267. package/dist/runtime/signal-metadata.js.map +1 -0
  268. package/dist/server/browser-server.d.ts +49 -0
  269. package/dist/server/browser-server.d.ts.map +1 -0
  270. package/dist/server/browser-server.js +633 -0
  271. package/dist/server/browser-server.js.map +1 -0
  272. package/dist/server/durable-subscription-bindings.d.ts +122 -0
  273. package/dist/server/durable-subscription-bindings.d.ts.map +1 -0
  274. package/dist/server/durable-subscription-bindings.js +524 -0
  275. package/dist/server/durable-subscription-bindings.js.map +1 -0
  276. package/dist/server/environment-attachment.d.ts +356 -0
  277. package/dist/server/environment-attachment.d.ts.map +1 -0
  278. package/dist/server/environment-attachment.js +2061 -0
  279. package/dist/server/environment-attachment.js.map +1 -0
  280. package/dist/server/environment-delivery-records.d.ts +77 -0
  281. package/dist/server/environment-delivery-records.d.ts.map +1 -0
  282. package/dist/server/environment-delivery-records.js +282 -0
  283. package/dist/server/environment-delivery-records.js.map +1 -0
  284. package/dist/server/environment-delivery-worker.d.ts +161 -0
  285. package/dist/server/environment-delivery-worker.d.ts.map +1 -0
  286. package/dist/server/environment-delivery-worker.js +664 -0
  287. package/dist/server/environment-delivery-worker.js.map +1 -0
  288. package/dist/server/environment.d.ts +43 -0
  289. package/dist/server/environment.d.ts.map +1 -0
  290. package/dist/server/environment.js +90 -0
  291. package/dist/server/environment.js.map +1 -0
  292. package/dist/server/managed-child-subscription.d.ts +11 -0
  293. package/dist/server/managed-child-subscription.d.ts.map +1 -0
  294. package/dist/server/managed-child-subscription.js +44 -0
  295. package/dist/server/managed-child-subscription.js.map +1 -0
  296. package/dist/server/managed-server-application.d.ts +324 -0
  297. package/dist/server/managed-server-application.d.ts.map +1 -0
  298. package/dist/server/managed-server-application.js +937 -0
  299. package/dist/server/managed-server-application.js.map +1 -0
  300. package/dist/server/node-coordinator.d.ts +191 -0
  301. package/dist/server/node-coordinator.d.ts.map +1 -0
  302. package/dist/server/node-coordinator.js +552 -0
  303. package/dist/server/node-coordinator.js.map +1 -0
  304. package/dist/server/process-server-coordinator.d.ts +15 -0
  305. package/dist/server/process-server-coordinator.d.ts.map +1 -0
  306. package/dist/server/process-server-coordinator.js +112 -0
  307. package/dist/server/process-server-coordinator.js.map +1 -0
  308. package/dist/server/reserved-spine-rpc-paths.json +8 -0
  309. package/dist/server/retryable-close.d.ts +28 -0
  310. package/dist/server/retryable-close.d.ts.map +1 -0
  311. package/dist/server/retryable-close.js +129 -0
  312. package/dist/server/retryable-close.js.map +1 -0
  313. package/dist/server/server-environment.d.ts +180 -0
  314. package/dist/server/server-environment.d.ts.map +1 -0
  315. package/dist/server/server-environment.js +418 -0
  316. package/dist/server/server-environment.js.map +1 -0
  317. package/dist/server/server-log.d.ts +18 -0
  318. package/dist/server/server-log.d.ts.map +1 -0
  319. package/dist/server/server-log.js +96 -0
  320. package/dist/server/server-log.js.map +1 -0
  321. package/dist/server/server.d.ts +389 -0
  322. package/dist/server/server.d.ts.map +1 -0
  323. package/dist/server/server.js +752 -0
  324. package/dist/server/server.js.map +1 -0
  325. package/dist/services/spine-services.d.ts +88 -0
  326. package/dist/services/spine-services.d.ts.map +1 -0
  327. package/dist/services/spine-services.js +1586 -0
  328. package/dist/services/spine-services.js.map +1 -0
  329. package/dist/stand/stand.d.ts +294 -0
  330. package/dist/stand/stand.d.ts.map +1 -0
  331. package/dist/stand/stand.js +680 -0
  332. package/dist/stand/stand.js.map +1 -0
  333. package/dist/stand/subscription-observer.d.ts +53 -0
  334. package/dist/stand/subscription-observer.d.ts.map +1 -0
  335. package/dist/stand/subscription-observer.js +444 -0
  336. package/dist/stand/subscription-observer.js.map +1 -0
  337. package/dist/stand/subscription-records.d.ts +12 -0
  338. package/dist/stand/subscription-records.d.ts.map +1 -0
  339. package/dist/stand/subscription-records.js +99 -0
  340. package/dist/stand/subscription-records.js.map +1 -0
  341. package/dist/stand/subscription-registry.d.ts +285 -0
  342. package/dist/stand/subscription-registry.d.ts.map +1 -0
  343. package/dist/stand/subscription-registry.js +403 -0
  344. package/dist/stand/subscription-registry.js.map +1 -0
  345. package/dist/stand/subscription-runtime.d.ts +102 -0
  346. package/dist/stand/subscription-runtime.d.ts.map +1 -0
  347. package/dist/stand/subscription-runtime.js +380 -0
  348. package/dist/stand/subscription-runtime.js.map +1 -0
  349. package/dist/testing/index.d.ts +14 -0
  350. package/dist/testing/index.d.ts.map +1 -0
  351. package/dist/testing/index.js +34 -0
  352. package/dist/testing/index.js.map +1 -0
  353. package/dist/tsconfig.tsbuildinfo +1 -0
  354. package/package.json +65 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"environment-delivery-worker.js","sourceRoot":"","sources":["../../src/server/environment-delivery-worker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;;AAEH,OAAO,EACL,cAAc,GAGf,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAKvE,OAAO,EACL,kBAAkB,GAKnB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAC1F,OAAO,EACL,QAAQ,GAGT,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,kBAAkB,EAClB,wBAAwB,GAGzB,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAExD,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,0BAA0B,KAAK,MAAM,CAAC;AACvE,IAAI,qBAAqB,GAAG,KAAK,CAAC;AAClC,IAAI,wBAAwB,GAAG,CAAC,YAAY,CAAC;AAC7C,MAAM,yBAAyB,GAAG,IAAI,GAAG,EAAc,CAAC;AAExD;;;;GAIG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAGvC,MAAM,CAAC,MAAM,CAAC;IACjB,oBAAoB;QAClB,wBAAwB,GAAG,IAAI,CAAC;QAChC,KAAK,MAAM,KAAK,IAAI,yBAAyB;YAAE,KAAK,EAAE,CAAC;QACvD,yBAAyB,CAAC,KAAK,EAAE,CAAC;IACpC,CAAC;IACD,kBAAkB;QAChB,qBAAqB,GAAG,IAAI,CAAC;QAC7B,yBAAyB,CAAC,KAAK,EAAE,CAAC;IACpC,CAAC;CACF,CAAC,CAAC;AAyFH;;;;GAIG;AACH,MAAM,OAAO,yBAAyB;IAC3B,QAAQ,GAAG,IAAI,GAAG,EAA6B,CAAC;IAChD,WAAW,CAA4B;IACvC,eAAe,GAAG,IAAI,GAAG,EAAU,CAAC;IACpC,mBAAmB,GAAG,IAAI,GAAG,EAAU,CAAC;IACxC,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;IACnC,aAAa,CAIC;IACd,OAAO,CAAqB;IAC5B,MAAM,CAAuC;IAEtD;;;;OAIG;IACH,YAAY,UAA4C,EAAE;QACxD,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,YAAY,IAAI,yBAAyB,CAAC,YAAY,CAAC;QACpF,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;QAC5B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;QAC9B,IAAI,CAAC,WAAW,GAAG,IAAI,yBAAyB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9E,CAAC;IAED;;;OAGG;IACH,GAAG,CAAC,OAAmC;QACrC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YACzC,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;QACvE,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACtE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC;YACH,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAChC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACxC,MAAM,KAAK,CAAC;QACd,CAAC;QACD,KAAK,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;IAChC,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CACH,UAAiC,EACjC,MAA6B;QAE7B,MAAM,KAAK,GAAG,yBAAyB,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACrE,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC5C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC,CAAC;QACpF,CAAC;QACD,OAAO,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;YAC9D,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;YAC/B,OAAO,QAAQ,CAAC;QAClB,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,KAAuB;QAC5B,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACtC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC9D,CAAC;IAED;;OAEG;IACH,IAAI;QACF,MAAM,QAAQ,GAAc,EAAE,CAAC;QAC/B,KAAK,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC1C,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACjC,SAAS;YACX,CAAC;YACD,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;QACD,IAAI,CAAC;YACH,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;QAC1B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC;QACD,yBAAyB,CAAC,aAAa,CAAC,QAAQ,EAAE,0CAA0C,CAAC,CAAC;IAChG,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,YAAY;QAChB,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;YACxE,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE;SAChC,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,MAAM;QACV,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC;YACvC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,EAAE,CAC/C,yBAAyB,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CACzD;YACD,yBAAyB,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;SACnE,CAAC,CAAC;QACH,MAAM,QAAQ,GAAc,EAAE,CAAC;QAC/B,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,IAAI,MAAM,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;gBACjC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAiB,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;QACD,yBAAyB,CAAC,aAAa,CACrC,QAAQ,EACR,gDAAgD,CACjD,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,UAAU,CAAC,SAA4B;QACrC,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YACrC,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACtC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;YACnE,CAAC;YACD,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;QACzB,CAAC,CAAC,CAAC;QACH,MAAM,QAAQ,GAAc,EAAE,CAAC;QAC/B,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QACxC,KAAK,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,QAAQ,EAAE,CAAC;YACvC,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACjC,SAAS;YACX,CAAC;YACD,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;QACD,yBAAyB,CAAC,aAAa,CACrC,QAAQ,EACR,8CAA8C,CAC/C,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,kBAAkB,CAAC,SAA4B;QACnD,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,CAAC;YACnE,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,SAAS,CAAC;SAC/C,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,YAAY,CAAC,SAA4B;QAC7C,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QACtF,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CACtC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,yBAAyB,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CACvF,CAAC;QACF,MAAM,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QAC/C,KAAK,MAAM,EAAE,GAAG,EAAE,IAAI,QAAQ,EAAE,CAAC;YAC/B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC1B,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjC,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACrC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAClC,CAAC;QACD,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAC1C,MAAM,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAiB,CAAC,CAAC,CAAC,CAAC,EAAE,CAC/D,CAAC;QACF,yBAAyB,CAAC,aAAa,CACrC,QAAQ,EACR,oDAAoD,CACrD,CAAC;IACJ,CAAC;IAED,eAAe,CAAC,GAAW;QACzB,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACtC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;QACnE,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,UAAU,CAAC,GAAW,EAAE,MAAyB,EAAE,QAAmB;QACpE,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACnC,IAAI,CAAC;gBACH,MAAM,CAAC,IAAI,EAAE,CAAC;gBACd,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAChC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACvB,CAAC;QACH,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACvC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACpC,CAAC;QACD,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACvE,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;CACF;AAWD,MAAM,yBAAyB;IACpB,OAAO,GAAG,IAAI,GAAG,EAA0C,CAAC;IAC5D,MAAM,CAAuC;IAC7C,OAAO,CAAqB;IAErC,YAAY,KAAgC,EAAE,MAAe;QAC3D,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IAED,GAAG,CAAC,OAAmC;QACrC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAwB,CAAC;QAChD,KAAK,MAAM,KAAK,IAAI,yBAAyB,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3E,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YAChD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACrC,CAAC;QACD,IAAI,OAAO,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;QAClF,CAAC;QACD,KAAK,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YAC1D,IAAI,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAClC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,KAAK,GAAG,yBAAyB,CAAC,qBAAqB,CACrD,OAAO,EACP,MAAM,EACN,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,OAAO,CACb,CAAC;gBACF,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YAC/B,CAAC;YACD,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IAED,MAAM,CAAC,QAAgB;QACrB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;YAAE,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACpE,CAAC;IAED,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,wBAAwB,EAAE,CAAC;YAC9B,yBAAyB,CAAC,GAAG,CAAC,GAAG,EAAE;gBACjC,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;YACpB,CAAC,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QACD,IAAI,qBAAqB;YAAE,OAAO;QAClC,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACjF,CAAC;IAED,MAAM,CAAC,QAAgB,EAAE,KAAiB;QACxC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAC3E,CAAC;IAED,WAAW,CAAC,SAA4B;QACtC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;YAAE,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAC1E,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,SAA4B;QACnD,MAAM,OAAO,CAAC,GAAG,CACf,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAClF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,SAA4B;QAC7C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACxC,MAAM,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YACpC,IAAI,KAAK,CAAC,KAAK;gBAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;IAED,IAAI;QACF,MAAM,QAAQ,GAAc,EAAE,CAAC;QAC/B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;YAC1C,IAAI,CAAC;gBACH,KAAK,CAAC,IAAI,EAAE,CAAC;YACf,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACvB,CAAC;QACH,CAAC;QACD,yBAAyB,CAAC,aAAa,CACrC,QAAQ,EACR,8CAA8C,CAC/C,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CACtC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,CACnE,CAAC;QACF,yBAAyB,CAAC,aAAa,CACrC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAiB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC7F,oDAAoD,CACrD,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAM;QACV,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CACtC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE,CAC1C,yBAAyB,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CACxD,CACF,CAAC;QACF,yBAAyB,CAAC,aAAa,CACrC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAiB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC7F,oDAAoD,CACrD,CAAC;IACJ,CAAC;IAED,SAAS,CAAC,QAAgB,EAAE,UAAkB;QAC5C,OAAO,IAAI,CAAC,MAAM,EAAE,MAAM,KAAK,SAAS;YACtC,CAAC,CAAC,GAAG,QAAQ,IAAI,MAAM,CAAC,UAAU,CAAC,EAAE;YACrC,CAAC,CAAC,UAAU,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;IACrC,CAAC;CACF;AAED,MAAM,8BAA8B;IACzB,OAAO,CAAiB;IACxB,WAAW,CAAqB;IAChC,OAAO,GAAG,IAAI,GAAG,EAAkC,CAAC;IACpD,eAAe,GAAG,IAAI,GAAG,EAAU,CAAC;IACpC,OAAO,GAAG,IAAI,GAAG,EAA8B,CAAC;IAChD,SAAS,CAAuD;IAChE,UAAU,CAAS;IAC5B,MAAM,CAA4B;IAClC,QAAQ,GAAG,KAAK,CAAC;IACjB,MAAM,CAA4B;IAElC,YAAY,OAKX;QACC,4FAA4F;QAC5F,oEAAoE;QACpE,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC;QACjC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC;QAChC,IAAI,CAAC,SAAS,GAAG,IAAI,GAAG,CACtB,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,IAAI,GAAG,EAAsC,CAAC,CAAC,CAC5F,CAAC;QACF,IAAI,CAAC,OAAO;YACV,OAAO,CAAC,MAAM,KAAK,SAAS;gBAC1B,CAAC,CAAC,IAAI,mBAAmB,CAAC,OAAO,CAAC,MAAM,CAAC;gBACzC,CAAC,CAAC,yBAAyB,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC9D,IAAI,CAAC,WAAW,GAAG,IAAI,kBAAkB,CAAC;YACxC,MAAM,EAAE,IAAI,CAAC,OAAO;YACpB,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;SAC7C,CAAC,CAAC;QACH,wBAAwB,CAAC,gBAAgB,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;QAChG,wBAAwB,CAAC,mBAAmB,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE;YACvE,IAAI,CAAC,+BAA+B,CAAC,KAAK,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;QACH,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACjC,wBAAwB,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IAED,GAAG,CAAC,QAAgB,EAAE,OAAmC,EAAE,MAA6B;QACtF,IAAI,IAAI,CAAC,OAAO,YAAY,mBAAmB;YAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC1E,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnC,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,KAAK,IAAI,CAAC,UAAU;gBAAE,SAAS;YAC5D,MAAM,GAAG,GAAG,EAA8B,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC5D,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;YAC3C,MAAM,CAAC,IAAI,CAAC;gBACV,QAAQ;gBACR,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,SAAS,EACP,OAAO,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS;oBACnC,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC;aAC/D,CAAC,CAAC;YACH,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,CAAC;IACjC,CAAC;IAED,WAAW,CAAC,SAA4B;QACtC,KAAK,MAAM,QAAQ,IAAI,SAAS;YAAE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACvE,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,SAA4B;QACnD,MAAM,OAAO,CAAC,GAAG,CACf,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,CACzD,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;aAC9B,MAAM,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;aACvE,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CACrD,CACF,CACF,CAAC;QACF,MAAM,OAAO,CAAC,GAAG,CACf,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;YAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC1C,IAAI,MAAM,KAAK,SAAS;gBAAE,MAAM,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC7D,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,SAA4B;QAC7C,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QAC5B,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;QACzC,KAAK,MAAM,QAAQ,IAAI,SAAS;YAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACxD,IAAI,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;IACtC,CAAC;IAED,MAAM,CAAC,QAAgB;QACrB,KAAK,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACzC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC;YACvE,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;gBAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;;gBAC/C,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAED,KAAK;QACH,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC,CAAC;QAClF,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC9B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC/C,IAAI,IAAI,CAAC,OAAO,YAAY,mBAAmB;oBAAE,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;YACjF,CAAC,CAAC,CAAC;QACL,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,MAAM,CAAC,KAAiB;QACtB,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO;QAC1B,mDAAmD;QACnD,KAAK,IAAI,CAAC,KAAK,EAAE;aACd,IAAI,CAAC,GAAG,EAAE;YACT,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IAC5B,CAAC;IAED,IAAI;QACF,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO;QAC1B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;QACvC,uDAAuD;QACvD,KAAK,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,MAAM,IAAI,CAAC,MAAM,CAAC;QAClB,MAAM,IAAI,CAAC,MAAM,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,CAAC,IAAI,EAAE,CAAC;QACZ,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;IAC5B,CAAC;IAED,OAAO,CAAC,OAAgC;QACtC,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACpC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,iFAAiF;YACjF,oEAAoE;YACpE,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,CAAE,CAAC;YAC9D,YAAY,CAAC,GAAG,CAAC,EAA8B,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;gBACnE,KAAK;gBACL,OAAO,EAAE,OAAO,CAAC,aAAa,EAAa;aAC5C,CAAC,CAAC;QACL,CAAC;QACD,OAAO,KAAK,KAAK,SAAS,CAAC;IAC7B,CAAC;IAED,MAAM,CAAC,OAAyC;QAC9C,MAAM,GAAG,GAAG,EAA8B,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAC/D,wFAAwF;QACxF,oEAAoE;QACpE,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,CAAE,CAAC;QAC9D,oEAAoE;QACpE,MAAM,WAAW,GAAG,YAAY,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC;QAC3C,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC;QAChC,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,IAAI,GAAG,EAAiB,CAAC;QAC5E,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACzC,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE;aAC7B,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;aACnE,OAAO,CAAC,GAAG,EAAE;YACZ,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACtB,IAAI,MAAM,CAAC,IAAI,KAAK,CAAC;gBAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QACL,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACnB,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACzB,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACvC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,+BAA+B,CAAC,KAAiB;QAC/C,iFAAiF;QACjF,oEAAoE;QACpE,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,CAAE,CAAC;QACtD,KAAK,MAAM,WAAW,IAAI,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC;YAChD,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACzC,CAAC;QACD,YAAY,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC;IAED,OAAO,CAAC,OAAgC;QACtC,MAAM,GAAG,GAAG,EAA8B,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACxD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACrC,MAAM,KAAK,GAAG,EAA8B,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACrE,OAAO,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;IAC7F,CAAC;IAED,MAAM,CAAC,MAAM,CACX,MAAmD,EACnD,OAAgC;QAEhC,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,SAAS,CAAC;QAClE,MAAM,SAAS,GAAG,EAA8B,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACpE,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC;IAC/D,CAAC;IAED,MAAM,CAAC,SAAS,CAAC,OAAgC;QAC/C,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;YAAE,OAAO,SAAS,CAAC;QACnD,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,UAAU,CAAC,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5D,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC;YACvC,IAAI,QAAQ,EAAE,IAAI,KAAK,eAAe,EAAE,CAAC;gBACvC,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC;gBACtC,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC;YAClF,CAAC;YACD,IAAI,QAAQ,EAAE,IAAI,KAAK,aAAa,EAAE,CAAC;gBACrC,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,YAAY,EAAE,QAAQ,CAAC;gBACpD,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC;YAClF,CAAC;YACD,MAAM,aAAa,GAAG,UAAU,CAAC,aAAa,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,YAAY;gBACzF,EAAE,QAAQ,CAAC;YACb,OAAO,aAAa,KAAK,SAAS;gBAChC,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC;QACrD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,CAAC,GAAG,CACR,KAGC;QAED,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,EAAE,aAAa,IAAI,KAAK,CAAC,aAAa,CAAC;QAC1E,IAAI,aAAa,KAAK,SAAS;YAC7B,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;QACpE,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAC9F,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,OAAgC;QAChD,OAAO,GAAG,OAAO,CAAC,QAAQ,IAAI,EAA8B,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;IAC9E,CAAC;CACF;;AAcD,MAAM,mBAAmB;IACd,OAAO,GAAG,IAAI,GAAG,EAAsB,CAAC;IACjD,gBAAgB,GAAG,KAAK,CAAC;IAEzB,YAAY,MAA6B;QACvC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACnB,CAAC;IAED,GAAG,CAAC,MAA6B;QAC/B,KAAK,MAAM,KAAK,IAAI,MAAM;YAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,KAAK,CAAC,CAAC;IACnE,CAAC;IAED,cAAc;QACZ,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAC/B,CAAC;IAED,aAAa;QACX,OAAO,OAAO,CAAC,OAAO,CACpB,IAAI,CAAC,gBAAgB;YACnB,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBAC5C,KAAK;gBACL,MAAM,EAAE,YAAqB;gBAC7B,QAAQ,EAAE,CAAC;aACZ,CAAC,CAAC;YACL,CAAC,CAAC,EAAE,CACP,CAAC;IACJ,CAAC;IAED,mBAAmB,CAAC,OAAkC;QACpD,OAAO,yBAAyB,CAAC,mBAAmB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACxE,CAAC;IAED,cAAc;QACZ,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC7B,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,yBAAyB,GAAG,MAAM,CAAC,MAAM,CAAC;IAC9C,aAAa,CAAC,MAAe;QAC3B,IACE,MAAM,KAAK,IAAI;YACf,OAAO,MAAM,KAAK,QAAQ;YAC1B,OAAQ,MAAyB,CAAC,aAAa,KAAK,UAAU;YAC9D,OAAQ,MAAyB,CAAC,mBAAmB,KAAK,UAAU;YACpE,OAAQ,MAAyB,CAAC,cAAc,KAAK,UAAU,EAC/D,CAAC;YACD,MAAM,IAAI,SAAS,CAAC,yCAAyC,CAAC,CAAC;QACjE,CAAC;QACD,OAAO,MAAwB,CAAC;IAClC,CAAC;IACD,YAAY,CACV,OAAmC,EACnC,KAAgC,EAChC,MAAe;QAEf,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC;YAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,cAAc,EAAE,OAAO,CAAC,cAAc;YACtC,IAAI,EAAE,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI;YACpC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;SACjB,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,cAAc,CAAC;YAChC,QAAQ;YACR,MAAM,EAAE,yBAAyB,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC;YAC9D,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC;SACpF,CAAC,CAAC;QACH,OAAO,kBAAkB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;IACD,qBAAqB,CACnB,OAAmC,EACnC,MAA6B,EAC7B,KAAgC,EAChC,MAAe;QAEf,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;QAClF,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,eAAe,EAAE;aAClC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC;aAC5B,kBAAkB,CAAC,OAAO,CAAC,cAAc,CAAC;aAC1C,YAAY,CAAC,sBAAsB,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;aAC7D,QAAQ,CAAC,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAC7F,OAAO,IAAI,8BAA8B,CAAC;YACxC,QAAQ,EAAE,OAAO,CAAC,KAAK,EAAE;YACzB,MAAM;YACN,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;YAChE,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;SACpE,CAAC,CAAC;IACL,CAAC;IACD,mBAAmB,CAAC,MAA+B;QACjD,OAAO;YACL,CAAC,MAAM,CAAC,aAAa,CAAC;gBACpB,OAAO;oBACL,IAAI,EAAE,GAAG,EAAE,CACT,IAAI,OAAO,CAAwB,CAAC,OAAO,EAAE,EAAE;wBAC7C,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;4BACpB,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAkB,EAAE,CAAC,CAAC;4BACnD,OAAO;wBACT,CAAC;wBACD,MAAM,EAAE,gBAAgB,CACtB,OAAO,EACP,GAAG,EAAE;4BACH,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAkB,EAAE,CAAC,CAAC;wBACrD,CAAC,EACD,EAAE,IAAI,EAAE,IAAI,EAAE,CACf,CAAC;oBACJ,CAAC,CAAC;iBACL,CAAC;YACJ,CAAC;SACF,CAAC;IACJ,CAAC;IACD,SAAS,CAAC,MAAmC;QAC3C,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC;QAC/B,IAAI,KAAK,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,KAAK,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YAC/E,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;QACjF,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,YAAY,CAAC,MAAmC;QAC9C,MAAM,MAAM,GAAG,IAAI,GAAG,EAAsB,CAAC;QAC7C,KAAK,MAAM,EAAE,KAAK,EAAE,IAAI,MAAM,EAAE,CAAC;YAC/B,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7C,CAAC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC7C,CAAC;IACD,aAAa,CAAC,QAA4B,EAAE,OAAe;QACzD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,MAAM,QAAQ,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;QACD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC;IACD,KAAK,CAAC,OAAO,CAAC,MAA2B;QACvC,MAAM,MAAM,EAAE,CAAC;IACjB,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * The Node deployment profile selected for this module graph.
3
+ */
4
+ export declare enum EnvironmentType {
5
+ /**
6
+ * Selects the local development and test profile.
7
+ */
8
+ Local = "local",
9
+ /**
10
+ * Selects the production deployment profile.
11
+ */
12
+ Production = "production"
13
+ }
14
+ /**
15
+ * Stable process environment information for the Node runtime.
16
+ *
17
+ * The profile is derived once. Facility configuration remains the responsibility
18
+ * of {@link ServerEnvironment} so callers cannot replace a resolved process
19
+ * environment through individual servers.
20
+ */
21
+ export declare class Environment {
22
+ /**
23
+ * The selected Node deployment profile.
24
+ */
25
+ readonly type: EnvironmentType;
26
+ private constructor();
27
+ /**
28
+ * Returns this module graph's canonical Node environment.
29
+ *
30
+ * @returns The resolved process environment.
31
+ */
32
+ static instance(): Environment;
33
+ }
34
+ /**
35
+ * Provides deterministic environment controls for package tests.
36
+ *
37
+ * @internal
38
+ */
39
+ export declare const EnvironmentTests: {
40
+ readonly reset: () => void;
41
+ readonly use: (type: EnvironmentType) => void;
42
+ };
43
+ //# sourceMappingURL=environment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"environment.d.ts","sourceRoot":"","sources":["../../src/server/environment.ts"],"names":[],"mappings":"AAcA;;GAEG;AACH,oBAAY,eAAe;IAGzB;;OAEG;IACH,KAAK,UAAU;IAEf;;OAEG;IACH,UAAU,eAAe;CAC1B;AAQD;;;;;;GAMG;AACH,qBAAa,WAAW;IAGtB;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAE/B,OAAO;IAcP;;;;OAIG;IACH,MAAM,CAAC,QAAQ,IAAI,WAAW;CAK/B;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,EAAE;IAC7B,QAAQ,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC;IAC3B,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,IAAI,CAAC;CAmB9C,CAAC"}
@@ -0,0 +1,90 @@
1
+ /*
2
+ * Copyright 2026, CodeMatters. All rights reserved.
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
5
+ * in compliance with the License. You may obtain a copy of the License at
6
+ *
7
+ * https://www.apache.org/licenses/LICENSE-2.0
8
+ *
9
+ * Unless required by applicable law or agreed to in writing, software distributed under the License
10
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
11
+ * or implied. See the License for the specific language governing permissions and limitations under
12
+ * the License.
13
+ */
14
+ /**
15
+ * The Node deployment profile selected for this module graph.
16
+ */
17
+ export var EnvironmentType;
18
+ (function (EnvironmentType) {
19
+ // prettier-ignore
20
+ /**
21
+ * Selects the local development and test profile.
22
+ */
23
+ EnvironmentType["Local"] = "local";
24
+ /**
25
+ * Selects the production deployment profile.
26
+ */
27
+ EnvironmentType["Production"] = "production";
28
+ })(EnvironmentType || (EnvironmentType = {}));
29
+ let resolvedEnvironment;
30
+ let resetLocalTest;
31
+ let useEnvironmentTest = () => {
32
+ throw new Error("Environment test controls are unavailable.");
33
+ };
34
+ /**
35
+ * Stable process environment information for the Node runtime.
36
+ *
37
+ * The profile is derived once. Facility configuration remains the responsibility
38
+ * of {@link ServerEnvironment} so callers cannot replace a resolved process
39
+ * environment through individual servers.
40
+ */
41
+ export class Environment {
42
+ // prettier-ignore
43
+ /**
44
+ * The selected Node deployment profile.
45
+ */
46
+ type;
47
+ constructor(type) {
48
+ this.type = type;
49
+ Object.freeze(this);
50
+ }
51
+ static {
52
+ resetLocalTest = () => {
53
+ resolvedEnvironment = new Environment(EnvironmentType.Local);
54
+ };
55
+ useEnvironmentTest = (type) => {
56
+ resolvedEnvironment = new Environment(type);
57
+ };
58
+ }
59
+ /**
60
+ * Returns this module graph's canonical Node environment.
61
+ *
62
+ * @returns The resolved process environment.
63
+ */
64
+ static instance() {
65
+ return (resolvedEnvironment ??= new Environment(process.env.NODE_ENV === "production" ? EnvironmentType.Production : EnvironmentType.Local));
66
+ }
67
+ }
68
+ /**
69
+ * Provides deterministic environment controls for package tests.
70
+ *
71
+ * @internal
72
+ */
73
+ export const EnvironmentTests = Object.freeze({
74
+ // prettier-ignore
75
+ /**
76
+ * Restores local environment state before the next singleton lookup.
77
+ */
78
+ reset() {
79
+ resetLocalTest();
80
+ },
81
+ /**
82
+ * Selects one environment type before the next singleton lookup.
83
+ *
84
+ * @param type Supplies the test environment type.
85
+ */
86
+ use(type) {
87
+ useEnvironmentTest(type);
88
+ },
89
+ });
90
+ //# sourceMappingURL=environment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"environment.js","sourceRoot":"","sources":["../../src/server/environment.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH;;GAEG;AACH,MAAM,CAAN,IAAY,eAYX;AAZD,WAAY,eAAe;IACzB,kBAAkB;IAElB;;OAEG;IACH,kCAAe,CAAA;IAEf;;OAEG;IACH,4CAAyB,CAAA;AAC3B,CAAC,EAZW,eAAe,KAAf,eAAe,QAY1B;AAED,IAAI,mBAA4C,CAAC;AACjD,IAAI,cAAwC,CAAC;AAC7C,IAAI,kBAAkB,GAAoC,GAAG,EAAE;IAC7D,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;AAChE,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,OAAO,WAAW;IACtB,kBAAkB;IAElB;;OAEG;IACM,IAAI,CAAkB;IAE/B,YAAoB,IAAqB;QACvC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IAED;QACE,cAAc,GAAG,GAAG,EAAE;YACpB,mBAAmB,GAAG,IAAI,WAAW,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QAC/D,CAAC,CAAC;QACF,kBAAkB,GAAG,CAAC,IAAI,EAAE,EAAE;YAC5B,mBAAmB,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,QAAQ;QACb,OAAO,CAAC,mBAAmB,KAAK,IAAI,WAAW,CAC7C,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,CAAC,CAAC,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAC3F,CAAC,CAAC;IACL,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAGzB,MAAM,CAAC,MAAM,CAAC;IAChB,kBAAkB;IAElB;;OAEG;IACH,KAAK;QACH,cAAc,EAAE,CAAC;IACnB,CAAC;IAED;;;;OAIG;IACH,GAAG,CAAC,IAAqB;QACvB,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Coordinates private managed-child subscription installation notification.
3
+ *
4
+ * @internal
5
+ */
6
+ export declare const managedChildSubscriptionAccess: Readonly<{
7
+ install(onInstalled: (id: string) => void): void;
8
+ clear(): void;
9
+ installed(id: string): void;
10
+ }>;
11
+ //# sourceMappingURL=managed-child-subscription.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"managed-child-subscription.d.ts","sourceRoot":"","sources":["../../src/server/managed-child-subscription.ts"],"names":[],"mappings":"AAwBA;;;;GAIG;AACH,eAAO,MAAM,8BAA8B,EAAE,QAAQ,CAAC;IACpD,OAAO,CAAC,WAAW,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAAC;IACjD,KAAK,IAAI,IAAI,CAAC;IACd,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B,CAcC,CAAC"}
@@ -0,0 +1,44 @@
1
+ /*
2
+ * Copyright 2026, CodeMatters. All rights reserved.
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
5
+ * in compliance with the License. You may obtain a copy of the License at
6
+ *
7
+ * https://www.apache.org/licenses/LICENSE-2.0
8
+ *
9
+ * Unless required by applicable law or agreed to in writing, software distributed under the License
10
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
11
+ * or implied. See the License for the specific language governing permissions and limitations under
12
+ * the License.
13
+ */
14
+ /**
15
+ * Private bridge from the normal local subscription activation point to the
16
+ * managed-child lifecycle. It deliberately carries only a child subscription
17
+ * identity; the public subscription update stream remains untouched.
18
+ *
19
+ * @internal
20
+ */
21
+ let installed;
22
+ let reported = new Set();
23
+ /**
24
+ * Coordinates private managed-child subscription installation notification.
25
+ *
26
+ * @internal
27
+ */
28
+ export const managedChildSubscriptionAccess = Object.freeze({
29
+ install(onInstalled) {
30
+ installed = onInstalled;
31
+ reported = new Set();
32
+ },
33
+ clear() {
34
+ installed = undefined;
35
+ reported.clear();
36
+ },
37
+ installed(id) {
38
+ if (installed === undefined || reported.has(id))
39
+ return;
40
+ reported.add(id);
41
+ installed(id);
42
+ },
43
+ });
44
+ //# sourceMappingURL=managed-child-subscription.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"managed-child-subscription.js","sourceRoot":"","sources":["../../src/server/managed-child-subscription.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH;;;;;;GAMG;AACH,IAAI,SAA6C,CAAC;AAClD,IAAI,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;AAEjC;;;;GAIG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAItC,MAAM,CAAC,MAAM,CAAC;IACjB,OAAO,CAAC,WAAW;QACjB,SAAS,GAAG,WAAW,CAAC;QACxB,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC;IACvB,CAAC;IACD,KAAK;QACH,SAAS,GAAG,SAAS,CAAC;QACtB,QAAQ,CAAC,KAAK,EAAE,CAAC;IACnB,CAAC;IACD,SAAS,CAAC,EAAE;QACV,IAAI,SAAS,KAAK,SAAS,IAAI,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAAE,OAAO;QACxD,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACjB,SAAS,CAAC,EAAE,CAAC,CAAC;IAChB,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,324 @@
1
+ import { type ChildProcess } from "node:child_process";
2
+ import { type RunningServer } from "./server.js";
3
+ import { NodeCoordinator, type ReadyCoordinatorMember } from "./node-coordinator.js";
4
+ import { InMemorySubscriptionRegistry } from "../stand/subscription-registry.js";
5
+ import type { Subscription } from "@spine-event-engine/proto/client";
6
+ /**
7
+ *
8
+ * Configures bounded replacement after an unexpected replica exit.
9
+ */
10
+ export interface ManagedServerRestartOptions {
11
+ /**
12
+ *
13
+ * Delays the first replacement attempt. Defaults to 250 milliseconds.
14
+ */
15
+ readonly initialDelayMs?: number;
16
+ /**
17
+ *
18
+ * Limits replacement delay to 30 seconds.
19
+ */
20
+ readonly maximumDelayMs?: number;
21
+ /**
22
+ *
23
+ * Resets replacement delay after 60 seconds of READY status.
24
+ */
25
+ readonly healthyReadyMs?: number;
26
+ /**
27
+ *
28
+ * Limits concurrent child starts to the smaller of four and processCount.
29
+ */
30
+ readonly concurrentStarts?: number;
31
+ }
32
+ /**
33
+ *
34
+ * Configures one locally assembled complete-replica application.
35
+ */
36
+ export interface ManagedServerApplicationOptions {
37
+ /**
38
+ *
39
+ * Specifies the number of complete application replicas to start.
40
+ */
41
+ readonly processCount: number;
42
+ /**
43
+ *
44
+ * Hosts the front-facing Coordinator listener. Defaults to `127.0.0.1`.
45
+ */
46
+ readonly host?: string;
47
+ /**
48
+ *
49
+ * Selects the known front-facing Coordinator listener port.
50
+ */
51
+ readonly port: number;
52
+ /**
53
+ *
54
+ * Identifies the ESM entry module invoked in parent and child processes.
55
+ */
56
+ readonly moduleUrl: string;
57
+ /**
58
+ *
59
+ * Builds one complete local application server in a child process.
60
+ *
61
+ * The framework owns the returned `Server` for the managed child lifetime.
62
+ * Every assembled Bounded Context must use its actual
63
+ * `InMemorySubscriptionRegistry`: managed mode rejects persistent and custom
64
+ * registries, then closes the assembled server before the child can report
65
+ * READY. This prevents child-local durable subscription ownership.
66
+ *
67
+ * @param options Supplies the child-only loopback listener address.
68
+ * @returns The assembled local application server.
69
+ */
70
+ readonly createServer: (options: {
71
+ /**
72
+ *
73
+ * Identifies the loopback listener host.
74
+ */
75
+ readonly host: string;
76
+ /**
77
+ *
78
+ * Requests an ephemeral loopback listener port.
79
+ */
80
+ readonly port: number;
81
+ }) => Promise<RunningServer>;
82
+ /**
83
+ *
84
+ * Completes child-local prerequisites after local server assembly.
85
+ *
86
+ * This callback runs only in a managed child. It is deliberately lazy so a
87
+ * parent never starts application synchronization work. Completion lets the
88
+ * child report `SYNCHRONIZING`; final Delivery admission and `READY` still
89
+ * wait for the parent Coordinator to activate the child.
90
+ *
91
+ * @returns Completion after child-local prerequisites are established.
92
+ */
93
+ readonly synchronize?: () => Promise<void>;
94
+ /**
95
+ *
96
+ * Configures bounded private process replacement.
97
+ */
98
+ readonly restart?: ManagedServerRestartOptions;
99
+ }
100
+ /**
101
+ *
102
+ * Represents one managed complete-replica cohort.
103
+ */
104
+ export interface ManagedServerApplicationHandle {
105
+ /**
106
+ *
107
+ * Reports whether at least one managed child is currently ready.
108
+ */
109
+ readonly ready: boolean;
110
+ /**
111
+ *
112
+ * Stops all child processes and waits for their exit.
113
+ *
114
+ * @returns Completion after managed child cleanup succeeds.
115
+ */
116
+ close(): Promise<void>;
117
+ }
118
+ /**
119
+ *
120
+ * Starts a managed parent and its complete-replica child processes.
121
+ */
122
+ export declare const ManagedServerApplication: Readonly<{
123
+ /**
124
+ *
125
+ * Starts a managed parent and complete-replica children without taking
126
+ * process-signal ownership.
127
+ *
128
+ * The caller closes the returned handle. This is for an embedding host that
129
+ * already owns `SIGINT` and `SIGTERM` handling.
130
+ *
131
+ * @param options Configures the managed application replicas.
132
+ * @returns The started managed application handle.
133
+ */
134
+ start(options: ManagedServerApplicationOptions): Promise<ManagedServerApplicationHandle>;
135
+ /**
136
+ *
137
+ * Starts a managed parent and complete-replica children with process-signal
138
+ * ownership.
139
+ *
140
+ * @param options Configures the managed application replicas.
141
+ * @returns The started managed application handle.
142
+ */
143
+ run(options: ManagedServerApplicationOptions): Promise<ManagedServerApplicationHandle>;
144
+ }>;
145
+ /**
146
+ *
147
+ * Supplies deterministic dependencies for the private process supervisor.
148
+ *
149
+ * @internal
150
+ */
151
+ export interface ManagedServerCoordinatorDependencies {
152
+ /**
153
+ *
154
+ * Provides the clock and timers used by managed replica lifecycle tests.
155
+ */
156
+ readonly clock: {
157
+ /**
158
+ *
159
+ * Reads the current clock value.
160
+ *
161
+ * @returns The current time in milliseconds.
162
+ */
163
+ now(): number;
164
+ /**
165
+ *
166
+ * Schedules a timeout callback.
167
+ *
168
+ * @param onTimeout Runs when the requested delay elapses.
169
+ * @param delay Specifies the timeout in milliseconds.
170
+ * @returns A timer handle that can be cleared.
171
+ */
172
+ setTimeout(onTimeout: () => void, delay: number): unknown;
173
+ /**
174
+ *
175
+ * Cancels a scheduled timeout.
176
+ *
177
+ * @param timer Identifies the timer to cancel.
178
+ */
179
+ clearTimeout(timer: unknown): void;
180
+ };
181
+ /**
182
+ *
183
+ * Starts one child process for a replica incarnation.
184
+ *
185
+ * @param moduleUrl Identifies the child ESM entry module.
186
+ * @param slot Identifies the managed replica slot.
187
+ * @param incarnation Identifies this child process incarnation.
188
+ * @returns The started child process.
189
+ */
190
+ readonly spawn: (moduleUrl: string, slot: number, incarnation: string) => ChildProcess;
191
+ /**
192
+ *
193
+ * Opens the private parent Coordinator after initial replica readiness.
194
+ *
195
+ * @param options Supplies private Coordinator membership and listener facts.
196
+ * @returns The running private Coordinator.
197
+ */
198
+ readonly openCoordinator?: (options: {
199
+ readonly members: ManagedServerCoordinator;
200
+ readonly host?: string;
201
+ readonly port?: number;
202
+ }) => Promise<NodeCoordinator>;
203
+ }
204
+ type ManagedServerCoordinatorOptions = Omit<ManagedServerApplicationOptions, "port"> & {
205
+ readonly port?: number;
206
+ readonly manageProcessSignals?: boolean;
207
+ };
208
+ /**
209
+ *
210
+ * Coordinates the parent-only lifecycle of managed application replicas.
211
+ *
212
+ * @internal
213
+ */
214
+ export declare class ManagedServerCoordinator {
215
+ #private;
216
+ /**
217
+ *
218
+ * Creates a coordinator for one configured replica cohort.
219
+ *
220
+ * @param options Configures complete child application replicas.
221
+ * @param dependencies Supplies private process and clock dependencies.
222
+ */
223
+ constructor(options: ManagedServerCoordinatorOptions, dependencies?: ManagedServerCoordinatorDependencies);
224
+ /**
225
+ *
226
+ * Starts every initial replica and waits until all report READY.
227
+ *
228
+ * @returns The handle for the started managed cohort.
229
+ */
230
+ start(): Promise<ManagedServerApplicationHandle>;
231
+ /**
232
+ *
233
+ * Stops managed children and prevents later replacement starts.
234
+ *
235
+ * @returns Completion after child and retired-child cleanup succeeds.
236
+ */
237
+ close(): Promise<void>;
238
+ /**
239
+ *
240
+ * Returns ready child facts to the next Coordinator slice.
241
+ *
242
+ * @returns The ready child topology facts.
243
+ * @internal
244
+ */
245
+ readyMembers(): readonly ReadyCoordinatorMember[];
246
+ /**
247
+ * Returns READY and synchronizing members whose relays remain eligible.
248
+ *
249
+ * @returns Private relay member facts.
250
+ */
251
+ relayMembers(): readonly ReadyCoordinatorMember[];
252
+ /**
253
+ * Records an exact native subscription whose activation started for a member.
254
+ *
255
+ * @param member Supplies the member that owns the child subscription.
256
+ * @param subscription Supplies the activating native subscription.
257
+ */
258
+ onChildSubscriptionActivated(member: ReadyCoordinatorMember, subscription: Subscription): void;
259
+ /**
260
+ * Clears a pending child-installation wait after cancellation.
261
+ *
262
+ * @param member Supplies the member that owns the cancelled subscription.
263
+ * @param subscription Supplies the cancelled native subscription.
264
+ */
265
+ onChildSubscriptionCancelled(member: ReadyCoordinatorMember, subscription: Subscription): void;
266
+ /**
267
+ * Activates synchronizing children after their retained relay children install.
268
+ *
269
+ * @returns Completion after each current child receives private activation.
270
+ */
271
+ onRelaySynchronized(): Promise<void>;
272
+ /**
273
+ * Subscribes one private Coordinator to READY membership changes.
274
+ *
275
+ * @param onChange Runs after an admitted READY member or removed member changes.
276
+ * @returns Stops later private notifications.
277
+ * @internal
278
+ */
279
+ onReadyMembersChange(onChange: () => void): () => void;
280
+ /**
281
+ * Subscribes one private Coordinator to relay-membership changes.
282
+ *
283
+ * @param onChange Runs after a relay member is admitted or removed.
284
+ * @returns Stops later relay-membership callbacks.
285
+ */
286
+ onRelayMembersChange(onChange: () => void): () => void;
287
+ /**
288
+ * Returns the private public-listener endpoint for coordinator acceptance.
289
+ *
290
+ * @returns The listener endpoint after managed startup, when open.
291
+ * @internal
292
+ */
293
+ coordinatorEndpoint(): string | undefined;
294
+ }
295
+ /**
296
+ *
297
+ * Represents private ready-child facts for Coordinator forwarding.
298
+ *
299
+ * @internal
300
+ */
301
+ type ReadyMember = ReadyCoordinatorMember;
302
+ /**
303
+ *
304
+ * Exposes private Coordinator topology facts to the next internal slice.
305
+ *
306
+ * @internal
307
+ */
308
+ export declare const managedServerCoordinatorAccess: Readonly<{
309
+ readyMembers(coordinator: ManagedServerCoordinator): readonly ReadyMember[];
310
+ coordinatorEndpoint(coordinator: ManagedServerCoordinator): string | undefined;
311
+ }>;
312
+ /**
313
+ *
314
+ * Exposes private managed-child facts to Coordinator forwarding tests.
315
+ *
316
+ * @internal
317
+ */
318
+ export declare const managedServerApplicationAccess: Readonly<{
319
+ readyMembers(handle: ManagedServerApplicationHandle): readonly ReadyMember[];
320
+ coordinatorEndpoint(handle: ManagedServerApplicationHandle): string | undefined;
321
+ installRegistriesForTest(server: RunningServer, registries: readonly InMemorySubscriptionRegistry[]): void;
322
+ }>;
323
+ export {};
324
+ //# sourceMappingURL=managed-server-application.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"managed-server-application.d.ts","sourceRoot":"","sources":["../../src/server/managed-server-application.ts"],"names":[],"mappings":"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"}