@effect/cluster 0.37.2 → 0.38.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (141) hide show
  1. package/ClusterCron/package.json +6 -0
  2. package/dist/cjs/ClusterCron.js +86 -0
  3. package/dist/cjs/ClusterCron.js.map +1 -0
  4. package/dist/cjs/ClusterSchema.js +9 -1
  5. package/dist/cjs/ClusterSchema.js.map +1 -1
  6. package/dist/cjs/ClusterWorkflowEngine.js +21 -6
  7. package/dist/cjs/ClusterWorkflowEngine.js.map +1 -1
  8. package/dist/cjs/Entity.js +6 -1
  9. package/dist/cjs/Entity.js.map +1 -1
  10. package/dist/cjs/EntityAddress.js +8 -1
  11. package/dist/cjs/EntityAddress.js.map +1 -1
  12. package/dist/cjs/MessageStorage.js +6 -4
  13. package/dist/cjs/MessageStorage.js.map +1 -1
  14. package/dist/cjs/Runner.js +15 -0
  15. package/dist/cjs/Runner.js.map +1 -1
  16. package/dist/cjs/RunnerAddress.js +8 -1
  17. package/dist/cjs/RunnerAddress.js.map +1 -1
  18. package/dist/cjs/Runners.js +5 -0
  19. package/dist/cjs/Runners.js.map +1 -1
  20. package/dist/cjs/ShardId.js +75 -7
  21. package/dist/cjs/ShardId.js.map +1 -1
  22. package/dist/cjs/ShardManager.js +63 -43
  23. package/dist/cjs/ShardManager.js.map +1 -1
  24. package/dist/cjs/ShardStorage.js +45 -36
  25. package/dist/cjs/ShardStorage.js.map +1 -1
  26. package/dist/cjs/Sharding.js +45 -37
  27. package/dist/cjs/Sharding.js.map +1 -1
  28. package/dist/cjs/ShardingConfig.js +9 -2
  29. package/dist/cjs/ShardingConfig.js.map +1 -1
  30. package/dist/cjs/Singleton.js +2 -2
  31. package/dist/cjs/Singleton.js.map +1 -1
  32. package/dist/cjs/SingletonAddress.js +2 -2
  33. package/dist/cjs/SingletonAddress.js.map +1 -1
  34. package/dist/cjs/SqlMessageStorage.js +32 -27
  35. package/dist/cjs/SqlMessageStorage.js.map +1 -1
  36. package/dist/cjs/SqlShardStorage.js +14 -14
  37. package/dist/cjs/SqlShardStorage.js.map +1 -1
  38. package/dist/cjs/index.js +3 -1
  39. package/dist/cjs/internal/entityManager.js +2 -1
  40. package/dist/cjs/internal/entityManager.js.map +1 -1
  41. package/dist/cjs/internal/shardManager.js +138 -37
  42. package/dist/cjs/internal/shardManager.js.map +1 -1
  43. package/dist/dts/ClusterCron.d.ts +37 -0
  44. package/dist/dts/ClusterCron.d.ts.map +1 -0
  45. package/dist/dts/ClusterSchema.d.ts +8 -0
  46. package/dist/dts/ClusterSchema.d.ts.map +1 -1
  47. package/dist/dts/ClusterWorkflowEngine.d.ts.map +1 -1
  48. package/dist/dts/Entity.d.ts +10 -0
  49. package/dist/dts/Entity.d.ts.map +1 -1
  50. package/dist/dts/EntityAddress.d.ts +9 -3
  51. package/dist/dts/EntityAddress.d.ts.map +1 -1
  52. package/dist/dts/MessageStorage.d.ts +3 -3
  53. package/dist/dts/MessageStorage.d.ts.map +1 -1
  54. package/dist/dts/Runner.d.ts +15 -0
  55. package/dist/dts/Runner.d.ts.map +1 -1
  56. package/dist/dts/RunnerAddress.d.ts +5 -0
  57. package/dist/dts/RunnerAddress.d.ts.map +1 -1
  58. package/dist/dts/Runners.d.ts.map +1 -1
  59. package/dist/dts/ShardId.d.ts +60 -6
  60. package/dist/dts/ShardId.d.ts.map +1 -1
  61. package/dist/dts/ShardManager.d.ts +13 -13
  62. package/dist/dts/ShardManager.d.ts.map +1 -1
  63. package/dist/dts/ShardStorage.d.ts +11 -14
  64. package/dist/dts/ShardStorage.d.ts.map +1 -1
  65. package/dist/dts/Sharding.d.ts +4 -2
  66. package/dist/dts/Sharding.d.ts.map +1 -1
  67. package/dist/dts/ShardingConfig.d.ts +32 -6
  68. package/dist/dts/ShardingConfig.d.ts.map +1 -1
  69. package/dist/dts/Singleton.d.ts +3 -1
  70. package/dist/dts/Singleton.d.ts.map +1 -1
  71. package/dist/dts/SingletonAddress.d.ts +4 -3
  72. package/dist/dts/SingletonAddress.d.ts.map +1 -1
  73. package/dist/dts/SqlMessageStorage.d.ts +3 -2
  74. package/dist/dts/SqlMessageStorage.d.ts.map +1 -1
  75. package/dist/dts/SqlShardStorage.d.ts +1 -1
  76. package/dist/dts/index.d.ts +4 -0
  77. package/dist/dts/index.d.ts.map +1 -1
  78. package/dist/esm/ClusterCron.js +77 -0
  79. package/dist/esm/ClusterCron.js.map +1 -0
  80. package/dist/esm/ClusterSchema.js +7 -0
  81. package/dist/esm/ClusterSchema.js.map +1 -1
  82. package/dist/esm/ClusterWorkflowEngine.js +21 -6
  83. package/dist/esm/ClusterWorkflowEngine.js.map +1 -1
  84. package/dist/esm/Entity.js +6 -1
  85. package/dist/esm/Entity.js.map +1 -1
  86. package/dist/esm/EntityAddress.js +8 -1
  87. package/dist/esm/EntityAddress.js.map +1 -1
  88. package/dist/esm/MessageStorage.js +6 -4
  89. package/dist/esm/MessageStorage.js.map +1 -1
  90. package/dist/esm/Runner.js +15 -0
  91. package/dist/esm/Runner.js.map +1 -1
  92. package/dist/esm/RunnerAddress.js +8 -1
  93. package/dist/esm/RunnerAddress.js.map +1 -1
  94. package/dist/esm/Runners.js +5 -0
  95. package/dist/esm/Runners.js.map +1 -1
  96. package/dist/esm/ShardId.js +73 -6
  97. package/dist/esm/ShardId.js.map +1 -1
  98. package/dist/esm/ShardManager.js +64 -45
  99. package/dist/esm/ShardManager.js.map +1 -1
  100. package/dist/esm/ShardStorage.js +44 -36
  101. package/dist/esm/ShardStorage.js.map +1 -1
  102. package/dist/esm/Sharding.js +45 -37
  103. package/dist/esm/Sharding.js.map +1 -1
  104. package/dist/esm/ShardingConfig.js +9 -2
  105. package/dist/esm/ShardingConfig.js.map +1 -1
  106. package/dist/esm/Singleton.js +2 -2
  107. package/dist/esm/Singleton.js.map +1 -1
  108. package/dist/esm/SingletonAddress.js +2 -2
  109. package/dist/esm/SingletonAddress.js.map +1 -1
  110. package/dist/esm/SqlMessageStorage.js +32 -27
  111. package/dist/esm/SqlMessageStorage.js.map +1 -1
  112. package/dist/esm/SqlShardStorage.js +14 -14
  113. package/dist/esm/SqlShardStorage.js.map +1 -1
  114. package/dist/esm/index.js +4 -0
  115. package/dist/esm/index.js.map +1 -1
  116. package/dist/esm/internal/entityManager.js +2 -1
  117. package/dist/esm/internal/entityManager.js.map +1 -1
  118. package/dist/esm/internal/shardManager.js +136 -36
  119. package/dist/esm/internal/shardManager.js.map +1 -1
  120. package/package.json +12 -4
  121. package/src/ClusterCron.ts +129 -0
  122. package/src/ClusterSchema.ts +9 -0
  123. package/src/ClusterWorkflowEngine.ts +37 -6
  124. package/src/Entity.ts +20 -1
  125. package/src/EntityAddress.ts +11 -1
  126. package/src/MessageStorage.ts +12 -7
  127. package/src/Runner.ts +18 -0
  128. package/src/RunnerAddress.ts +9 -1
  129. package/src/Runners.ts +5 -0
  130. package/src/ShardId.ts +81 -11
  131. package/src/ShardManager.ts +74 -45
  132. package/src/ShardStorage.ts +51 -47
  133. package/src/Sharding.ts +45 -39
  134. package/src/ShardingConfig.ts +36 -7
  135. package/src/Singleton.ts +5 -2
  136. package/src/SingletonAddress.ts +2 -2
  137. package/src/SqlMessageStorage.ts +36 -30
  138. package/src/SqlShardStorage.ts +15 -15
  139. package/src/index.ts +5 -0
  140. package/src/internal/entityManager.ts +2 -1
  141. package/src/internal/shardManager.ts +158 -52
@@ -22,6 +22,7 @@ var HashMap = _interopRequireWildcard(require("effect/HashMap"));
22
22
  var Iterable = _interopRequireWildcard(require("effect/Iterable"));
23
23
  var Layer = _interopRequireWildcard(require("effect/Layer"));
24
24
  var MutableHashMap = _interopRequireWildcard(require("effect/MutableHashMap"));
25
+ var MutableHashSet = _interopRequireWildcard(require("effect/MutableHashSet"));
25
26
  var MutableRef = _interopRequireWildcard(require("effect/MutableRef"));
26
27
  var Option = _interopRequireWildcard(require("effect/Option"));
27
28
  var Predicate = _interopRequireWildcard(require("effect/Predicate"));
@@ -69,18 +70,24 @@ const make = /*#__PURE__*/Effect.gen(function* () {
69
70
  const shardStorage = yield* _ShardStorage.ShardStorage;
70
71
  const entityManagers = new Map();
71
72
  const shardAssignments = MutableHashMap.empty();
72
- const selfShards = new Set();
73
+ const selfShards = MutableHashSet.empty();
73
74
  // the active shards are the ones that we have acquired the lock for
74
- const acquiredShards = new Set();
75
+ const acquiredShards = MutableHashSet.empty();
75
76
  const activeShardsLatch = yield* Effect.makeLatch(false);
76
77
  const events = yield* PubSub.unbounded();
77
78
  const getRegistrationEvents = Stream.fromPubSub(events);
78
79
  const isLocalRunner = address => Option.isSome(config.runnerAddress) && Equal.equals(address, config.runnerAddress.value);
79
- function getShardId(entityId) {
80
- return _ShardId.ShardId.make(Math.abs((0, _hash.hashString)(entityId) % config.numberOfShards) + 1);
80
+ function getShardId(entityId, group) {
81
+ const id = Math.abs((0, _hash.hashString)(entityId) % config.shardsPerGroup) + 1;
82
+ return _ShardId.ShardId.make({
83
+ group,
84
+ id
85
+ }, {
86
+ disableValidation: true
87
+ });
81
88
  }
82
89
  function isEntityOnLocalShards(address) {
83
- return acquiredShards.has(address.shardId);
90
+ return MutableHashSet.has(acquiredShards, address.shardId);
84
91
  }
85
92
  // --- Shard acquisition ---
86
93
  if (Option.isSome(config.runnerAddress)) {
@@ -89,34 +96,34 @@ const make = /*#__PURE__*/Effect.gen(function* () {
89
96
  // the locks expire over time, so if this fails we ignore it
90
97
  return Effect.ignore(shardStorage.releaseAll(selfAddress));
91
98
  });
92
- const releasingShards = new Set();
99
+ const releasingShards = MutableHashSet.empty();
93
100
  yield* Effect.gen(function* () {
94
101
  while (true) {
95
102
  yield* activeShardsLatch.await;
96
103
  // if a shard is no longer assigned to this runner, we release it
97
104
  for (const shardId of acquiredShards) {
98
- if (selfShards.has(shardId)) continue;
99
- acquiredShards.delete(shardId);
100
- releasingShards.add(shardId);
105
+ if (MutableHashSet.has(selfShards, shardId)) continue;
106
+ MutableHashSet.remove(acquiredShards, shardId);
107
+ MutableHashSet.add(releasingShards, shardId);
101
108
  }
102
109
  // if a shard has been assigned to this runner, we acquire it
103
- const unacquiredShards = new Set();
110
+ const unacquiredShards = MutableHashSet.empty();
104
111
  for (const shardId of selfShards) {
105
- if (acquiredShards.has(shardId) || releasingShards.has(shardId)) continue;
106
- unacquiredShards.add(shardId);
112
+ if (MutableHashSet.has(acquiredShards, shardId) || MutableHashSet.has(releasingShards, shardId)) continue;
113
+ MutableHashSet.add(unacquiredShards, shardId);
107
114
  }
108
- if (releasingShards.size > 0) {
115
+ if (MutableHashSet.size(releasingShards) > 0) {
109
116
  yield* Effect.forkIn(syncSingletons, shardingScope);
110
117
  yield* releaseShards;
111
118
  }
112
- if (unacquiredShards.size === 0) {
119
+ if (MutableHashSet.size(unacquiredShards) === 0) {
113
120
  yield* activeShardsLatch.close;
114
121
  continue;
115
122
  }
116
123
  const acquired = yield* shardStorage.acquire(selfAddress, unacquiredShards);
117
124
  yield* Effect.ignore(storage.resetShards(acquired));
118
125
  for (const shardId of acquired) {
119
- acquiredShards.add(shardId);
126
+ MutableHashSet.add(acquiredShards, shardId);
120
127
  }
121
128
  if (acquired.length > 0) {
122
129
  yield* storageReadLatch.open;
@@ -133,12 +140,12 @@ const make = /*#__PURE__*/Effect.gen(function* () {
133
140
  // refresh the shard locks every 4s
134
141
  yield* Effect.suspend(() => shardStorage.refresh(selfAddress, [...acquiredShards, ...releasingShards])).pipe(Effect.flatMap(acquired => {
135
142
  for (const shardId of acquiredShards) {
136
- if (!acquired.includes(shardId)) {
137
- acquiredShards.delete(shardId);
138
- releasingShards.add(shardId);
143
+ if (!acquired.some(_ => _[Equal.symbol](shardId))) {
144
+ MutableHashSet.remove(acquiredShards, shardId);
145
+ MutableHashSet.add(releasingShards, shardId);
139
146
  }
140
147
  }
141
- return releasingShards.size > 0 ? Effect.andThen(Effect.forkIn(syncSingletons, shardingScope), releaseShards) : Effect.void;
148
+ return MutableHashSet.size(releasingShards) > 0 ? Effect.andThen(Effect.forkIn(syncSingletons, shardingScope), releaseShards) : Effect.void;
142
149
  }), Effect.retry({
143
150
  times: 5,
144
151
  schedule: Schedule.spaced(50)
@@ -150,23 +157,24 @@ const make = /*#__PURE__*/Effect.gen(function* () {
150
157
  }).pipe(Effect.andThen(shardStorage.release(selfAddress, shardId)), Effect.annotateLogs({
151
158
  runner: selfAddress
152
159
  }), Effect.andThen(() => {
153
- releasingShards.delete(shardId);
160
+ MutableHashSet.remove(releasingShards, shardId);
154
161
  })), {
155
162
  concurrency: "unbounded",
156
163
  discard: true
157
164
  })));
158
165
  }
159
166
  const clearSelfShards = Effect.suspend(() => {
160
- selfShards.clear();
167
+ MutableHashSet.clear(selfShards);
161
168
  return activeShardsLatch.open;
162
169
  });
163
170
  // --- Singletons ---
164
171
  const singletons = new Map();
165
172
  const singletonFibers = yield* FiberMap.make();
166
173
  const withSingletonLock = Effect.unsafeMakeSemaphore(1).withPermits(1);
167
- const registerSingleton = Effect.fnUntraced(function* (name, run) {
174
+ const registerSingleton = Effect.fnUntraced(function* (name, run, options) {
175
+ const shardGroup = options?.shardGroup ?? "default";
168
176
  const address = new _SingletonAddress.SingletonAddress({
169
- shardId: getShardId(_EntityId.EntityId.make(name)),
177
+ shardId: getShardId(_EntityId.EntityId.make(name), shardGroup),
170
178
  name
171
179
  });
172
180
  let map = singletons.get(address.shardId);
@@ -184,7 +192,7 @@ const make = /*#__PURE__*/Effect.gen(function* () {
184
192
  address
185
193
  }));
186
194
  // start if we are on the right shard
187
- if (acquiredShards.has(address.shardId)) {
195
+ if (MutableHashSet.has(acquiredShards, address.shardId)) {
188
196
  yield* Effect.logDebug("Starting singleton", address);
189
197
  yield* FiberMap.run(singletonFibers, address, wrappedRun);
190
198
  }
@@ -193,7 +201,7 @@ const make = /*#__PURE__*/Effect.gen(function* () {
193
201
  for (const [shardId, map] of singletons) {
194
202
  for (const [address, run] of map) {
195
203
  const running = FiberMap.unsafeHas(singletonFibers, address);
196
- const shouldBeRunning = acquiredShards.has(shardId);
204
+ const shouldBeRunning = MutableHashSet.has(acquiredShards, shardId);
197
205
  if (running && !shouldBeRunning) {
198
206
  yield* Effect.logDebug("Stopping singleton", address);
199
207
  _interruptors.internalInterruptors.add(yield* Effect.fiberId);
@@ -255,7 +263,7 @@ const make = /*#__PURE__*/Effect.gen(function* () {
255
263
  currentSentRequestIds.add(message.envelope.requestId);
256
264
  }
257
265
  const address = message.envelope.address;
258
- if (!acquiredShards.has(address.shardId)) {
266
+ if (!MutableHashSet.has(acquiredShards, address.shardId)) {
259
267
  return Effect.void;
260
268
  }
261
269
  const state = entityManagers.get(address.entityType);
@@ -356,7 +364,7 @@ const make = /*#__PURE__*/Effect.gen(function* () {
356
364
  let done = false;
357
365
  while (!done) {
358
366
  // if the shard is no longer assigned to this runner, we stop
359
- if (!acquiredShards.has(address.shardId)) {
367
+ if (!MutableHashSet.has(acquiredShards, address.shardId)) {
360
368
  return;
361
369
  }
362
370
  // take a batch of unprocessed messages ids
@@ -373,7 +381,7 @@ const make = /*#__PURE__*/Effect.gen(function* () {
373
381
  }
374
382
  let index = 0;
375
383
  const sendWithRetry = Effect.catchTags(Effect.suspend(() => {
376
- if (!acquiredShards.has(address.shardId)) {
384
+ if (!MutableHashSet.has(acquiredShards, address.shardId)) {
377
385
  return Effect.fail(new _ClusterError.EntityNotAssignedToRunner({
378
386
  address
379
387
  }));
@@ -517,7 +525,7 @@ const make = /*#__PURE__*/Effect.gen(function* () {
517
525
  yield* Effect.gen(function* () {
518
526
  yield* Effect.logDebug("Registering with shard manager");
519
527
  if (Option.isSome(config.runnerAddress)) {
520
- const machineId = yield* shardManager.register(config.runnerAddress.value);
528
+ const machineId = yield* shardManager.register(config.runnerAddress.value, config.shardGroups);
521
529
  yield* snowflakeGen.setMachineId(machineId);
522
530
  }
523
531
  yield* stopShardManagerTimeout;
@@ -542,8 +550,8 @@ const make = /*#__PURE__*/Effect.gen(function* () {
542
550
  }
543
551
  if (!MutableRef.get(isShutdown) && isLocalRunner(event.address)) {
544
552
  for (const shardId of event.shards) {
545
- if (selfShards.has(shardId)) continue;
546
- selfShards.add(shardId);
553
+ if (MutableHashSet.has(selfShards, shardId)) continue;
554
+ MutableHashSet.add(selfShards, shardId);
547
555
  }
548
556
  yield* activeShardsLatch.open;
549
557
  }
@@ -556,7 +564,7 @@ const make = /*#__PURE__*/Effect.gen(function* () {
556
564
  }
557
565
  if (isLocalRunner(event.address)) {
558
566
  for (const shard of event.shards) {
559
- selfShards.delete(shard);
567
+ MutableHashSet.remove(selfShards, shard);
560
568
  }
561
569
  yield* activeShardsLatch.open;
562
570
  }
@@ -583,18 +591,18 @@ const make = /*#__PURE__*/Effect.gen(function* () {
583
591
  for (const [shardId, runner] of assignments) {
584
592
  if (Option.isNone(runner)) {
585
593
  MutableHashMap.remove(shardAssignments, shardId);
586
- selfShards.delete(shardId);
594
+ MutableHashSet.remove(selfShards, shardId);
587
595
  continue;
588
596
  }
589
597
  MutableHashMap.set(shardAssignments, shardId, runner.value);
590
598
  if (!isLocalRunner(runner.value)) {
591
- selfShards.delete(shardId);
599
+ MutableHashSet.remove(selfShards, shardId);
592
600
  continue;
593
601
  }
594
- if (MutableRef.get(isShutdown) || selfShards.has(shardId)) {
602
+ if (MutableRef.get(isShutdown) || MutableHashSet.has(selfShards, shardId)) {
595
603
  continue;
596
604
  }
597
- selfShards.add(shardId);
605
+ MutableHashSet.add(selfShards, shardId);
598
606
  }
599
607
  yield* activeShardsLatch.open;
600
608
  });
@@ -701,7 +709,7 @@ const make = /*#__PURE__*/Effect.gen(function* () {
701
709
  return {
702
710
  ...wrappedClient,
703
711
  [currentClientAddress]: ClientAddressTag.context(_EntityAddress.EntityAddress.make({
704
- shardId: getShardId(id),
712
+ shardId: getShardId(id, entity.getShardGroup(entityId)),
705
713
  entityId: id,
706
714
  entityType: entity.type
707
715
  }))
@@ -1 +1 @@
1
- {"version":3,"file":"Sharding.js","names":["RpcClient","_interopRequireWildcard","require","_RpcMessage","Arr","Cause","Context","Deferred","Effect","Equal","Exit","Fiber","FiberHandle","FiberMap","FiberRef","_Function","HashMap","Iterable","Layer","MutableHashMap","MutableRef","Option","Predicate","PubSub","Schedule","Scope","Stream","_ClusterError","_ClusterSchema","_EntityAddress","_EntityId","Envelope","EntityManager","_entityReaper","_hash","_interruptors","_resourceMap","Message","MessageStorage","Reply","_Runners","_ShardId","_ShardingConfig","_ShardingRegistrationEvent","_ShardManager","_ShardStorage","_SingletonAddress","Snowflake","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Sharding","Tag","exports","make","gen","config","ShardingConfig","runners","Runners","shardManager","ShardManagerClient","snowflakeGen","Generator","shardingScope","scope","isShutdown","storage","storageEnabled","noop","shardStorage","ShardStorage","entityManagers","Map","shardAssignments","empty","selfShards","Set","acquiredShards","activeShardsLatch","makeLatch","events","unbounded","getRegistrationEvents","fromPubSub","isLocalRunner","address","isSome","runnerAddress","equals","value","getShardId","entityId","ShardId","Math","abs","hashString","numberOfShards","isEntityOnLocalShards","shardId","selfAddress","addFinalizerExit","ignore","releaseAll","releasingShards","await","delete","add","unacquiredShards","size","forkIn","syncSingletons","releaseShards","close","acquired","acquire","resetShards","length","storageReadLatch","open","sleep","pipe","catchAllCause","cause","logWarning","repeat","spaced","entityMessagePollInterval","annotateLogs","package","module","fiber","runner","interruptible","suspend","refresh","flatMap","includes","andThen","void","retry","times","schedule","logError","clearSelfShards","delay","forever","releaseShardsLock","unsafeMakeSemaphore","withPermits","forEach","values","state","manager","interruptShard","concurrency","discard","release","clear","singletons","singletonFibers","withSingletonLock","registerSingleton","fnUntraced","name","run","SingletonAddress","EntityId","map","dieMessage","context","wrappedRun","locally","currentLogAnnotations","never","scoped","provide","orDie","publish","SingletonRegistered","logDebug","running","unsafeHas","shouldBeRunning","internalInterruptors","fiberId","remove","openStorageReadLatch","constant","storageReadLock","withStorageReadLock","storageAlreadyProcessed","_message","sentRequestIds","sentRequestIdSets","addFinalizer","message","envelope","requestId","entityType","isProcessingFor","excludeReplies","unsafeClose","take","messages","unprocessedMessages","currentSentRequestIds","send","index","_tag","respond","ReplyWithContext","fromDefect","id","unsafeNext","defect","EntityNotManagedByRunner","isProcessing","resumptionState","entityResumptionState","unprocessed","interrupts","error","failureOption","isNone","saveReply","squash","resumeEntityFromStorage","whileLoop","while","step","body","oldest","unsafeHead","ensuring","lastReceivedMessage","resumeEntityFromStorageImpl","getOrThrow","done","messageIds","push","unprocessedMessagesById","sendWithRetry","catchTags","fail","EntityNotAssignedToRunner","interrupt","MailboxFull","sendRetryInterval","AlreadyProcessingMessage","sync","effect","entity","sendLocal","simulateRemoteSerialization","notifyLocal","notify","envelopeId","isTransientError","or","RunnerUnavailable","is","sendOutgoing","retries","catchIf","maybeRunner","isPersisted","rpc","annotations","Persisted","runnerIsLocal","die","reset","clearReplies","matchCause","onSuccess","onFailure","shardManagerTimeoutFiber","extend","startShardManagerTimeout","shardManagerUnavailableTimeout","onlyIfMissing","stopShardManagerTimeout","machineId","register","setMachineId","mailbox","shardingEvents","startedLatch","eventsFiber","takeAll","event","shard","shards","intoDeferred","forkScoped","syncFiber","syncAssignments","refreshAssignmentsInterval","joinAll","zipRight","exponential","union","assignments","getAssignments","clientRequests","clients","ResourceMap","client","makeNoSerialization","protocol","spanPrefix","type","supportsAck","generateRequestId","RequestId","onFromClient","options","unsafeGet","ClientAddressTag","getCurrentFiber","requests","tag","entry","currentContext","makeClientRespond","write","clientRespondDiscard","OutgoingRequest","makeRequest","payload","headers","traceId","spanId","sampled","lastReceivedReply","none","OutgoingEnvelope","AckChunk","replyId","lastChunkId","Uninterruptible","isTransientInterrupt","interruptors","some","Interrupt","wrappedClient","method","keys","merge","currentClientAddress","withFiberRuntime","EntityAddress","makeClient","_reply","reply","clientId","exit","reaper","EntityReaper","registerEntity","build","sharding","EntityRegistered","unregister","activeEntityCount","count","of","layer","layerGenerator","Default","GenericTag","Symbol","for","key"],"sources":["../../src/Sharding.ts"],"sourcesContent":[null],"mappings":";;;;;;AAIA,IAAAA,SAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,GAAA,GAAAH,uBAAA,CAAAC,OAAA;AACA,IAAAG,KAAA,GAAAJ,uBAAA,CAAAC,OAAA;AACA,IAAAI,OAAA,GAAAL,uBAAA,CAAAC,OAAA;AACA,IAAAK,QAAA,GAAAN,uBAAA,CAAAC,OAAA;AAEA,IAAAM,MAAA,GAAAP,uBAAA,CAAAC,OAAA;AACA,IAAAO,KAAA,GAAAR,uBAAA,CAAAC,OAAA;AACA,IAAAQ,IAAA,GAAAT,uBAAA,CAAAC,OAAA;AACA,IAAAS,KAAA,GAAAV,uBAAA,CAAAC,OAAA;AACA,IAAAU,WAAA,GAAAX,uBAAA,CAAAC,OAAA;AACA,IAAAW,QAAA,GAAAZ,uBAAA,CAAAC,OAAA;AACA,IAAAY,QAAA,GAAAb,uBAAA,CAAAC,OAAA;AACA,IAAAa,SAAA,GAAAb,OAAA;AACA,IAAAc,OAAA,GAAAf,uBAAA,CAAAC,OAAA;AACA,IAAAe,QAAA,GAAAhB,uBAAA,CAAAC,OAAA;AACA,IAAAgB,KAAA,GAAAjB,uBAAA,CAAAC,OAAA;AACA,IAAAiB,cAAA,GAAAlB,uBAAA,CAAAC,OAAA;AACA,IAAAkB,UAAA,GAAAnB,uBAAA,CAAAC,OAAA;AACA,IAAAmB,MAAA,GAAApB,uBAAA,CAAAC,OAAA;AACA,IAAAoB,SAAA,GAAArB,uBAAA,CAAAC,OAAA;AACA,IAAAqB,MAAA,GAAAtB,uBAAA,CAAAC,OAAA;AACA,IAAAsB,QAAA,GAAAvB,uBAAA,CAAAC,OAAA;AACA,IAAAuB,KAAA,GAAAxB,uBAAA,CAAAC,OAAA;AACA,IAAAwB,MAAA,GAAAzB,uBAAA,CAAAC,OAAA;AAEA,IAAAyB,aAAA,GAAAzB,OAAA;AAMA,IAAA0B,cAAA,GAAA1B,OAAA;AAEA,IAAA2B,cAAA,GAAA3B,OAAA;AACA,IAAA4B,SAAA,GAAA5B,OAAA;AAEA,IAAA6B,QAAA,GAAA9B,uBAAA,CAAAC,OAAA;AACA,IAAA8B,aAAA,GAAA/B,uBAAA,CAAAC,OAAA;AACA,IAAA+B,aAAA,GAAA/B,OAAA;AACA,IAAAgC,KAAA,GAAAhC,OAAA;AACA,IAAAiC,aAAA,GAAAjC,OAAA;AACA,IAAAkC,YAAA,GAAAlC,OAAA;AACA,IAAAmC,OAAA,GAAApC,uBAAA,CAAAC,OAAA;AACA,IAAAoC,cAAA,GAAArC,uBAAA,CAAAC,OAAA;AACA,IAAAqC,KAAA,GAAAtC,uBAAA,CAAAC,OAAA;AAEA,IAAAsC,QAAA,GAAAtC,OAAA;AACA,IAAAuC,QAAA,GAAAvC,OAAA;AACA,IAAAwC,eAAA,GAAAxC,OAAA;AACA,IAAAyC,0BAAA,GAAAzC,OAAA;AACA,IAAA0C,aAAA,GAAA1C,OAAA;AACA,IAAA2C,aAAA,GAAA3C,OAAA;AACA,IAAA4C,iBAAA,GAAA5C,OAAA;AACA,IAAA6C,SAAA,GAAA9C,uBAAA,CAAAC,OAAA;AAA2C,SAAAD,wBAAA+C,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAjD,uBAAA,YAAAA,CAAA+C,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAE3C;;;;AAIM,MAAOkB,QAAS,sBAAQ7D,OAAO,CAAC8D,GAAG,CAAC,0BAA0B,CAAC,EA2FjE;AAAAC,OAAA,CAAAF,QAAA,GAAAA,QAAA;AAYJ,MAAMG,IAAI,gBAAG9D,MAAM,CAAC+D,GAAG,CAAC,aAAS;EAC/B,MAAMC,MAAM,GAAG,OAAOC,8BAAc;EAEpC,MAAMC,OAAO,GAAG,OAAOC,gBAAO;EAC9B,MAAMC,YAAY,GAAG,OAAOC,gCAAkB;EAC9C,MAAMC,YAAY,GAAG,OAAO/B,SAAS,CAACgC,SAAS;EAC/C,MAAMC,aAAa,GAAG,OAAOxE,MAAM,CAACyE,KAAK;EACzC,MAAMC,UAAU,GAAG9D,UAAU,CAACkD,IAAI,CAAC,KAAK,CAAC;EAEzC,MAAMa,OAAO,GAAG,OAAO7C,cAAc,CAACA,cAAc;EACpD,MAAM8C,cAAc,GAAGD,OAAO,KAAK7C,cAAc,CAAC+C,IAAI;EACtD,MAAMC,YAAY,GAAG,OAAOC,0BAAY;EAExC,MAAMC,cAAc,GAAG,IAAIC,GAAG,EAAkC;EAEhE,MAAMC,gBAAgB,GAAGvE,cAAc,CAACwE,KAAK,EAA0B;EACvE,MAAMC,UAAU,GAAG,IAAIC,GAAG,EAAW;EAErC;EACA,MAAMC,cAAc,GAAG,IAAID,GAAG,EAAW;EACzC,MAAME,iBAAiB,GAAG,OAAOvF,MAAM,CAACwF,SAAS,CAAC,KAAK,CAAC;EAExD,MAAMC,MAAM,GAAG,OAAO1E,MAAM,CAAC2E,SAAS,EAA6B;EACnE,MAAMC,qBAAqB,GAA6CzE,MAAM,CAAC0E,UAAU,CAACH,MAAM,CAAC;EAEjG,MAAMI,aAAa,GAAIC,OAAsB,IAC3CjF,MAAM,CAACkF,MAAM,CAAC/B,MAAM,CAACgC,aAAa,CAAC,IAAI/F,KAAK,CAACgG,MAAM,CAACH,OAAO,EAAE9B,MAAM,CAACgC,aAAa,CAACE,KAAK,CAAC;EAE1F,SAASC,UAAUA,CAACC,QAAkB;IACpC,OAAOC,gBAAO,CAACvC,IAAI,CAAEwC,IAAI,CAACC,GAAG,CAAC,IAAAC,gBAAU,EAACJ,QAAQ,CAAC,GAAGpC,MAAM,CAACyC,cAAc,CAAC,GAAI,CAAC,CAAC;EACnF;EAEA,SAASC,qBAAqBA,CAACZ,OAAsB;IACnD,OAAOR,cAAc,CAACnC,GAAG,CAAC2C,OAAO,CAACa,OAAO,CAAC;EAC5C;EAEA;EAEA,IAAI9F,MAAM,CAACkF,MAAM,CAAC/B,MAAM,CAACgC,aAAa,CAAC,EAAE;IACvC,MAAMY,WAAW,GAAG5C,MAAM,CAACgC,aAAa,CAACE,KAAK;IAC9C,OAAOjF,KAAK,CAAC4F,gBAAgB,CAACrC,aAAa,EAAE,MAAK;MAChD;MACA,OAAOxE,MAAM,CAAC8G,MAAM,CAAChC,YAAY,CAACiC,UAAU,CAACH,WAAW,CAAC,CAAC;IAC5D,CAAC,CAAC;IAEF,MAAMI,eAAe,GAAG,IAAI3B,GAAG,EAAW;IAC1C,OAAOrF,MAAM,CAAC+D,GAAG,CAAC,aAAS;MACzB,OAAO,IAAI,EAAE;QACX,OAAOwB,iBAAiB,CAAC0B,KAAK;QAE9B;QACA,KAAK,MAAMN,OAAO,IAAIrB,cAAc,EAAE;UACpC,IAAIF,UAAU,CAACjC,GAAG,CAACwD,OAAO,CAAC,EAAE;UAC7BrB,cAAc,CAAC4B,MAAM,CAACP,OAAO,CAAC;UAC9BK,eAAe,CAACG,GAAG,CAACR,OAAO,CAAC;QAC9B;QACA;QACA,MAAMS,gBAAgB,GAAG,IAAI/B,GAAG,EAAW;QAC3C,KAAK,MAAMsB,OAAO,IAAIvB,UAAU,EAAE;UAChC,IAAIE,cAAc,CAACnC,GAAG,CAACwD,OAAO,CAAC,IAAIK,eAAe,CAAC7D,GAAG,CAACwD,OAAO,CAAC,EAAE;UACjES,gBAAgB,CAACD,GAAG,CAACR,OAAO,CAAC;QAC/B;QAEA,IAAIK,eAAe,CAACK,IAAI,GAAG,CAAC,EAAE;UAC5B,OAAOrH,MAAM,CAACsH,MAAM,CAACC,cAAc,EAAE/C,aAAa,CAAC;UACnD,OAAOgD,aAAa;QACtB;QAEA,IAAIJ,gBAAgB,CAACC,IAAI,KAAK,CAAC,EAAE;UAC/B,OAAO9B,iBAAiB,CAACkC,KAAK;UAC9B;QACF;QAEA,MAAMC,QAAQ,GAAG,OAAO5C,YAAY,CAAC6C,OAAO,CAACf,WAAW,EAAEQ,gBAAgB,CAAC;QAC3E,OAAOpH,MAAM,CAAC8G,MAAM,CAACnC,OAAO,CAACiD,WAAW,CAACF,QAAQ,CAAC,CAAC;QACnD,KAAK,MAAMf,OAAO,IAAIe,QAAQ,EAAE;UAC9BpC,cAAc,CAAC6B,GAAG,CAACR,OAAO,CAAC;QAC7B;QACA,IAAIe,QAAQ,CAACG,MAAM,GAAG,CAAC,EAAE;UACvB,OAAOC,gBAAgB,CAACC,IAAI;UAC5B,OAAO/H,MAAM,CAACsH,MAAM,CAACC,cAAc,EAAE/C,aAAa,CAAC;QACrD;QACA,OAAOxE,MAAM,CAACgI,KAAK,CAAC,IAAI,CAAC;MAC3B;IACF,CAAC,CAAC,CAACC,IAAI,CACLjI,MAAM,CAACkI,aAAa,CAAEC,KAAK,IAAKnI,MAAM,CAACoI,UAAU,CAAC,kCAAkC,EAAED,KAAK,CAAC,CAAC,EAC7FnI,MAAM,CAACqI,MAAM,CAACrH,QAAQ,CAACsH,MAAM,CAACtE,MAAM,CAACuE,yBAAyB,CAAC,CAAC,EAChEvI,MAAM,CAACwI,YAAY,CAAC;MAClBC,OAAO,EAAE,iBAAiB;MAC1BC,MAAM,EAAE,UAAU;MAClBC,KAAK,EAAE,wBAAwB;MAC/BC,MAAM,EAAEhC;KACT,CAAC,EACF5G,MAAM,CAAC6I,aAAa,EACpB7I,MAAM,CAACsH,MAAM,CAAC9C,aAAa,CAAC,CAC7B;IAED;IACA,OAAOxE,MAAM,CAAC8I,OAAO,CAAC,MACpBhE,YAAY,CAACiE,OAAO,CAACnC,WAAW,EAAE,CAChC,GAAGtB,cAAc,EACjB,GAAG0B,eAAe,CACnB,CAAC,CACH,CAACiB,IAAI,CACJjI,MAAM,CAACgJ,OAAO,CAAEtB,QAAQ,IAAI;MAC1B,KAAK,MAAMf,OAAO,IAAIrB,cAAc,EAAE;QACpC,IAAI,CAACoC,QAAQ,CAACuB,QAAQ,CAACtC,OAAO,CAAC,EAAE;UAC/BrB,cAAc,CAAC4B,MAAM,CAACP,OAAO,CAAC;UAC9BK,eAAe,CAACG,GAAG,CAACR,OAAO,CAAC;QAC9B;MACF;MACA,OAAOK,eAAe,CAACK,IAAI,GAAG,CAAC,GAC7BrH,MAAM,CAACkJ,OAAO,CACZlJ,MAAM,CAACsH,MAAM,CAACC,cAAc,EAAE/C,aAAa,CAAC,EAC5CgD,aAAa,CACd,GACDxH,MAAM,CAACmJ,IAAI;IACf,CAAC,CAAC,EACFnJ,MAAM,CAACoJ,KAAK,CAAC;MACXC,KAAK,EAAE,CAAC;MACRC,QAAQ,EAAEtI,QAAQ,CAACsH,MAAM,CAAC,EAAE;KAC7B,CAAC,EACFtI,MAAM,CAACkI,aAAa,CAAEC,KAAK,IACzBnI,MAAM,CAACuJ,QAAQ,CAAC,+BAA+B,EAAEpB,KAAK,CAAC,CAACF,IAAI,CAC1DjI,MAAM,CAACkJ,OAAO,CAACM,eAAe,CAAC,CAChC,CACF,EACDxJ,MAAM,CAACyJ,KAAK,CAAC,WAAW,CAAC,EACzBzJ,MAAM,CAAC0J,OAAO,EACd1J,MAAM,CAAC6I,aAAa,EACpB7I,MAAM,CAACsH,MAAM,CAAC9C,aAAa,CAAC,CAC7B;IAED,MAAMmF,iBAAiB,GAAG3J,MAAM,CAAC4J,mBAAmB,CAAC,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC,CAAC;IACtE,MAAMrC,aAAa,GAAGmC,iBAAiB,CACrC3J,MAAM,CAAC8I,OAAO,CAAC,MACb9I,MAAM,CAAC8J,OAAO,CACZ9C,eAAe,EACdL,OAAO,IACN3G,MAAM,CAAC8J,OAAO,CACZ9E,cAAc,CAAC+E,MAAM,EAAE,EACtBC,KAAK,IAAKA,KAAK,CAACC,OAAO,CAACC,cAAc,CAACvD,OAAO,CAAC,EAChD;MAAEwD,WAAW,EAAE,WAAW;MAAEC,OAAO,EAAE;IAAI,CAAE,CAC5C,CAACnC,IAAI,CACJjI,MAAM,CAACkJ,OAAO,CAACpE,YAAY,CAACuF,OAAO,CAACzD,WAAW,EAAED,OAAO,CAAC,CAAC,EAC1D3G,MAAM,CAACwI,YAAY,CAAC;MAClBI,MAAM,EAAEhC;KACT,CAAC,EACF5G,MAAM,CAACkJ,OAAO,CAAC,MAAK;MAClBlC,eAAe,CAACE,MAAM,CAACP,OAAO,CAAC;IACjC,CAAC,CAAC,CACH,EACH;MAAEwD,WAAW,EAAE,WAAW;MAAEC,OAAO,EAAE;IAAI,CAAE,CAC5C,CACF,CACF;EACH;EAEA,MAAMZ,eAAe,GAAGxJ,MAAM,CAAC8I,OAAO,CAAC,MAAK;IAC1C1D,UAAU,CAACkF,KAAK,EAAE;IAClB,OAAO/E,iBAAiB,CAACwC,IAAI;EAC/B,CAAC,CAAC;EAEF;EAEA,MAAMwC,UAAU,GAAG,IAAItF,GAAG,EAAiF;EAC3G,MAAMuF,eAAe,GAAG,OAAOnK,QAAQ,CAACyD,IAAI,EAAoB;EAChE,MAAM2G,iBAAiB,GAAGzK,MAAM,CAAC4J,mBAAmB,CAAC,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC,CAAC;EAEtE,MAAMa,iBAAiB,GAA0C1K,MAAM,CAAC2K,UAAU,CAChF,WAAUC,IAAI,EAAEC,GAAG;IACjB,MAAM/E,OAAO,GAAG,IAAIgF,kCAAgB,CAAC;MACnCnE,OAAO,EAAER,UAAU,CAAC4E,kBAAQ,CAACjH,IAAI,CAAC8G,IAAI,CAAC,CAAC;MACxCA;KACD,CAAC;IAEF,IAAII,GAAG,GAAGT,UAAU,CAACnH,GAAG,CAAC0C,OAAO,CAACa,OAAO,CAAC;IACzC,IAAI,CAACqE,GAAG,EAAE;MACRA,GAAG,GAAGrK,cAAc,CAACwE,KAAK,EAAE;MAC5BoF,UAAU,CAAClH,GAAG,CAACyC,OAAO,CAACa,OAAO,EAAEqE,GAAG,CAAC;IACtC;IACA,IAAIrK,cAAc,CAACwC,GAAG,CAAC6H,GAAG,EAAElF,OAAO,CAAC,EAAE;MACpC,OAAO,OAAO9F,MAAM,CAACiL,UAAU,CAAC,cAAcL,IAAI,yBAAyB,CAAC;IAC9E;IAEA,MAAMM,OAAO,GAAG,OAAOlL,MAAM,CAACkL,OAAO,EAAS;IAC9C,MAAMC,UAAU,GAAGN,GAAG,CAAC5C,IAAI,CACzBjI,MAAM,CAACoL,OAAO,CAAC9K,QAAQ,CAAC+K,qBAAqB,EAAE7K,OAAO,CAAC2E,KAAK,EAAE,CAAC,EAC/DnF,MAAM,CAACkJ,OAAO,CAAClJ,MAAM,CAACsL,KAAK,CAAC,EAC5BtL,MAAM,CAACuL,MAAM,EACbvL,MAAM,CAACwL,OAAO,CAACN,OAAO,CAAC,EACvBlL,MAAM,CAACyL,KAAK,EACZzL,MAAM,CAAC6I,aAAa,CACG;IACzBlI,cAAc,CAAC0C,GAAG,CAAC2H,GAAG,EAAElF,OAAO,EAAEqF,UAAU,CAAC;IAE5C,OAAOpK,MAAM,CAAC2K,OAAO,CAACjG,MAAM,EAAE,IAAAkG,8CAAmB,EAAC;MAAE7F;IAAO,CAAE,CAAC,CAAC;IAE/D;IACA,IAAIR,cAAc,CAACnC,GAAG,CAAC2C,OAAO,CAACa,OAAO,CAAC,EAAE;MACvC,OAAO3G,MAAM,CAAC4L,QAAQ,CAAC,oBAAoB,EAAE9F,OAAO,CAAC;MACrD,OAAOzF,QAAQ,CAACwK,GAAG,CAACL,eAAe,EAAE1E,OAAO,EAAEqF,UAAU,CAAC;IAC3D;EACF,CAAC,EACDV,iBAAiB,CAClB;EAED,MAAMlD,cAAc,GAAGkD,iBAAiB,CAACzK,MAAM,CAAC+D,GAAG,CAAC,aAAS;IAC3D,KAAK,MAAM,CAAC4C,OAAO,EAAEqE,GAAG,CAAC,IAAIT,UAAU,EAAE;MACvC,KAAK,MAAM,CAACzE,OAAO,EAAE+E,GAAG,CAAC,IAAIG,GAAG,EAAE;QAChC,MAAMa,OAAO,GAAGxL,QAAQ,CAACyL,SAAS,CAACtB,eAAe,EAAE1E,OAAO,CAAC;QAC5D,MAAMiG,eAAe,GAAGzG,cAAc,CAACnC,GAAG,CAACwD,OAAO,CAAC;QACnD,IAAIkF,OAAO,IAAI,CAACE,eAAe,EAAE;UAC/B,OAAO/L,MAAM,CAAC4L,QAAQ,CAAC,oBAAoB,EAAE9F,OAAO,CAAC;UACrDkG,kCAAoB,CAAC7E,GAAG,CAAC,OAAOnH,MAAM,CAACiM,OAAO,CAAC;UAC/C,OAAO5L,QAAQ,CAAC6L,MAAM,CAAC1B,eAAe,EAAE1E,OAAO,CAAC;QAClD,CAAC,MAAM,IAAI,CAAC+F,OAAO,IAAIE,eAAe,EAAE;UACtC,OAAO/L,MAAM,CAAC4L,QAAQ,CAAC,oBAAoB,EAAE9F,OAAO,CAAC;UACrD,OAAOzF,QAAQ,CAACwK,GAAG,CAACL,eAAe,EAAE1E,OAAO,EAAE+E,GAAG,CAAC;QACpD;MACF;IACF;EACF,CAAC,CAAC,CAAC;EAEH;EAEA,MAAM/C,gBAAgB,GAAG,OAAO9H,MAAM,CAACwF,SAAS,CAAC,IAAI,CAAC;EACtD,MAAM2G,oBAAoB,GAAG,IAAAC,kBAAQ,EAACtE,gBAAgB,CAACC,IAAI,CAAC;EAE5D,MAAMsE,eAAe,GAAGrM,MAAM,CAAC4J,mBAAmB,CAAC,CAAC,CAAC;EACrD,MAAM0C,mBAAmB,GAAGD,eAAe,CAACxC,WAAW,CAAC,CAAC,CAAC;EAE1D,IAAI0C,uBAAuB,GAAIC,QAAsC,IAAK,IAAI;EAE9E;EACA;EACA,MAAMC,cAAc,GAAG,IAAIpH,GAAG,EAAuB;EACrD,MAAMqH,iBAAiB,GAAG,IAAIrH,GAAG,EAA4B;EAE7D,IAAIT,cAAc,IAAI/D,MAAM,CAACkF,MAAM,CAAC/B,MAAM,CAACgC,aAAa,CAAC,EAAE;IACzD,MAAMY,WAAW,GAAG5C,MAAM,CAACgC,aAAa,CAACE,KAAK;IAE9C,OAAOlG,MAAM,CAAC+D,GAAG,CAAC,aAAS;MACzB,OAAO/D,MAAM,CAAC4L,QAAQ,CAAC,UAAU,CAAC;MAClC,OAAO5L,MAAM,CAAC2M,YAAY,CAAC,MAAM3M,MAAM,CAAC4L,QAAQ,CAAC,eAAe,CAAC,CAAC;MAElEa,cAAc,CAACnC,KAAK,EAAE;MACtBoC,iBAAiB,CAACpC,KAAK,EAAE;MAEzBiC,uBAAuB,GAAIK,OAAqC,IAAI;QAClE,IAAI,CAACH,cAAc,CAACtJ,GAAG,CAACyJ,OAAO,CAACC,QAAQ,CAACC,SAAS,CAAC,EAAE;UACnD,OAAO,KAAK;QACd;QACA,MAAM9C,KAAK,GAAGhF,cAAc,CAAC5B,GAAG,CAACwJ,OAAO,CAACC,QAAQ,CAAC/G,OAAO,CAACiH,UAAU,CAAC;QACrE,IAAI,CAAC/C,KAAK,EAAE,OAAO,IAAI;QACvB,OAAO,CAACA,KAAK,CAACC,OAAO,CAAC+C,eAAe,CAACJ,OAAO,EAAE;UAAEK,cAAc,EAAE;QAAI,CAAE,CAAC;MAC1E,CAAC;MAED,OAAO,IAAI,EAAE;QACX;QACA,OAAOnF,gBAAgB,CAACb,KAAK;QAE7B;QACA;QACAa,gBAAgB,CAACoF,WAAW,EAAE;QAE9B;QACA;QACA;QACA,OAAOb,eAAe,CAACc,IAAI,CAAC,CAAC,CAAC;QAE9B,MAAMC,QAAQ,GAAG,OAAOzI,OAAO,CAAC0I,mBAAmB,CAAC/H,cAAc,CAAC;QACnE,MAAMgI,qBAAqB,GAAG,IAAIjI,GAAG,EAAuB;QAC5DqH,iBAAiB,CAACvF,GAAG,CAACmG,qBAAqB,CAAC;QAE5C,MAAMC,IAAI,GAAGvN,MAAM,CAACkI,aAAa,CAC/BlI,MAAM,CAAC8I,OAAO,CAAC,MAAK;UAClB,MAAM8D,OAAO,GAAGQ,QAAQ,CAACI,KAAK,CAAC;UAC/B,IAAIZ,OAAO,CAACa,IAAI,KAAK,iBAAiB,EAAE;YACtC,IAAIhB,cAAc,CAACtJ,GAAG,CAACyJ,OAAO,CAACC,QAAQ,CAACC,SAAS,CAAC,EAAE;cAClD,OAAO9M,MAAM,CAACmJ,IAAI;YACpB;YACAsD,cAAc,CAACtF,GAAG,CAACyF,OAAO,CAACC,QAAQ,CAACC,SAAS,CAAC;YAC9CQ,qBAAqB,CAACnG,GAAG,CAACyF,OAAO,CAACC,QAAQ,CAACC,SAAS,CAAC;UACvD;UACA,MAAMhH,OAAO,GAAG8G,OAAO,CAACC,QAAQ,CAAC/G,OAAO;UACxC,IAAI,CAACR,cAAc,CAACnC,GAAG,CAAC2C,OAAO,CAACa,OAAO,CAAC,EAAE;YACxC,OAAO3G,MAAM,CAACmJ,IAAI;UACpB;UACA,MAAMa,KAAK,GAAGhF,cAAc,CAAC5B,GAAG,CAAC0C,OAAO,CAACiH,UAAU,CAAC;UACpD,IAAI,CAAC/C,KAAK,EAAE;YACV,IAAI4C,OAAO,CAACa,IAAI,KAAK,iBAAiB,EAAE;cACtC,OAAOzN,MAAM,CAACyL,KAAK,CAACmB,OAAO,CAACc,OAAO,CAAC3L,KAAK,CAAC4L,gBAAgB,CAACC,UAAU,CAAC;gBACpEC,EAAE,EAAEvJ,YAAY,CAACwJ,UAAU,EAAE;gBAC7BhB,SAAS,EAAEF,OAAO,CAACC,QAAQ,CAACC,SAAS;gBACrCiB,MAAM,EAAE,IAAIC,sCAAwB,CAAC;kBAAElI;gBAAO,CAAE;eACjD,CAAC,CAAC,CAAC;YACN;YACA,OAAO9F,MAAM,CAACmJ,IAAI;UACpB;UAEA,MAAM8E,YAAY,GAAGjE,KAAK,CAACC,OAAO,CAAC+C,eAAe,CAACJ,OAAO,CAAC;UAE3D;UACA;UACA,IAAIA,OAAO,CAACa,IAAI,KAAK,kBAAkB,IAAIQ,YAAY,EAAE;YACvD,OAAOjE,KAAK,CAACC,OAAO,CAACsD,IAAI,CAACX,OAAO,CAAC;UACpC,CAAC,MAAM,IAAIqB,YAAY,EAAE;YACvB,OAAOjO,MAAM,CAACmJ,IAAI;UACpB;UAEA;UACA;UACA,MAAM+E,eAAe,GAAGvN,cAAc,CAACyC,GAAG,CAAC+K,qBAAqB,EAAErI,OAAO,CAAC;UAC1E,IAAIjF,MAAM,CAACkF,MAAM,CAACmI,eAAe,CAAC,EAAE;YAClCA,eAAe,CAAChI,KAAK,CAACkI,WAAW,CAACjH,GAAG,CAACyF,OAAO,CAACC,QAAQ,CAACC,SAAS,CAAC;YACjE,IAAIF,OAAO,CAACC,QAAQ,CAACY,IAAI,KAAK,WAAW,EAAE;cACzCS,eAAe,CAAChI,KAAK,CAACmI,UAAU,CAAChL,GAAG,CAACuJ,OAAO,CAACC,QAAQ,CAACC,SAAS,EAAEF,OAAmC,CAAC;YACvG;YACA,OAAO5M,MAAM,CAACmJ,IAAI;UACpB;UACA,OAAOa,KAAK,CAACC,OAAO,CAACsD,IAAI,CAACX,OAAO,CAAC;QACpC,CAAC,CAAC,EACDzE,KAAK,IAAI;UACR,MAAMyE,OAAO,GAAGQ,QAAQ,CAACI,KAAK,CAAC;UAC/B,MAAMc,KAAK,GAAGzO,KAAK,CAAC0O,aAAa,CAACpG,KAAK,CAAC;UACxC;UACA,IAAItH,MAAM,CAAC2N,MAAM,CAACF,KAAK,CAAC,EAAE;YACxB,OAAO3J,OAAO,CAAC8J,SAAS,CAAC1M,KAAK,CAAC4L,gBAAgB,CAACC,UAAU,CAAC;cACzDC,EAAE,EAAEvJ,YAAY,CAACwJ,UAAU,EAAE;cAC7BhB,SAAS,EAAEF,OAAO,CAACC,QAAQ,CAACC,SAAS;cACrCiB,MAAM,EAAElO,KAAK,CAAC6O,MAAM,CAACvG,KAAK;aAC3B,CAAC,CAAC;UACL;UACA,IAAImG,KAAK,CAACpI,KAAK,CAACuH,IAAI,KAAK,aAAa,EAAE;YACtC;YACA,OAAOkB,uBAAuB,CAAC/B,OAAuC,CAAC;UACzE;UACA,OAAO5M,MAAM,CAACmJ,IAAI;QACpB,CAAC,CACF;QAED,IAAIqE,KAAK,GAAG,CAAC;QACb,OAAOxN,MAAM,CAAC4O,SAAS,CAAC;UACtBC,KAAK,EAAEA,CAAA,KAAMrB,KAAK,GAAGJ,QAAQ,CAACvF,MAAM;UACpCiH,IAAI,EAAEA,CAAA,KAAMtB,KAAK,EAAE;UACnBuB,IAAI,EAAE,IAAA3C,kBAAQ,EAACmB,IAAI;SACpB,CAAC;QAEF;QACA,OAAOlB,eAAe,CAAChC,OAAO,CAAC,CAAC,CAAC;QAEjC,OAAOqC,iBAAiB,CAACrF,IAAI,GAAG,EAAE,EAAE;UAClC,MAAM2H,MAAM,GAAGvO,QAAQ,CAACwO,UAAU,CAACvC,iBAAiB,CAAC;UACrDA,iBAAiB,CAACxF,MAAM,CAAC8H,MAAM,CAAC;UAChC,KAAK,MAAMnB,EAAE,IAAImB,MAAM,EAAE;YACvBvC,cAAc,CAACvF,MAAM,CAAC2G,EAAE,CAAC;UAC3B;QACF;MACF;IACF,CAAC,CAAC,CAAC5F,IAAI,CACLjI,MAAM,CAACuL,MAAM,EACbvL,MAAM,CAACkP,QAAQ,CAAC7C,eAAe,CAACtF,UAAU,CAAC,EAC3C/G,MAAM,CAACkI,aAAa,CAAEC,KAAK,IAAKnI,MAAM,CAACoI,UAAU,CAAC,sCAAsC,EAAED,KAAK,CAAC,CAAC,EACjGnI,MAAM,CAACqI,MAAM,CAACrH,QAAQ,CAACsH,MAAM,CAACtE,MAAM,CAACuE,yBAAyB,CAAC,CAAC,EAChEvI,MAAM,CAACwI,YAAY,CAAC;MAClBC,OAAO,EAAE,iBAAiB;MAC1BC,MAAM,EAAE,UAAU;MAClBC,KAAK,EAAE,mBAAmB;MAC1BC,MAAM,EAAEhC;KACT,CAAC,EACF5G,MAAM,CAAC6I,aAAa,EACpB7I,MAAM,CAACsH,MAAM,CAAC9C,aAAa,CAAC,CAC7B;IAED;IACA,OAAOsD,gBAAgB,CAACC,IAAI,CAACE,IAAI,CAC/BjI,MAAM,CAACyJ,KAAK,CAACzF,MAAM,CAACuE,yBAAyB,CAAC,EAC9CvI,MAAM,CAAC0J,OAAO,EACd1J,MAAM,CAAC6I,aAAa,EACpB7I,MAAM,CAACsH,MAAM,CAAC9C,aAAa,CAAC,CAC7B;IAED;IACA,MAAM2J,qBAAqB,GAAGxN,cAAc,CAACwE,KAAK,EAG9C;IACJ,MAAMwJ,uBAAuB,GAAIQ,mBAAiD,IAAI;MACpF,MAAMrJ,OAAO,GAAGqJ,mBAAmB,CAACtC,QAAQ,CAAC/G,OAAO;MACpD,MAAMoI,eAAe,GAAGvN,cAAc,CAACyC,GAAG,CAAC+K,qBAAqB,EAAErI,OAAO,CAAC;MAC1E,IAAIjF,MAAM,CAACkF,MAAM,CAACmI,eAAe,CAAC,EAAE;QAClCA,eAAe,CAAChI,KAAK,CAACkI,WAAW,CAACjH,GAAG,CAACgI,mBAAmB,CAACtC,QAAQ,CAACC,SAAS,CAAC;QAC7E,OAAO9M,MAAM,CAACmJ,IAAI;MACpB;MACAxI,cAAc,CAAC0C,GAAG,CAAC8K,qBAAqB,EAAErI,OAAO,EAAE;QACjDsI,WAAW,EAAE,IAAI/I,GAAG,CAAC,CAAC8J,mBAAmB,CAACtC,QAAQ,CAACC,SAAS,CAAC,CAAC;QAC9DuB,UAAU,EAAE,IAAIpJ,GAAG;OACpB,CAAC;MACF,OAAOmK,2BAA2B,CAACtJ,OAAO,CAAC;IAC7C,CAAC;IACD,MAAMsJ,2BAA2B,GAAGpP,MAAM,CAAC2K,UAAU,CACnD,WAAU7E,OAAsB;MAC9B,MAAMkE,KAAK,GAAGhF,cAAc,CAAC5B,GAAG,CAAC0C,OAAO,CAACiH,UAAU,CAAC;MACpD,IAAI,CAAC/C,KAAK,EAAE;QACVrJ,cAAc,CAACuL,MAAM,CAACiC,qBAAqB,EAAErI,OAAO,CAAC;QACrD;MACF;MAEA,MAAMoI,eAAe,GAAGrN,MAAM,CAACwO,UAAU,CAAC1O,cAAc,CAACyC,GAAG,CAAC+K,qBAAqB,EAAErI,OAAO,CAAC,CAAC;MAC7F,IAAIwJ,IAAI,GAAG,KAAK;MAEhB,OAAO,CAACA,IAAI,EAAE;QACZ;QACA,IAAI,CAAChK,cAAc,CAACnC,GAAG,CAAC2C,OAAO,CAACa,OAAO,CAAC,EAAE;UACxC;QACF;QAEA;QACA,MAAM4I,UAAU,GAAG3P,GAAG,CAACuF,KAAK,EAAuB;QACnD,KAAK,MAAM0I,EAAE,IAAIK,eAAe,CAACE,WAAW,EAAE;UAC5C,IAAImB,UAAU,CAAC1H,MAAM,KAAK,IAAI,EAAE;UAChC0H,UAAU,CAACC,IAAI,CAAC3B,EAAE,CAAC;QACrB;QAEA,MAAMT,QAAQ,GAAG,OAAOzI,OAAO,CAAC8K,uBAAuB,CAACF,UAAU,CAAC;QAEnE;QACA,IAAInC,QAAQ,CAACvF,MAAM,KAAK,CAAC,EAAE;UACzB,OAAO7H,MAAM,CAACgI,KAAK,CAAChE,MAAM,CAACuE,yBAAyB,CAAC;UACrD;QACF;QAEA,IAAIiF,KAAK,GAAG,CAAC;QAEb,MAAMkC,aAAa,GAGf1P,MAAM,CAAC2P,SAAS,CAClB3P,MAAM,CAAC8I,OAAO,CAAC,MAAK;UAClB,IAAI,CAACxD,cAAc,CAACnC,GAAG,CAAC2C,OAAO,CAACa,OAAO,CAAC,EAAE;YACxC,OAAO3G,MAAM,CAAC4P,IAAI,CAAC,IAAIC,uCAAyB,CAAC;cAAE/J;YAAO,CAAE,CAAC,CAAC;UAChE;UAEA,MAAM8G,OAAO,GAAGQ,QAAQ,CAACI,KAAK,CAAC;UAC/B;UACA,MAAMsC,SAAS,GAAGlD,OAAO,CAACa,IAAI,KAAK,iBAAiB,IAClDS,eAAe,CAACG,UAAU,CAACjL,GAAG,CAACwJ,OAAO,CAACC,QAAQ,CAACC,SAAS,CAAC;UAC5D,OAAOgD,SAAS,GACd9P,MAAM,CAACgJ,OAAO,CAACgB,KAAK,CAACC,OAAO,CAACsD,IAAI,CAACX,OAAO,CAAC,EAAE,MAAK;YAC/CsB,eAAe,CAACG,UAAU,CAACnH,MAAM,CAAC0F,OAAO,CAACC,QAAQ,CAACC,SAAS,CAAC;YAC7D,OAAO9C,KAAK,CAACC,OAAO,CAACsD,IAAI,CAACuC,SAAS,CAAC;UACtC,CAAC,CAAC,GACF9F,KAAK,CAACC,OAAO,CAACsD,IAAI,CAACX,OAAO,CAAC;QAC/B,CAAC,CAAC,EACF;UACEmD,WAAW,EAAEA,CAAA,KAAM/P,MAAM,CAACyJ,KAAK,CAACiG,aAAa,EAAE1L,MAAM,CAACgM,iBAAiB,CAAC;UACxEC,wBAAwB,EAAEA,CAAA,KAAMjQ,MAAM,CAACmJ;SACxC,CACF;QAED,OAAOnJ,MAAM,CAAC4O,SAAS,CAAC;UACtBC,KAAK,EAAEA,CAAA,KAAMrB,KAAK,GAAGJ,QAAQ,CAACvF,MAAM;UACpCkH,IAAI,EAAE,IAAA3C,kBAAQ,EAACsD,aAAa,CAAC;UAC7BZ,IAAI,EAAEA,CAAA,KAAMtB,KAAK;SAClB,CAAC;QAEF,KAAK,MAAMK,EAAE,IAAI0B,UAAU,EAAE;UAC3BrB,eAAe,CAACE,WAAW,CAAClH,MAAM,CAAC2G,EAAE,CAAC;QACxC;QACA,IAAIK,eAAe,CAACE,WAAW,CAAC/G,IAAI,GAAG,CAAC,EAAE;QAE1C;QACA,OAAOiF,mBAAmB,CAACtM,MAAM,CAACkQ,IAAI,CAAC,MAAK;UAC1C,IAAIhC,eAAe,CAACE,WAAW,CAAC/G,IAAI,KAAK,CAAC,EAAE;YAC1C1G,cAAc,CAACuL,MAAM,CAACiC,qBAAqB,EAAErI,OAAO,CAAC;YACrDwJ,IAAI,GAAG,IAAI;UACb;QACF,CAAC,CAAC,CAAC;MACL;IACF,CAAC,EACDtP,MAAM,CAACoJ,KAAK,CAAC;MACXyF,KAAK,EAAGrM,CAAC,IAAKA,CAAC,CAACiL,IAAI,KAAK,kBAAkB;MAC3CnE,QAAQ,EAAEtI,QAAQ,CAACsH,MAAM,CAACtE,MAAM,CAACuE,yBAAyB;KAC3D,CAAC,EACFvI,MAAM,CAACkI,aAAa,CAAEC,KAAK,IAAKnI,MAAM,CAACuJ,QAAQ,CAAC,uCAAuC,EAAEpB,KAAK,CAAC,CAAC,EAChG,CAACgI,MAAM,EAAErK,OAAO,KACd9F,MAAM,CAACwI,YAAY,CAAC2H,MAAM,EAAE;MAC1B1H,OAAO,EAAE,iBAAiB;MAC1BC,MAAM,EAAE,UAAU;MAClBC,KAAK,EAAE,+BAA+B;MACtCC,MAAM,EAAEhC,WAAW;MACnBwJ,MAAM,EAAEtK;KACT,CAAC,EACJ,CAACqK,MAAM,EAAErK,OAAO,KACd9F,MAAM,CAACkP,QAAQ,CACbiB,MAAM,EACNnQ,MAAM,CAACkQ,IAAI,CAAC,MAAMvP,cAAc,CAACuL,MAAM,CAACiC,qBAAqB,EAAErI,OAAO,CAAC,CAAC,CACzE,EACH9F,MAAM,CAAC6I,aAAa,EACpB7I,MAAM,CAACsH,MAAM,CAAC9C,aAAa,CAAC,CAC7B;EACH;EAEA;EAEA,MAAM6L,SAAS,GACbzD,OAAU,IASV5M,MAAM,CAAC8I,OAAO,CAAC,MAAK;IAClB,MAAMhD,OAAO,GAAG8G,OAAO,CAACC,QAAQ,CAAC/G,OAAO;IACxC,IAAI,CAACY,qBAAqB,CAACZ,OAAO,CAAC,EAAE;MACnC,OAAO9F,MAAM,CAAC4P,IAAI,CAAC,IAAIC,uCAAyB,CAAC;QAAE/J;MAAO,CAAE,CAAC,CAAC;IAChE;IACA,MAAMkE,KAAK,GAAGhF,cAAc,CAAC5B,GAAG,CAAC0C,OAAO,CAACiH,UAAU,CAAC;IACpD,IAAI,CAAC/C,KAAK,EAAE;MACV,OAAOhK,MAAM,CAAC4P,IAAI,CAAC,IAAI5B,sCAAwB,CAAC;QAAElI;MAAO,CAAE,CAAC,CAAC;IAC/D;IAEA,OAAO8G,OAAO,CAACa,IAAI,KAAK,iBAAiB,IAAIb,OAAO,CAACa,IAAI,KAAK,kBAAkB,GAC9EzD,KAAK,CAACC,OAAO,CAACsD,IAAI,CAACX,OAAO,CAAC,GAC3B1I,OAAO,CAACmM,SAAS,CAAC;MAChBzD,OAAO;MACPW,IAAI,EAAEvD,KAAK,CAACC,OAAO,CAACoG,SAAS;MAC7BC,2BAA2B,EAAEtM,MAAM,CAACsM;KACrC,CAAQ;EACb,CAAC,CAAC;EAEJ,MAAMC,WAAW,GAAGA,CAClB3D,OAAU,EACVxC,OAAgB,KAEhBpK,MAAM,CAAC8I,OAAO,CACZ,MAMI;IACF,MAAMhD,OAAO,GAAG8G,OAAO,CAACC,QAAQ,CAAC/G,OAAO;IACxC,IAAI,CAACY,qBAAqB,CAACZ,OAAO,CAAC,EAAE;MACnC,OAAO9F,MAAM,CAAC4P,IAAI,CAAC,IAAIC,uCAAyB,CAAC;QAAE/J;MAAO,CAAE,CAAC,CAAC;IAChE,CAAC,MAAM,IAAI,CAACd,cAAc,CAAC7B,GAAG,CAAC2C,OAAO,CAACiH,UAAU,CAAC,EAAE;MAClD,OAAO/M,MAAM,CAAC4P,IAAI,CAAC,IAAI5B,sCAAwB,CAAC;QAAElI;MAAO,CAAE,CAAC,CAAC;IAC/D;IAEA,MAAM0K,MAAM,GAAG5L,cAAc,GACzBuH,oBAAoB,GACpB,MAAMnM,MAAM,CAACiL,UAAU,CAAC,2CAA2C,CAAC;IAExE,IAAI2B,OAAO,CAACa,IAAI,KAAK,iBAAiB,IAAIb,OAAO,CAACa,IAAI,KAAK,kBAAkB,EAAE;MAC7E,IAAIb,OAAO,CAACa,IAAI,KAAK,iBAAiB,IAAIlB,uBAAuB,CAACK,OAAO,CAAC,EAAE;QAC1E,OAAO5M,MAAM,CAAC4P,IAAI,CAAC,IAAIK,sCAAwB,CAAC;UAAEnK,OAAO;UAAE2K,UAAU,EAAE7D,OAAO,CAACC,QAAQ,CAACC;QAAS,CAAE,CAAC,CAAC;MACvG;MACA,OAAO0D,MAAM,EAAE;IACjB;IAEA,OAAOtM,OAAO,CAACqM,WAAW,CAAC;MAAE3D,OAAO;MAAE4D,MAAM;MAAEpG;IAAO,CAAE,CAAQ;EACjE,CAAC,CACF;EAEH,MAAMsG,gBAAgB,GAAG5P,SAAS,CAAC6P,EAAE,CAACC,+BAAiB,CAACC,EAAE,EAAEhB,uCAAyB,CAACgB,EAAE,CAAC;EACzF,SAASC,YAAYA,CACnBlE,OAA8B,EAC9BxC,OAAgB,EAChB2G,OAAgB;IAKhB,OAAO/Q,MAAM,CAACgR,OAAO,CACnBhR,MAAM,CAAC8I,OAAO,CAAC,MAAK;MAClB,MAAMhD,OAAO,GAAG8G,OAAO,CAACC,QAAQ,CAAC/G,OAAO;MACxC,MAAMmL,WAAW,GAAGtQ,cAAc,CAACyC,GAAG,CAAC8B,gBAAgB,EAAEY,OAAO,CAACa,OAAO,CAAC;MACzE,MAAMuK,WAAW,GAAGpR,OAAO,CAACsD,GAAG,CAACwJ,OAAO,CAACuE,GAAG,CAACC,WAAW,EAAEC,wBAAS,CAAC;MACnE,IAAIH,WAAW,IAAI,CAACtM,cAAc,EAAE;QAClC,OAAO5E,MAAM,CAACiL,UAAU,CAAC,kEAAkE,CAAC;MAC9F;MACA,MAAMqG,aAAa,GAAGzQ,MAAM,CAACkF,MAAM,CAACkL,WAAW,CAAC,IAAIpL,aAAa,CAACoL,WAAW,CAAC/K,KAAK,CAAC;MACpF,IAAIgL,WAAW,EAAE;QACf,OAAOI,aAAa,GAChBf,WAAW,CAAC3D,OAAO,EAAExC,OAAO,CAAC,GAC7BlG,OAAO,CAACsM,MAAM,CAAC;UAAE1K,OAAO,EAAEmL,WAAW;UAAErE,OAAO;UAAExC;QAAO,CAAE,CAAC;MAChE,CAAC,MAAM,IAAIvJ,MAAM,CAAC2N,MAAM,CAACyC,WAAW,CAAC,EAAE;QACrC,OAAOjR,MAAM,CAAC4P,IAAI,CAAC,IAAIC,uCAAyB,CAAC;UAAE/J;QAAO,CAAE,CAAC,CAAC;MAChE;MACA,OAAOwL,aAAa,GAChBjB,SAAS,CAACzD,OAAO,CAAC,GAClB1I,OAAO,CAACqJ,IAAI,CAAC;QAAEzH,OAAO,EAAEmL,WAAW,CAAC/K,KAAK;QAAE0G;MAAO,CAAE,CAAC;IAC3D,CAAC,CAAC,EACF8D,gBAAgB,EACfpC,KAAK,IAAI;MACR,IAAIyC,OAAO,KAAK,CAAC,EAAE;QACjB,OAAO/Q,MAAM,CAACuR,GAAG,CAACjD,KAAK,CAAC;MAC1B;MACA,OAAOtO,MAAM,CAACyJ,KAAK,CAACqH,YAAY,CAAClE,OAAO,EAAExC,OAAO,EAAE2G,OAAO,IAAIA,OAAO,GAAG,CAAC,CAAC,EAAE/M,MAAM,CAACgM,iBAAiB,CAAC;IACvG,CAAC,CACF;EACH;EAEA,MAAMwB,KAAK,GAA8BxR,MAAM,CAAC2K,UAAU,CACxD,WAAUmC,SAAS;IACjB,OAAOnI,OAAO,CAAC8M,YAAY,CAAC3E,SAAS,CAAC;IACtCL,cAAc,CAACvF,MAAM,CAAC4F,SAAS,CAAC;EAClC,CAAC,EACD9M,MAAM,CAAC0R,UAAU,CAAC;IAChBC,SAAS,EAAEA,CAAA,KAAM,IAAI;IACrBC,SAAS,EAAEA,CAAA,KAAM;GAClB,CAAC,CACH;EAED;EAEA,MAAMC,wBAAwB,GAAG,OAAOzR,WAAW,CAAC0D,IAAI,EAAE,CAACmE,IAAI,CAC7DhH,KAAK,CAAC6Q,MAAM,CAACtN,aAAa,CAAC,CAC5B;EACD,MAAMuN,wBAAwB,GAAG3R,WAAW,CAACyK,GAAG,CAC9CgH,wBAAwB,EACxB7R,MAAM,CAACgJ,OAAO,CAAChJ,MAAM,CAACgI,KAAK,CAAChE,MAAM,CAACgO,8BAA8B,CAAC,EAAE,MAAK;IACvErR,cAAc,CAAC2J,KAAK,CAACpF,gBAAgB,CAAC;IACtC,OAAOsE,eAAe;EACxB,CAAC,CAAC,EACF;IAAEyI,aAAa,EAAE;EAAI,CAAE,CACxB;EACD,MAAMC,uBAAuB,GAAG9R,WAAW,CAACkK,KAAK,CAACuH,wBAAwB,CAAC;EAE3E;EACA;EACA,OAAO7R,MAAM,CAAC+D,GAAG,CAAC,aAAS;IACzB,OAAO/D,MAAM,CAAC4L,QAAQ,CAAC,gCAAgC,CAAC;IACxD,IAAI/K,MAAM,CAACkF,MAAM,CAAC/B,MAAM,CAACgC,aAAa,CAAC,EAAE;MACvC,MAAMmM,SAAS,GAAG,OAAO/N,YAAY,CAACgO,QAAQ,CAACpO,MAAM,CAACgC,aAAa,CAACE,KAAK,CAAC;MAC1E,OAAO5B,YAAY,CAAC+N,YAAY,CAACF,SAAS,CAAC;IAC7C;IAEA,OAAOD,uBAAuB;IAE9B,OAAOlS,MAAM,CAAC4L,QAAQ,CAAC,gCAAgC,CAAC;IACxD,MAAM0G,OAAO,GAAG,OAAOlO,YAAY,CAACmO,cAAc;IAClD,MAAMC,YAAY,GAAG,OAAOzS,QAAQ,CAAC+D,IAAI,EAAQ;IAEjD,MAAM2O,WAAW,GAAG,OAAOzS,MAAM,CAAC+D,GAAG,CAAC,aAAS;MAC7C,OAAO,IAAI,EAAE;QACX,MAAM,CAAC0B,MAAM,CAAC,GAAG,OAAO6M,OAAO,CAACI,OAAO;QACvC,KAAK,MAAMC,KAAK,IAAIlN,MAAM,EAAE;UAC1B,OAAOzF,MAAM,CAAC4L,QAAQ,CAAC,yBAAyB,EAAE+G,KAAK,CAAC;UAExD,QAAQA,KAAK,CAAClF,IAAI;YAChB,KAAK,eAAe;cAAE;gBACpB,OAAO1N,QAAQ,CAACuP,IAAI,CAACkD,YAAY,EAAEtS,IAAI,CAACiJ,IAAI,CAAC;gBAC7C;cACF;YACA,KAAK,gBAAgB;cAAE;gBACrB,KAAK,MAAMyJ,KAAK,IAAID,KAAK,CAACE,MAAM,EAAE;kBAChClS,cAAc,CAAC0C,GAAG,CAAC6B,gBAAgB,EAAE0N,KAAK,EAAED,KAAK,CAAC7M,OAAO,CAAC;gBAC5D;gBACA,IAAI,CAAClF,UAAU,CAACwC,GAAG,CAACsB,UAAU,CAAC,IAAImB,aAAa,CAAC8M,KAAK,CAAC7M,OAAO,CAAC,EAAE;kBAC/D,KAAK,MAAMa,OAAO,IAAIgM,KAAK,CAACE,MAAM,EAAE;oBAClC,IAAIzN,UAAU,CAACjC,GAAG,CAACwD,OAAO,CAAC,EAAE;oBAC7BvB,UAAU,CAAC+B,GAAG,CAACR,OAAO,CAAC;kBACzB;kBACA,OAAOpB,iBAAiB,CAACwC,IAAI;gBAC/B;gBACA;cACF;YACA,KAAK,kBAAkB;cAAE;gBACvB,KAAK,MAAM6K,KAAK,IAAID,KAAK,CAACE,MAAM,EAAE;kBAChClS,cAAc,CAACuL,MAAM,CAAChH,gBAAgB,EAAE0N,KAAK,CAAC;gBAChD;gBACA,IAAI/M,aAAa,CAAC8M,KAAK,CAAC7M,OAAO,CAAC,EAAE;kBAChC,KAAK,MAAM8M,KAAK,IAAID,KAAK,CAACE,MAAM,EAAE;oBAChCzN,UAAU,CAAC8B,MAAM,CAAC0L,KAAK,CAAC;kBAC1B;kBACA,OAAOrN,iBAAiB,CAACwC,IAAI;gBAC/B;gBACA;cACF;UACF;QACF;MACF;IACF,CAAC,CAAC,CAACE,IAAI,CACLjI,MAAM,CAAC8S,YAAY,CAACN,YAAY,CAAC,EACjCxS,MAAM,CAAC+S,UAAU,CAClB;IAED;IACA,OAAOhT,QAAQ,CAACkH,KAAK,CAACuL,YAAY,CAAC;IAEnC;IACA,MAAMQ,SAAS,GAAG,OAAOC,eAAe,CAAChL,IAAI,CAC3CjI,MAAM,CAACkJ,OAAO,CAAClJ,MAAM,CAACgI,KAAK,CAAChE,MAAM,CAACkP,0BAA0B,CAAC,CAAC,EAC/DlT,MAAM,CAAC0J,OAAO,EACd1J,MAAM,CAAC+S,UAAU,CAClB;IAED,OAAO5S,KAAK,CAACgT,OAAO,CAAC,CAACV,WAAW,EAAEO,SAAS,CAAC,CAAC;EAChD,CAAC,CAAC,CAAC/K,IAAI,CACLjI,MAAM,CAACuL,MAAM,EACbvL,MAAM,CAACkI,aAAa,CAAEC,KAAK,IAAKnI,MAAM,CAAC4L,QAAQ,CAACzD,KAAK,CAAC,CAAC,EACvDnI,MAAM,CAACoT,QAAQ,CAACrB,wBAAwB,CAAC,EACzC/R,MAAM,CAACqI,MAAM,CACXrH,QAAQ,CAACqS,WAAW,CAAC,IAAI,CAAC,CAACpL,IAAI,CAC7BjH,QAAQ,CAACsS,KAAK,CAACtS,QAAQ,CAACsH,MAAM,CAAC,MAAM,CAAC,CAAC,CACxC,CACF,EACDtI,MAAM,CAACwI,YAAY,CAAC;IAClBC,OAAO,EAAE,iBAAiB;IAC1BC,MAAM,EAAE,UAAU;IAClBC,KAAK,EAAE,mBAAmB;IAC1BC,MAAM,EAAE5E,MAAM,CAACgC;GAChB,CAAC,EACFhG,MAAM,CAAC6I,aAAa,EACpB7I,MAAM,CAACsH,MAAM,CAAC9C,aAAa,CAAC,CAC7B;EAED,MAAMyO,eAAe,GAAGjT,MAAM,CAAC+D,GAAG,CAAC,aAAS;IAC1C,MAAMwP,WAAW,GAAG,OAAOnP,YAAY,CAACoP,cAAc;IACtD,OAAOxT,MAAM,CAAC4L,QAAQ,CAAC,4BAA4B,EAAE2H,WAAW,CAAC;IAEjE,KAAK,MAAM,CAAC5M,OAAO,EAAEiC,MAAM,CAAC,IAAI2K,WAAW,EAAE;MAC3C,IAAI1S,MAAM,CAAC2N,MAAM,CAAC5F,MAAM,CAAC,EAAE;QACzBjI,cAAc,CAACuL,MAAM,CAAChH,gBAAgB,EAAEyB,OAAO,CAAC;QAChDvB,UAAU,CAAC8B,MAAM,CAACP,OAAO,CAAC;QAC1B;MACF;MAEAhG,cAAc,CAAC0C,GAAG,CAAC6B,gBAAgB,EAAEyB,OAAO,EAAEiC,MAAM,CAAC1C,KAAK,CAAC;MAE3D,IAAI,CAACL,aAAa,CAAC+C,MAAM,CAAC1C,KAAK,CAAC,EAAE;QAChCd,UAAU,CAAC8B,MAAM,CAACP,OAAO,CAAC;QAC1B;MACF;MACA,IAAI/F,UAAU,CAACwC,GAAG,CAACsB,UAAU,CAAC,IAAIU,UAAU,CAACjC,GAAG,CAACwD,OAAO,CAAC,EAAE;QACzD;MACF;MACAvB,UAAU,CAAC+B,GAAG,CAACR,OAAO,CAAC;IACzB;IAEA,OAAOpB,iBAAiB,CAACwC,IAAI;EAC/B,CAAC,CAAC;EASF,MAAM0L,cAAc,GAAG,IAAIxO,GAAG,EAA2C;EAEzE,MAAMyO,OAAO,GAOT,OAAOC,wBAAW,CAAC7P,IAAI,CAAC9D,MAAM,CAAC2K,UAAU,CAAC,WAAUyF,MAAmB;IACzE,MAAMwD,MAAM,GAAG,OAAOpU,SAAS,CAACqU,mBAAmB,CAACzD,MAAM,CAAC0D,QAAQ,EAAE;MACnEC,UAAU,EAAE,GAAG3D,MAAM,CAAC4D,IAAI,SAAS;MACnCC,WAAW,EAAE,IAAI;MACjBC,iBAAiB,EAAEA,CAAA,KAAM,IAAAC,qBAAS,EAAC7P,YAAY,CAACwJ,UAAU,EAAE,CAAC;MAC7DsG,YAAYA,CAACC,OAAO;QAIlB,MAAMvO,OAAO,GAAGhG,OAAO,CAACwU,SAAS,CAACD,OAAO,CAACnJ,OAAO,EAAEqJ,gBAAgB,CAAC;QACpE,QAAQF,OAAO,CAACzH,OAAO,CAACa,IAAI;UAC1B,KAAK,SAAS;YAAE;cACd,MAAM9E,KAAK,GAAG9H,MAAM,CAACwO,UAAU,CAAClP,KAAK,CAACqU,eAAe,EAAE,CAAC;cACxD,MAAM3G,EAAE,GAAGtL,SAAS,CAACA,SAAS,CAAC8R,OAAO,CAACzH,OAAO,CAACiB,EAAE,CAAC;cAClD,MAAMsD,GAAG,GAAGf,MAAM,CAAC0D,QAAQ,CAACW,QAAQ,CAACrR,GAAG,CAACiR,OAAO,CAACzH,OAAO,CAAC8H,GAAG,CAAE;cAC9D,IAAIhH,OAAyD;cAC7D,IAAI,CAAC2G,OAAO,CAACjK,OAAO,EAAE;gBACpB,MAAMuK,KAAK,GAAuB;kBAChCxD,GAAG,EAAEA,GAAU;kBACfjG,OAAO,EAAEvC,KAAK,CAACiM;iBAChB;gBACDnB,cAAc,CAACpQ,GAAG,CAACwK,EAAE,EAAE8G,KAAK,CAAC;gBAC7BjH,OAAO,GAAGmH,iBAAiB,CAACF,KAAK,EAAEf,MAAM,CAACkB,KAAK,CAAC;cAClD,CAAC,MAAM;gBACLpH,OAAO,GAAGqH,oBAAoB;cAChC;cACA,OAAOjE,YAAY,CACjB,IAAIjP,OAAO,CAACmT,eAAe,CAAC;gBAC1BnI,QAAQ,EAAEtL,QAAQ,CAAC0T,WAAW,CAAC;kBAC7BnI,SAAS,EAAEe,EAAE;kBACb/H,OAAO;kBACP4O,GAAG,EAAEL,OAAO,CAACzH,OAAO,CAAC8H,GAAG;kBACxBQ,OAAO,EAAEb,OAAO,CAACzH,OAAO,CAACsI,OAAO;kBAChCC,OAAO,EAAEd,OAAO,CAACzH,OAAO,CAACuI,OAAO;kBAChCC,OAAO,EAAEf,OAAO,CAACzH,OAAO,CAACwI,OAAO;kBAChCC,MAAM,EAAEhB,OAAO,CAACzH,OAAO,CAACyI,MAAM;kBAC9BC,OAAO,EAAEjB,OAAO,CAACzH,OAAO,CAAC0I;iBAC1B,CAAC;gBACFC,iBAAiB,EAAE1U,MAAM,CAAC2U,IAAI,EAAE;gBAChCrE,GAAG;gBACHjG,OAAO,EAAEvC,KAAK,CAACiM,cAAsC;gBACrDlH;eACD,CAAC,EACF2G,OAAO,CAACjK,OAAO,CAChB;YACH;UACA,KAAK,KAAK;YAAE;cACV,MAAM0C,SAAS,GAAGvK,SAAS,CAACA,SAAS,CAAC8R,OAAO,CAACzH,OAAO,CAACE,SAAS,CAAC;cAChE,MAAM6H,KAAK,GAAGlB,cAAc,CAACrQ,GAAG,CAAC0J,SAAS,CAAC;cAC3C,IAAI,CAAC6H,KAAK,EAAE,OAAO3U,MAAM,CAACmJ,IAAI;cAC9B,OAAO2H,YAAY,CACjB,IAAIjP,OAAO,CAAC4T,gBAAgB,CAAC;gBAC3B5I,QAAQ,EAAE,IAAItL,QAAQ,CAACmU,QAAQ,CAAC;kBAC9B7H,EAAE,EAAEvJ,YAAY,CAACwJ,UAAU,EAAE;kBAC7BhI,OAAO;kBACPgH,SAAS;kBACT6I,OAAO,EAAEhB,KAAK,CAACiB;iBAChB,CAAC;gBACFzE,GAAG,EAAEwD,KAAK,CAACxD;eACZ,CAAC,EACF,KAAK,CACN;YACH;UACA,KAAK,WAAW;YAAE;cAChB,MAAMrE,SAAS,GAAGvK,SAAS,CAACA,SAAS,CAAC8R,OAAO,CAACzH,OAAO,CAACE,SAAS,CAAC;cAChE,MAAM6H,KAAK,GAAGlB,cAAc,CAACrQ,GAAG,CAAC0J,SAAS,CAAE;cAC5C,IAAI,CAAC6H,KAAK,EAAE,OAAO3U,MAAM,CAACmJ,IAAI;cAC9BsK,cAAc,CAACvM,MAAM,CAAC4F,SAAS,CAAC;cAChC,IAAIhN,OAAO,CAACsD,GAAG,CAACuR,KAAK,CAACxD,GAAG,CAACC,WAAW,EAAEyE,8BAAe,CAAC,EAAE;gBACvD,OAAO7V,MAAM,CAACmJ,IAAI;cACpB;cACA;cACA;cACA,MAAM2M,oBAAoB,GAAGlV,UAAU,CAACwC,GAAG,CAACsB,UAAU,CAAC,IACrD2P,OAAO,CAACzH,OAAO,CAACmJ,YAAY,CAACC,IAAI,CAAEnI,EAAE,IAAK7B,kCAAoB,CAAC7I,GAAG,CAAC0K,EAAE,CAAC,CAAC;cACzE,IAAIiI,oBAAoB,IAAIhW,OAAO,CAACsD,GAAG,CAACuR,KAAK,CAACxD,GAAG,CAACC,WAAW,EAAEC,wBAAS,CAAC,EAAE;gBACzE,OAAOrR,MAAM,CAACmJ,IAAI;cACpB;cACA,OAAOnJ,MAAM,CAAC8G,MAAM,CAACgK,YAAY,CAC/B,IAAIjP,OAAO,CAAC4T,gBAAgB,CAAC;gBAC3B5I,QAAQ,EAAE,IAAItL,QAAQ,CAAC0U,SAAS,CAAC;kBAC/BpI,EAAE,EAAEvJ,YAAY,CAACwJ,UAAU,EAAE;kBAC7BhI,OAAO;kBACPgH;iBACD,CAAC;gBACFqE,GAAG,EAAEwD,KAAK,CAACxD;eACZ,CAAC,EACF,KAAK,EACL,CAAC,CACF,CAAC;YACJ;QACF;QACA,OAAOnR,MAAM,CAACmJ,IAAI;MACpB;KACD,CAAC;IAEF,MAAM+M,aAAa,GAAQ,EAAE;IAC7B,KAAK,MAAMC,MAAM,IAAI3S,MAAM,CAAC4S,IAAI,CAACxC,MAAM,CAACA,MAAM,CAAC,EAAE;MAC/CsC,aAAa,CAACC,MAAM,CAAC,GAAG,UAAoBjB,OAAY,EAAEb,OAEzD;QACC,OAAQT,MAAc,CAACA,MAAM,CAACuC,MAAM,CAAC,CAACjB,OAAO,EAAE;UAC7C,GAAGb,OAAO;UACVnJ,OAAO,EAAEmJ,OAAO,EAAEnJ,OAAO,GACrBpL,OAAO,CAACuW,KAAK,CAAChC,OAAO,CAACnJ,OAAO,EAAE,IAAI,CAACoL,oBAAoB,CAAC,CAAC,GAC1D,IAAI,CAACA,oBAAoB;SAC9B,CAAC;MACJ,CAAC;IACH;IAEA,OAAOrV,KAAK,CAAC0L,YAAY,CACvB,OAAO3M,MAAM,CAACyE,KAAK,EACnBzE,MAAM,CAACuW,gBAAgB,CAAE5N,KAAK,IAAI;MAChCqD,kCAAoB,CAAC7E,GAAG,CAACwB,KAAK,CAACkF,EAAE,EAAE,CAAC;MACpC,OAAO7N,MAAM,CAACmJ,IAAI;IACpB,CAAC,CAAC,CACH;IAED,OAAQ/C,QAAgB,IAAI;MAC1B,MAAMyH,EAAE,GAAG9C,kBAAQ,CAACjH,IAAI,CAACsC,QAAQ,CAAC;MAClC,OAAO;QACL,GAAG8P,aAAa;QAChB,CAACI,oBAAoB,GAAG/B,gBAAgB,CAACrJ,OAAO,CAACsL,4BAAa,CAAC1S,IAAI,CAAC;UAClE6C,OAAO,EAAER,UAAU,CAAC0H,EAAE,CAAC;UACvBzH,QAAQ,EAAEyH,EAAE;UACZd,UAAU,EAAEqD,MAAM,CAAC4D;SACpB,CAAC;OACH;IACH,CAAC;EACH,CAAC,CAAC,CAAC;EAEH,MAAMyC,UAAU,GAA0BrG,MAAoB,IAEzDsD,OAAO,CAACtQ,GAAG,CAACgN,MAAM,CAAC;EAExB,MAAM2E,oBAAoB,GAAI2B,MAAwB,IAAK1W,MAAM,CAACmJ,IAAI;EAEtE,MAAM0L,iBAAiB,GAAGA,CACxBF,KAAyB,EACzBG,KAAsD,KAEvD6B,KAAuB,IAAI;IAC1B,QAAQA,KAAK,CAAClJ,IAAI;MAChB,KAAK,OAAO;QAAE;UACZkH,KAAK,CAACiB,WAAW,GAAGe,KAAK,CAAC9I,EAAE;UAC5B,OAAOiH,KAAK,CAAC;YACXrH,IAAI,EAAE,OAAO;YACbmJ,QAAQ,EAAE,CAAC;YACX9J,SAAS,EAAE,IAAAqH,qBAAS,EAACwC,KAAK,CAAC7J,SAAS,CAAC;YACrC/C,MAAM,EAAE4M,KAAK,CAAC5M;WACf,CAAC;QACJ;MACA,KAAK,UAAU;QAAE;UACf0J,cAAc,CAACvM,MAAM,CAACyP,KAAK,CAAC7J,SAAS,CAAC;UACtC,OAAOgI,KAAK,CAAC;YACXrH,IAAI,EAAE,MAAM;YACZmJ,QAAQ,EAAE,CAAC;YACX9J,SAAS,EAAE,IAAAqH,qBAAS,EAACwC,KAAK,CAAC7J,SAAS,CAAC;YACrC+J,IAAI,EAAEF,KAAK,CAACE;WACb,CAAC;QACJ;IACF;EACF,CAAC;EAED;EAEA,MAAM3L,OAAO,GAAG,OAAOlL,MAAM,CAACkL,OAAO,EAAkB;EACvD,MAAM4L,MAAM,GAAG,OAAOC,0BAAY;EAClC,MAAMC,cAAc,GAAuChX,MAAM,CAAC2K,UAAU,CAC1E,WAAUyF,MAAM,EAAE6G,KAAK,EAAE5C,OAAO;IAC9B,IAAIrP,cAAc,CAAC7B,GAAG,CAACiN,MAAM,CAAC4D,IAAI,CAAC,EAAE;IACrC,MAAMvP,KAAK,GAAG,OAAOxD,KAAK,CAAC6C,IAAI,EAAE;IACjC,MAAMmG,OAAO,GAAG,OAAOzI,aAAa,CAACsC,IAAI,CAACsM,MAAM,EAAE6G,KAAK,EAAE;MACvD,GAAG5C,OAAO;MACV1P,OAAO;MACPqB,aAAa,EAAEnF,MAAM,CAACwO,UAAU,CAACrL,MAAM,CAACgC,aAAa,CAAC;MACtDkR;KACD,CAAC,CAACjP,IAAI,CACLjI,MAAM,CAACwL,OAAO,CAACN,OAAO,CAACjD,IAAI,CACzBnI,OAAO,CAACqH,GAAG,CAAC4P,0BAAY,EAAED,MAAM,CAAC,EACjChX,OAAO,CAACqH,GAAG,CAAClG,KAAK,CAACA,KAAK,EAAEwD,KAAK,CAAC,EAC/B3E,OAAO,CAACqH,GAAG,CAAC5E,SAAS,CAACgC,SAAS,EAAED,YAAY,CAAC,CAC/C,CAAC,CAC2C;IAC/CU,cAAc,CAAC3B,GAAG,CAAC+M,MAAM,CAAC4D,IAAI,EAAE;MAC9B5D,MAAM;MACN3L,KAAK;MACLwF;KACD,CAAC;IAEF,OAAOhJ,KAAK,CAAC0L,YAAY,CAAClI,KAAK,EAAEzE,MAAM,CAACkQ,IAAI,CAAC,MAAMlL,cAAc,CAACkC,MAAM,CAACkJ,MAAM,CAAC4D,IAAI,CAAC,CAAC,CAAC;IACvF,OAAOjT,MAAM,CAAC2K,OAAO,CAACjG,MAAM,EAAE,IAAA0R,2CAAgB,EAAC;MAAE/G;IAAM,CAAE,CAAC,CAAC;EAC7D,CAAC,CACF;EAED,OAAOnP,KAAK,CAAC4F,gBAAgB,CAC3BrC,aAAa,EACZqS,IAAI,IACH7W,MAAM,CAAC8J,OAAO,CACZ9E,cAAc,CAAC+E,MAAM,EAAE,EACtBC,KAAK,IACJhK,MAAM,CAACkI,aAAa,CAACjH,KAAK,CAACwG,KAAK,CAACuC,KAAK,CAACvF,KAAK,EAAEoS,IAAI,CAAC,EAAG1O,KAAK,IACzDnI,MAAM,CAACwI,YAAY,CAACxI,MAAM,CAACuJ,QAAQ,CAAC,8BAA8B,EAAEpB,KAAK,CAAC,EAAE;IAC1EiI,MAAM,EAAEpG,KAAK,CAACoG,MAAM,CAAC4D;GACtB,CAAC,CAAC,EACP;IAAE7J,WAAW,EAAE,WAAW;IAAEC,OAAO,EAAE;EAAI,CAAE,CAC5C,CACJ;EAED;EAEA,IAAIvJ,MAAM,CAACkF,MAAM,CAAC/B,MAAM,CAACgC,aAAa,CAAC,EAAE;IACvC,MAAMY,WAAW,GAAG5C,MAAM,CAACgC,aAAa,CAACE,KAAK;IAC9C;IACA,OAAOjF,KAAK,CAAC0L,YAAY,CACvBnI,aAAa,EACbxE,MAAM,CAAC+D,GAAG,CAAC,aAAS;MAClB,OAAO/D,MAAM,CAAC4L,QAAQ,CAAC,yCAAyC,EAAEhF,WAAW,CAAC;MAC9E,OAAOxC,YAAY,CAACgT,UAAU,CAACxQ,WAAW,CAAC,CAACqB,IAAI,CAC9CjI,MAAM,CAACkI,aAAa,CAAEC,KAAK,IAAKnI,MAAM,CAACuJ,QAAQ,CAAC,6CAA6C,EAAEpB,KAAK,CAAC,CAAC,CACvG;MACD,OAAOqB,eAAe;IACxB,CAAC,CAAC,CACH;EACH;EAEA,OAAOvI,KAAK,CAAC0L,YAAY,CACvBnI,aAAa,EACbxE,MAAM,CAACuW,gBAAgB,CAAE5N,KAAK,IAAI;IAChC/H,UAAU,CAACyC,GAAG,CAACqB,UAAU,EAAE,IAAI,CAAC;IAChCsH,kCAAoB,CAAC7E,GAAG,CAACwB,KAAK,CAACkF,EAAE,EAAE,CAAC;IACpC,OAAO7N,MAAM,CAACmJ,IAAI;EACpB,CAAC,CAAC,CACH;EAED,MAAMkO,iBAAiB,GAAGrX,MAAM,CAAC+D,GAAG,CAAC,aAAS;IAC5C,IAAIuT,KAAK,GAAG,CAAC;IACb,KAAK,MAAMtN,KAAK,IAAIhF,cAAc,CAAC+E,MAAM,EAAE,EAAE;MAC3CuN,KAAK,IAAI,OAAOtN,KAAK,CAACC,OAAO,CAACoN,iBAAiB;IACjD;IACA,OAAOC,KAAK;EACd,CAAC,CAAC;EAEF,MAAMJ,QAAQ,GAAGvT,QAAQ,CAAC4T,EAAE,CAAC;IAC3B5R,qBAAqB;IACrBQ,UAAU;IACVzB,UAAU,EAAE1E,MAAM,CAACkQ,IAAI,CAAC,MAAMtP,UAAU,CAACwC,GAAG,CAACsB,UAAU,CAAC,CAAC;IACzDsS,cAAc;IACdtM,iBAAiB;IACjB+L,UAAU;IACVlJ,IAAI,EAAE8C,SAAS;IACfS,YAAY,EAAEA,CAAClE,OAAO,EAAExC,OAAO,KAAK0G,YAAY,CAAClE,OAAO,EAAExC,OAAO,CAAC;IAClEoG,MAAM,EAAG5D,OAAO,IAAK2D,WAAW,CAAC3D,OAAO,EAAE,KAAK,CAAC;IAChDyK,iBAAiB;IACjB7F;GACD,CAAC;EAEF,OAAO0F,QAAQ;AACjB,CAAC,CAAC;AAEF;;;;AAIO,MAAMM,KAAK,GAAA3T,OAAA,CAAA2T,KAAA,gBAId9W,KAAK,CAAC6K,MAAM,CAAC5H,QAAQ,EAAEG,IAAI,CAAC,CAACmE,IAAI,cACnCvH,KAAK,CAAC8K,OAAO,CAAC,CAACjJ,SAAS,CAACkV,cAAc,EAAEV,0BAAY,CAACW,OAAO,CAAC,CAAC,CAChE;AAED;AAEA,MAAMnD,gBAAgB,gBAAGzU,OAAO,CAAC6X,UAAU,CAAgB,wCAAwC,CAAC;AACpG,MAAMrB,oBAAoB,gBAAGsB,MAAM,CAACC,GAAG,CAACtD,gBAAgB,CAACuD,GAAG,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"Sharding.js","names":["RpcClient","_interopRequireWildcard","require","_RpcMessage","Arr","Cause","Context","Deferred","Effect","Equal","Exit","Fiber","FiberHandle","FiberMap","FiberRef","_Function","HashMap","Iterable","Layer","MutableHashMap","MutableHashSet","MutableRef","Option","Predicate","PubSub","Schedule","Scope","Stream","_ClusterError","_ClusterSchema","_EntityAddress","_EntityId","Envelope","EntityManager","_entityReaper","_hash","_interruptors","_resourceMap","Message","MessageStorage","Reply","_Runners","_ShardId","_ShardingConfig","_ShardingRegistrationEvent","_ShardManager","_ShardStorage","_SingletonAddress","Snowflake","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Sharding","Tag","exports","make","gen","config","ShardingConfig","runners","Runners","shardManager","ShardManagerClient","snowflakeGen","Generator","shardingScope","scope","isShutdown","storage","storageEnabled","noop","shardStorage","ShardStorage","entityManagers","Map","shardAssignments","empty","selfShards","acquiredShards","activeShardsLatch","makeLatch","events","unbounded","getRegistrationEvents","fromPubSub","isLocalRunner","address","isSome","runnerAddress","equals","value","getShardId","entityId","group","id","Math","abs","hashString","shardsPerGroup","ShardId","disableValidation","isEntityOnLocalShards","shardId","selfAddress","addFinalizerExit","ignore","releaseAll","releasingShards","await","remove","add","unacquiredShards","size","forkIn","syncSingletons","releaseShards","close","acquired","acquire","resetShards","length","storageReadLatch","open","sleep","pipe","catchAllCause","cause","logWarning","repeat","spaced","entityMessagePollInterval","annotateLogs","package","module","fiber","runner","interruptible","suspend","refresh","flatMap","some","_","symbol","andThen","void","retry","times","schedule","logError","clearSelfShards","delay","forever","releaseShardsLock","unsafeMakeSemaphore","withPermits","forEach","values","state","manager","interruptShard","concurrency","discard","release","clear","singletons","singletonFibers","withSingletonLock","registerSingleton","fnUntraced","name","run","options","shardGroup","SingletonAddress","EntityId","map","dieMessage","context","wrappedRun","locally","currentLogAnnotations","never","scoped","provide","orDie","publish","SingletonRegistered","logDebug","running","unsafeHas","shouldBeRunning","internalInterruptors","fiberId","openStorageReadLatch","constant","storageReadLock","withStorageReadLock","storageAlreadyProcessed","_message","sentRequestIds","Set","sentRequestIdSets","addFinalizer","message","envelope","requestId","entityType","isProcessingFor","excludeReplies","unsafeClose","take","messages","unprocessedMessages","currentSentRequestIds","send","index","_tag","respond","ReplyWithContext","fromDefect","unsafeNext","defect","EntityNotManagedByRunner","isProcessing","resumptionState","entityResumptionState","unprocessed","interrupts","error","failureOption","isNone","saveReply","squash","resumeEntityFromStorage","whileLoop","while","step","body","oldest","unsafeHead","delete","ensuring","lastReceivedMessage","resumeEntityFromStorageImpl","getOrThrow","done","messageIds","push","unprocessedMessagesById","sendWithRetry","catchTags","fail","EntityNotAssignedToRunner","interrupt","MailboxFull","sendRetryInterval","AlreadyProcessingMessage","sync","effect","entity","sendLocal","simulateRemoteSerialization","notifyLocal","notify","envelopeId","isTransientError","or","RunnerUnavailable","is","sendOutgoing","retries","catchIf","maybeRunner","isPersisted","rpc","annotations","Persisted","runnerIsLocal","die","reset","clearReplies","matchCause","onSuccess","onFailure","shardManagerTimeoutFiber","extend","startShardManagerTimeout","shardManagerUnavailableTimeout","onlyIfMissing","stopShardManagerTimeout","machineId","register","shardGroups","setMachineId","mailbox","shardingEvents","startedLatch","eventsFiber","takeAll","event","shard","shards","intoDeferred","forkScoped","syncFiber","syncAssignments","refreshAssignmentsInterval","joinAll","zipRight","exponential","union","assignments","getAssignments","clientRequests","clients","ResourceMap","client","makeNoSerialization","protocol","spanPrefix","type","supportsAck","generateRequestId","RequestId","onFromClient","unsafeGet","ClientAddressTag","getCurrentFiber","requests","tag","entry","currentContext","makeClientRespond","write","clientRespondDiscard","OutgoingRequest","makeRequest","payload","headers","traceId","spanId","sampled","lastReceivedReply","none","OutgoingEnvelope","AckChunk","replyId","lastChunkId","Uninterruptible","isTransientInterrupt","interruptors","Interrupt","wrappedClient","method","keys","merge","currentClientAddress","withFiberRuntime","EntityAddress","getShardGroup","makeClient","_reply","reply","clientId","exit","reaper","EntityReaper","registerEntity","build","sharding","EntityRegistered","unregister","activeEntityCount","count","of","layer","layerGenerator","Default","GenericTag","Symbol","for","key"],"sources":["../../src/Sharding.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -35,13 +35,15 @@ const defaultRunnerAddress = /*#__PURE__*/_RunnerAddress.RunnerAddress.make({
35
35
  */
36
36
  const defaults = exports.defaults = {
37
37
  runnerAddress: /*#__PURE__*/Option.some(defaultRunnerAddress),
38
+ runnerListenAddress: /*#__PURE__*/Option.none(),
38
39
  serverVersion: 1,
39
- numberOfShards: 300,
40
+ shardsPerGroup: 300,
40
41
  shardManagerAddress: /*#__PURE__*/_RunnerAddress.RunnerAddress.make({
41
42
  host: "localhost",
42
43
  port: 8080
43
44
  }),
44
45
  shardManagerUnavailableTimeout: /*#__PURE__*/Duration.minutes(10),
46
+ shardGroups: ["default"],
45
47
  entityMailboxCapacity: 4096,
46
48
  entityMaxIdleTime: /*#__PURE__*/Duration.minutes(1),
47
49
  entityTerminationTimeout: /*#__PURE__*/Duration.seconds(15),
@@ -74,8 +76,13 @@ const config = exports.config = /*#__PURE__*/Config.all({
74
76
  host: Config.string("host").pipe(Config.withDefault(defaultRunnerAddress.host), Config.withDescription("The hostname or IP address of the runner.")),
75
77
  port: Config.integer("port").pipe(Config.withDefault(defaultRunnerAddress.port), Config.withDescription("The port used for inter-runner communication."))
76
78
  }).pipe(/*#__PURE__*/Config.map(options => _RunnerAddress.RunnerAddress.make(options)), Config.option),
79
+ runnerListenAddress: /*#__PURE__*/Config.all({
80
+ host: Config.string("listenHost").pipe(Config.withDefault(defaultRunnerAddress.host), Config.withDescription("The host to listen on.")),
81
+ port: Config.integer("listenPort").pipe(Config.withDefault(defaultRunnerAddress.port), Config.withDescription("The port to listen on."))
82
+ }).pipe(/*#__PURE__*/Config.map(options => _RunnerAddress.RunnerAddress.make(options)), Config.option),
77
83
  serverVersion: /*#__PURE__*/Config.integer("serverVersion").pipe(/*#__PURE__*/Config.withDefault(defaults.serverVersion), /*#__PURE__*/Config.withDescription("The version of the current runner.")),
78
- numberOfShards: /*#__PURE__*/Config.integer("numberOfShards").pipe(/*#__PURE__*/Config.withDefault(defaults.numberOfShards), /*#__PURE__*/Config.withDescription("The number of shards to allocate to a runner.")),
84
+ shardGroups: /*#__PURE__*/Config.array(Config.string("shardGroups")).pipe(/*#__PURE__*/Config.withDefault(["default"]), /*#__PURE__*/Config.withDescription("The shard groups that are assigned to this runner.")),
85
+ shardsPerGroup: /*#__PURE__*/Config.integer("shardsPerGroup").pipe(/*#__PURE__*/Config.withDefault(defaults.shardsPerGroup), /*#__PURE__*/Config.withDescription("The number of shards to allocate per shard group.")),
79
86
  shardManagerAddress: /*#__PURE__*/Config.all({
80
87
  host: Config.string("shardManagerHost").pipe(Config.withDefault(defaults.shardManagerAddress.host), Config.withDescription("The host of the shard manager.")),
81
88
  port: Config.integer("shardManagerPort").pipe(Config.withDefault(defaults.shardManagerAddress.port), Config.withDescription("The port of the shard manager."))
@@ -1 +1 @@
1
- {"version":3,"file":"ShardingConfig.js","names":["Config","_interopRequireWildcard","require","ConfigProvider","Context","Duration","Effect","Layer","Option","_RunnerAddress","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ShardingConfig","Tag","exports","defaultRunnerAddress","RunnerAddress","make","host","port","defaults","runnerAddress","some","serverVersion","numberOfShards","shardManagerAddress","shardManagerUnavailableTimeout","minutes","entityMailboxCapacity","entityMaxIdleTime","entityTerminationTimeout","seconds","entityMessagePollInterval","entityReplyPollInterval","millis","sendRetryInterval","refreshAssignmentsInterval","simulateRemoteSerialization","layer","options","succeed","layerDefaults","config","all","string","pipe","withDefault","withDescription","integer","map","option","duration","boolean","configFromEnv","withConfigProvider","fromEnv","constantCase","layerFromEnv","effect"],"sources":["../../src/ShardingConfig.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"ShardingConfig.js","names":["Config","_interopRequireWildcard","require","ConfigProvider","Context","Duration","Effect","Layer","Option","_RunnerAddress","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ShardingConfig","Tag","exports","defaultRunnerAddress","RunnerAddress","make","host","port","defaults","runnerAddress","some","runnerListenAddress","none","serverVersion","shardsPerGroup","shardManagerAddress","shardManagerUnavailableTimeout","minutes","shardGroups","entityMailboxCapacity","entityMaxIdleTime","entityTerminationTimeout","seconds","entityMessagePollInterval","entityReplyPollInterval","millis","sendRetryInterval","refreshAssignmentsInterval","simulateRemoteSerialization","layer","options","succeed","layerDefaults","config","all","string","pipe","withDefault","withDescription","integer","map","option","array","duration","boolean","configFromEnv","withConfigProvider","fromEnv","constantCase","layerFromEnv","effect"],"sources":["../../src/ShardingConfig.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -16,9 +16,9 @@ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r
16
16
  * @since 1.0.0
17
17
  * @category constructors
18
18
  */
19
- const make = (name, run) => Layer.effectDiscard(Effect.gen(function* () {
19
+ const make = (name, run, options) => Layer.effectDiscard(Effect.gen(function* () {
20
20
  const sharding = yield* _Sharding.Sharding;
21
- yield* sharding.registerSingleton(name, run);
21
+ yield* sharding.registerSingleton(name, run, options);
22
22
  }));
23
23
  exports.make = make;
24
24
  //# sourceMappingURL=Singleton.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Singleton.js","names":["Effect","_interopRequireWildcard","require","Layer","_Sharding","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","make","name","run","effectDiscard","gen","sharding","Sharding","registerSingleton","exports"],"sources":["../../src/Singleton.ts"],"sourcesContent":[null],"mappings":";;;;;;AAGA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,KAAA,GAAAF,uBAAA,CAAAC,OAAA;AAEA,IAAAE,SAAA,GAAAF,OAAA;AAAwC,SAAAD,wBAAAI,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAN,uBAAA,YAAAA,CAAAI,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AANxC;;;;AAQA;;;;AAIO,MAAMkB,IAAI,GAAGA,CAClBC,IAAY,EACZC,GAA8B,KAE9BvB,KAAK,CAACwB,aAAa,CAAC3B,MAAM,CAAC4B,GAAG,CAAC,aAAS;EACtC,MAAMC,QAAQ,GAAG,OAAOC,kBAAQ;EAChC,OAAOD,QAAQ,CAACE,iBAAiB,CAACN,IAAI,EAAEC,GAAG,CAAC;AAC9C,CAAC,CAAC,CAAC;AAAAM,OAAA,CAAAR,IAAA,GAAAA,IAAA","ignoreList":[]}
1
+ {"version":3,"file":"Singleton.js","names":["Effect","_interopRequireWildcard","require","Layer","_Sharding","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","make","name","run","options","effectDiscard","gen","sharding","Sharding","registerSingleton","exports"],"sources":["../../src/Singleton.ts"],"sourcesContent":[null],"mappings":";;;;;;AAGA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,KAAA,GAAAF,uBAAA,CAAAC,OAAA;AAEA,IAAAE,SAAA,GAAAF,OAAA;AAAwC,SAAAD,wBAAAI,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAN,uBAAA,YAAAA,CAAAI,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AANxC;;;;AAQA;;;;AAIO,MAAMkB,IAAI,GAAGA,CAClBC,IAAY,EACZC,GAA8B,EAC9BC,OAEC,KAEDxB,KAAK,CAACyB,aAAa,CAAC5B,MAAM,CAAC6B,GAAG,CAAC,aAAS;EACtC,MAAMC,QAAQ,GAAG,OAAOC,kBAAQ;EAChC,OAAOD,QAAQ,CAACE,iBAAiB,CAACP,IAAI,EAAEC,GAAG,EAAEC,OAAO,CAAC;AACvD,CAAC,CAAC,CAAC;AAAAM,OAAA,CAAAT,IAAA,GAAAA,IAAA","ignoreList":[]}
@@ -36,13 +36,13 @@ class SingletonAddress extends /*#__PURE__*/Schema.Class("@effect/cluster/Single
36
36
  * @since 1.0.0
37
37
  */
38
38
  [Hash.symbol]() {
39
- return Hash.cached(this)(Hash.string(`${this.shardId}:${this.name}`));
39
+ return Hash.cached(this)(Hash.string(`${this.name}:${this.shardId.toString()}`));
40
40
  }
41
41
  /**
42
42
  * @since 1.0.0
43
43
  */
44
44
  [Equal.symbol](that) {
45
- return this.shardId === that.shardId && this.name === that.name;
45
+ return this.name === that.name && this.shardId[Equal.symbol](that.shardId);
46
46
  }
47
47
  }
48
48
  exports.SingletonAddress = SingletonAddress;
@@ -1 +1 @@
1
- {"version":3,"file":"SingletonAddress.js","names":["Equal","_interopRequireWildcard","require","Hash","Schema","_ShardId","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","TypeId","exports","Symbol","for","SingletonAddress","Class","shardId","ShardId","name","NonEmptyTrimmedString","symbol","cached","string","that"],"sources":["../../src/SingletonAddress.ts"],"sourcesContent":[null],"mappings":";;;;;;AAGA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,IAAA,GAAAF,uBAAA,CAAAC,OAAA;AACA,IAAAE,MAAA,GAAAH,uBAAA,CAAAC,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AAAsC,SAAAD,wBAAAK,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAP,uBAAA,YAAAA,CAAAK,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AANtC;;;;AAQA;;;;AAIO,MAAMkB,MAAM,GAAAC,OAAA,CAAAD,MAAA,gBAAkBE,MAAM,CAACC,GAAG,CAAC,kCAAkC,CAAC;AAQnF;;;;;;AAMM,MAAOC,gBAAiB,sBAAQzB,MAAM,CAAC0B,KAAK,CAAmB,kCAAkC,CAAC,CAAC;EACvGC,OAAO,EAAEC,gBAAO;EAChBC,IAAI,EAAE7B,MAAM,CAAC8B;CACd,CAAC;EACA;;;EAGS,CAACT,MAAM,IAAIA,MAAM;EAC1B;;;EAGA,CAACtB,IAAI,CAACgC,MAAM,IAAC;IACX,OAAOhC,IAAI,CAACiC,MAAM,CAAC,IAAI,CAAC,CAACjC,IAAI,CAACkC,MAAM,CAAC,GAAG,IAAI,CAACN,OAAO,IAAI,IAAI,CAACE,IAAI,EAAE,CAAC,CAAC;EACvE;EACA;;;EAGA,CAACjC,KAAK,CAACmC,MAAM,EAAEG,IAAsB;IACnC,OAAO,IAAI,CAACP,OAAO,KAAKO,IAAI,CAACP,OAAO,IAAI,IAAI,CAACE,IAAI,KAAKK,IAAI,CAACL,IAAI;EACjE","ignoreList":[]}
1
+ {"version":3,"file":"SingletonAddress.js","names":["Equal","_interopRequireWildcard","require","Hash","Schema","_ShardId","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","TypeId","exports","Symbol","for","SingletonAddress","Class","shardId","ShardId","name","NonEmptyTrimmedString","symbol","cached","string","toString","that"],"sources":["../../src/SingletonAddress.ts"],"sourcesContent":[null],"mappings":";;;;;;AAGA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,IAAA,GAAAF,uBAAA,CAAAC,OAAA;AACA,IAAAE,MAAA,GAAAH,uBAAA,CAAAC,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AAAsC,SAAAD,wBAAAK,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAP,uBAAA,YAAAA,CAAAK,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AANtC;;;;AAQA;;;;AAIO,MAAMkB,MAAM,GAAAC,OAAA,CAAAD,MAAA,gBAAkBE,MAAM,CAACC,GAAG,CAAC,kCAAkC,CAAC;AAQnF;;;;;;AAMM,MAAOC,gBAAiB,sBAAQzB,MAAM,CAAC0B,KAAK,CAAmB,kCAAkC,CAAC,CAAC;EACvGC,OAAO,EAAEC,gBAAO;EAChBC,IAAI,EAAE7B,MAAM,CAAC8B;CACd,CAAC;EACA;;;EAGS,CAACT,MAAM,IAAIA,MAAM;EAC1B;;;EAGA,CAACtB,IAAI,CAACgC,MAAM,IAAC;IACX,OAAOhC,IAAI,CAACiC,MAAM,CAAC,IAAI,CAAC,CAACjC,IAAI,CAACkC,MAAM,CAAC,GAAG,IAAI,CAACJ,IAAI,IAAI,IAAI,CAACF,OAAO,CAACO,QAAQ,EAAE,EAAE,CAAC,CAAC;EAClF;EACA;;;EAGA,CAACtC,KAAK,CAACmC,MAAM,EAAEI,IAAsB;IACnC,OAAO,IAAI,CAACN,IAAI,KAAKM,IAAI,CAACN,IAAI,IAAI,IAAI,CAACF,OAAO,CAAC/B,KAAK,CAACmC,MAAM,CAAC,CAACI,IAAI,CAACR,OAAO,CAAC;EAC5E","ignoreList":[]}