effect 4.0.0-beta.31 → 4.0.0-beta.32

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 (464) hide show
  1. package/dist/Array.d.ts +87 -86
  2. package/dist/Array.d.ts.map +1 -1
  3. package/dist/Array.js +47 -40
  4. package/dist/Array.js.map +1 -1
  5. package/dist/BigDecimal.d.ts +46 -45
  6. package/dist/BigDecimal.d.ts.map +1 -1
  7. package/dist/BigDecimal.js +35 -38
  8. package/dist/BigDecimal.js.map +1 -1
  9. package/dist/BigInt.d.ts +39 -32
  10. package/dist/BigInt.d.ts.map +1 -1
  11. package/dist/BigInt.js +32 -29
  12. package/dist/BigInt.js.map +1 -1
  13. package/dist/Chunk.d.ts +58 -57
  14. package/dist/Chunk.d.ts.map +1 -1
  15. package/dist/Chunk.js +20 -21
  16. package/dist/Chunk.js.map +1 -1
  17. package/dist/Config.d.ts.map +1 -1
  18. package/dist/Config.js +4 -1
  19. package/dist/Config.js.map +1 -1
  20. package/dist/Cron.d.ts +3 -6
  21. package/dist/Cron.d.ts.map +1 -1
  22. package/dist/Cron.js +8 -15
  23. package/dist/Cron.js.map +1 -1
  24. package/dist/DateTime.d.ts +16 -15
  25. package/dist/DateTime.d.ts.map +1 -1
  26. package/dist/DateTime.js +8 -8
  27. package/dist/DateTime.js.map +1 -1
  28. package/dist/Deferred.d.ts +7 -5
  29. package/dist/Deferred.d.ts.map +1 -1
  30. package/dist/Deferred.js +7 -5
  31. package/dist/Deferred.js.map +1 -1
  32. package/dist/Duration.d.ts +26 -24
  33. package/dist/Duration.d.ts.map +1 -1
  34. package/dist/Duration.js +23 -22
  35. package/dist/Duration.js.map +1 -1
  36. package/dist/Effect.d.ts.map +1 -1
  37. package/dist/Effect.js +3 -4
  38. package/dist/Effect.js.map +1 -1
  39. package/dist/Fiber.d.ts +2 -1
  40. package/dist/Fiber.d.ts.map +1 -1
  41. package/dist/Fiber.js.map +1 -1
  42. package/dist/FiberHandle.d.ts +9 -8
  43. package/dist/FiberHandle.d.ts.map +1 -1
  44. package/dist/FiberHandle.js +8 -7
  45. package/dist/FiberHandle.js.map +1 -1
  46. package/dist/FiberMap.d.ts +20 -19
  47. package/dist/FiberMap.d.ts.map +1 -1
  48. package/dist/FiberMap.js +6 -6
  49. package/dist/FiberMap.js.map +1 -1
  50. package/dist/FileSystem.d.ts +17 -16
  51. package/dist/FileSystem.d.ts.map +1 -1
  52. package/dist/FileSystem.js +10 -7
  53. package/dist/FileSystem.js.map +1 -1
  54. package/dist/Graph.d.ts +64 -64
  55. package/dist/Graph.d.ts.map +1 -1
  56. package/dist/Graph.js +53 -53
  57. package/dist/Graph.js.map +1 -1
  58. package/dist/HashMap.d.ts +11 -5
  59. package/dist/HashMap.d.ts.map +1 -1
  60. package/dist/HashMap.js +3 -1
  61. package/dist/HashMap.js.map +1 -1
  62. package/dist/Iterable.d.ts +11 -11
  63. package/dist/Iterable.d.ts.map +1 -1
  64. package/dist/Iterable.js +12 -12
  65. package/dist/Iterable.js.map +1 -1
  66. package/dist/Latch.d.ts +69 -3
  67. package/dist/Latch.d.ts.map +1 -1
  68. package/dist/Latch.js +58 -0
  69. package/dist/Latch.js.map +1 -1
  70. package/dist/Layer.d.ts +84 -0
  71. package/dist/Layer.d.ts.map +1 -1
  72. package/dist/Layer.js +27 -0
  73. package/dist/Layer.js.map +1 -1
  74. package/dist/Number.d.ts +74 -18
  75. package/dist/Number.d.ts.map +1 -1
  76. package/dist/Number.js +34 -15
  77. package/dist/Number.js.map +1 -1
  78. package/dist/Option.d.ts +2 -0
  79. package/dist/Option.d.ts.map +1 -1
  80. package/dist/Option.js.map +1 -1
  81. package/dist/PartitionedSemaphore.d.ts +183 -0
  82. package/dist/PartitionedSemaphore.d.ts.map +1 -0
  83. package/dist/PartitionedSemaphore.js +231 -0
  84. package/dist/PartitionedSemaphore.js.map +1 -0
  85. package/dist/PubSub.d.ts +5 -4
  86. package/dist/PubSub.d.ts.map +1 -1
  87. package/dist/PubSub.js +6 -5
  88. package/dist/PubSub.js.map +1 -1
  89. package/dist/Queue.d.ts +3 -3
  90. package/dist/Queue.d.ts.map +1 -1
  91. package/dist/Queue.js +2 -2
  92. package/dist/Queue.js.map +1 -1
  93. package/dist/Record.d.ts +40 -40
  94. package/dist/Record.d.ts.map +1 -1
  95. package/dist/Record.js +16 -15
  96. package/dist/Record.js.map +1 -1
  97. package/dist/Scheduler.d.ts +25 -123
  98. package/dist/Scheduler.d.ts.map +1 -1
  99. package/dist/Scheduler.js +20 -123
  100. package/dist/Scheduler.js.map +1 -1
  101. package/dist/Schema.d.ts +30 -0
  102. package/dist/Schema.d.ts.map +1 -1
  103. package/dist/Schema.js +28 -1
  104. package/dist/Schema.js.map +1 -1
  105. package/dist/SchemaGetter.js +6 -4
  106. package/dist/SchemaGetter.js.map +1 -1
  107. package/dist/SchemaTransformation.d.ts.map +1 -1
  108. package/dist/SchemaTransformation.js +32 -27
  109. package/dist/SchemaTransformation.js.map +1 -1
  110. package/dist/Semaphore.d.ts +149 -53
  111. package/dist/Semaphore.d.ts.map +1 -1
  112. package/dist/Semaphore.js +137 -117
  113. package/dist/Semaphore.js.map +1 -1
  114. package/dist/ServiceMap.d.ts +26 -0
  115. package/dist/ServiceMap.d.ts.map +1 -1
  116. package/dist/ServiceMap.js +36 -21
  117. package/dist/ServiceMap.js.map +1 -1
  118. package/dist/Stream.js +1 -1
  119. package/dist/Stream.js.map +1 -1
  120. package/dist/String.d.ts +114 -47
  121. package/dist/String.d.ts.map +1 -1
  122. package/dist/String.js +29 -47
  123. package/dist/String.js.map +1 -1
  124. package/dist/SubscriptionRef.d.ts +1 -2
  125. package/dist/SubscriptionRef.d.ts.map +1 -1
  126. package/dist/SubscriptionRef.js +81 -115
  127. package/dist/SubscriptionRef.js.map +1 -1
  128. package/dist/Terminal.d.ts +2 -1
  129. package/dist/Terminal.d.ts.map +1 -1
  130. package/dist/Terminal.js.map +1 -1
  131. package/dist/Tracer.d.ts +5 -4
  132. package/dist/Tracer.d.ts.map +1 -1
  133. package/dist/Tracer.js +2 -1
  134. package/dist/Tracer.js.map +1 -1
  135. package/dist/Trie.d.ts +26 -14
  136. package/dist/Trie.d.ts.map +1 -1
  137. package/dist/Trie.js +8 -4
  138. package/dist/Trie.js.map +1 -1
  139. package/dist/TxHashMap.d.ts +77 -59
  140. package/dist/TxHashMap.d.ts.map +1 -1
  141. package/dist/TxHashMap.js +25 -19
  142. package/dist/TxHashMap.js.map +1 -1
  143. package/dist/TxSemaphore.d.ts +162 -2
  144. package/dist/TxSemaphore.d.ts.map +1 -1
  145. package/dist/TxSemaphore.js +16 -2
  146. package/dist/TxSemaphore.js.map +1 -1
  147. package/dist/index.d.ts +88 -32
  148. package/dist/index.d.ts.map +1 -1
  149. package/dist/index.js +88 -32
  150. package/dist/index.js.map +1 -1
  151. package/dist/internal/dateTime.js +9 -9
  152. package/dist/internal/dateTime.js.map +1 -1
  153. package/dist/internal/effect.js +20 -89
  154. package/dist/internal/effect.js.map +1 -1
  155. package/dist/internal/hashMap.js +2 -1
  156. package/dist/internal/hashMap.js.map +1 -1
  157. package/dist/internal/option.js +6 -0
  158. package/dist/internal/option.js.map +1 -1
  159. package/dist/internal/trie.js +3 -3
  160. package/dist/internal/trie.js.map +1 -1
  161. package/dist/unstable/ai/AiError.js +1 -1
  162. package/dist/unstable/ai/AiError.js.map +1 -1
  163. package/dist/unstable/ai/AnthropicStructuredOutput.d.ts.map +1 -1
  164. package/dist/unstable/ai/AnthropicStructuredOutput.js +4 -0
  165. package/dist/unstable/ai/AnthropicStructuredOutput.js.map +1 -1
  166. package/dist/unstable/ai/Chat.d.ts.map +1 -1
  167. package/dist/unstable/ai/Chat.js +2 -2
  168. package/dist/unstable/ai/Chat.js.map +1 -1
  169. package/dist/unstable/ai/OpenAiStructuredOutput.d.ts.map +1 -1
  170. package/dist/unstable/ai/OpenAiStructuredOutput.js +4 -0
  171. package/dist/unstable/ai/OpenAiStructuredOutput.js.map +1 -1
  172. package/dist/unstable/ai/Tool.d.ts +14 -0
  173. package/dist/unstable/ai/Tool.d.ts.map +1 -1
  174. package/dist/unstable/ai/Tool.js +13 -0
  175. package/dist/unstable/ai/Tool.js.map +1 -1
  176. package/dist/unstable/cli/Argument.d.ts +2 -4
  177. package/dist/unstable/cli/Argument.d.ts.map +1 -1
  178. package/dist/unstable/cli/Argument.js +1 -3
  179. package/dist/unstable/cli/Argument.js.map +1 -1
  180. package/dist/unstable/cli/CliOutput.d.ts +3 -2
  181. package/dist/unstable/cli/CliOutput.d.ts.map +1 -1
  182. package/dist/unstable/cli/CliOutput.js +4 -3
  183. package/dist/unstable/cli/CliOutput.js.map +1 -1
  184. package/dist/unstable/cli/Command.d.ts +3 -2
  185. package/dist/unstable/cli/Command.d.ts.map +1 -1
  186. package/dist/unstable/cli/Command.js +3 -3
  187. package/dist/unstable/cli/Command.js.map +1 -1
  188. package/dist/unstable/cli/Flag.d.ts +2 -2
  189. package/dist/unstable/cli/Flag.d.ts.map +1 -1
  190. package/dist/unstable/cli/Flag.js +1 -1
  191. package/dist/unstable/cli/Flag.js.map +1 -1
  192. package/dist/unstable/cli/HelpDoc.d.ts +14 -12
  193. package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
  194. package/dist/unstable/cli/Param.d.ts +4 -4
  195. package/dist/unstable/cli/Param.d.ts.map +1 -1
  196. package/dist/unstable/cli/Param.js +7 -7
  197. package/dist/unstable/cli/Param.js.map +1 -1
  198. package/dist/unstable/cli/Primitive.d.ts +1 -1
  199. package/dist/unstable/cli/Primitive.d.ts.map +1 -1
  200. package/dist/unstable/cli/Primitive.js.map +1 -1
  201. package/dist/unstable/cli/Prompt.js +71 -67
  202. package/dist/unstable/cli/Prompt.js.map +1 -1
  203. package/dist/unstable/cli/internal/completions/CommandDescriptor.js +9 -2
  204. package/dist/unstable/cli/internal/completions/CommandDescriptor.js.map +1 -1
  205. package/dist/unstable/cli/internal/parser.js +8 -3
  206. package/dist/unstable/cli/internal/parser.js.map +1 -1
  207. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts +3 -2
  208. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  209. package/dist/unstable/cluster/ClusterWorkflowEngine.js +25 -23
  210. package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
  211. package/dist/unstable/cluster/Entity.d.ts +3 -2
  212. package/dist/unstable/cluster/Entity.d.ts.map +1 -1
  213. package/dist/unstable/cluster/Entity.js +7 -7
  214. package/dist/unstable/cluster/Entity.js.map +1 -1
  215. package/dist/unstable/cluster/Message.d.ts +4 -3
  216. package/dist/unstable/cluster/Message.d.ts.map +1 -1
  217. package/dist/unstable/cluster/Message.js +3 -2
  218. package/dist/unstable/cluster/Message.js.map +1 -1
  219. package/dist/unstable/cluster/MessageStorage.d.ts +10 -10
  220. package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
  221. package/dist/unstable/cluster/MessageStorage.js +12 -12
  222. package/dist/unstable/cluster/MessageStorage.js.map +1 -1
  223. package/dist/unstable/cluster/Reply.d.ts +2 -1
  224. package/dist/unstable/cluster/Reply.d.ts.map +1 -1
  225. package/dist/unstable/cluster/Reply.js +4 -3
  226. package/dist/unstable/cluster/Reply.js.map +1 -1
  227. package/dist/unstable/cluster/RunnerServer.d.ts.map +1 -1
  228. package/dist/unstable/cluster/RunnerServer.js +9 -8
  229. package/dist/unstable/cluster/RunnerServer.js.map +1 -1
  230. package/dist/unstable/cluster/Runners.d.ts +2 -1
  231. package/dist/unstable/cluster/Runners.d.ts.map +1 -1
  232. package/dist/unstable/cluster/Runners.js +7 -6
  233. package/dist/unstable/cluster/Runners.js.map +1 -1
  234. package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
  235. package/dist/unstable/cluster/Sharding.js +19 -13
  236. package/dist/unstable/cluster/Sharding.js.map +1 -1
  237. package/dist/unstable/cluster/ShardingConfig.d.ts +5 -4
  238. package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
  239. package/dist/unstable/cluster/ShardingConfig.js +4 -4
  240. package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
  241. package/dist/unstable/cluster/SqlMessageStorage.d.ts.map +1 -1
  242. package/dist/unstable/cluster/SqlMessageStorage.js +19 -18
  243. package/dist/unstable/cluster/SqlMessageStorage.js.map +1 -1
  244. package/dist/unstable/cluster/internal/entityManager.js +9 -10
  245. package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
  246. package/dist/unstable/devtools/DevToolsSchema.d.ts +2 -1
  247. package/dist/unstable/devtools/DevToolsSchema.d.ts.map +1 -1
  248. package/dist/unstable/devtools/DevToolsSchema.js +1 -4
  249. package/dist/unstable/devtools/DevToolsSchema.js.map +1 -1
  250. package/dist/unstable/http/Cookies.d.ts +5 -4
  251. package/dist/unstable/http/Cookies.d.ts.map +1 -1
  252. package/dist/unstable/http/Cookies.js +3 -4
  253. package/dist/unstable/http/Cookies.js.map +1 -1
  254. package/dist/unstable/http/Etag.d.ts.map +1 -1
  255. package/dist/unstable/http/Etag.js +5 -1
  256. package/dist/unstable/http/Etag.js.map +1 -1
  257. package/dist/unstable/http/Headers.d.ts +3 -2
  258. package/dist/unstable/http/Headers.d.ts.map +1 -1
  259. package/dist/unstable/http/Headers.js +2 -1
  260. package/dist/unstable/http/Headers.js.map +1 -1
  261. package/dist/unstable/http/HttpClient.d.ts.map +1 -1
  262. package/dist/unstable/http/HttpClient.js +2 -1
  263. package/dist/unstable/http/HttpClient.js.map +1 -1
  264. package/dist/unstable/http/HttpClientRequest.d.ts +4 -3
  265. package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
  266. package/dist/unstable/http/HttpClientRequest.js +8 -6
  267. package/dist/unstable/http/HttpClientRequest.js.map +1 -1
  268. package/dist/unstable/http/HttpClientResponse.d.ts.map +1 -1
  269. package/dist/unstable/http/HttpClientResponse.js +2 -1
  270. package/dist/unstable/http/HttpClientResponse.js.map +1 -1
  271. package/dist/unstable/http/HttpIncomingMessage.d.ts +2 -1
  272. package/dist/unstable/http/HttpIncomingMessage.d.ts.map +1 -1
  273. package/dist/unstable/http/HttpIncomingMessage.js.map +1 -1
  274. package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
  275. package/dist/unstable/http/HttpMiddleware.js +16 -15
  276. package/dist/unstable/http/HttpMiddleware.js.map +1 -1
  277. package/dist/unstable/http/HttpPlatform.d.ts.map +1 -1
  278. package/dist/unstable/http/HttpPlatform.js +3 -2
  279. package/dist/unstable/http/HttpPlatform.js.map +1 -1
  280. package/dist/unstable/http/HttpRouter.d.ts +2 -1
  281. package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
  282. package/dist/unstable/http/HttpRouter.js +7 -7
  283. package/dist/unstable/http/HttpRouter.js.map +1 -1
  284. package/dist/unstable/http/HttpServer.d.ts.map +1 -1
  285. package/dist/unstable/http/HttpServer.js +2 -2
  286. package/dist/unstable/http/HttpServer.js.map +1 -1
  287. package/dist/unstable/http/HttpServerError.d.ts +2 -1
  288. package/dist/unstable/http/HttpServerError.d.ts.map +1 -1
  289. package/dist/unstable/http/HttpServerError.js +2 -1
  290. package/dist/unstable/http/HttpServerError.js.map +1 -1
  291. package/dist/unstable/http/HttpServerRequest.d.ts +3 -2
  292. package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
  293. package/dist/unstable/http/HttpServerRequest.js +14 -10
  294. package/dist/unstable/http/HttpServerRequest.js.map +1 -1
  295. package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
  296. package/dist/unstable/http/HttpServerResponse.js +4 -3
  297. package/dist/unstable/http/HttpServerResponse.js.map +1 -1
  298. package/dist/unstable/http/HttpTraceContext.d.ts +3 -2
  299. package/dist/unstable/http/HttpTraceContext.d.ts.map +1 -1
  300. package/dist/unstable/http/HttpTraceContext.js +27 -15
  301. package/dist/unstable/http/HttpTraceContext.js.map +1 -1
  302. package/dist/unstable/http/UrlParams.d.ts +5 -4
  303. package/dist/unstable/http/UrlParams.d.ts.map +1 -1
  304. package/dist/unstable/http/UrlParams.js +5 -6
  305. package/dist/unstable/http/UrlParams.js.map +1 -1
  306. package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
  307. package/dist/unstable/httpapi/HttpApiBuilder.js +4 -2
  308. package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
  309. package/dist/unstable/httpapi/HttpApiError.d.ts +15 -0
  310. package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
  311. package/dist/unstable/httpapi/HttpApiError.js +81 -3
  312. package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
  313. package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
  314. package/dist/unstable/observability/OtlpExporter.js +2 -2
  315. package/dist/unstable/observability/OtlpExporter.js.map +1 -1
  316. package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
  317. package/dist/unstable/observability/OtlpTracer.js +7 -3
  318. package/dist/unstable/observability/OtlpTracer.js.map +1 -1
  319. package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
  320. package/dist/unstable/reactivity/Atom.js +1 -5
  321. package/dist/unstable/reactivity/Atom.js.map +1 -1
  322. package/dist/unstable/reactivity/AtomRegistry.d.ts.map +1 -1
  323. package/dist/unstable/reactivity/AtomRegistry.js +4 -2
  324. package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
  325. package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
  326. package/dist/unstable/rpc/Rpc.js +4 -3
  327. package/dist/unstable/rpc/Rpc.js.map +1 -1
  328. package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
  329. package/dist/unstable/rpc/RpcClient.js +4 -4
  330. package/dist/unstable/rpc/RpcClient.js.map +1 -1
  331. package/dist/unstable/rpc/RpcSchema.d.ts.map +1 -1
  332. package/dist/unstable/rpc/RpcSchema.js +3 -2
  333. package/dist/unstable/rpc/RpcSchema.js.map +1 -1
  334. package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
  335. package/dist/unstable/rpc/RpcSerialization.js +4 -1
  336. package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
  337. package/dist/unstable/rpc/RpcServer.d.ts +1 -1
  338. package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
  339. package/dist/unstable/rpc/RpcServer.js +3 -2
  340. package/dist/unstable/rpc/RpcServer.js.map +1 -1
  341. package/dist/unstable/socket/Socket.d.ts.map +1 -1
  342. package/dist/unstable/socket/Socket.js +2 -1
  343. package/dist/unstable/socket/Socket.js.map +1 -1
  344. package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
  345. package/dist/unstable/sql/SqlClient.js +1 -1
  346. package/dist/unstable/sql/SqlClient.js.map +1 -1
  347. package/dist/unstable/workflow/DurableDeferred.js +6 -6
  348. package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
  349. package/dist/unstable/workflow/Workflow.d.ts +2 -1
  350. package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
  351. package/dist/unstable/workflow/WorkflowEngine.d.ts +5 -4
  352. package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
  353. package/dist/unstable/workflow/WorkflowEngine.js +19 -14
  354. package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
  355. package/package.json +1 -1
  356. package/src/Array.ts +112 -105
  357. package/src/BigDecimal.ts +63 -66
  358. package/src/BigInt.ts +49 -41
  359. package/src/Chunk.ts +68 -63
  360. package/src/Config.ts +4 -1
  361. package/src/Cron.ts +10 -15
  362. package/src/DateTime.ts +16 -15
  363. package/src/Deferred.ts +8 -6
  364. package/src/Duration.ts +34 -33
  365. package/src/Effect.ts +3 -4
  366. package/src/Fiber.ts +2 -1
  367. package/src/FiberHandle.ts +10 -9
  368. package/src/FiberMap.ts +22 -22
  369. package/src/FileSystem.ts +25 -22
  370. package/src/Graph.ts +105 -105
  371. package/src/HashMap.ts +11 -5
  372. package/src/Iterable.ts +13 -13
  373. package/src/Latch.ts +85 -3
  374. package/src/Layer.ts +121 -0
  375. package/src/Number.ts +85 -26
  376. package/src/Option.ts +2 -0
  377. package/src/PartitionedSemaphore.ts +414 -0
  378. package/src/PubSub.ts +7 -6
  379. package/src/Queue.ts +5 -5
  380. package/src/Record.ts +52 -47
  381. package/src/Scheduler.ts +37 -126
  382. package/src/Schema.ts +49 -1
  383. package/src/SchemaGetter.ts +4 -4
  384. package/src/SchemaTransformation.ts +27 -27
  385. package/src/Semaphore.ts +271 -183
  386. package/src/ServiceMap.ts +83 -31
  387. package/src/Stream.ts +1 -1
  388. package/src/String.ts +122 -69
  389. package/src/SubscriptionRef.ts +96 -117
  390. package/src/Terminal.ts +2 -1
  391. package/src/Tracer.ts +6 -5
  392. package/src/Trie.ts +26 -14
  393. package/src/TxHashMap.ts +78 -60
  394. package/src/TxSemaphore.ts +186 -11
  395. package/src/index.ts +89 -33
  396. package/src/internal/dateTime.ts +14 -14
  397. package/src/internal/effect.ts +29 -121
  398. package/src/internal/hashMap.ts +4 -3
  399. package/src/internal/option.ts +7 -0
  400. package/src/internal/trie.ts +6 -6
  401. package/src/unstable/ai/AiError.ts +1 -1
  402. package/src/unstable/ai/AnthropicStructuredOutput.ts +4 -0
  403. package/src/unstable/ai/Chat.ts +6 -2
  404. package/src/unstable/ai/OpenAiStructuredOutput.ts +4 -0
  405. package/src/unstable/ai/Tool.ts +20 -0
  406. package/src/unstable/cli/Argument.ts +2 -4
  407. package/src/unstable/cli/CliOutput.ts +7 -5
  408. package/src/unstable/cli/Command.ts +5 -5
  409. package/src/unstable/cli/Flag.ts +2 -2
  410. package/src/unstable/cli/HelpDoc.ts +14 -12
  411. package/src/unstable/cli/Param.ts +15 -11
  412. package/src/unstable/cli/Primitive.ts +1 -1
  413. package/src/unstable/cli/Prompt.ts +81 -83
  414. package/src/unstable/cli/internal/completions/CommandDescriptor.ts +3 -2
  415. package/src/unstable/cli/internal/parser.ts +7 -4
  416. package/src/unstable/cluster/ClusterWorkflowEngine.ts +35 -30
  417. package/src/unstable/cluster/Entity.ts +13 -12
  418. package/src/unstable/cluster/Message.ts +6 -5
  419. package/src/unstable/cluster/MessageStorage.ts +26 -25
  420. package/src/unstable/cluster/Reply.ts +7 -4
  421. package/src/unstable/cluster/RunnerServer.ts +10 -13
  422. package/src/unstable/cluster/Runners.ts +8 -7
  423. package/src/unstable/cluster/Sharding.ts +24 -17
  424. package/src/unstable/cluster/ShardingConfig.ts +6 -6
  425. package/src/unstable/cluster/SqlMessageStorage.ts +21 -18
  426. package/src/unstable/cluster/internal/entityManager.ts +27 -21
  427. package/src/unstable/devtools/DevToolsSchema.ts +3 -2
  428. package/src/unstable/http/Cookies.ts +7 -8
  429. package/src/unstable/http/Etag.ts +5 -3
  430. package/src/unstable/http/Headers.ts +6 -5
  431. package/src/unstable/http/HttpClient.ts +2 -1
  432. package/src/unstable/http/HttpClientRequest.ts +11 -9
  433. package/src/unstable/http/HttpClientResponse.ts +3 -2
  434. package/src/unstable/http/HttpIncomingMessage.ts +2 -1
  435. package/src/unstable/http/HttpMiddleware.ts +16 -15
  436. package/src/unstable/http/HttpPlatform.ts +3 -2
  437. package/src/unstable/http/HttpRouter.ts +9 -9
  438. package/src/unstable/http/HttpServer.ts +3 -9
  439. package/src/unstable/http/HttpServerError.ts +3 -2
  440. package/src/unstable/http/HttpServerRequest.ts +25 -21
  441. package/src/unstable/http/HttpServerResponse.ts +5 -4
  442. package/src/unstable/http/HttpTraceContext.ts +31 -17
  443. package/src/unstable/http/UrlParams.ts +11 -14
  444. package/src/unstable/httpapi/HttpApiBuilder.ts +9 -3
  445. package/src/unstable/httpapi/HttpApiError.ts +67 -12
  446. package/src/unstable/observability/OtlpExporter.ts +5 -2
  447. package/src/unstable/observability/OtlpTracer.ts +8 -4
  448. package/src/unstable/reactivity/Atom.ts +1 -4
  449. package/src/unstable/reactivity/AtomRegistry.ts +5 -3
  450. package/src/unstable/rpc/Rpc.ts +4 -3
  451. package/src/unstable/rpc/RpcClient.ts +10 -9
  452. package/src/unstable/rpc/RpcSchema.ts +6 -5
  453. package/src/unstable/rpc/RpcSerialization.ts +4 -1
  454. package/src/unstable/rpc/RpcServer.ts +3 -3
  455. package/src/unstable/socket/Socket.ts +2 -1
  456. package/src/unstable/sql/SqlClient.ts +5 -3
  457. package/src/unstable/workflow/DurableDeferred.ts +6 -6
  458. package/src/unstable/workflow/Workflow.ts +1 -1
  459. package/src/unstable/workflow/WorkflowEngine.ts +29 -20
  460. package/dist/NullOr.d.ts +0 -149
  461. package/dist/NullOr.d.ts.map +0 -1
  462. package/dist/NullOr.js +0 -152
  463. package/dist/NullOr.js.map +0 -1
  464. package/src/NullOr.ts +0 -204
@@ -0,0 +1,231 @@
1
+ /**
2
+ * @since 4.0.0
3
+ */
4
+ import * as Effect from "./Effect.js";
5
+ import { dual } from "./Function.js";
6
+ import * as MutableHashMap from "./MutableHashMap.js";
7
+ import * as Option from "./Option.js";
8
+ /**
9
+ * @since 4.0.0
10
+ * @category models
11
+ */
12
+ export const PartitionedTypeId = "~effect/PartitionedSemaphore";
13
+ /**
14
+ * Creates a `PartitionedSemaphore` unsafely.
15
+ *
16
+ * @since 4.0.0
17
+ * @category constructors
18
+ */
19
+ export const makeUnsafe = options => {
20
+ const maxPermits = Math.max(0, options.permits);
21
+ if (!Number.isFinite(maxPermits)) {
22
+ return {
23
+ [PartitionedTypeId]: PartitionedTypeId,
24
+ capacity: maxPermits,
25
+ available: Effect.succeed(maxPermits),
26
+ take: () => Effect.void,
27
+ release: () => Effect.succeed(maxPermits),
28
+ withPermits: () => effect => effect,
29
+ withPermit: () => effect => effect,
30
+ withPermitsIfAvailable: () => effect => Effect.asSome(effect)
31
+ };
32
+ }
33
+ let totalPermits = maxPermits;
34
+ let waitingPermits = 0;
35
+ const partitions = MutableHashMap.empty();
36
+ let iterator = partitions[Symbol.iterator]();
37
+ const releaseUnsafe = permits => {
38
+ while (permits > 0) {
39
+ if (waitingPermits === 0) {
40
+ totalPermits = Math.min(maxPermits, totalPermits + permits);
41
+ return totalPermits;
42
+ }
43
+ let state = iterator.next();
44
+ if (state.done) {
45
+ iterator = partitions[Symbol.iterator]();
46
+ state = iterator.next();
47
+ if (state.done) {
48
+ return totalPermits;
49
+ }
50
+ }
51
+ const waiter = state.value[1].values().next().value;
52
+ if (waiter === undefined) {
53
+ continue;
54
+ }
55
+ waiter.permits -= 1;
56
+ waitingPermits -= 1;
57
+ if (waiter.permits === 0) {
58
+ waiter.resume();
59
+ }
60
+ permits -= 1;
61
+ }
62
+ return totalPermits;
63
+ };
64
+ const take = (key, permits) => {
65
+ if (permits <= 0) {
66
+ return Effect.void;
67
+ }
68
+ return Effect.callback(resume => {
69
+ if (maxPermits < permits) {
70
+ resume(Effect.never);
71
+ return;
72
+ }
73
+ if (totalPermits >= permits) {
74
+ totalPermits -= permits;
75
+ resume(Effect.void);
76
+ return;
77
+ }
78
+ const needed = permits - totalPermits;
79
+ const taken = permits - needed;
80
+ if (totalPermits > 0) {
81
+ totalPermits = 0;
82
+ }
83
+ waitingPermits += needed;
84
+ const waiters = Option.getOrElse(MutableHashMap.get(partitions, key), () => {
85
+ const set = new Set();
86
+ MutableHashMap.set(partitions, key, set);
87
+ return set;
88
+ });
89
+ const entry = {
90
+ permits: needed,
91
+ resume: () => {
92
+ cleanup();
93
+ resume(Effect.void);
94
+ }
95
+ };
96
+ const cleanup = () => {
97
+ waiters.delete(entry);
98
+ if (waiters.size === 0) {
99
+ MutableHashMap.remove(partitions, key);
100
+ }
101
+ };
102
+ waiters.add(entry);
103
+ return Effect.sync(() => {
104
+ cleanup();
105
+ waitingPermits -= entry.permits;
106
+ if (taken > 0) {
107
+ releaseUnsafe(taken);
108
+ }
109
+ });
110
+ });
111
+ };
112
+ const withPermits = (key, permits) => effect => {
113
+ if (permits <= 0) {
114
+ return effect;
115
+ }
116
+ const takePermits = take(key, permits);
117
+ return Effect.uninterruptibleMask(restore => Effect.flatMap(restore(takePermits), () => Effect.ensuring(restore(effect), Effect.sync(() => {
118
+ releaseUnsafe(permits);
119
+ }))));
120
+ };
121
+ const tryTake = permits => {
122
+ if (permits <= 0) {
123
+ return true;
124
+ }
125
+ if (maxPermits < permits || totalPermits < permits) {
126
+ return false;
127
+ }
128
+ totalPermits -= permits;
129
+ return true;
130
+ };
131
+ return {
132
+ [PartitionedTypeId]: PartitionedTypeId,
133
+ capacity: maxPermits,
134
+ available: Effect.sync(() => totalPermits),
135
+ take,
136
+ release: permits => Effect.sync(() => releaseUnsafe(permits)),
137
+ withPermits,
138
+ withPermit: key => withPermits(key, 1),
139
+ withPermitsIfAvailable: permits => effect => {
140
+ if (permits <= 0) {
141
+ return Effect.asSome(effect);
142
+ }
143
+ return Effect.suspend(() => {
144
+ if (!tryTake(permits)) {
145
+ return Effect.succeed(Option.none());
146
+ }
147
+ return Effect.ensuring(Effect.asSome(effect), Effect.sync(() => {
148
+ releaseUnsafe(permits);
149
+ }));
150
+ });
151
+ }
152
+ };
153
+ };
154
+ /**
155
+ * Creates a `PartitionedSemaphore`.
156
+ *
157
+ * @since 4.0.0
158
+ * @category constructors
159
+ */
160
+ export const make = options => Effect.sync(() => makeUnsafe(options));
161
+ /**
162
+ * Gets the current number of available permits.
163
+ *
164
+ * @since 4.0.0
165
+ * @category combinators
166
+ */
167
+ export const available = self => self.available;
168
+ /**
169
+ * Gets the total capacity.
170
+ *
171
+ * @since 4.0.0
172
+ * @category getters
173
+ */
174
+ export const capacity = self => self.capacity;
175
+ /**
176
+ * Acquires permits for a partition.
177
+ *
178
+ * @since 4.0.0
179
+ * @category combinators
180
+ */
181
+ export const take = /*#__PURE__*/dual(3, (self, key, permits) => self.take(key, permits));
182
+ /**
183
+ * Releases permits back to the shared pool.
184
+ *
185
+ * @since 4.0.0
186
+ * @category combinators
187
+ */
188
+ export const release = /*#__PURE__*/dual(2, (self, permits) => self.release(permits));
189
+ /**
190
+ * Runs an effect with permits for a partition.
191
+ *
192
+ * @since 4.0.0
193
+ * @category combinators
194
+ */
195
+ export const withPermits = (...args) => {
196
+ if (args.length === 3) {
197
+ const [self, key, permits] = args;
198
+ return effect => self.withPermits(key, permits)(effect);
199
+ }
200
+ const [self, key, permits, effect] = args;
201
+ return self.withPermits(key, permits)(effect);
202
+ };
203
+ /**
204
+ * Runs an effect with a single permit for a partition.
205
+ *
206
+ * @since 4.0.0
207
+ * @category combinators
208
+ */
209
+ export const withPermit = (...args) => {
210
+ if (args.length === 2) {
211
+ const [self, key] = args;
212
+ return effect => self.withPermit(key)(effect);
213
+ }
214
+ const [self, key, effect] = args;
215
+ return self.withPermit(key)(effect);
216
+ };
217
+ /**
218
+ * Runs an effect only if the permits are immediately available.
219
+ *
220
+ * @since 4.0.0
221
+ * @category combinators
222
+ */
223
+ export const withPermitsIfAvailable = (...args) => {
224
+ if (args.length === 2) {
225
+ const [self, permits] = args;
226
+ return effect => self.withPermitsIfAvailable(permits)(effect);
227
+ }
228
+ const [self, permits, effect] = args;
229
+ return self.withPermitsIfAvailable(permits)(effect);
230
+ };
231
+ //# sourceMappingURL=PartitionedSemaphore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PartitionedSemaphore.js","names":["Effect","dual","MutableHashMap","Option","PartitionedTypeId","makeUnsafe","options","maxPermits","Math","max","permits","Number","isFinite","capacity","available","succeed","take","void","release","withPermits","effect","withPermit","withPermitsIfAvailable","asSome","totalPermits","waitingPermits","partitions","empty","iterator","Symbol","releaseUnsafe","min","state","next","done","waiter","value","values","undefined","resume","key","callback","never","needed","taken","waiters","getOrElse","get","set","Set","entry","cleanup","delete","size","remove","add","sync","takePermits","uninterruptibleMask","restore","flatMap","ensuring","tryTake","suspend","none","make","self","args","length"],"sources":["../src/PartitionedSemaphore.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/dist/PubSub.d.ts CHANGED
@@ -35,6 +35,7 @@ import type { LazyArg } from "./Function.ts";
35
35
  import * as Latch from "./Latch.ts";
36
36
  import * as MutableList from "./MutableList.ts";
37
37
  import * as MutableRef from "./MutableRef.ts";
38
+ import * as Option from "./Option.ts";
38
39
  import { type Pipeable } from "./Pipeable.ts";
39
40
  import * as Scope from "./Scope.ts";
40
41
  import type { Covariant, Invariant } from "./Types.ts";
@@ -1332,14 +1333,14 @@ export declare const remaining: <A>(self: Subscription<A>) => Effect.Effect<numb
1332
1333
  *
1333
1334
  * // Unsafe synchronous check for remaining messages
1334
1335
  * const remainingOption = PubSub.remainingUnsafe(subscription)
1335
- * if (remainingOption) {
1336
- * console.log("Messages available:", remainingOption)
1336
+ * if (remainingOption._tag === "Some") {
1337
+ * console.log("Messages available:", remainingOption.value)
1337
1338
  * } else {
1338
1339
  * console.log("Subscription is shutdown")
1339
1340
  * }
1340
1341
  *
1341
1342
  * // Useful for polling or batching scenarios
1342
- * if (remainingOption && remainingOption > 10) {
1343
+ * if (remainingOption._tag === "Some" && remainingOption.value > 10) {
1343
1344
  * // Process messages in batch
1344
1345
  * }
1345
1346
  * ```
@@ -1347,7 +1348,7 @@ export declare const remaining: <A>(self: Subscription<A>) => Effect.Effect<numb
1347
1348
  * @since 4.0.0
1348
1349
  * @category getters
1349
1350
  */
1350
- export declare const remainingUnsafe: <A>(self: Subscription<A>) => number | undefined;
1351
+ export declare const remainingUnsafe: <A>(self: Subscription<A>) => Option.Option<number>;
1351
1352
  /**
1352
1353
  * A strategy that applies back pressure to publishers when the `PubSub` is at
1353
1354
  * capacity. This guarantees that all subscribers will receive all messages
@@ -1 +1 @@
1
- {"version":3,"file":"PubSub.d.ts","sourceRoot":"","sources":["../src/PubSub.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PubSub.d.ts","sourceRoot":"","sources":["../src/PubSub.ts"],"names":[],"mappings":"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"}
package/dist/PubSub.js CHANGED
@@ -37,6 +37,7 @@ import * as Latch from "./Latch.js";
37
37
  import * as MutableList from "./MutableList.js";
38
38
  import * as MutableRef from "./MutableRef.js";
39
39
  import { nextPow2 } from "./Number.js";
40
+ import * as Option from "./Option.js";
40
41
  import { pipeArguments } from "./Pipeable.js";
41
42
  import * as Scope from "./Scope.js";
42
43
  const TypeId = "~effect/PubSub";
@@ -939,14 +940,14 @@ export const remaining = self => Effect.suspend(() => self.shutdownFlag.current
939
940
  *
940
941
  * // Unsafe synchronous check for remaining messages
941
942
  * const remainingOption = PubSub.remainingUnsafe(subscription)
942
- * if (remainingOption) {
943
- * console.log("Messages available:", remainingOption)
943
+ * if (remainingOption._tag === "Some") {
944
+ * console.log("Messages available:", remainingOption.value)
944
945
  * } else {
945
946
  * console.log("Subscription is shutdown")
946
947
  * }
947
948
  *
948
949
  * // Useful for polling or batching scenarios
949
- * if (remainingOption && remainingOption > 10) {
950
+ * if (remainingOption._tag === "Some" && remainingOption.value > 10) {
950
951
  * // Process messages in batch
951
952
  * }
952
953
  * ```
@@ -956,9 +957,9 @@ export const remaining = self => Effect.suspend(() => self.shutdownFlag.current
956
957
  */
957
958
  export const remainingUnsafe = self => {
958
959
  if (self.shutdownFlag.current) {
959
- return undefined;
960
+ return Option.none();
960
961
  }
961
- return self.subscription.size() + self.replayWindow.remaining;
962
+ return Option.some(self.subscription.size() + self.replayWindow.remaining);
962
963
  };
963
964
  // -----------------------------------------------------------------------------
964
965
  // internal
@@ -1 +1 @@
1
- {"version":3,"file":"PubSub.js","names":["Arr","Deferred","Effect","Exit","dual","identity","Latch","MutableList","MutableRef","nextPow2","pipeArguments","Scope","TypeId","SubscriptionTypeId","make","options","sync","makePubSubUnsafe","atomicPubSub","Map","makeUnsafe","strategy","bounded","capacity","makeAtomicBounded","BackPressureStrategy","dropping","DroppingStrategy","sliding","SlidingStrategy","unbounded","makeAtomicUnbounded","ensureCapacity","replayBuffer","replay","ReplayBuffer","Math","ceil","undefined","BoundedPubSubSingle","BoundedPubSubPow2","BoundedPubSubArb","UnboundedPubSub","self","pubsub","size","sizeUnsafe","get","shutdownFlag","isFull","map","isEmpty","shutdown","uninterruptible","withFiber","fiber","set","close","scope","interrupt","id","pipe","andThen","when","shutdownHook","open","asVoid","isShutdown","isShutdownUnsafe","current","awaitShutdown","await","publish","value","suspend","completeSubscribersUnsafe","subscribers","succeed","handleSurplus","publishUnsafe","publishAll","elements","surplus","length","subscribe","acquireRelease","makeSubscriptionUnsafe","unsubscribe","state","forEach","takeAll","pollers","d","interruptWith","discard","concurrency","tap","delete","subscription","onPubSubEmptySpaceUnsafe","take","replayWindow","remaining","message","poll","Empty","pollForItem","loop","as","pollUpTo","Number","POSITIVE_INFINITY","concat","isArrayNonEmpty","flatMap","item","deferred","Set","add","append","completePollersUnsafe","onInterrupt","remove","void","takeUpTo","max","takeN","takeBetween","min","takeRemainderLoop","acc","bs","push","b","remainingUnsafe","AbsentValue","Symbol","for","addSubscribers","has","removeSubscribers","SubscriptionImpl","array","publisherIndex","subscriberCount","subscribersIndex","constructor","Array","from","ReplayWindowImpl","emptyReplayWindow","index","offer","offerAll","chunk","fromIterable","n","available","forPubSub","iteratorIndex","publishAllIndex","a","slice","slide","BoundedPubSubArbSubscription","subscriberIndex","unsubscribed","elem","toPoll","builder","pollUpToIndex","mask","BoundedPubSubPow2Subscription","arguments","BoundedPubSubSingleSubscription","publisherHead","next","publisherTail","MAX_SAFE_INTEGER","UnboundedPubSubSubscription","subscriberHead","empty","polled","i","_A","PubSubImpl","Error","publishers","_","last","offerUnsafe","removeUnsafe","keepPolling","publisher","published","doneUnsafe","prepend","strategyCompletePollersUnsafe","strategyCompleteSubscribersUnsafe","iterator","done","filter","_pubsub","_subscribers","_elements","_isShutdown","slidingPublishUnsafe","it","pub","poller","pollResult","pollersSet","head","tail","buffer","fastForward","len","items"],"sources":["../src/PubSub.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8BA,OAAO,KAAKA,GAAG,MAAM,YAAY;AACjC,OAAO,KAAKC,QAAQ,MAAM,eAAe;AACzC,OAAO,KAAKC,MAAM,MAAM,aAAa;AACrC,OAAO,KAAKC,IAAI,MAAM,WAAW;AAEjC,SAASC,IAAI,EAAEC,QAAQ,QAAQ,eAAe;AAC9C,OAAO,KAAKC,KAAK,MAAM,YAAY;AACnC,OAAO,KAAKC,WAAW,MAAM,kBAAkB;AAC/C,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAC7C,SAASC,QAAQ,QAAQ,aAAa;AACtC,SAAwBC,aAAa,QAAQ,eAAe;AAC5D,OAAO,KAAKC,KAAK,MAAM,YAAY;AAGnC,MAAMC,MAAM,GAAG,gBAAgB;AAiK/B,MAAMC,kBAAkB,GAAG,6BAA6B;AA8CxD;;;;;;;;;;;;;;;;;;;;;;;AAuBA,OAAO,MAAMC,IAAI,GACfC,OAGC,IAEDb,MAAM,CAACc,IAAI,CAAC,MACVC,gBAAgB,CACdF,OAAO,CAACG,YAAY,EAAE,EACtB,IAAIC,GAAG,EAAE,EACTR,KAAK,CAACS,UAAU,EAAE,EAClBd,KAAK,CAACc,UAAU,CAAC,KAAK,CAAC,EACvBZ,UAAU,CAACM,IAAI,CAAC,KAAK,CAAC,EACtBC,OAAO,CAACM,QAAQ,EAAE,CACnB,CACF;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+BA,OAAO,MAAMC,OAAO,GAClBC,QAGC,IAEDT,IAAI,CAAC;EACHI,YAAY,EAAEA,CAAA,KAAMM,iBAAiB,CAACD,QAAQ,CAAC;EAC/CF,QAAQ,EAAEA,CAAA,KAAM,IAAII,oBAAoB;CACzC,CAAC;AAEJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiCA,OAAO,MAAMC,QAAQ,GACnBH,QAGC,IAEDT,IAAI,CAAC;EACHI,YAAY,EAAEA,CAAA,KAAMM,iBAAiB,CAACD,QAAQ,CAAC;EAC/CF,QAAQ,EAAEA,CAAA,KAAM,IAAIM,gBAAgB;CACrC,CAAC;AAEJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsCA,OAAO,MAAMC,OAAO,GAClBL,QAGC,IAEDT,IAAI,CAAC;EACHI,YAAY,EAAEA,CAAA,KAAMM,iBAAiB,CAACD,QAAQ,CAAC;EAC/CF,QAAQ,EAAEA,CAAA,KAAM,IAAIQ,eAAe;CACpC,CAAC;AAEJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiCA,OAAO,MAAMC,SAAS,GAAOf,OAE5B,IACCD,IAAI,CAAC;EACHI,YAAY,EAAEA,CAAA,KAAMa,mBAAmB,CAAChB,OAAO,CAAC;EAChDM,QAAQ,EAAEA,CAAA,KAAM,IAAIM,gBAAgB;CACrC,CAAC;AAEJ;;;;;;AAMA,OAAO,MAAMH,iBAAiB,GAC5BD,QAGC,IACmB;EACpB,MAAMR,OAAO,GAAG,OAAOQ,QAAQ,KAAK,QAAQ,GAAG;IAAEA;EAAQ,CAAE,GAAGA,QAAQ;EACtES,cAAc,CAACjB,OAAO,CAACQ,QAAQ,CAAC;EAChC,MAAMU,YAAY,GAAGlB,OAAO,CAACmB,MAAM,IAAInB,OAAO,CAACmB,MAAM,GAAG,CAAC,GAAG,IAAIC,YAAY,CAAIC,IAAI,CAACC,IAAI,CAACtB,OAAO,CAACmB,MAAM,CAAC,CAAC,GAAGI,SAAS;EACtH,IAAIvB,OAAO,CAACQ,QAAQ,KAAK,CAAC,EAAE;IAC1B,OAAO,IAAIgB,mBAAmB,CAACN,YAAY,CAAC;EAC9C,CAAC,MAAM,IAAIxB,QAAQ,CAACM,OAAO,CAACQ,QAAQ,CAAC,KAAKR,OAAO,CAACQ,QAAQ,EAAE;IAC1D,OAAO,IAAIiB,iBAAiB,CAACzB,OAAO,CAACQ,QAAQ,EAAEU,YAAY,CAAC;EAC9D,CAAC,MAAM;IACL,OAAO,IAAIQ,gBAAgB,CAAC1B,OAAO,CAACQ,QAAQ,EAAEU,YAAY,CAAC;EAC7D;AACF,CAAC;AAED;;;;;;AAMA,OAAO,MAAMF,mBAAmB,GAAOhB,OAEtC,IAAuB,IAAI2B,eAAe,CAAC3B,OAAO,EAAEmB,MAAM,GAAG,IAAIC,YAAY,CAACpB,OAAO,CAACmB,MAAM,CAAC,GAAGI,SAAS,CAAC;AAE3G;;;;;;;;;;;;;;;;;;;;;;AAsBA,OAAO,MAAMf,QAAQ,GAAOoB,IAAe,IAAaA,IAAI,CAACC,MAAM,CAACrB,QAAQ;AAE5E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6BA,OAAO,MAAMsB,IAAI,GAAOF,IAAe,IAA4BzC,MAAM,CAACc,IAAI,CAAC,MAAM8B,UAAU,CAACH,IAAI,CAAC,CAAC;AACtG;;;;;;;;;;;;;;;;;;;AAmBA,OAAO,MAAMG,UAAU,GAAOH,IAAe,IAAY;EACvD,IAAInC,UAAU,CAACuC,GAAG,CAACJ,IAAI,CAACK,YAAY,CAAC,EAAE;IACrC,OAAO,CAAC;EACV;EACA,OAAOL,IAAI,CAACC,MAAM,CAACC,IAAI,EAAE;AAC3B,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4BA,OAAO,MAAMI,MAAM,GAAON,IAAe,IACvCzC,MAAM,CAACgD,GAAG,CAACL,IAAI,CAACF,IAAI,CAAC,EAAGE,IAAI,IAAKA,IAAI,KAAKF,IAAI,CAACC,MAAM,CAACrB,QAAQ,CAAC;AAEjE;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BA,OAAO,MAAM4B,OAAO,GAAOR,IAAe,IAA6BzC,MAAM,CAACgD,GAAG,CAACL,IAAI,CAACF,IAAI,CAAC,EAAGE,IAAI,IAAKA,IAAI,KAAK,CAAC,CAAC;AAEnH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+BA,OAAO,MAAMO,QAAQ,GAAOT,IAAe,IACzCzC,MAAM,CAACmD,eAAe,CAACnD,MAAM,CAACoD,SAAS,CAAEC,KAAK,IAAI;EAChD/C,UAAU,CAACgD,GAAG,CAACb,IAAI,CAACK,YAAY,EAAE,IAAI,CAAC;EACvC,OAAOrC,KAAK,CAAC8C,KAAK,CAACd,IAAI,CAACe,KAAK,EAAEvD,IAAI,CAACwD,SAAS,CAACJ,KAAK,CAACK,EAAE,CAAC,CAAC,CAACC,IAAI,CAC3D3D,MAAM,CAAC4D,OAAO,CAACnB,IAAI,CAACtB,QAAQ,CAAC+B,QAAQ,CAAC,EACtClD,MAAM,CAAC6D,IAAI,CAACpB,IAAI,CAACqB,YAAY,CAACC,IAAI,CAAC,EACnC/D,MAAM,CAACgE,MAAM,CACd;AACH,CAAC,CAAC,CAAC;AAEL;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BA,OAAO,MAAMC,UAAU,GAAOxB,IAAe,IAA6BzC,MAAM,CAACc,IAAI,CAAC,MAAMoD,gBAAgB,CAACzB,IAAI,CAAC,CAAC;AAEnH;;;;;;;;;;;;;;;;;;;;;AAqBA,OAAO,MAAMyB,gBAAgB,GAAOzB,IAAe,IAAcA,IAAI,CAACK,YAAY,CAACqB,OAAO;AAE1F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkCA,OAAO,MAAMC,aAAa,GAAO3B,IAAe,IAA0BA,IAAI,CAACqB,YAAY,CAACO,KAAK;AAEjG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoCA,OAAO,MAAMC,OAAO,gBA2EhBpE,IAAI,CAAC,CAAC,EAAE,CAAIuC,IAAe,EAAE8B,KAAQ,KACvCvE,MAAM,CAACwE,OAAO,CAAC,MAAK;EAClB,IAAI/B,IAAI,CAACK,YAAY,CAACqB,OAAO,EAAE;IAC7B,OAAOnE,MAAM,CAACyD,SAAS;EACzB;EAEA,IAAIhB,IAAI,CAACC,MAAM,CAAC4B,OAAO,CAACC,KAAK,CAAC,EAAE;IAC9B9B,IAAI,CAACtB,QAAQ,CAACsD,yBAAyB,CAAChC,IAAI,CAACC,MAAM,EAAED,IAAI,CAACiC,WAAW,CAAC;IACtE,OAAO1E,MAAM,CAAC2E,OAAO,CAAC,IAAI,CAAC;EAC7B;EAEA,OAAOlC,IAAI,CAACtB,QAAQ,CAACyD,aAAa,CAChCnC,IAAI,CAACC,MAAM,EACXD,IAAI,CAACiC,WAAW,EAChB,CAACH,KAAK,CAAC,EACP9B,IAAI,CAACK,YAAY,CAClB;AACH,CAAC,CAAC,CAAC;AAEL;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4BA,OAAO,MAAM+B,aAAa,gBA2DtB3E,IAAI,CAAC,CAAC,EAAE,CAAIuC,IAAe,EAAE8B,KAAQ,KAAa;EACpD,IAAI9B,IAAI,CAACK,YAAY,CAACqB,OAAO,EAAE,OAAO,KAAK;EAC3C,IAAI1B,IAAI,CAACC,MAAM,CAAC4B,OAAO,CAACC,KAAK,CAAC,EAAE;IAC9B9B,IAAI,CAACtB,QAAQ,CAACsD,yBAAyB,CAAChC,IAAI,CAACC,MAAM,EAAED,IAAI,CAACiC,WAAW,CAAC;IACtE,OAAO,IAAI;EACb;EACA,OAAO,KAAK;AACd,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqCA,OAAO,MAAMI,UAAU,gBA6EnB5E,IAAI,CAAC,CAAC,EAAE,CAAIuC,IAAe,EAAEsC,QAAqB,KACpD/E,MAAM,CAACwE,OAAO,CAAC,MAAK;EAClB,IAAI/B,IAAI,CAACK,YAAY,CAACqB,OAAO,EAAE;IAC7B,OAAOnE,MAAM,CAACyD,SAAS;EACzB;EACA,MAAMuB,OAAO,GAAGvC,IAAI,CAACC,MAAM,CAACoC,UAAU,CAACC,QAAQ,CAAC;EAChDtC,IAAI,CAACtB,QAAQ,CAACsD,yBAAyB,CAAChC,IAAI,CAACC,MAAM,EAAED,IAAI,CAACiC,WAAW,CAAC;EACtE,IAAIM,OAAO,CAACC,MAAM,KAAK,CAAC,EAAE;IACxB,OAAOjF,MAAM,CAAC2E,OAAO,CAAC,IAAI,CAAC;EAC7B;EACA,OAAOlC,IAAI,CAACtB,QAAQ,CAACyD,aAAa,CAChCnC,IAAI,CAACC,MAAM,EACXD,IAAI,CAACiC,WAAW,EAChBM,OAAO,EACPvC,IAAI,CAACK,YAAY,CAClB;AACH,CAAC,CAAC,CAAC;AAEL;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+CA,OAAO,MAAMoC,SAAS,GAAOzC,IAAe,IAC1CzC,MAAM,CAACmF,cAAc,CACnBnF,MAAM,CAACc,IAAI,CAAC,MAAMsE,sBAAsB,CAAC3C,IAAI,CAACC,MAAM,EAAED,IAAI,CAACiC,WAAW,EAAEjC,IAAI,CAACtB,QAAQ,CAAC,CAAC,EACvFkE,WAAW,CACZ;AAEH,MAAMA,WAAW,GAAO5C,IAAqB,IAC3CzC,MAAM,CAACmD,eAAe,CACpBnD,MAAM,CAACoD,SAAS,CAAQkC,KAAK,IAAI;EAC/BhF,UAAU,CAACgD,GAAG,CAACb,IAAI,CAACK,YAAY,EAAE,IAAI,CAAC;EACvC,OAAO9C,MAAM,CAACuF,OAAO,CACnBlF,WAAW,CAACmF,OAAO,CAAC/C,IAAI,CAACgD,OAAO,CAAC,EAChCC,CAAC,IAAK3F,QAAQ,CAAC4F,aAAa,CAACD,CAAC,EAAEJ,KAAK,CAAC5B,EAAE,CAAC,EAC1C;IAAEkC,OAAO,EAAE,IAAI;IAAEC,WAAW,EAAE;EAAW,CAAE,CAC5C,CAAClC,IAAI,CACJ3D,MAAM,CAAC8F,GAAG,CAAC,MACT9F,MAAM,CAACc,IAAI,CAAC,MAAK;IACf2B,IAAI,CAACiC,WAAW,CAACqB,MAAM,CAACtD,IAAI,CAACuD,YAAY,CAAC;IAC1CvD,IAAI,CAACuD,YAAY,CAACX,WAAW,EAAE;IAC/B5C,IAAI,CAACtB,QAAQ,CAAC8E,wBAAwB,CAACxD,IAAI,CAACC,MAAM,EAAED,IAAI,CAACiC,WAAW,CAAC;EACvE,CAAC,CAAC,CACH,EACD1E,MAAM,CAAC6D,IAAI,CAACpB,IAAI,CAACqB,YAAY,CAACC,IAAI,CAAC,EACnC/D,MAAM,CAACgE,MAAM,CACd;AACH,CAAC,CAAC,CACH;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgCA,OAAO,MAAMkC,IAAI,GAAOzD,IAAqB,IAC3CzC,MAAM,CAACwE,OAAO,CAAC,MAAK;EAClB,IAAI/B,IAAI,CAACK,YAAY,CAACqB,OAAO,EAAE;IAC7B,OAAOnE,MAAM,CAACyD,SAAS;EACzB;EACA,IAAIhB,IAAI,CAAC0D,YAAY,CAACC,SAAS,GAAG,CAAC,EAAE;IACnC,MAAMC,OAAO,GAAG5D,IAAI,CAAC0D,YAAY,CAACD,IAAI,EAAG;IACzC,OAAOlG,MAAM,CAAC2E,OAAO,CAAC0B,OAAO,CAAC;EAChC;EACA,MAAMA,OAAO,GAAG5D,IAAI,CAACgD,OAAO,CAACR,MAAM,KAAK,CAAC,GACrCxC,IAAI,CAACuD,YAAY,CAACM,IAAI,EAAE,GACxBjG,WAAW,CAACkG,KAAK;EACrB,IAAIF,OAAO,KAAKhG,WAAW,CAACkG,KAAK,EAAE;IACjC,OAAOC,WAAW,CAAC/D,IAAI,CAAC;EAC1B,CAAC,MAAM;IACLA,IAAI,CAACtB,QAAQ,CAAC8E,wBAAwB,CAACxD,IAAI,CAACC,MAAM,EAAED,IAAI,CAACiC,WAAW,CAAC;IACrE,OAAO1E,MAAM,CAAC2E,OAAO,CAAC0B,OAAO,CAAC;EAChC;AACF,CAAC,CAAC;AAEJ;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2BA,OAAO,MAAMb,OAAO,GAAO/C,IAAqB,IAC9CzC,MAAM,CAACwE,OAAO,CAAC,SAASiC,IAAIA,CAAClC,KAAW;EACtC,IAAI9B,IAAI,CAACK,YAAY,CAACqB,OAAO,EAAE;IAC7B,OAAOnE,MAAM,CAACyD,SAAS;EACzB;EACA,IAAIiD,EAAE,GAAGjE,IAAI,CAACgD,OAAO,CAACR,MAAM,KAAK,CAAC,GAC9BxC,IAAI,CAACuD,YAAY,CAACW,QAAQ,CAACC,MAAM,CAACC,iBAAiB,CAAC,GACpD,EAAE;EACN,IAAItC,KAAK,EAAE;IACTmC,EAAE,GAAGnC,KAAK,CAACuC,MAAM,CAACJ,EAAE,CAAC;EACvB;EACAjE,IAAI,CAACtB,QAAQ,CAAC8E,wBAAwB,CAACxD,IAAI,CAACC,MAAM,EAAED,IAAI,CAACiC,WAAW,CAAC;EACrE,IAAIjC,IAAI,CAAC0D,YAAY,CAACC,SAAS,GAAG,CAAC,EAAE;IACnC,OAAOpG,MAAM,CAAC2E,OAAO,CAAClC,IAAI,CAAC0D,YAAY,CAACX,OAAO,EAAE,CAACsB,MAAM,CAACJ,EAAE,CAAyB,CAAC;EACvF,CAAC,MAAM,IAAI,CAAC5G,GAAG,CAACiH,eAAe,CAACL,EAAE,CAAC,EAAE;IACnC,OAAO1G,MAAM,CAACgH,OAAO,CAACR,WAAW,CAAC/D,IAAI,CAAC,EAAGwE,IAAI,IAAKR,IAAI,CAAC,CAACQ,IAAI,CAAC,CAAC,CAAC;EAClE;EACA,OAAOjH,MAAM,CAAC2E,OAAO,CAAC+B,EAAE,CAAC;AAC3B,CAAC,CAAC;AAEJ,MAAMF,WAAW,GAAO/D,IAAqB,IAAI;EAC/C,MAAMyE,QAAQ,GAAGnH,QAAQ,CAACmB,UAAU,EAAK;EACzC,IAAIoC,GAAG,GAAGb,IAAI,CAACiC,WAAW,CAAC7B,GAAG,CAACJ,IAAI,CAACuD,YAAY,CAAC;EACjD,IAAI,CAAC1C,GAAG,EAAE;IACRA,GAAG,GAAG,IAAI6D,GAAG,EAAE;IACf1E,IAAI,CAACiC,WAAW,CAACpB,GAAG,CAACb,IAAI,CAACuD,YAAY,EAAE1C,GAAG,CAAC;EAC9C;EACAA,GAAG,CAAC8D,GAAG,CAAC3E,IAAI,CAACgD,OAAO,CAAC;EACrBpF,WAAW,CAACgH,MAAM,CAAC5E,IAAI,CAACgD,OAAO,EAAEyB,QAAQ,CAAC;EAC1CzE,IAAI,CAACtB,QAAQ,CAACmG,qBAAqB,CACjC7E,IAAI,CAACC,MAAM,EACXD,IAAI,CAACiC,WAAW,EAChBjC,IAAI,CAACuD,YAAY,EACjBvD,IAAI,CAACgD,OAAO,CACb;EACD,OAAOzF,MAAM,CAACuH,WAAW,CACvBxH,QAAQ,CAACsE,KAAK,CAAC6C,QAAQ,CAAC,EACxB,MAAK;IACH7G,WAAW,CAACmH,MAAM,CAAC/E,IAAI,CAACgD,OAAO,EAAEyB,QAAQ,CAAC;IAC1C,OAAOlH,MAAM,CAACyH,IAAI;EACpB,CAAC,CACF;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmCA,OAAO,MAAMC,QAAQ,gBAyEjBxH,IAAI,CAAC,CAAC,EAAE,CAAIuC,IAAqB,EAAEkF,GAAW,KAChD3H,MAAM,CAACwE,OAAO,CAAC,MAAK;EAClB,IAAI/B,IAAI,CAACK,YAAY,CAACqB,OAAO,EAAE,OAAOnE,MAAM,CAACyD,SAAS;EACtD,IAAIzB,MAAM,GAAyBI,SAAS;EAC5C,IAAIK,IAAI,CAAC0D,YAAY,CAACC,SAAS,IAAIuB,GAAG,EAAE;IACtC,OAAO3H,MAAM,CAAC2E,OAAO,CAAClC,IAAI,CAAC0D,YAAY,CAACyB,KAAK,CAACD,GAAG,CAAC,CAAC;EACrD,CAAC,MAAM,IAAIlF,IAAI,CAAC0D,YAAY,CAACC,SAAS,GAAG,CAAC,EAAE;IAC1CpE,MAAM,GAAGS,IAAI,CAAC0D,YAAY,CAACX,OAAO,EAAE;IACpCmC,GAAG,GAAGA,GAAG,GAAG3F,MAAM,CAACiD,MAAM;EAC3B;EACA,MAAMyB,EAAE,GAAGjE,IAAI,CAACgD,OAAO,CAACR,MAAM,KAAK,CAAC,GAChCxC,IAAI,CAACuD,YAAY,CAACW,QAAQ,CAACgB,GAAG,CAAC,GAC/B,EAAE;EACNlF,IAAI,CAACtB,QAAQ,CAAC8E,wBAAwB,CAACxD,IAAI,CAACC,MAAM,EAAED,IAAI,CAACiC,WAAW,CAAC;EACrE,OAAO1C,MAAM,GAAGhC,MAAM,CAAC2E,OAAO,CAAC3C,MAAM,CAAC8E,MAAM,CAACJ,EAAE,CAAC,CAAC,GAAG1G,MAAM,CAAC2E,OAAO,CAAC+B,EAAE,CAAC;AACxE,CAAC,CAAC,CAAC;AAEL;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgCA,OAAO,MAAMmB,WAAW,gBAmEpB3H,IAAI,CACN,CAAC,EACD,CAAIuC,IAAqB,EAAEqF,GAAW,EAAEH,GAAW,KACjD3H,MAAM,CAACwE,OAAO,CAAC,MAAMuD,iBAAiB,CAACtF,IAAI,EAAEqF,GAAG,EAAEH,GAAG,EAAE,EAAE,CAAC,CAAC,CAC9D;AAED,MAAMI,iBAAiB,GAAGA,CACxBtF,IAAqB,EACrBqF,GAAW,EACXH,GAAW,EACXK,GAAa,KACc;EAC3B,IAAIL,GAAG,GAAGG,GAAG,EAAE;IACb,OAAO9H,MAAM,CAAC2E,OAAO,CAACqD,GAAG,CAAC;EAC5B;EACA,OAAOhI,MAAM,CAACgH,OAAO,CAACU,QAAQ,CAACjF,IAAI,EAAEkF,GAAG,CAAC,EAAGM,EAAE,IAAI;IAChDD,GAAG,CAACE,IAAI,CAAC,GAAGD,EAAE,CAAC;IACf,MAAM7B,SAAS,GAAG0B,GAAG,GAAGG,EAAE,CAAChD,MAAM;IACjC,IAAImB,SAAS,KAAK,CAAC,EAAE;MACnB,OAAOpG,MAAM,CAACgD,GAAG,CAACkD,IAAI,CAACzD,IAAI,CAAC,EAAG0F,CAAC,IAAI;QAClCH,GAAG,CAACE,IAAI,CAACC,CAAC,CAAC;QACX,OAAOH,GAAG;MACZ,CAAC,CAAC;IACJ;IACA,IAAI5B,SAAS,GAAG,CAAC,EAAE;MACjB,OAAOpG,MAAM,CAACgH,OAAO,CAACd,IAAI,CAACzD,IAAI,CAAC,EAAG0F,CAAC,IAAI;QACtCH,GAAG,CAACE,IAAI,CAACC,CAAC,CAAC;QACX,OAAOJ,iBAAiB,CACtBtF,IAAI,EACJ2D,SAAS,GAAG,CAAC,EACbuB,GAAG,GAAGM,EAAE,CAAChD,MAAM,GAAG,CAAC,EACnB+C,GAAG,CACJ;MACH,CAAC,CAAC;IACJ;IACA,OAAOhI,MAAM,CAAC2E,OAAO,CAACqD,GAAG,CAAC;EAC5B,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiCA,OAAO,MAAM5B,SAAS,GAAO3D,IAAqB,IAChDzC,MAAM,CAACwE,OAAO,CAAC,MACb/B,IAAI,CAACK,YAAY,CAACqB,OAAO,GACrBnE,MAAM,CAACyD,SAAS,GAChBzD,MAAM,CAAC2E,OAAO,CAAClC,IAAI,CAACuD,YAAY,CAACrD,IAAI,EAAE,GAAGF,IAAI,CAAC0D,YAAY,CAACC,SAAS,CAAC,CAC3E;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BA,OAAO,MAAMgC,eAAe,GAAO3F,IAAqB,IAAwB;EAC9E,IAAIA,IAAI,CAACK,YAAY,CAACqB,OAAO,EAAE;IAC7B,OAAO/B,SAAS;EAClB;EACA,OAAOK,IAAI,CAACuD,YAAY,CAACrD,IAAI,EAAE,GAAGF,IAAI,CAAC0D,YAAY,CAACC,SAAS;AAC/D,CAAC;AAED;AACA;AACA;AAEA,MAAMiC,WAAW,gBAAGC,MAAM,CAACC,GAAG,CAAC,2BAA2B,CAAC;AAG3D,MAAMC,cAAc,GAAGA,CACrB9D,WAAkC,EAClCsB,YAA2C,EAC3CP,OAAsD,KACpD;EACF,IAAI,CAACf,WAAW,CAAC+D,GAAG,CAACzC,YAAY,CAAC,EAAE;IAClCtB,WAAW,CAACpB,GAAG,CAAC0C,YAAY,EAAE,IAAImB,GAAG,EAAE,CAAC;EAC1C;EACA,MAAM7D,GAAG,GAAGoB,WAAW,CAAC7B,GAAG,CAACmD,YAAY,CAAE;EAC1C1C,GAAG,CAAC8D,GAAG,CAAC3B,OAAO,CAAC;AAClB,CAAC;AAED,MAAMiD,iBAAiB,GAAGA,CACxBhE,WAAkC,EAClCsB,YAA2C,EAC3CP,OAAsD,KACpD;EACF,IAAI,CAACf,WAAW,CAAC+D,GAAG,CAACzC,YAAY,CAAC,EAAE;IAClC;EACF;EACA,MAAM1C,GAAG,GAAGoB,WAAW,CAAC7B,GAAG,CAACmD,YAAY,CAAE;EAC1C1C,GAAG,CAACyC,MAAM,CAACN,OAAO,CAAC;EACnB,IAAInC,GAAG,CAACX,IAAI,KAAK,CAAC,EAAE;IAClB+B,WAAW,CAACqB,MAAM,CAACC,YAAY,CAAC;EAClC;AACF,CAAC;AAED,MAAMZ,sBAAsB,GAAGA,CAC7B1C,MAAwB,EACxBgC,WAAkC,EAClCvD,QAA4B,KAE5B,IAAIwH,gBAAgB,CAClBjG,MAAM,EACNgC,WAAW,EACXhC,MAAM,CAACwC,SAAS,EAAE,EAClB7E,WAAW,CAACO,IAAI,EAAwB,EACxCR,KAAK,CAACc,UAAU,CAAC,KAAK,CAAC,EACvBZ,UAAU,CAACM,IAAI,CAAC,KAAK,CAAC,EACtBO,QAAQ,EACRuB,MAAM,CAACyD,YAAY,EAAE,CACtB;AAEH,MAAM5D,gBAAgB;EACpBqG,KAAK;EACLC,cAAc,GAAG,CAAC;EAClBnE,WAAW;EACXoE,eAAe,GAAG,CAAC;EACnBC,gBAAgB,GAAG,CAAC;EAEX1H,QAAQ;EACRU,YAAY;EAErBiH,YAAY3H,QAAgB,EAAEU,YAAyC;IACrE,IAAI,CAACV,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAACU,YAAY,GAAGA,YAAY;IAChC,IAAI,CAAC6G,KAAK,GAAGK,KAAK,CAACC,IAAI,CAAC;MAAEjE,MAAM,EAAE5D;IAAQ,CAAE,CAAC;IAC7C,IAAI,CAACqD,WAAW,GAAGuE,KAAK,CAACC,IAAI,CAAC;MAAEjE,MAAM,EAAE5D;IAAQ,CAAE,CAAC;EACrD;EAEA8E,YAAYA,CAAA;IACV,OAAO,IAAI,CAACpE,YAAY,GAAG,IAAIoH,gBAAgB,CAAC,IAAI,CAACpH,YAAY,CAAC,GAAGqH,iBAAiB;EACxF;EAEAnG,OAAOA,CAAA;IACL,OAAO,IAAI,CAAC4F,cAAc,KAAK,IAAI,CAACE,gBAAgB;EACtD;EAEAhG,MAAMA,CAAA;IACJ,OAAO,IAAI,CAAC8F,cAAc,KAAK,IAAI,CAACE,gBAAgB,GAAG,IAAI,CAAC1H,QAAQ;EACtE;EAEAsB,IAAIA,CAAA;IACF,OAAO,IAAI,CAACkG,cAAc,GAAG,IAAI,CAACE,gBAAgB;EACpD;EAEAzE,OAAOA,CAACC,KAAQ;IACd,IAAI,IAAI,CAACxB,MAAM,EAAE,EAAE;MACjB,OAAO,KAAK;IACd;IACA,IAAI,IAAI,CAAC+F,eAAe,KAAK,CAAC,EAAE;MAC9B,MAAMO,KAAK,GAAG,IAAI,CAACR,cAAc,GAAG,IAAI,CAACxH,QAAQ;MACjD,IAAI,CAACuH,KAAK,CAACS,KAAK,CAAC,GAAG9E,KAAK;MACzB,IAAI,CAACG,WAAW,CAAC2E,KAAK,CAAC,GAAG,IAAI,CAACP,eAAe;MAC9C,IAAI,CAACD,cAAc,IAAI,CAAC;IAC1B;IACA,IAAI,IAAI,CAAC9G,YAAY,EAAE;MACrB,IAAI,CAACA,YAAY,CAACuH,KAAK,CAAC/E,KAAK,CAAC;IAChC;IACA,OAAO,IAAI;EACb;EAEAO,UAAUA,CAACC,QAAqB;IAC9B,IAAI,IAAI,CAAC+D,eAAe,KAAK,CAAC,EAAE;MAC9B,IAAI,IAAI,CAAC/G,YAAY,EAAE;QACrB,IAAI,CAACA,YAAY,CAACwH,QAAQ,CAACxE,QAAQ,CAAC;MACtC;MACA,OAAO,EAAE;IACX;IACA,MAAMyE,KAAK,GAAG1J,GAAG,CAAC2J,YAAY,CAAC1E,QAAQ,CAAC;IACxC,MAAM2E,CAAC,GAAGF,KAAK,CAACvE,MAAM;IACtB,MAAMtC,IAAI,GAAG,IAAI,CAACkG,cAAc,GAAG,IAAI,CAACE,gBAAgB;IACxD,MAAMY,SAAS,GAAG,IAAI,CAACtI,QAAQ,GAAGsB,IAAI;IACtC,MAAMiH,SAAS,GAAG1H,IAAI,CAAC4F,GAAG,CAAC4B,CAAC,EAAEC,SAAS,CAAC;IACxC,IAAIC,SAAS,KAAK,CAAC,EAAE;MACnB,OAAOJ,KAAK;IACd;IACA,IAAIK,aAAa,GAAG,CAAC;IACrB,MAAMC,eAAe,GAAG,IAAI,CAACjB,cAAc,GAAGe,SAAS;IACvD,OAAO,IAAI,CAACf,cAAc,KAAKiB,eAAe,EAAE;MAC9C,MAAMC,CAAC,GAAGP,KAAK,CAACK,aAAa,EAAE,CAAC;MAChC,MAAMR,KAAK,GAAG,IAAI,CAACR,cAAc,GAAG,IAAI,CAACxH,QAAQ;MACjD,IAAI,CAACuH,KAAK,CAACS,KAAK,CAAC,GAAGU,CAAC;MACrB,IAAI,CAACrF,WAAW,CAAC2E,KAAK,CAAC,GAAG,IAAI,CAACP,eAAe;MAC9C,IAAI,CAACD,cAAc,IAAI,CAAC;MACxB,IAAI,IAAI,CAAC9G,YAAY,EAAE;QACrB,IAAI,CAACA,YAAY,CAACuH,KAAK,CAACS,CAAC,CAAC;MAC5B;IACF;IACA,OAAOP,KAAK,CAACQ,KAAK,CAACH,aAAa,CAAC;EACnC;EAEAI,KAAKA,CAAA;IACH,IAAI,IAAI,CAAClB,gBAAgB,KAAK,IAAI,CAACF,cAAc,EAAE;MACjD,MAAMQ,KAAK,GAAG,IAAI,CAACN,gBAAgB,GAAG,IAAI,CAAC1H,QAAQ;MACnD,IAAI,CAACuH,KAAK,CAACS,KAAK,CAAC,GAAGhB,WAA2B;MAC/C,IAAI,CAAC3D,WAAW,CAAC2E,KAAK,CAAC,GAAG,CAAC;MAC3B,IAAI,CAACN,gBAAgB,IAAI,CAAC;IAC5B;IACA,IAAI,IAAI,CAAChH,YAAY,EAAE;MACrB,IAAI,CAACA,YAAY,CAACkI,KAAK,EAAE;IAC3B;EACF;EAEA/E,SAASA,CAAA;IACP,IAAI,CAAC4D,eAAe,IAAI,CAAC;IACzB,OAAO,IAAIoB,4BAA4B,CAAC,IAAI,EAAE,IAAI,CAACrB,cAAc,EAAE,KAAK,CAAC;EAC3E;;AAGF,MAAMqB,4BAA4B;EACxBzH,IAAI;EACJ0H,eAAe;EACfC,YAAY;EAEpBpB,YACEvG,IAAyB,EACzB0H,eAAuB,EACvBC,YAAqB;IAErB,IAAI,CAAC3H,IAAI,GAAGA,IAAI;IAChB,IAAI,CAAC0H,eAAe,GAAGA,eAAe;IACtC,IAAI,CAACC,YAAY,GAAGA,YAAY;EAClC;EAEAnH,OAAOA,CAAA;IACL,OACE,IAAI,CAACmH,YAAY,IACjB,IAAI,CAAC3H,IAAI,CAACoG,cAAc,KAAK,IAAI,CAACsB,eAAe,IACjD,IAAI,CAAC1H,IAAI,CAACoG,cAAc,KAAK,IAAI,CAACpG,IAAI,CAACsG,gBAAgB;EAE3D;EAEApG,IAAIA,CAAA;IACF,IAAI,IAAI,CAACyH,YAAY,EAAE;MACrB,OAAO,CAAC;IACV;IACA,OAAO,IAAI,CAAC3H,IAAI,CAACoG,cAAc,GAAG3G,IAAI,CAACyF,GAAG,CAAC,IAAI,CAACwC,eAAe,EAAE,IAAI,CAAC1H,IAAI,CAACsG,gBAAgB,CAAC;EAC9F;EAEAzC,IAAIA,CAAA;IACF,IAAI,IAAI,CAAC8D,YAAY,EAAE;MACrB,OAAO/J,WAAW,CAACkG,KAAK;IAC1B;IACA,IAAI,CAAC4D,eAAe,GAAGjI,IAAI,CAACyF,GAAG,CAAC,IAAI,CAACwC,eAAe,EAAE,IAAI,CAAC1H,IAAI,CAACsG,gBAAgB,CAAC;IACjF,IAAI,IAAI,CAACoB,eAAe,KAAK,IAAI,CAAC1H,IAAI,CAACoG,cAAc,EAAE;MACrD,MAAMQ,KAAK,GAAG,IAAI,CAACc,eAAe,GAAG,IAAI,CAAC1H,IAAI,CAACpB,QAAQ;MACvD,MAAMgJ,IAAI,GAAG,IAAI,CAAC5H,IAAI,CAACmG,KAAK,CAACS,KAAK,CAAE;MACpC,IAAI,CAAC5G,IAAI,CAACiC,WAAW,CAAC2E,KAAK,CAAC,IAAI,CAAC;MACjC,IAAI,IAAI,CAAC5G,IAAI,CAACiC,WAAW,CAAC2E,KAAK,CAAC,KAAK,CAAC,EAAE;QACtC,IAAI,CAAC5G,IAAI,CAACmG,KAAK,CAACS,KAAK,CAAC,GAAGhB,WAA2B;QACpD,IAAI,CAAC5F,IAAI,CAACsG,gBAAgB,IAAI,CAAC;MACjC;MACA,IAAI,CAACoB,eAAe,IAAI,CAAC;MACzB,OAAOE,IAAI;IACb;IACA,OAAOhK,WAAW,CAACkG,KAAK;EAC1B;EAEAI,QAAQA,CAAC+C,CAAS;IAChB,IAAI,IAAI,CAACU,YAAY,EAAE;MACrB,OAAO,EAAE;IACX;IACA,IAAI,CAACD,eAAe,GAAGjI,IAAI,CAACyF,GAAG,CAAC,IAAI,CAACwC,eAAe,EAAE,IAAI,CAAC1H,IAAI,CAACsG,gBAAgB,CAAC;IACjF,MAAMpG,IAAI,GAAG,IAAI,CAACF,IAAI,CAACoG,cAAc,GAAG,IAAI,CAACsB,eAAe;IAC5D,MAAMG,MAAM,GAAGpI,IAAI,CAAC4F,GAAG,CAAC4B,CAAC,EAAE/G,IAAI,CAAC;IAChC,IAAI2H,MAAM,IAAI,CAAC,EAAE;MACf,OAAO,EAAE;IACX;IACA,MAAMC,OAAO,GAAa,EAAE;IAC5B,MAAMC,aAAa,GAAG,IAAI,CAACL,eAAe,GAAGG,MAAM;IACnD,OAAO,IAAI,CAACH,eAAe,KAAKK,aAAa,EAAE;MAC7C,MAAMnB,KAAK,GAAG,IAAI,CAACc,eAAe,GAAG,IAAI,CAAC1H,IAAI,CAACpB,QAAQ;MACvD,MAAM0I,CAAC,GAAG,IAAI,CAACtH,IAAI,CAACmG,KAAK,CAACS,KAAK,CAAM;MACrC,IAAI,CAAC5G,IAAI,CAACiC,WAAW,CAAC2E,KAAK,CAAC,IAAI,CAAC;MACjC,IAAI,IAAI,CAAC5G,IAAI,CAACiC,WAAW,CAAC2E,KAAK,CAAC,KAAK,CAAC,EAAE;QACtC,IAAI,CAAC5G,IAAI,CAACmG,KAAK,CAACS,KAAK,CAAC,GAAGhB,WAA2B;QACpD,IAAI,CAAC5F,IAAI,CAACsG,gBAAgB,IAAI,CAAC;MACjC;MACAwB,OAAO,CAACrC,IAAI,CAAC6B,CAAC,CAAC;MACf,IAAI,CAACI,eAAe,IAAI,CAAC;IAC3B;IAEA,OAAOI,OAAO;EAChB;EAEAlF,WAAWA,CAAA;IACT,IAAI,CAAC,IAAI,CAAC+E,YAAY,EAAE;MACtB,IAAI,CAACA,YAAY,GAAG,IAAI;MACxB,IAAI,CAAC3H,IAAI,CAACqG,eAAe,IAAI,CAAC;MAC9B,IAAI,CAACqB,eAAe,GAAGjI,IAAI,CAACyF,GAAG,CAAC,IAAI,CAACwC,eAAe,EAAE,IAAI,CAAC1H,IAAI,CAACsG,gBAAgB,CAAC;MACjF,OAAO,IAAI,CAACoB,eAAe,KAAK,IAAI,CAAC1H,IAAI,CAACoG,cAAc,EAAE;QACxD,MAAMQ,KAAK,GAAG,IAAI,CAACc,eAAe,GAAG,IAAI,CAAC1H,IAAI,CAACpB,QAAQ;QACvD,IAAI,CAACoB,IAAI,CAACiC,WAAW,CAAC2E,KAAK,CAAC,IAAI,CAAC;QACjC,IAAI,IAAI,CAAC5G,IAAI,CAACiC,WAAW,CAAC2E,KAAK,CAAC,KAAK,CAAC,EAAE;UACtC,IAAI,CAAC5G,IAAI,CAACmG,KAAK,CAACS,KAAK,CAAC,GAAGhB,WAA2B;UACpD,IAAI,CAAC5F,IAAI,CAACsG,gBAAgB,IAAI,CAAC;QACjC;QACA,IAAI,CAACoB,eAAe,IAAI,CAAC;MAC3B;IACF;EACF;;AAGF,MAAM7H,iBAAiB;EACrBsG,KAAK;EACL6B,IAAI;EACJ5B,cAAc,GAAG,CAAC;EAClBnE,WAAW;EACXoE,eAAe,GAAG,CAAC;EACnBC,gBAAgB,GAAG,CAAC;EAEX1H,QAAQ;EACRU,YAAY;EAErBiH,YAAY3H,QAAgB,EAAEU,YAAyC;IACrE,IAAI,CAACV,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAACU,YAAY,GAAGA,YAAY;IAChC,IAAI,CAAC6G,KAAK,GAAGK,KAAK,CAACC,IAAI,CAAC;MAAEjE,MAAM,EAAE5D;IAAQ,CAAE,CAAC;IAC7C,IAAI,CAACoJ,IAAI,GAAGpJ,QAAQ,GAAG,CAAC;IACxB,IAAI,CAACqD,WAAW,GAAGuE,KAAK,CAACC,IAAI,CAAC;MAAEjE,MAAM,EAAE5D;IAAQ,CAAE,CAAC;EACrD;EAEA8E,YAAYA,CAAA;IACV,OAAO,IAAI,CAACpE,YAAY,GAAG,IAAIoH,gBAAgB,CAAC,IAAI,CAACpH,YAAY,CAAC,GAAGqH,iBAAiB;EACxF;EAEAnG,OAAOA,CAAA;IACL,OAAO,IAAI,CAAC4F,cAAc,KAAK,IAAI,CAACE,gBAAgB;EACtD;EAEAhG,MAAMA,CAAA;IACJ,OAAO,IAAI,CAAC8F,cAAc,KAAK,IAAI,CAACE,gBAAgB,GAAG,IAAI,CAAC1H,QAAQ;EACtE;EAEAsB,IAAIA,CAAA;IACF,OAAO,IAAI,CAACkG,cAAc,GAAG,IAAI,CAACE,gBAAgB;EACpD;EAEAzE,OAAOA,CAACC,KAAQ;IACd,IAAI,IAAI,CAACxB,MAAM,EAAE,EAAE;MACjB,OAAO,KAAK;IACd;IACA,IAAI,IAAI,CAAC+F,eAAe,KAAK,CAAC,EAAE;MAC9B,MAAMO,KAAK,GAAG,IAAI,CAACR,cAAc,GAAG,IAAI,CAAC4B,IAAI;MAC7C,IAAI,CAAC7B,KAAK,CAACS,KAAK,CAAC,GAAG9E,KAAK;MACzB,IAAI,CAACG,WAAW,CAAC2E,KAAK,CAAC,GAAG,IAAI,CAACP,eAAe;MAC9C,IAAI,CAACD,cAAc,IAAI,CAAC;IAC1B;IACA,IAAI,IAAI,CAAC9G,YAAY,EAAE;MACrB,IAAI,CAACA,YAAY,CAACuH,KAAK,CAAC/E,KAAK,CAAC;IAChC;IACA,OAAO,IAAI;EACb;EAEAO,UAAUA,CAACC,QAAqB;IAC9B,IAAI,IAAI,CAAC+D,eAAe,KAAK,CAAC,EAAE;MAC9B,IAAI,IAAI,CAAC/G,YAAY,EAAE;QACrB,IAAI,CAACA,YAAY,CAACwH,QAAQ,CAACxE,QAAQ,CAAC;MACtC;MACA,OAAO,EAAE;IACX;IACA,MAAMyE,KAAK,GAAG1J,GAAG,CAAC2J,YAAY,CAAC1E,QAAQ,CAAC;IACxC,MAAM2E,CAAC,GAAGF,KAAK,CAACvE,MAAM;IACtB,MAAMtC,IAAI,GAAG,IAAI,CAACkG,cAAc,GAAG,IAAI,CAACE,gBAAgB;IACxD,MAAMY,SAAS,GAAG,IAAI,CAACtI,QAAQ,GAAGsB,IAAI;IACtC,MAAMiH,SAAS,GAAG1H,IAAI,CAAC4F,GAAG,CAAC4B,CAAC,EAAEC,SAAS,CAAC;IACxC,IAAIC,SAAS,KAAK,CAAC,EAAE;MACnB,OAAOJ,KAAK;IACd;IACA,IAAIK,aAAa,GAAG,CAAC;IACrB,MAAMC,eAAe,GAAG,IAAI,CAACjB,cAAc,GAAGe,SAAS;IACvD,OAAO,IAAI,CAACf,cAAc,KAAKiB,eAAe,EAAE;MAC9C,MAAMO,IAAI,GAAGb,KAAK,CAACK,aAAa,EAAE,CAAC;MACnC,MAAMR,KAAK,GAAG,IAAI,CAACR,cAAc,GAAG,IAAI,CAAC4B,IAAI;MAC7C,IAAI,CAAC7B,KAAK,CAACS,KAAK,CAAC,GAAGgB,IAAI;MACxB,IAAI,CAAC3F,WAAW,CAAC2E,KAAK,CAAC,GAAG,IAAI,CAACP,eAAe;MAC9C,IAAI,CAACD,cAAc,IAAI,CAAC;MACxB,IAAI,IAAI,CAAC9G,YAAY,EAAE;QACrB,IAAI,CAACA,YAAY,CAACuH,KAAK,CAACe,IAAI,CAAC;MAC/B;IACF;IACA,OAAOb,KAAK,CAACQ,KAAK,CAACH,aAAa,CAAC;EACnC;EAEAI,KAAKA,CAAA;IACH,IAAI,IAAI,CAAClB,gBAAgB,KAAK,IAAI,CAACF,cAAc,EAAE;MACjD,MAAMQ,KAAK,GAAG,IAAI,CAACN,gBAAgB,GAAG,IAAI,CAAC0B,IAAI;MAC/C,IAAI,CAAC7B,KAAK,CAACS,KAAK,CAAC,GAAGhB,WAA2B;MAC/C,IAAI,CAAC3D,WAAW,CAAC2E,KAAK,CAAC,GAAG,CAAC;MAC3B,IAAI,CAACN,gBAAgB,IAAI,CAAC;IAC5B;IACA,IAAI,IAAI,CAAChH,YAAY,EAAE;MACrB,IAAI,CAACA,YAAY,CAACkI,KAAK,EAAE;IAC3B;EACF;EAEA/E,SAASA,CAAA;IACP,IAAI,CAAC4D,eAAe,IAAI,CAAC;IACzB,OAAO,IAAI4B,6BAA6B,CAAC,IAAI,EAAE,IAAI,CAAC7B,cAAc,EAAE,KAAK,CAAC;EAC5E;;AAGF,MAAM6B,6BAA6B;EACzBjI,IAAI;EACJ0H,eAAe;EACfC,YAAY;EAEpBpB,YACEvG,IAA0B,EAC1B0H,eAAuB,EACvBC,YAAqB;IAErB,IAAI,CAAC3H,IAAI,GAAGA,IAAI;IAChB,IAAI,CAAC0H,eAAe,GAAGA,eAAe;IACtC,IAAI,CAACC,YAAY,GAAGA,YAAY;EAClC;EAEAnH,OAAOA,CAAA;IACL,OACE,IAAI,CAACmH,YAAY,IACjB,IAAI,CAAC3H,IAAI,CAACoG,cAAc,KAAK,IAAI,CAACsB,eAAe,IACjD,IAAI,CAAC1H,IAAI,CAACoG,cAAc,KAAK,IAAI,CAACpG,IAAI,CAACsG,gBAAgB;EAE3D;EAEApG,IAAIA,CAAA;IACF,IAAI,IAAI,CAACyH,YAAY,EAAE;MACrB,OAAO,CAAC;IACV;IACA,OAAO,IAAI,CAAC3H,IAAI,CAACoG,cAAc,GAAG3G,IAAI,CAACyF,GAAG,CAAC,IAAI,CAACwC,eAAe,EAAE,IAAI,CAAC1H,IAAI,CAACsG,gBAAgB,CAAC;EAC9F;EAEAzC,IAAIA,CAAA;IACF,IAAI,IAAI,CAAC8D,YAAY,EAAE;MACrB,OAAO/J,WAAW,CAACkG,KAAK;IAC1B;IACA,IAAI,CAAC4D,eAAe,GAAGjI,IAAI,CAACyF,GAAG,CAAC,IAAI,CAACwC,eAAe,EAAE,IAAI,CAAC1H,IAAI,CAACsG,gBAAgB,CAAC;IACjF,IAAI,IAAI,CAACoB,eAAe,KAAK,IAAI,CAAC1H,IAAI,CAACoG,cAAc,EAAE;MACrD,MAAMQ,KAAK,GAAG,IAAI,CAACc,eAAe,GAAG,IAAI,CAAC1H,IAAI,CAACgI,IAAI;MACnD,MAAMJ,IAAI,GAAG,IAAI,CAAC5H,IAAI,CAACmG,KAAK,CAACS,KAAK,CAAE;MACpC,IAAI,CAAC5G,IAAI,CAACiC,WAAW,CAAC2E,KAAK,CAAC,IAAI,CAAC;MACjC,IAAI,IAAI,CAAC5G,IAAI,CAACiC,WAAW,CAAC2E,KAAK,CAAC,KAAK,CAAC,EAAE;QACtC,IAAI,CAAC5G,IAAI,CAACmG,KAAK,CAACS,KAAK,CAAC,GAAGhB,WAA2B;QACpD,IAAI,CAAC5F,IAAI,CAACsG,gBAAgB,IAAI,CAAC;MACjC;MACA,IAAI,CAACoB,eAAe,IAAI,CAAC;MACzB,OAAOE,IAAI;IACb;IACA,OAAOhK,WAAW,CAACkG,KAAK;EAC1B;EAEAI,QAAQA,CAAC+C,CAAS;IAChB,IAAI,IAAI,CAACU,YAAY,EAAE;MACrB,OAAO,EAAE;IACX;IACA,IAAI,CAACD,eAAe,GAAGjI,IAAI,CAACyF,GAAG,CAAC,IAAI,CAACwC,eAAe,EAAE,IAAI,CAAC1H,IAAI,CAACsG,gBAAgB,CAAC;IACjF,MAAMpG,IAAI,GAAG,IAAI,CAACF,IAAI,CAACoG,cAAc,GAAG,IAAI,CAACsB,eAAe;IAC5D,MAAMG,MAAM,GAAGpI,IAAI,CAAC4F,GAAG,CAAC4B,CAAC,EAAE/G,IAAI,CAAC;IAChC,IAAI2H,MAAM,IAAI,CAAC,EAAE;MACf,OAAO,EAAE;IACX;IACA,MAAMC,OAAO,GAAa,EAAE;IAC5B,MAAMC,aAAa,GAAG,IAAI,CAACL,eAAe,GAAGG,MAAM;IACnD,OAAO,IAAI,CAACH,eAAe,KAAKK,aAAa,EAAE;MAC7C,MAAMnB,KAAK,GAAG,IAAI,CAACc,eAAe,GAAG,IAAI,CAAC1H,IAAI,CAACgI,IAAI;MACnD,MAAMJ,IAAI,GAAG,IAAI,CAAC5H,IAAI,CAACmG,KAAK,CAACS,KAAK,CAAM;MACxC,IAAI,CAAC5G,IAAI,CAACiC,WAAW,CAAC2E,KAAK,CAAC,IAAI,CAAC;MACjC,IAAI,IAAI,CAAC5G,IAAI,CAACiC,WAAW,CAAC2E,KAAK,CAAC,KAAK,CAAC,EAAE;QACtC,IAAI,CAAC5G,IAAI,CAACmG,KAAK,CAACS,KAAK,CAAC,GAAGhB,WAA2B;QACpD,IAAI,CAAC5F,IAAI,CAACsG,gBAAgB,IAAI,CAAC;MACjC;MACAwB,OAAO,CAACrC,IAAI,CAACmC,IAAI,CAAC;MAClB,IAAI,CAACF,eAAe,IAAI,CAAC;IAC3B;IACA,OAAOI,OAAO;EAChB;EAEAlF,WAAWA,CAAA;IACT,IAAI,CAAC,IAAI,CAAC+E,YAAY,EAAE;MACtB,IAAI,CAACA,YAAY,GAAG,IAAI;MACxB,IAAI,CAAC3H,IAAI,CAACqG,eAAe,IAAI,CAAC;MAC9B,IAAI,CAACqB,eAAe,GAAGjI,IAAI,CAACyF,GAAG,CAAC,IAAI,CAACwC,eAAe,EAAE,IAAI,CAAC1H,IAAI,CAACsG,gBAAgB,CAAC;MACjF,OAAO,IAAI,CAACoB,eAAe,KAAK,IAAI,CAAC1H,IAAI,CAACoG,cAAc,EAAE;QACxD,MAAMQ,KAAK,GAAG,IAAI,CAACc,eAAe,GAAG,IAAI,CAAC1H,IAAI,CAACgI,IAAI;QACnD,IAAI,CAAChI,IAAI,CAACiC,WAAW,CAAC2E,KAAK,CAAC,IAAI,CAAC;QACjC,IAAI,IAAI,CAAC5G,IAAI,CAACiC,WAAW,CAAC2E,KAAK,CAAC,KAAK,CAAC,EAAE;UACtC,IAAI,CAAC5G,IAAI,CAACmG,KAAK,CAACS,KAAK,CAAC,GAAGhB,WAA2B;UACpD,IAAI,CAAC5F,IAAI,CAACsG,gBAAgB,IAAI,CAAC;QACjC;QACA,IAAI,CAACoB,eAAe,IAAI,CAAC;MAC3B;IACF;EACF;;AAGF,MAAM9H,mBAAmB;EACvBwG,cAAc,GAAG,CAAC;EAClBC,eAAe,GAAG,CAAC;EACnBpE,WAAW,GAAG,CAAC;EACfH,KAAK,GAAM8D,WAA2B;EAE7BhH,QAAQ,GAAG,CAAC;EACZU,YAAY;EAErBiH,YAAYjH,YAAyC;IACnD,IAAI,CAACA,YAAY,GAAGA,YAAY;EAClC;EAEAoE,YAAYA,CAAA;IACV,OAAO,IAAI,CAACpE,YAAY,GAAG,IAAIoH,gBAAgB,CAAC,IAAI,CAACpH,YAAY,CAAC,GAAGqH,iBAAiB;EACxF;EAEAzF,IAAIA,CAAA;IACF,OAAOnD,aAAa,CAAC,IAAI,EAAEmK,SAAS,CAAC;EACvC;EAEA1H,OAAOA,CAAA;IACL,OAAO,IAAI,CAACyB,WAAW,KAAK,CAAC;EAC/B;EAEA3B,MAAMA,CAAA;IACJ,OAAO,CAAC,IAAI,CAACE,OAAO,EAAE;EACxB;EAEAN,IAAIA,CAAA;IACF,OAAO,IAAI,CAACM,OAAO,EAAE,GAAG,CAAC,GAAG,CAAC;EAC/B;EAEAqB,OAAOA,CAACC,KAAQ;IACd,IAAI,IAAI,CAACxB,MAAM,EAAE,EAAE;MACjB,OAAO,KAAK;IACd;IACA,IAAI,IAAI,CAAC+F,eAAe,KAAK,CAAC,EAAE;MAC9B,IAAI,CAACvE,KAAK,GAAGA,KAAK;MAClB,IAAI,CAACG,WAAW,GAAG,IAAI,CAACoE,eAAe;MACvC,IAAI,CAACD,cAAc,IAAI,CAAC;IAC1B;IACA,IAAI,IAAI,CAAC9G,YAAY,EAAE;MACrB,IAAI,CAACA,YAAY,CAACuH,KAAK,CAAC/E,KAAK,CAAC;IAChC;IACA,OAAO,IAAI;EACb;EAEAO,UAAUA,CAACC,QAAqB;IAC9B,IAAI,IAAI,CAAC+D,eAAe,KAAK,CAAC,EAAE;MAC9B,IAAI,IAAI,CAAC/G,YAAY,EAAE;QACrB,IAAI,CAACA,YAAY,CAACwH,QAAQ,CAACxE,QAAQ,CAAC;MACtC;MACA,OAAO,EAAE;IACX;IACA,MAAMyE,KAAK,GAAG1J,GAAG,CAAC2J,YAAY,CAAC1E,QAAQ,CAAC;IACxC,IAAIyE,KAAK,CAACvE,MAAM,KAAK,CAAC,EAAE;MACtB,OAAOuE,KAAK;IACd;IACA,IAAI,IAAI,CAAClF,OAAO,CAACkF,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE;MAC1B,OAAOA,KAAK,CAACQ,KAAK,CAAC,CAAC,CAAC;IACvB,CAAC,MAAM;MACL,OAAOR,KAAK;IACd;EACF;EAEAS,KAAKA,CAAA;IACH,IAAI,IAAI,CAAClH,MAAM,EAAE,EAAE;MACjB,IAAI,CAAC2B,WAAW,GAAG,CAAC;MACpB,IAAI,CAACH,KAAK,GAAG8D,WAA2B;IAC1C;IACA,IAAI,IAAI,CAACtG,YAAY,EAAE;MACrB,IAAI,CAACA,YAAY,CAACkI,KAAK,EAAE;IAC3B;EACF;EAEA/E,SAASA,CAAA;IACP,IAAI,CAAC4D,eAAe,IAAI,CAAC;IACzB,OAAO,IAAI8B,+BAA+B,CAAC,IAAI,EAAE,IAAI,CAAC/B,cAAc,EAAE,KAAK,CAAC;EAC9E;;AAGF,MAAM+B,+BAA+B;EAC3BnI,IAAI;EACJ0H,eAAe;EACfC,YAAY;EAEpBpB,YACEvG,IAA4B,EAC5B0H,eAAuB,EACvBC,YAAqB;IAErB,IAAI,CAAC3H,IAAI,GAAGA,IAAI;IAChB,IAAI,CAAC0H,eAAe,GAAGA,eAAe;IACtC,IAAI,CAACC,YAAY,GAAGA,YAAY;EAClC;EAEAnH,OAAOA,CAAA;IACL,OACE,IAAI,CAACmH,YAAY,IACjB,IAAI,CAAC3H,IAAI,CAACiC,WAAW,KAAK,CAAC,IAC3B,IAAI,CAACyF,eAAe,KAAK,IAAI,CAAC1H,IAAI,CAACoG,cAAc;EAErD;EAEAlG,IAAIA,CAAA;IACF,OAAO,IAAI,CAACM,OAAO,EAAE,GAAG,CAAC,GAAG,CAAC;EAC/B;EAEAqD,IAAIA,CAAA;IACF,IAAI,IAAI,CAACrD,OAAO,EAAE,EAAE;MAClB,OAAO5C,WAAW,CAACkG,KAAK;IAC1B;IACA,MAAM8D,IAAI,GAAG,IAAI,CAAC5H,IAAI,CAAC8B,KAAK;IAC5B,IAAI,CAAC9B,IAAI,CAACiC,WAAW,IAAI,CAAC;IAC1B,IAAI,IAAI,CAACjC,IAAI,CAACiC,WAAW,KAAK,CAAC,EAAE;MAC/B,IAAI,CAACjC,IAAI,CAAC8B,KAAK,GAAG8D,WAA2B;IAC/C;IACA,IAAI,CAAC8B,eAAe,IAAI,CAAC;IACzB,OAAOE,IAAI;EACb;EAEA1D,QAAQA,CAAC+C,CAAS;IAChB,IAAI,IAAI,CAACzG,OAAO,EAAE,IAAIyG,CAAC,GAAG,CAAC,EAAE;MAC3B,OAAO,EAAE;IACX;IACA,MAAMK,CAAC,GAAG,IAAI,CAACtH,IAAI,CAAC8B,KAAK;IACzB,IAAI,CAAC9B,IAAI,CAACiC,WAAW,IAAI,CAAC;IAC1B,IAAI,IAAI,CAACjC,IAAI,CAACiC,WAAW,KAAK,CAAC,EAAE;MAC/B,IAAI,CAACjC,IAAI,CAAC8B,KAAK,GAAG8D,WAA2B;IAC/C;IACA,IAAI,CAAC8B,eAAe,IAAI,CAAC;IACzB,OAAO,CAACJ,CAAC,CAAC;EACZ;EAEA1E,WAAWA,CAAA;IACT,IAAI,CAAC,IAAI,CAAC+E,YAAY,EAAE;MACtB,IAAI,CAACA,YAAY,GAAG,IAAI;MACxB,IAAI,CAAC3H,IAAI,CAACqG,eAAe,IAAI,CAAC;MAC9B,IAAI,IAAI,CAACqB,eAAe,KAAK,IAAI,CAAC1H,IAAI,CAACoG,cAAc,EAAE;QACrD,IAAI,CAACpG,IAAI,CAACiC,WAAW,IAAI,CAAC;QAC1B,IAAI,IAAI,CAACjC,IAAI,CAACiC,WAAW,KAAK,CAAC,EAAE;UAC/B,IAAI,CAACjC,IAAI,CAAC8B,KAAK,GAAG8D,WAA2B;QAC/C;MACF;IACF;EACF;;AASF,MAAM7F,eAAe;EACnBqI,aAAa,GAAY;IACvBtG,KAAK,EAAE8D,WAAW;IAClB3D,WAAW,EAAE,CAAC;IACdoG,IAAI,EAAE;GACP;EACDC,aAAa,GAAG,IAAI,CAACF,aAAa;EAClChC,cAAc,GAAG,CAAC;EAClBE,gBAAgB,GAAG,CAAC;EAEX1H,QAAQ,GAAGuF,MAAM,CAACoE,gBAAgB;EAClCjJ,YAAY;EAErBiH,YAAYjH,YAAyC;IACnD,IAAI,CAACA,YAAY,GAAGA,YAAY;EAClC;EAEAoE,YAAYA,CAAA;IACV,OAAO,IAAI,CAACpE,YAAY,GAAG,IAAIoH,gBAAgB,CAAC,IAAI,CAACpH,YAAY,CAAC,GAAGqH,iBAAiB;EACxF;EAEAnG,OAAOA,CAAA;IACL,OAAO,IAAI,CAAC4H,aAAa,KAAK,IAAI,CAACE,aAAa;EAClD;EAEAhI,MAAMA,CAAA;IACJ,OAAO,KAAK;EACd;EAEAJ,IAAIA,CAAA;IACF,OAAO,IAAI,CAACkG,cAAc,GAAG,IAAI,CAACE,gBAAgB;EACpD;EAEAzE,OAAOA,CAACC,KAAQ;IACd,MAAMG,WAAW,GAAG,IAAI,CAACqG,aAAa,CAACrG,WAAW;IAClD,IAAIA,WAAW,KAAK,CAAC,EAAE;MACrB,IAAI,CAACqG,aAAa,CAACD,IAAI,GAAG;QACxBvG,KAAK;QACLG,WAAW;QACXoG,IAAI,EAAE;OACP;MACD,IAAI,CAACC,aAAa,GAAG,IAAI,CAACA,aAAa,CAACD,IAAI;MAC5C,IAAI,CAACjC,cAAc,IAAI,CAAC;IAC1B;IACA,IAAI,IAAI,CAAC9G,YAAY,EAAE;MACrB,IAAI,CAACA,YAAY,CAACuH,KAAK,CAAC/E,KAAK,CAAC;IAChC;IACA,OAAO,IAAI;EACb;EAEAO,UAAUA,CAACC,QAAqB;IAC9B,IAAI,IAAI,CAACgG,aAAa,CAACrG,WAAW,KAAK,CAAC,EAAE;MACxC,KAAK,MAAMqF,CAAC,IAAIhF,QAAQ,EAAE;QACxB,IAAI,CAACT,OAAO,CAACyF,CAAC,CAAC;MACjB;IACF,CAAC,MAAM,IAAI,IAAI,CAAChI,YAAY,EAAE;MAC5B,IAAI,CAACA,YAAY,CAACwH,QAAQ,CAACxE,QAAQ,CAAC;IACtC;IACA,OAAO,EAAE;EACX;EAEAkF,KAAKA,CAAA;IACH,IAAI,IAAI,CAACY,aAAa,KAAK,IAAI,CAACE,aAAa,EAAE;MAC7C,IAAI,CAACF,aAAa,GAAG,IAAI,CAACA,aAAa,CAACC,IAAK;MAC7C,IAAI,CAACD,aAAa,CAACtG,KAAK,GAAG8D,WAAW;MACtC,IAAI,CAACU,gBAAgB,IAAI,CAAC;IAC5B;IACA,IAAI,IAAI,CAAChH,YAAY,EAAE;MACrB,IAAI,CAACA,YAAY,CAACkI,KAAK,EAAE;IAC3B;EACF;EAEA/E,SAASA,CAAA;IACP,IAAI,CAAC6F,aAAa,CAACrG,WAAW,IAAI,CAAC;IACnC,OAAO,IAAIuG,2BAA2B,CACpC,IAAI,EACJ,IAAI,CAACF,aAAa,EAClB,IAAI,CAAClC,cAAc,EACnB,KAAK,CACN;EACH;;AAGF,MAAMoC,2BAA2B;EACvBxI,IAAI;EACJyI,cAAc;EACdf,eAAe;EACfC,YAAY;EAEpBpB,YACEvG,IAAwB,EACxByI,cAAuB,EACvBf,eAAuB,EACvBC,YAAqB;IAErB,IAAI,CAAC3H,IAAI,GAAGA,IAAI;IAChB,IAAI,CAACyI,cAAc,GAAGA,cAAc;IACpC,IAAI,CAACf,eAAe,GAAGA,eAAe;IACtC,IAAI,CAACC,YAAY,GAAGA,YAAY;EAClC;EAEAnH,OAAOA,CAAA;IACL,IAAI,IAAI,CAACmH,YAAY,EAAE;MACrB,OAAO,IAAI;IACb;IACA,IAAIe,KAAK,GAAG,IAAI;IAChB,IAAI1E,IAAI,GAAG,IAAI;IACf,OAAOA,IAAI,EAAE;MACX,IAAI,IAAI,CAACyE,cAAc,KAAK,IAAI,CAACzI,IAAI,CAACsI,aAAa,EAAE;QACnDtE,IAAI,GAAG,KAAK;MACd,CAAC,MAAM;QACL,IAAI,IAAI,CAACyE,cAAc,CAACJ,IAAK,CAACvG,KAAK,KAAK8D,WAAW,EAAE;UACnD8C,KAAK,GAAG,KAAK;UACb1E,IAAI,GAAG,KAAK;QACd,CAAC,MAAM;UACL,IAAI,CAACyE,cAAc,GAAG,IAAI,CAACA,cAAc,CAACJ,IAAK;UAC/C,IAAI,CAACX,eAAe,IAAI,CAAC;QAC3B;MACF;IACF;IACA,OAAOgB,KAAK;EACd;EAEAxI,IAAIA,CAAA;IACF,IAAI,IAAI,CAACyH,YAAY,EAAE;MACrB,OAAO,CAAC;IACV;IACA,OAAO,IAAI,CAAC3H,IAAI,CAACoG,cAAc,GAAG3G,IAAI,CAACyF,GAAG,CAAC,IAAI,CAACwC,eAAe,EAAE,IAAI,CAAC1H,IAAI,CAACsG,gBAAgB,CAAC;EAC9F;EAEAzC,IAAIA,CAAA;IACF,IAAI,IAAI,CAAC8D,YAAY,EAAE;MACrB,OAAO/J,WAAW,CAACkG,KAAK;IAC1B;IACA,IAAIE,IAAI,GAAG,IAAI;IACf,IAAI2E,MAAM,GAA0B/K,WAAW,CAACkG,KAAK;IACrD,OAAOE,IAAI,EAAE;MACX,IAAI,IAAI,CAACyE,cAAc,KAAK,IAAI,CAACzI,IAAI,CAACsI,aAAa,EAAE;QACnDtE,IAAI,GAAG,KAAK;MACd,CAAC,MAAM;QACL,MAAM4D,IAAI,GAAG,IAAI,CAACa,cAAc,CAACJ,IAAK,CAACvG,KAAK;QAC5C,IAAI8F,IAAI,KAAKhC,WAAW,EAAE;UACxB+C,MAAM,GAAGf,IAAI;UACb,IAAI,CAACa,cAAc,CAACxG,WAAW,IAAI,CAAC;UACpC,IAAI,IAAI,CAACwG,cAAc,CAACxG,WAAW,KAAK,CAAC,EAAE;YACzC,IAAI,CAACjC,IAAI,CAACoI,aAAa,GAAG,IAAI,CAACpI,IAAI,CAACoI,aAAa,CAACC,IAAK;YACvD,IAAI,CAACrI,IAAI,CAACoI,aAAa,CAACtG,KAAK,GAAG8D,WAAW;YAC3C,IAAI,CAAC5F,IAAI,CAACsG,gBAAgB,IAAI,CAAC;UACjC;UACAtC,IAAI,GAAG,KAAK;QACd;QACA,IAAI,CAACyE,cAAc,GAAG,IAAI,CAACA,cAAc,CAACJ,IAAK;QAC/C,IAAI,CAACX,eAAe,IAAI,CAAC;MAC3B;IACF;IACA,OAAOiB,MAAM;EACf;EAEAzE,QAAQA,CAAC+C,CAAS;IAChB,MAAMa,OAAO,GAAa,EAAE;IAC5B,IAAIc,CAAC,GAAG,CAAC;IACT,OAAOA,CAAC,KAAK3B,CAAC,EAAE;MACd,MAAMK,CAAC,GAAG,IAAI,CAACzD,IAAI,EAAE;MACrB,IAAIyD,CAAC,KAAK1J,WAAW,CAACkG,KAAK,EAAE;QAC3B8E,CAAC,GAAG3B,CAAC;MACP,CAAC,MAAM;QACLa,OAAO,CAACrC,IAAI,CAAC6B,CAAC,CAAC;QACfsB,CAAC,IAAI,CAAC;MACR;IACF;IACA,OAAOd,OAAO;EAChB;EAEAlF,WAAWA,CAAA;IACT,IAAI,CAAC,IAAI,CAAC+E,YAAY,EAAE;MACtB,IAAI,CAACA,YAAY,GAAG,IAAI;MACxB,IAAI,CAAC3H,IAAI,CAACsI,aAAa,CAACrG,WAAW,IAAI,CAAC;MACxC,OAAO,IAAI,CAACwG,cAAc,KAAK,IAAI,CAACzI,IAAI,CAACsI,aAAa,EAAE;QACtD,IAAI,IAAI,CAACG,cAAc,CAACJ,IAAK,CAACvG,KAAK,KAAK8D,WAAW,EAAE;UACnD,IAAI,CAAC6C,cAAc,CAACxG,WAAW,IAAI,CAAC;UACpC,IAAI,IAAI,CAACwG,cAAc,CAACxG,WAAW,KAAK,CAAC,EAAE;YACzC,IAAI,CAACjC,IAAI,CAACoI,aAAa,GAAG,IAAI,CAACpI,IAAI,CAACoI,aAAa,CAACC,IAAK;YACvD,IAAI,CAACrI,IAAI,CAACoI,aAAa,CAACtG,KAAK,GAAG8D,WAAW;YAC3C,IAAI,CAAC5F,IAAI,CAACsG,gBAAgB,IAAI,CAAC;UACjC;QACF;QACA,IAAI,CAACmC,cAAc,GAAG,IAAI,CAACA,cAAc,CAACJ,IAAK;MACjD;IACF;EACF;;AAGF,MAAMnC,gBAAgB;EACX,CAAChI,kBAAkB,IAAI;IAC9B2K,EAAE,EAAEnL;GACL;EAEQuC,MAAM;EACNgC,WAAW;EACXsB,YAAY;EACZP,OAAO;EACP3B,YAAY;EACZhB,YAAY;EACZ3B,QAAQ;EACRgF,YAAY;EAErB6C,YACEtG,MAAwB,EACxBgC,WAAkC,EAClCsB,YAA2C,EAC3CP,OAAsD,EACtD3B,YAAyB,EACzBhB,YAA4C,EAC5C3B,QAA4B,EAC5BgF,YAAoC;IAEpC,IAAI,CAACzD,MAAM,GAAGA,MAAM;IACpB,IAAI,CAACgC,WAAW,GAAGA,WAAW;IAC9B,IAAI,CAACsB,YAAY,GAAGA,YAAY;IAChC,IAAI,CAACP,OAAO,GAAGA,OAAO;IACtB,IAAI,CAAC3B,YAAY,GAAGA,YAAY;IAChC,IAAI,CAAChB,YAAY,GAAGA,YAAY;IAChC,IAAI,CAAC3B,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAACgF,YAAY,GAAGA,YAAY;EAClC;EAEAxC,IAAIA,CAAA;IACF,OAAOnD,aAAa,CAAC,IAAI,EAAEmK,SAAS,CAAC;EACvC;;AAGF,MAAMY,UAAU;EACL,CAAC7K,MAAM,IAAI;IAClB4K,EAAE,EAAEnL;GACL;EAEQuC,MAAM;EACNgC,WAAW;EACXlB,KAAK;EACLM,YAAY;EACZhB,YAAY;EACZ3B,QAAQ;EAEjB6H,YACEtG,MAAwB,EACxBgC,WAAkC,EAClClB,KAAsB,EACtBM,YAAyB,EACzBhB,YAA4C,EAC5C3B,QAA4B;IAE5B,IAAI,CAACuB,MAAM,GAAGA,MAAM;IACpB,IAAI,CAACgC,WAAW,GAAGA,WAAW;IAC9B,IAAI,CAAClB,KAAK,GAAGA,KAAK;IAClB,IAAI,CAACM,YAAY,GAAGA,YAAY;IAChC,IAAI,CAAChB,YAAY,GAAGA,YAAY;IAChC,IAAI,CAAC3B,QAAQ,GAAGA,QAAQ;EAC1B;EAEAwC,IAAIA,CAAA;IACF,OAAOnD,aAAa,CAAC,IAAI,EAAEmK,SAAS,CAAC;EACvC;;AAGF,MAAM5J,gBAAgB,GAAGA,CACvB2B,MAAwB,EACxBgC,WAAkC,EAClClB,KAAsB,EACtBM,YAAyB,EACzBhB,YAA4C,EAC5C3B,QAA4B,KACd,IAAIoK,UAAU,CAAC7I,MAAM,EAAEgC,WAAW,EAAElB,KAAK,EAAEM,YAAY,EAAEhB,YAAY,EAAE3B,QAAQ,CAAC;AAEhG,MAAMW,cAAc,GAAIT,QAAgB,IAAU;EAChD,IAAIA,QAAQ,IAAI,CAAC,EAAE;IACjB,MAAM,IAAImK,KAAK,CAAC,4CAA4CnK,QAAQ,EAAE,CAAC;EACzE;AACF,CAAC;AAED;AACA;AACA;AAEA;;;;;;;;;;AAUA,OAAM,MAAOE,oBAAoB;EAC/BkK,UAAU,gBAENpL,WAAW,CAACO,IAAI,EAAE;EAEtB,IAAIsC,QAAQA,CAAA;IACV,OAAOlD,MAAM,CAACoD,SAAS,CAAEC,KAAK,IAC5BrD,MAAM,CAACuF,OAAO,CACZlF,WAAW,CAACmF,OAAO,CAAC,IAAI,CAACiG,UAAU,CAAC,EACpC,CAAC,CAACC,CAAC,EAAExE,QAAQ,EAAEyE,IAAI,CAAC,KAAKA,IAAI,GAAG5L,QAAQ,CAAC4F,aAAa,CAACuB,QAAQ,EAAE7D,KAAK,CAACK,EAAE,CAAC,GAAG1D,MAAM,CAACyH,IAAI,EACxF;MAAE5B,WAAW,EAAE,WAAW;MAAED,OAAO,EAAE;IAAI,CAAE,CAC5C,CACF;EACH;EAEAhB,aAAaA,CACXlC,MAAwB,EACxBgC,WAAkC,EAClCK,QAAqB,EACrBd,UAA0C;IAE1C,OAAOjE,MAAM,CAACwE,OAAO,CAAC,MAAK;MACzB,MAAM0C,QAAQ,GAAGnH,QAAQ,CAACmB,UAAU,EAAW;MAC/C,IAAI,CAAC0K,WAAW,CAAC7G,QAAQ,EAAEmC,QAAQ,CAAC;MACpC,IAAI,CAACjB,wBAAwB,CAACvD,MAAM,EAAEgC,WAAW,CAAC;MAClD,IAAI,CAACD,yBAAyB,CAAC/B,MAAM,EAAEgC,WAAW,CAAC;MACnD,OAAO,CAACpE,UAAU,CAACuC,GAAG,CAACoB,UAAU,CAAC,GAAGjE,MAAM,CAACyD,SAAS,GAAG1D,QAAQ,CAACsE,KAAK,CAAC6C,QAAQ,CAAC,EAAEvD,IAAI,CACpF3D,MAAM,CAACuH,WAAW,CAAC,MAAK;QACtB,IAAI,CAACsE,YAAY,CAAC3E,QAAQ,CAAC;QAC3B,OAAOlH,MAAM,CAACyH,IAAI;MACpB,CAAC,CAAC,CACH;IACH,CAAC,CAAC;EACJ;EAEAxB,wBAAwBA,CACtBvD,MAAwB,EACxBgC,WAAkC;IAElC,IAAIoH,WAAW,GAAG,IAAI;IACtB,OAAOA,WAAW,IAAI,CAACpJ,MAAM,CAACK,MAAM,EAAE,EAAE;MACtC,MAAMgJ,SAAS,GAAG1L,WAAW,CAAC6F,IAAI,CAAC,IAAI,CAACuF,UAAU,CAAC;MACnD,IAAIM,SAAS,KAAK1L,WAAW,CAACkG,KAAK,EAAE;QACnCuF,WAAW,GAAG,KAAK;MACrB,CAAC,MAAM;QACL,MAAM,CAACvH,KAAK,EAAE2C,QAAQ,CAAC,GAAG6E,SAAS;QACnC,MAAMC,SAAS,GAAGtJ,MAAM,CAAC4B,OAAO,CAACC,KAAK,CAAC;QACvC,IAAIyH,SAAS,IAAID,SAAS,CAAC,CAAC,CAAC,EAAE;UAC7BhM,QAAQ,CAACkM,UAAU,CAAC/E,QAAQ,EAAEjH,IAAI,CAAC0E,OAAO,CAAC,IAAI,CAAC,CAAC;QACnD,CAAC,MAAM,IAAI,CAACqH,SAAS,EAAE;UACrB3L,WAAW,CAAC6L,OAAO,CAAC,IAAI,CAACT,UAAU,EAAEM,SAAS,CAAC;QACjD;QACA,IAAI,CAACtH,yBAAyB,CAAC/B,MAAM,EAAEgC,WAAW,CAAC;MACrD;IACF;EACF;EAEA4C,qBAAqBA,CACnB5E,MAAwB,EACxBgC,WAAkC,EAClCsB,YAA2C,EAC3CP,OAAsD;IAEtD,OAAO0G,6BAA6B,CAAC,IAAI,EAAEzJ,MAAM,EAAEgC,WAAW,EAAEsB,YAAY,EAAEP,OAAO,CAAC;EACxF;EAEAhB,yBAAyBA,CAAC/B,MAAwB,EAAEgC,WAAkC;IACpF,OAAO0H,iCAAiC,CAAC,IAAI,EAAE1J,MAAM,EAAEgC,WAAW,CAAC;EACrE;EAEQkH,WAAWA,CAAC7G,QAAqB,EAAEmC,QAAoC;IAC7E,MAAMmF,QAAQ,GAAGtH,QAAQ,CAACuD,MAAM,CAAC+D,QAAQ,CAAC,EAAE;IAC5C,IAAIvB,IAAI,GAAsBuB,QAAQ,CAACvB,IAAI,EAAE;IAC7C,IAAI,CAACA,IAAI,CAACwB,IAAI,EAAE;MACd;MACA,OAAO,CAAC,EAAE;QACR,MAAM/H,KAAK,GAAGuG,IAAI,CAACvG,KAAK;QACxBuG,IAAI,GAAGuB,QAAQ,CAACvB,IAAI,EAAE;QACtB,IAAIA,IAAI,CAACwB,IAAI,EAAE;UACbjM,WAAW,CAACgH,MAAM,CAAC,IAAI,CAACoE,UAAU,EAAE,CAAClH,KAAK,EAAE2C,QAAQ,EAAE,IAAI,CAAC,CAAC;UAC5D;QACF;QACA7G,WAAW,CAACgH,MAAM,CAAC,IAAI,CAACoE,UAAU,EAAE,CAAClH,KAAK,EAAE2C,QAAQ,EAAE,KAAK,CAAC,CAAC;MAC/D;IACF;EACF;EAEA2E,YAAYA,CAAC3E,QAAoC;IAC/C7G,WAAW,CAACkM,MAAM,CAAC,IAAI,CAACd,UAAU,EAAE,CAAC,CAACC,CAAC,EAAEhG,CAAC,CAAC,KAAKA,CAAC,KAAKwB,QAAQ,CAAC;EACjE;;AAGF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0CA,OAAM,MAAOzF,gBAAgB;EAC3B,IAAIyB,QAAQA,CAAA;IACV,OAAOlD,MAAM,CAACyH,IAAI;EACpB;EAEA7C,aAAaA,CACX4H,OAAyB,EACzBC,YAAmC,EACnCC,SAAsB,EACtBC,WAA2C;IAE3C,OAAO3M,MAAM,CAAC2E,OAAO,CAAC,KAAK,CAAC;EAC9B;EAEAsB,wBAAwBA,CACtBuG,OAAyB,EACzBC,YAAmC;IAEnC;EAAA;EAGFnF,qBAAqBA,CACnB5E,MAAwB,EACxBgC,WAAkC,EAClCsB,YAA2C,EAC3CP,OAAsD;IAEtD,OAAO0G,6BAA6B,CAAC,IAAI,EAAEzJ,MAAM,EAAEgC,WAAW,EAAEsB,YAAY,EAAEP,OAAO,CAAC;EACxF;EAEAhB,yBAAyBA,CAAC/B,MAAwB,EAAEgC,WAAkC;IACpF,OAAO0H,iCAAiC,CAAC,IAAI,EAAE1J,MAAM,EAAEgC,WAAW,CAAC;EACrE;;AAGF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwCA,OAAM,MAAO/C,eAAe;EAC1B,IAAIuB,QAAQA,CAAA;IACV,OAAOlD,MAAM,CAACyH,IAAI;EACpB;EAEA7C,aAAaA,CACXlC,MAAwB,EACxBgC,WAAkC,EAClCK,QAAqB,EACrB4H,WAA2C;IAE3C,OAAO3M,MAAM,CAACc,IAAI,CAAC,MAAK;MACtB,IAAI,CAAC8L,oBAAoB,CAAClK,MAAM,EAAEqC,QAAQ,CAAC;MAC3C,IAAI,CAACN,yBAAyB,CAAC/B,MAAM,EAAEgC,WAAW,CAAC;MACnD,OAAO,IAAI;IACb,CAAC,CAAC;EACJ;EAEAuB,wBAAwBA,CACtBuG,OAAyB,EACzBC,YAAmC;IAEnC;EAAA;EAGFnF,qBAAqBA,CACnB5E,MAAwB,EACxBgC,WAAkC,EAClCsB,YAA2C,EAC3CP,OAAsD;IAEtD,OAAO0G,6BAA6B,CAAC,IAAI,EAAEzJ,MAAM,EAAEgC,WAAW,EAAEsB,YAAY,EAAEP,OAAO,CAAC;EACxF;EAEAhB,yBAAyBA,CAAC/B,MAAwB,EAAEgC,WAAkC;IACpF,OAAO0H,iCAAiC,CAAC,IAAI,EAAE1J,MAAM,EAAEgC,WAAW,CAAC;EACrE;EAEAkI,oBAAoBA,CAAClK,MAAwB,EAAEqC,QAAqB;IAClE,MAAM8H,EAAE,GAAG9H,QAAQ,CAACuD,MAAM,CAAC+D,QAAQ,CAAC,EAAE;IACtC,IAAIvB,IAAI,GAAG+B,EAAE,CAAC/B,IAAI,EAAE;IACpB,IAAI,CAACA,IAAI,CAACwB,IAAI,IAAI5J,MAAM,CAACrB,QAAQ,GAAG,CAAC,EAAE;MACrC,IAAI0I,CAAC,GAAGe,IAAI,CAACvG,KAAK;MAClB,IAAIkC,IAAI,GAAG,IAAI;MACf,OAAOA,IAAI,EAAE;QACX/D,MAAM,CAACuH,KAAK,EAAE;QACd,MAAM6C,GAAG,GAAGpK,MAAM,CAAC4B,OAAO,CAACyF,CAAC,CAAC;QAC7B,IAAI+C,GAAG,KAAKhC,IAAI,GAAG+B,EAAE,CAAC/B,IAAI,EAAE,CAAC,IAAI,CAACA,IAAI,CAACwB,IAAI,EAAE;UAC3CvC,CAAC,GAAGe,IAAI,CAACvG,KAAK;QAChB,CAAC,MAAM,IAAIuI,GAAG,EAAE;UACdrG,IAAI,GAAG,KAAK;QACd;MACF;IACF;EACF;;AAGF,MAAM0F,6BAA6B,GAAGA,CACpChL,QAA4B,EAC5BuB,MAAwB,EACxBgC,WAAkC,EAClCsB,YAA2C,EAC3CP,OAAsD,KAC9C;EACR,IAAIqG,WAAW,GAAG,IAAI;EACtB,OAAOA,WAAW,IAAI,CAAC9F,YAAY,CAAC/C,OAAO,EAAE,EAAE;IAC7C,MAAM8J,MAAM,GAAG1M,WAAW,CAAC6F,IAAI,CAACT,OAAO,CAAC;IACxC,IAAIsH,MAAM,KAAK1M,WAAW,CAACkG,KAAK,EAAE;MAChCmC,iBAAiB,CAAChE,WAAW,EAAEsB,YAAY,EAAEP,OAAO,CAAC;MACrD,IAAIA,OAAO,CAACR,MAAM,KAAK,CAAC,EAAE;QACxB6G,WAAW,GAAG,KAAK;MACrB,CAAC,MAAM;QACLtD,cAAc,CAAC9D,WAAW,EAAEsB,YAAY,EAAEP,OAAO,CAAC;MACpD;IACF,CAAC,MAAM;MACL,MAAMuH,UAAU,GAAGhH,YAAY,CAACM,IAAI,EAAE;MACtC,IAAI0G,UAAU,KAAK3M,WAAW,CAACkG,KAAK,EAAE;QACpClG,WAAW,CAAC6L,OAAO,CAACzG,OAAO,EAAEsH,MAAM,CAAC;MACtC,CAAC,MAAM;QACLhN,QAAQ,CAACkM,UAAU,CAACc,MAAM,EAAE9M,IAAI,CAAC0E,OAAO,CAACqI,UAAU,CAAC,CAAC;QACrD7L,QAAQ,CAAC8E,wBAAwB,CAACvD,MAAM,EAAEgC,WAAW,CAAC;MACxD;IACF;EACF;AACF,CAAC;AAED,MAAM0H,iCAAiC,GAAGA,CACxCjL,QAA4B,EAC5BuB,MAAwB,EACxBgC,WAAkC,KAC1B;EACR,KACE,MAAM,CAACsB,YAAY,EAAEiH,UAAU,CAAC,IAAIvI,WAAW,EAC/C;IACA,KAAK,MAAMe,OAAO,IAAIwH,UAAU,EAAE;MAChC9L,QAAQ,CAACmG,qBAAqB,CAAC5E,MAAM,EAAEgC,WAAW,EAAEsB,YAAY,EAAEP,OAAO,CAAC;IAC5E;EACF;AACF,CAAC;AAOD,MAAMxD,YAAY;EACPZ,QAAQ;EACjB6L,IAAI,GAAkB;IAAE3I,KAAK,EAAE8D,WAAW;IAAEyC,IAAI,EAAE;EAAI,CAAE;EACxDqC,IAAI,GAAkB,IAAI,CAACD,IAAI;EAC/BvK,IAAI,GAAG,CAAC;EACR0G,KAAK,GAAG,CAAC;EAETL,YAAY3H,QAAgB;IAC1B,IAAI,CAACA,QAAQ,GAAGA,QAAQ;EAC1B;EAEA4I,KAAKA,CAAA;IACH,IAAI,CAACZ,KAAK,EAAE;EACd;EACAC,KAAKA,CAACS,CAAI;IACR,IAAI,CAACoD,IAAI,CAAC5I,KAAK,GAAGwF,CAAC;IACnB,IAAI,CAACoD,IAAI,CAACrC,IAAI,GAAG;MACfvG,KAAK,EAAE8D,WAAW;MAClByC,IAAI,EAAE;KACP;IACD,IAAI,CAACqC,IAAI,GAAG,IAAI,CAACA,IAAI,CAACrC,IAAI;IAC1B,IAAI,IAAI,CAACnI,IAAI,KAAK,IAAI,CAACtB,QAAQ,EAAE;MAC/B,IAAI,CAAC6L,IAAI,GAAG,IAAI,CAACA,IAAI,CAACpC,IAAK;IAC7B,CAAC,MAAM;MACL,IAAI,CAACnI,IAAI,IAAI,CAAC;IAChB;EACF;EACA4G,QAAQA,CAAC7C,EAAe;IACtB,KAAK,MAAMqD,CAAC,IAAIrD,EAAE,EAAE;MAClB,IAAI,CAAC4C,KAAK,CAACS,CAAC,CAAC;IACf;EACF;;AAGF,MAAMZ,gBAAgB;EACpB+D,IAAI;EACJ7D,KAAK;EACLjD,SAAS;EACAgH,MAAM;EAEfpE,YAAYoE,MAAuB;IACjC,IAAI,CAACA,MAAM,GAAGA,MAAM;IACpB,IAAI,CAAC/D,KAAK,GAAG+D,MAAM,CAAC/D,KAAK;IACzB,IAAI,CAACjD,SAAS,GAAGgH,MAAM,CAACzK,IAAI;IAC5B,IAAI,CAACuK,IAAI,GAAGE,MAAM,CAACF,IAAI;EACzB;EACAG,WAAWA,CAAA;IACT,OAAO,IAAI,CAAChE,KAAK,GAAG,IAAI,CAAC+D,MAAM,CAAC/D,KAAK,EAAE;MACrC,IAAI,CAAC6D,IAAI,GAAG,IAAI,CAACA,IAAI,CAACpC,IAAK;MAC3B,IAAI,CAACzB,KAAK,EAAE;IACd;EACF;EACAnD,IAAIA,CAAA;IACF,IAAI,IAAI,CAACE,SAAS,KAAK,CAAC,EAAE;MACxB,OAAOhE,SAAS;IAClB,CAAC,MAAM,IAAI,IAAI,CAACiH,KAAK,GAAG,IAAI,CAAC+D,MAAM,CAAC/D,KAAK,EAAE;MACzC,IAAI,CAACgE,WAAW,EAAE;IACpB;IACA,IAAI,CAACjH,SAAS,EAAE;IAChB,MAAM7B,KAAK,GAAG,IAAI,CAAC2I,IAAI,CAAC3I,KAAK;IAC7B,IAAI,CAAC2I,IAAI,GAAG,IAAI,CAACA,IAAI,CAACpC,IAAK;IAC3B,OAAOvG,KAAU;EACnB;EACAqD,KAAKA,CAAC8B,CAAS;IACb,IAAI,IAAI,CAACtD,SAAS,KAAK,CAAC,EAAE;MACxB,OAAO,EAAE;IACX,CAAC,MAAM,IAAI,IAAI,CAACiD,KAAK,GAAG,IAAI,CAAC+D,MAAM,CAAC/D,KAAK,EAAE;MACzC,IAAI,CAACgE,WAAW,EAAE;IACpB;IACA,MAAMC,GAAG,GAAGpL,IAAI,CAAC4F,GAAG,CAAC4B,CAAC,EAAE,IAAI,CAACtD,SAAS,CAAC;IACvC,MAAMmH,KAAK,GAAG,IAAItE,KAAK,CAACqE,GAAG,CAAC;IAC5B,KAAK,IAAIjC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGiC,GAAG,EAAEjC,CAAC,EAAE,EAAE;MAC5B,MAAM9G,KAAK,GAAG,IAAI,CAAC2I,IAAI,CAAC3I,KAAU;MAClC,IAAI,CAAC2I,IAAI,GAAG,IAAI,CAACA,IAAI,CAACpC,IAAK;MAC3ByC,KAAK,CAAClC,CAAC,CAAC,GAAG9G,KAAK;IAClB;IACA,IAAI,CAAC6B,SAAS,IAAIkH,GAAG;IACrB,OAAOC,KAAK;EACd;EACA/H,OAAOA,CAAA;IACL,OAAO,IAAI,CAACoC,KAAK,CAAC,IAAI,CAACxB,SAAS,CAAC;EACnC;;AAGF,MAAMgD,iBAAiB,GAA+B;EACpDhD,SAAS,EAAE,CAAC;EACZF,IAAI,EAAEA,CAAA,KAAM9D,SAAS;EACrBwF,KAAK,EAAEA,CAAA,KAAM,EAAE;EACfpC,OAAO,EAAEA,CAAA,KAAM;CAChB","ignoreList":[]}
1
+ {"version":3,"file":"PubSub.js","names":["Arr","Deferred","Effect","Exit","dual","identity","Latch","MutableList","MutableRef","nextPow2","Option","pipeArguments","Scope","TypeId","SubscriptionTypeId","make","options","sync","makePubSubUnsafe","atomicPubSub","Map","makeUnsafe","strategy","bounded","capacity","makeAtomicBounded","BackPressureStrategy","dropping","DroppingStrategy","sliding","SlidingStrategy","unbounded","makeAtomicUnbounded","ensureCapacity","replayBuffer","replay","ReplayBuffer","Math","ceil","undefined","BoundedPubSubSingle","BoundedPubSubPow2","BoundedPubSubArb","UnboundedPubSub","self","pubsub","size","sizeUnsafe","get","shutdownFlag","isFull","map","isEmpty","shutdown","uninterruptible","withFiber","fiber","set","close","scope","interrupt","id","pipe","andThen","when","shutdownHook","open","asVoid","isShutdown","isShutdownUnsafe","current","awaitShutdown","await","publish","value","suspend","completeSubscribersUnsafe","subscribers","succeed","handleSurplus","publishUnsafe","publishAll","elements","surplus","length","subscribe","acquireRelease","makeSubscriptionUnsafe","unsubscribe","state","forEach","takeAll","pollers","d","interruptWith","discard","concurrency","tap","delete","subscription","onPubSubEmptySpaceUnsafe","take","replayWindow","remaining","message","poll","Empty","pollForItem","loop","as","pollUpTo","Number","POSITIVE_INFINITY","concat","isArrayNonEmpty","flatMap","item","deferred","Set","add","append","completePollersUnsafe","onInterrupt","remove","void","takeUpTo","max","takeN","takeBetween","min","takeRemainderLoop","acc","bs","push","b","remainingUnsafe","none","some","AbsentValue","Symbol","for","addSubscribers","has","removeSubscribers","SubscriptionImpl","array","publisherIndex","subscriberCount","subscribersIndex","constructor","Array","from","ReplayWindowImpl","emptyReplayWindow","index","offer","offerAll","chunk","fromIterable","n","available","forPubSub","iteratorIndex","publishAllIndex","a","slice","slide","BoundedPubSubArbSubscription","subscriberIndex","unsubscribed","elem","toPoll","builder","pollUpToIndex","mask","BoundedPubSubPow2Subscription","arguments","BoundedPubSubSingleSubscription","publisherHead","next","publisherTail","MAX_SAFE_INTEGER","UnboundedPubSubSubscription","subscriberHead","empty","polled","i","_A","PubSubImpl","Error","publishers","_","last","offerUnsafe","removeUnsafe","keepPolling","publisher","published","doneUnsafe","prepend","strategyCompletePollersUnsafe","strategyCompleteSubscribersUnsafe","iterator","done","filter","_pubsub","_subscribers","_elements","_isShutdown","slidingPublishUnsafe","it","pub","poller","pollResult","pollersSet","head","tail","buffer","fastForward","len","items"],"sources":["../src/PubSub.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/dist/Queue.d.ts CHANGED
@@ -9,7 +9,7 @@ import type { Inspectable } from "./Inspectable.ts";
9
9
  import * as MutableList from "./MutableList.ts";
10
10
  import * as Option from "./Option.ts";
11
11
  import * as Pull from "./Pull.ts";
12
- import type { Scheduler } from "./Scheduler.ts";
12
+ import type { SchedulerDispatcher } from "./Scheduler.ts";
13
13
  import type * as Types from "./Types.ts";
14
14
  declare const TypeId = "~effect/Queue";
15
15
  declare const EnqueueTypeId = "~effect/Queue/Enqueue";
@@ -78,7 +78,7 @@ export declare const asDequeue: <A, E>(self: Queue<A, E>) => Dequeue<A, E>;
78
78
  export interface Enqueue<in A, in E = never> extends Inspectable {
79
79
  readonly [EnqueueTypeId]: Enqueue.Variance<A, E>;
80
80
  readonly strategy: "suspend" | "dropping" | "sliding";
81
- readonly scheduler: Scheduler;
81
+ readonly dispatcher: SchedulerDispatcher;
82
82
  capacity: number;
83
83
  messages: MutableList.MutableList<any>;
84
84
  state: Queue.State<any, any>;
@@ -131,7 +131,7 @@ export declare namespace Enqueue {
131
131
  export interface Dequeue<out A, out E = never> extends Inspectable {
132
132
  readonly [DequeueTypeId]: Dequeue.Variance<A, E>;
133
133
  readonly strategy: "suspend" | "dropping" | "sliding";
134
- readonly scheduler: Scheduler;
134
+ readonly dispatcher: SchedulerDispatcher;
135
135
  capacity: number;
136
136
  messages: MutableList.MutableList<any>;
137
137
  state: Queue.State<any, any>;