@effect/cluster 0.40.0 → 0.41.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 (37) hide show
  1. package/dist/cjs/ClusterWorkflowEngine.js.map +1 -1
  2. package/dist/cjs/Entity.js.map +1 -1
  3. package/dist/cjs/EntityProxy.js +2 -3
  4. package/dist/cjs/EntityProxy.js.map +1 -1
  5. package/dist/cjs/EntityProxyServer.js +2 -3
  6. package/dist/cjs/EntityProxyServer.js.map +1 -1
  7. package/dist/cjs/Sharding.js +16 -8
  8. package/dist/cjs/Sharding.js.map +1 -1
  9. package/dist/cjs/internal/entityManager.js.map +1 -1
  10. package/dist/dts/ClusterWorkflowEngine.d.ts.map +1 -1
  11. package/dist/dts/Entity.d.ts +15 -15
  12. package/dist/dts/Entity.d.ts.map +1 -1
  13. package/dist/dts/EntityProxy.d.ts +3 -5
  14. package/dist/dts/EntityProxy.d.ts.map +1 -1
  15. package/dist/dts/EntityProxyServer.d.ts +3 -5
  16. package/dist/dts/EntityProxyServer.d.ts.map +1 -1
  17. package/dist/dts/Sharding.d.ts +2 -2
  18. package/dist/dts/Sharding.d.ts.map +1 -1
  19. package/dist/dts/ShardingRegistrationEvent.d.ts +1 -1
  20. package/dist/dts/ShardingRegistrationEvent.d.ts.map +1 -1
  21. package/dist/esm/ClusterWorkflowEngine.js.map +1 -1
  22. package/dist/esm/Entity.js.map +1 -1
  23. package/dist/esm/EntityProxy.js +2 -3
  24. package/dist/esm/EntityProxy.js.map +1 -1
  25. package/dist/esm/EntityProxyServer.js +2 -3
  26. package/dist/esm/EntityProxyServer.js.map +1 -1
  27. package/dist/esm/Sharding.js +16 -8
  28. package/dist/esm/Sharding.js.map +1 -1
  29. package/dist/esm/internal/entityManager.js.map +1 -1
  30. package/package.json +5 -5
  31. package/src/ClusterWorkflowEngine.ts +1 -0
  32. package/src/Entity.ts +30 -26
  33. package/src/EntityProxy.ts +8 -12
  34. package/src/EntityProxyServer.ts +7 -9
  35. package/src/Sharding.ts +30 -22
  36. package/src/ShardingRegistrationEvent.ts +1 -1
  37. package/src/internal/entityManager.ts +3 -2
@@ -1 +1 @@
1
- {"version":3,"file":"Sharding.js","names":["RpcClient","RequestId","Arr","Cause","Context","Deferred","Effect","Equal","Exit","Fiber","FiberHandle","FiberMap","FiberRef","constant","HashMap","Iterable","Layer","MutableHashMap","MutableHashSet","MutableRef","Option","Predicate","PubSub","Schedule","Scope","Stream","AlreadyProcessingMessage","EntityNotAssignedToRunner","EntityNotManagedByRunner","RunnerUnavailable","Persisted","Uninterruptible","EntityAddress","EntityId","Envelope","EntityManager","EntityReaper","hashString","internalInterruptors","ResourceMap","Message","MessageStorage","Reply","Runners","ShardId","ShardingConfig","EntityRegistered","SingletonRegistered","ShardManagerClient","ShardStorage","SingletonAddress","Snowflake","Sharding","Tag","make","gen","config","runners","shardManager","snowflakeGen","Generator","shardingScope","scope","isShutdown","storage","storageEnabled","noop","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","shardsPerGroup","disableValidation","isEntityOnLocalShards","has","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","map","get","set","dieMessage","context","wrappedRun","locally","currentLogAnnotations","never","scoped","provide","orDie","publish","logDebug","running","unsafeHas","shouldBeRunning","fiberId","openStorageReadLatch","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","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","interrupt","MailboxFull","sendRetryInterval","sync","e","effect","entity","sendLocal","simulateRemoteSerialization","notifyLocal","notify","envelopeId","isTransientError","or","is","sendOutgoing","retries","catchIf","maybeRunner","isPersisted","rpc","annotations","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","client","makeNoSerialization","protocol","spanPrefix","type","supportsAck","generateRequestId","onFromClient","unsafeGet","ClientAddressTag","getCurrentFiber","requests","tag","entry","currentContext","makeClientRespond","write","clientRespondDiscard","OutgoingRequest","makeRequest","payload","headers","traceId","spanId","sampled","lastReceivedReply","none","OutgoingEnvelope","AckChunk","replyId","lastChunkId","isTransientInterrupt","interruptors","Interrupt","wrappedClient","method","Object","keys","merge","currentClientAddress","withFiberRuntime","getShardGroup","makeClient","_reply","reply","clientId","exit","reaper","registerEntity","build","sharding","unregister","activeEntityCount","count","of","pollStorage","layer","layerGenerator","Default","GenericTag","Symbol","for","key"],"sources":["../../src/Sharding.ts"],"sourcesContent":[null],"mappings":"AAIA,OAAO,KAAKA,SAAS,MAAM,uBAAuB;AAClD,SAA0BC,SAAS,QAAQ,wBAAwB;AACnE,OAAO,KAAKC,GAAG,MAAM,cAAc;AACnC,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,OAAO,MAAM,gBAAgB;AACzC,OAAO,KAAKC,QAAQ,MAAM,iBAAiB;AAE3C,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,IAAI,MAAM,aAAa;AACnC,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,WAAW,MAAM,oBAAoB;AACjD,OAAO,KAAKC,QAAQ,MAAM,iBAAiB;AAC3C,OAAO,KAAKC,QAAQ,MAAM,iBAAiB;AAC3C,SAASC,QAAQ,QAAQ,iBAAiB;AAC1C,OAAO,KAAKC,OAAO,MAAM,gBAAgB;AACzC,OAAO,KAAKC,QAAQ,MAAM,iBAAiB;AAC3C,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,cAAc,MAAM,uBAAuB;AACvD,OAAO,KAAKC,cAAc,MAAM,uBAAuB;AACvD,OAAO,KAAKC,UAAU,MAAM,mBAAmB;AAC/C,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,SAAS,MAAM,kBAAkB;AAC7C,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,QAAQ,MAAM,iBAAiB;AAC3C,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,MAAM,MAAM,eAAe;AAEvC,SACEC,wBAAwB,EACxBC,yBAAyB,EACzBC,wBAAwB,EACxBC,iBAAiB,QACZ,mBAAmB;AAC1B,SAASC,SAAS,EAAEC,eAAe,QAAQ,oBAAoB;AAE/D,SAASC,aAAa,QAAQ,oBAAoB;AAClD,SAASC,QAAQ,QAAQ,eAAe;AAExC,OAAO,KAAKC,QAAQ,MAAM,eAAe;AACzC,OAAO,KAAKC,aAAa,MAAM,6BAA6B;AAC5D,SAASC,YAAY,QAAQ,4BAA4B;AACzD,SAASC,UAAU,QAAQ,oBAAoB;AAC/C,SAASC,oBAAoB,QAAQ,4BAA4B;AACjE,SAASC,WAAW,QAAQ,2BAA2B;AACvD,OAAO,KAAKC,OAAO,MAAM,cAAc;AACvC,OAAO,KAAKC,cAAc,MAAM,qBAAqB;AACrD,OAAO,KAAKC,KAAK,MAAM,YAAY;AAEnC,SAASC,OAAO,QAAQ,cAAc;AACtC,SAASC,OAAO,QAAQ,cAAc;AACtC,SAASC,cAAc,QAAQ,qBAAqB;AACpD,SAASC,gBAAgB,EAAkCC,mBAAmB,QAAQ,gCAAgC;AACtH,SAASC,kBAAkB,QAAQ,mBAAmB;AACtD,SAASC,YAAY,QAAQ,mBAAmB;AAChD,SAASC,gBAAgB,QAAQ,uBAAuB;AACxD,OAAO,KAAKC,SAAS,MAAM,gBAAgB;AAE3C;;;;AAIA,OAAM,MAAOC,QAAS,sBAAQhD,OAAO,CAACiD,GAAG,CAAC,0BAA0B,CAAC,EAsGjE;AAYJ,MAAMC,IAAI,gBAAGhD,MAAM,CAACiD,GAAG,CAAC,aAAS;EAC/B,MAAMC,MAAM,GAAG,OAAOX,cAAc;EAEpC,MAAMY,OAAO,GAAG,OAAOd,OAAO;EAC9B,MAAMe,YAAY,GAAG,OAAOV,kBAAkB;EAC9C,MAAMW,YAAY,GAAG,OAAOR,SAAS,CAACS,SAAS;EAC/C,MAAMC,aAAa,GAAG,OAAOvD,MAAM,CAACwD,KAAK;EACzC,MAAMC,UAAU,GAAG5C,UAAU,CAACmC,IAAI,CAAC,KAAK,CAAC;EAEzC,MAAMU,OAAO,GAAG,OAAOvB,cAAc,CAACA,cAAc;EACpD,MAAMwB,cAAc,GAAGD,OAAO,KAAKvB,cAAc,CAACyB,IAAI;EACtD,MAAMC,YAAY,GAAG,OAAOlB,YAAY;EAExC,MAAMmB,cAAc,GAAG,IAAIC,GAAG,EAAkC;EAEhE,MAAMC,gBAAgB,GAAGrD,cAAc,CAACsD,KAAK,EAA0B;EACvE,MAAMC,UAAU,GAAGtD,cAAc,CAACqD,KAAK,EAAW;EAElD;EACA,MAAME,cAAc,GAAGvD,cAAc,CAACqD,KAAK,EAAW;EACtD,MAAMG,iBAAiB,GAAG,OAAOpE,MAAM,CAACqE,SAAS,CAAC,KAAK,CAAC;EAExD,MAAMC,MAAM,GAAG,OAAOtD,MAAM,CAACuD,SAAS,EAA6B;EACnE,MAAMC,qBAAqB,GAA6CrD,MAAM,CAACsD,UAAU,CAACH,MAAM,CAAC;EAEjG,MAAMI,aAAa,GAAIC,OAAsB,IAC3C7D,MAAM,CAAC8D,MAAM,CAAC1B,MAAM,CAAC2B,aAAa,CAAC,IAAI5E,KAAK,CAAC6E,MAAM,CAACH,OAAO,EAAEzB,MAAM,CAAC2B,aAAa,CAACE,KAAK,CAAC;EAE1F,SAASC,UAAUA,CAACC,QAAkB,EAAEC,KAAa;IACnD,MAAMC,EAAE,GAAGC,IAAI,CAACC,GAAG,CAACtD,UAAU,CAACkD,QAAQ,CAAC,GAAG/B,MAAM,CAACoC,cAAc,CAAC,GAAG,CAAC;IACrE,OAAOhD,OAAO,CAACU,IAAI,CAAC;MAAEkC,KAAK;MAAEC;IAAE,CAAE,EAAE;MAAEI,iBAAiB,EAAE;IAAI,CAAE,CAAC;EACjE;EAEA,SAASC,qBAAqBA,CAACb,OAAsB;IACnD,OAAO/D,cAAc,CAAC6E,GAAG,CAACtB,cAAc,EAAEQ,OAAO,CAACe,OAAO,CAAC;EAC5D;EAEA;EAEA,IAAI5E,MAAM,CAAC8D,MAAM,CAAC1B,MAAM,CAAC2B,aAAa,CAAC,EAAE;IACvC,MAAMc,WAAW,GAAGzC,MAAM,CAAC2B,aAAa,CAACE,KAAK;IAC9C,OAAO7D,KAAK,CAAC0E,gBAAgB,CAACrC,aAAa,EAAE,MAAK;MAChD;MACA,OAAOvD,MAAM,CAAC6F,MAAM,CAAChC,YAAY,CAACiC,UAAU,CAACH,WAAW,CAAC,CAAC;IAC5D,CAAC,CAAC;IAEF,MAAMI,eAAe,GAAGnF,cAAc,CAACqD,KAAK,EAAW;IACvD,OAAOjE,MAAM,CAACiD,GAAG,CAAC,aAAS;MACzB,OAAO,IAAI,EAAE;QACX,OAAOmB,iBAAiB,CAAC4B,KAAK;QAE9B;QACA,KAAK,MAAMN,OAAO,IAAIvB,cAAc,EAAE;UACpC,IAAIvD,cAAc,CAAC6E,GAAG,CAACvB,UAAU,EAAEwB,OAAO,CAAC,EAAE;UAC7C9E,cAAc,CAACqF,MAAM,CAAC9B,cAAc,EAAEuB,OAAO,CAAC;UAC9C9E,cAAc,CAACsF,GAAG,CAACH,eAAe,EAAEL,OAAO,CAAC;QAC9C;QACA;QACA,MAAMS,gBAAgB,GAAGvF,cAAc,CAACqD,KAAK,EAAW;QACxD,KAAK,MAAMyB,OAAO,IAAIxB,UAAU,EAAE;UAChC,IAAItD,cAAc,CAAC6E,GAAG,CAACtB,cAAc,EAAEuB,OAAO,CAAC,IAAI9E,cAAc,CAAC6E,GAAG,CAACM,eAAe,EAAEL,OAAO,CAAC,EAAE;UACjG9E,cAAc,CAACsF,GAAG,CAACC,gBAAgB,EAAET,OAAO,CAAC;QAC/C;QAEA,IAAI9E,cAAc,CAACwF,IAAI,CAACL,eAAe,CAAC,GAAG,CAAC,EAAE;UAC5C,OAAO/F,MAAM,CAACqG,MAAM,CAACC,cAAc,EAAE/C,aAAa,CAAC;UACnD,OAAOgD,aAAa;QACtB;QAEA,IAAI3F,cAAc,CAACwF,IAAI,CAACD,gBAAgB,CAAC,KAAK,CAAC,EAAE;UAC/C,OAAO/B,iBAAiB,CAACoC,KAAK;UAC9B;QACF;QAEA,MAAMC,QAAQ,GAAG,OAAO5C,YAAY,CAAC6C,OAAO,CAACf,WAAW,EAAEQ,gBAAgB,CAAC;QAC3E,OAAOnG,MAAM,CAAC6F,MAAM,CAACnC,OAAO,CAACiD,WAAW,CAACF,QAAQ,CAAC,CAAC;QACnD,KAAK,MAAMf,OAAO,IAAIe,QAAQ,EAAE;UAC9B7F,cAAc,CAACsF,GAAG,CAAC/B,cAAc,EAAEuB,OAAO,CAAC;QAC7C;QACA,IAAIe,QAAQ,CAACG,MAAM,GAAG,CAAC,EAAE;UACvB,OAAOC,gBAAgB,CAACC,IAAI;UAC5B,OAAO9G,MAAM,CAACqG,MAAM,CAACC,cAAc,EAAE/C,aAAa,CAAC;QACrD;QACA,OAAOvD,MAAM,CAAC+G,KAAK,CAAC,IAAI,CAAC;MAC3B;IACF,CAAC,CAAC,CAACC,IAAI,CACLhH,MAAM,CAACiH,aAAa,CAAEC,KAAK,IAAKlH,MAAM,CAACmH,UAAU,CAAC,kCAAkC,EAAED,KAAK,CAAC,CAAC,EAC7FlH,MAAM,CAACoH,MAAM,CAACnG,QAAQ,CAACoG,MAAM,CAACnE,MAAM,CAACoE,yBAAyB,CAAC,CAAC,EAChEtH,MAAM,CAACuH,YAAY,CAAC;MAClBC,OAAO,EAAE,iBAAiB;MAC1BC,MAAM,EAAE,UAAU;MAClBC,KAAK,EAAE,wBAAwB;MAC/BC,MAAM,EAAEhC;KACT,CAAC,EACF3F,MAAM,CAAC4H,aAAa,EACpB5H,MAAM,CAACqG,MAAM,CAAC9C,aAAa,CAAC,CAC7B;IAED;IACA,OAAOvD,MAAM,CAAC6H,OAAO,CAAC,MACpBhE,YAAY,CAACiE,OAAO,CAACnC,WAAW,EAAE,CAChC,GAAGxB,cAAc,EACjB,GAAG4B,eAAe,CACnB,CAAC,CACH,CAACiB,IAAI,CACJhH,MAAM,CAAC+H,OAAO,CAAEtB,QAAQ,IAAI;MAC1B,KAAK,MAAMf,OAAO,IAAIvB,cAAc,EAAE;QACpC,IAAI,CAACsC,QAAQ,CAACuB,IAAI,CAAEC,CAAC,IAAKA,CAAC,CAAChI,KAAK,CAACiI,MAAM,CAAC,CAACxC,OAAO,CAAC,CAAC,EAAE;UACnD9E,cAAc,CAACqF,MAAM,CAAC9B,cAAc,EAAEuB,OAAO,CAAC;UAC9C9E,cAAc,CAACsF,GAAG,CAACH,eAAe,EAAEL,OAAO,CAAC;QAC9C;MACF;MACA,OAAO9E,cAAc,CAACwF,IAAI,CAACL,eAAe,CAAC,GAAG,CAAC,GAC7C/F,MAAM,CAACmI,OAAO,CACZnI,MAAM,CAACqG,MAAM,CAACC,cAAc,EAAE/C,aAAa,CAAC,EAC5CgD,aAAa,CACd,GACDvG,MAAM,CAACoI,IAAI;IACf,CAAC,CAAC,EACFpI,MAAM,CAACqI,KAAK,CAAC;MACXC,KAAK,EAAE,CAAC;MACRC,QAAQ,EAAEtH,QAAQ,CAACoG,MAAM,CAAC,EAAE;KAC7B,CAAC,EACFrH,MAAM,CAACiH,aAAa,CAAEC,KAAK,IACzBlH,MAAM,CAACwI,QAAQ,CAAC,+BAA+B,EAAEtB,KAAK,CAAC,CAACF,IAAI,CAC1DhH,MAAM,CAACmI,OAAO,CAACM,eAAe,CAAC,CAChC,CACF,EACDzI,MAAM,CAAC0I,KAAK,CAAC,WAAW,CAAC,EACzB1I,MAAM,CAAC2I,OAAO,EACd3I,MAAM,CAAC4H,aAAa,EACpB5H,MAAM,CAACqG,MAAM,CAAC9C,aAAa,CAAC,CAC7B;IAED,MAAMqF,iBAAiB,GAAG5I,MAAM,CAAC6I,mBAAmB,CAAC,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC,CAAC;IACtE,MAAMvC,aAAa,GAAGqC,iBAAiB,CACrC5I,MAAM,CAAC6H,OAAO,CAAC,MACb7H,MAAM,CAAC+I,OAAO,CACZhD,eAAe,EACdL,OAAO,IACN1F,MAAM,CAAC+I,OAAO,CACZjF,cAAc,CAACkF,MAAM,EAAE,EACtBC,KAAK,IAAKA,KAAK,CAACC,OAAO,CAACC,cAAc,CAACzD,OAAO,CAAC,EAChD;MAAE0D,WAAW,EAAE,WAAW;MAAEC,OAAO,EAAE;IAAI,CAAE,CAC5C,CAACrC,IAAI,CACJhH,MAAM,CAACmI,OAAO,CAACtE,YAAY,CAACyF,OAAO,CAAC3D,WAAW,EAAED,OAAO,CAAC,CAAC,EAC1D1F,MAAM,CAACuH,YAAY,CAAC;MAClBI,MAAM,EAAEhC;KACT,CAAC,EACF3F,MAAM,CAACmI,OAAO,CAAC,MAAK;MAClBvH,cAAc,CAACqF,MAAM,CAACF,eAAe,EAAEL,OAAO,CAAC;IACjD,CAAC,CAAC,CACH,EACH;MAAE0D,WAAW,EAAE,WAAW;MAAEC,OAAO,EAAE;IAAI,CAAE,CAC5C,CACF,CACF;EACH;EAEA,MAAMZ,eAAe,GAAGzI,MAAM,CAAC6H,OAAO,CAAC,MAAK;IAC1CjH,cAAc,CAAC2I,KAAK,CAACrF,UAAU,CAAC;IAChC,OAAOE,iBAAiB,CAAC0C,IAAI;EAC/B,CAAC,CAAC;EAEF;EAEA,MAAM0C,UAAU,GAAG,IAAIzF,GAAG,EAAiF;EAC3G,MAAM0F,eAAe,GAAG,OAAOpJ,QAAQ,CAAC2C,IAAI,EAAoB;EAChE,MAAM0G,iBAAiB,GAAG1J,MAAM,CAAC6I,mBAAmB,CAAC,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC,CAAC;EAEtE,MAAMa,iBAAiB,GAA0C3J,MAAM,CAAC4J,UAAU,CAChF,WAAUC,IAAI,EAAEC,GAAG,EAAEC,OAAO;IAC1B,MAAMC,UAAU,GAAGD,OAAO,EAAEC,UAAU,IAAI,SAAS;IACnD,MAAMrF,OAAO,GAAG,IAAI/B,gBAAgB,CAAC;MACnC8C,OAAO,EAAEV,UAAU,CAACrD,QAAQ,CAACqB,IAAI,CAAC6G,IAAI,CAAC,EAAEG,UAAU,CAAC;MACpDH;KACD,CAAC;IAEF,IAAII,GAAG,GAAGT,UAAU,CAACU,GAAG,CAACvF,OAAO,CAACe,OAAO,CAAC;IACzC,IAAI,CAACuE,GAAG,EAAE;MACRA,GAAG,GAAGtJ,cAAc,CAACsD,KAAK,EAAE;MAC5BuF,UAAU,CAACW,GAAG,CAACxF,OAAO,CAACe,OAAO,EAAEuE,GAAG,CAAC;IACtC;IACA,IAAItJ,cAAc,CAAC8E,GAAG,CAACwE,GAAG,EAAEtF,OAAO,CAAC,EAAE;MACpC,OAAO,OAAO3E,MAAM,CAACoK,UAAU,CAAC,cAAcP,IAAI,yBAAyB,CAAC;IAC9E;IAEA,MAAMQ,OAAO,GAAG,OAAOrK,MAAM,CAACqK,OAAO,EAAS;IAC9C,MAAMC,UAAU,GAAGR,GAAG,CAAC9C,IAAI,CACzBhH,MAAM,CAACuK,OAAO,CAACjK,QAAQ,CAACkK,qBAAqB,EAAEhK,OAAO,CAACyD,KAAK,EAAE,CAAC,EAC/DjE,MAAM,CAACmI,OAAO,CAACnI,MAAM,CAACyK,KAAK,CAAC,EAC5BzK,MAAM,CAAC0K,MAAM,EACb1K,MAAM,CAAC2K,OAAO,CAACN,OAAO,CAAC,EACvBrK,MAAM,CAAC4K,KAAK,EACZ5K,MAAM,CAAC4H,aAAa,CACG;IACzBjH,cAAc,CAACwJ,GAAG,CAACF,GAAG,EAAEtF,OAAO,EAAE2F,UAAU,CAAC;IAE5C,OAAOtJ,MAAM,CAAC6J,OAAO,CAACvG,MAAM,EAAE7B,mBAAmB,CAAC;MAAEkC;IAAO,CAAE,CAAC,CAAC;IAE/D;IACA,IAAI/D,cAAc,CAAC6E,GAAG,CAACtB,cAAc,EAAEQ,OAAO,CAACe,OAAO,CAAC,EAAE;MACvD,OAAO1F,MAAM,CAAC8K,QAAQ,CAAC,oBAAoB,EAAEnG,OAAO,CAAC;MACrD,OAAOtE,QAAQ,CAACyJ,GAAG,CAACL,eAAe,EAAE9E,OAAO,EAAE2F,UAAU,CAAC;IAC3D;EACF,CAAC,EACDZ,iBAAiB,CAClB;EAED,MAAMpD,cAAc,GAAGoD,iBAAiB,CAAC1J,MAAM,CAACiD,GAAG,CAAC,aAAS;IAC3D,KAAK,MAAM,CAACyC,OAAO,EAAEuE,GAAG,CAAC,IAAIT,UAAU,EAAE;MACvC,KAAK,MAAM,CAAC7E,OAAO,EAAEmF,GAAG,CAAC,IAAIG,GAAG,EAAE;QAChC,MAAMc,OAAO,GAAG1K,QAAQ,CAAC2K,SAAS,CAACvB,eAAe,EAAE9E,OAAO,CAAC;QAC5D,MAAMsG,eAAe,GAAGrK,cAAc,CAAC6E,GAAG,CAACtB,cAAc,EAAEuB,OAAO,CAAC;QACnE,IAAIqF,OAAO,IAAI,CAACE,eAAe,EAAE;UAC/B,OAAOjL,MAAM,CAAC8K,QAAQ,CAAC,oBAAoB,EAAEnG,OAAO,CAAC;UACrD3C,oBAAoB,CAACkE,GAAG,CAAC,OAAOlG,MAAM,CAACkL,OAAO,CAAC;UAC/C,OAAO7K,QAAQ,CAAC4F,MAAM,CAACwD,eAAe,EAAE9E,OAAO,CAAC;QAClD,CAAC,MAAM,IAAI,CAACoG,OAAO,IAAIE,eAAe,EAAE;UACtC,OAAOjL,MAAM,CAAC8K,QAAQ,CAAC,oBAAoB,EAAEnG,OAAO,CAAC;UACrD,OAAOtE,QAAQ,CAACyJ,GAAG,CAACL,eAAe,EAAE9E,OAAO,EAAEmF,GAAG,CAAC;QACpD;MACF;IACF;EACF,CAAC,CAAC,CAAC;EAEH;EAEA,MAAMjD,gBAAgB,GAAG,OAAO7G,MAAM,CAACqE,SAAS,CAAC,IAAI,CAAC;EACtD,MAAM8G,oBAAoB,GAAG5K,QAAQ,CAACsG,gBAAgB,CAACC,IAAI,CAAC;EAE5D,MAAMsE,eAAe,GAAGpL,MAAM,CAAC6I,mBAAmB,CAAC,CAAC,CAAC;EACrD,MAAMwC,mBAAmB,GAAGD,eAAe,CAACtC,WAAW,CAAC,CAAC,CAAC;EAE1D,IAAIwC,uBAAuB,GAAIC,QAAsC,IAAK,IAAI;EAE9E;EACA;EACA,MAAMC,cAAc,GAAG,IAAIC,GAAG,EAAuB;EACrD,MAAMC,iBAAiB,GAAG,IAAID,GAAG,EAA4B;EAE7D,IAAI9H,cAAc,IAAI7C,MAAM,CAAC8D,MAAM,CAAC1B,MAAM,CAAC2B,aAAa,CAAC,EAAE;IACzD,MAAMc,WAAW,GAAGzC,MAAM,CAAC2B,aAAa,CAACE,KAAK;IAE9C,OAAO/E,MAAM,CAACiD,GAAG,CAAC,aAAS;MACzB,OAAOjD,MAAM,CAAC8K,QAAQ,CAAC,UAAU,CAAC;MAClC,OAAO9K,MAAM,CAAC2L,YAAY,CAAC,MAAM3L,MAAM,CAAC8K,QAAQ,CAAC,eAAe,CAAC,CAAC;MAElEU,cAAc,CAACjC,KAAK,EAAE;MACtBmC,iBAAiB,CAACnC,KAAK,EAAE;MAEzB+B,uBAAuB,GAAIM,OAAqC,IAAI;QAClE,IAAI,CAACJ,cAAc,CAAC/F,GAAG,CAACmG,OAAO,CAACC,QAAQ,CAACC,SAAS,CAAC,EAAE;UACnD,OAAO,KAAK;QACd;QACA,MAAM7C,KAAK,GAAGnF,cAAc,CAACoG,GAAG,CAAC0B,OAAO,CAACC,QAAQ,CAAClH,OAAO,CAACoH,UAAU,CAAC;QACrE,IAAI,CAAC9C,KAAK,EAAE,OAAO,IAAI;QACvB,OAAO,CAACA,KAAK,CAACC,OAAO,CAAC8C,eAAe,CAACJ,OAAO,EAAE;UAAEK,cAAc,EAAE;QAAI,CAAE,CAAC;MAC1E,CAAC;MAED,OAAO,IAAI,EAAE;QACX;QACA,OAAOpF,gBAAgB,CAACb,KAAK;QAE7B;QACA;QACAa,gBAAgB,CAACqF,WAAW,EAAE;QAE9B;QACA;QACA;QACA,OAAOd,eAAe,CAACe,IAAI,CAAC,CAAC,CAAC;QAE9B,MAAMC,QAAQ,GAAG,OAAO1I,OAAO,CAAC2I,mBAAmB,CAAClI,cAAc,CAAC;QACnE,MAAMmI,qBAAqB,GAAG,IAAIb,GAAG,EAAuB;QAC5DC,iBAAiB,CAACxF,GAAG,CAACoG,qBAAqB,CAAC;QAE5C,MAAMC,IAAI,GAAGvM,MAAM,CAACiH,aAAa,CAC/BjH,MAAM,CAAC6H,OAAO,CAAC,MAAK;UAClB,MAAM+D,OAAO,GAAGQ,QAAQ,CAACI,KAAK,CAAC;UAC/B,IAAIZ,OAAO,CAACa,IAAI,KAAK,iBAAiB,EAAE;YACtC,IAAIjB,cAAc,CAAC/F,GAAG,CAACmG,OAAO,CAACC,QAAQ,CAACC,SAAS,CAAC,EAAE;cAClD,OAAO9L,MAAM,CAACoI,IAAI;YACpB;YACAoD,cAAc,CAACtF,GAAG,CAAC0F,OAAO,CAACC,QAAQ,CAACC,SAAS,CAAC;YAC9CQ,qBAAqB,CAACpG,GAAG,CAAC0F,OAAO,CAACC,QAAQ,CAACC,SAAS,CAAC;UACvD;UACA,MAAMnH,OAAO,GAAGiH,OAAO,CAACC,QAAQ,CAAClH,OAAO;UACxC,IAAI,CAAC/D,cAAc,CAAC6E,GAAG,CAACtB,cAAc,EAAEQ,OAAO,CAACe,OAAO,CAAC,EAAE;YACxD,OAAO1F,MAAM,CAACoI,IAAI;UACpB;UACA,MAAMa,KAAK,GAAGnF,cAAc,CAACoG,GAAG,CAACvF,OAAO,CAACoH,UAAU,CAAC;UACpD,IAAI,CAAC9C,KAAK,EAAE;YACV,IAAI2C,OAAO,CAACa,IAAI,KAAK,iBAAiB,EAAE;cACtC,OAAOzM,MAAM,CAAC4K,KAAK,CAACgB,OAAO,CAACc,OAAO,CAACtK,KAAK,CAACuK,gBAAgB,CAACC,UAAU,CAAC;gBACpEzH,EAAE,EAAE9B,YAAY,CAACwJ,UAAU,EAAE;gBAC7Bf,SAAS,EAAEF,OAAO,CAACC,QAAQ,CAACC,SAAS;gBACrCgB,MAAM,EAAE,IAAIxL,wBAAwB,CAAC;kBAAEqD;gBAAO,CAAE;eACjD,CAAC,CAAC,CAAC;YACN;YACA,OAAO3E,MAAM,CAACoI,IAAI;UACpB;UAEA,MAAM2E,YAAY,GAAG9D,KAAK,CAACC,OAAO,CAAC8C,eAAe,CAACJ,OAAO,CAAC;UAE3D;UACA;UACA,IAAIA,OAAO,CAACa,IAAI,KAAK,kBAAkB,IAAIM,YAAY,EAAE;YACvD,OAAO9D,KAAK,CAACC,OAAO,CAACqD,IAAI,CAACX,OAAO,CAAC;UACpC,CAAC,MAAM,IAAImB,YAAY,EAAE;YACvB,OAAO/M,MAAM,CAACoI,IAAI;UACpB;UAEA;UACA;UACA,MAAM4E,eAAe,GAAGrM,cAAc,CAACuJ,GAAG,CAAC+C,qBAAqB,EAAEtI,OAAO,CAAC;UAC1E,IAAI7D,MAAM,CAAC8D,MAAM,CAACoI,eAAe,CAAC,EAAE;YAClCA,eAAe,CAACjI,KAAK,CAACmI,WAAW,CAAChH,GAAG,CAAC0F,OAAO,CAACC,QAAQ,CAACC,SAAS,CAAC;YACjE,IAAIF,OAAO,CAACC,QAAQ,CAACY,IAAI,KAAK,WAAW,EAAE;cACzCO,eAAe,CAACjI,KAAK,CAACoI,UAAU,CAAChD,GAAG,CAACyB,OAAO,CAACC,QAAQ,CAACC,SAAS,EAAEF,OAAmC,CAAC;YACvG;YACA,OAAO5L,MAAM,CAACoI,IAAI;UACpB;UACA,OAAOa,KAAK,CAACC,OAAO,CAACqD,IAAI,CAACX,OAAO,CAAC;QACpC,CAAC,CAAC,EACD1E,KAAK,IAAI;UACR,MAAM0E,OAAO,GAAGQ,QAAQ,CAACI,KAAK,CAAC;UAC/B,MAAMY,KAAK,GAAGvN,KAAK,CAACwN,aAAa,CAACnG,KAAK,CAAC;UACxC;UACA,IAAIpG,MAAM,CAACwM,MAAM,CAACF,KAAK,CAAC,EAAE;YACxB,OAAO1J,OAAO,CAAC6J,SAAS,CAACnL,KAAK,CAACuK,gBAAgB,CAACC,UAAU,CAAC;cACzDzH,EAAE,EAAE9B,YAAY,CAACwJ,UAAU,EAAE;cAC7Bf,SAAS,EAAEF,OAAO,CAACC,QAAQ,CAACC,SAAS;cACrCgB,MAAM,EAAEjN,KAAK,CAAC2N,MAAM,CAACtG,KAAK;aAC3B,CAAC,CAAC;UACL;UACA,IAAIkG,KAAK,CAACrI,KAAK,CAAC0H,IAAI,KAAK,aAAa,EAAE;YACtC;YACA,OAAOgB,uBAAuB,CAAC7B,OAAuC,CAAC;UACzE;UACA,OAAO5L,MAAM,CAACoI,IAAI;QACpB,CAAC,CACF;QAED,IAAIoE,KAAK,GAAG,CAAC;QACb,OAAOxM,MAAM,CAAC0N,SAAS,CAAC;UACtBC,KAAK,EAAEA,CAAA,KAAMnB,KAAK,GAAGJ,QAAQ,CAACxF,MAAM;UACpCgH,IAAI,EAAEA,CAAA,KAAMpB,KAAK,EAAE;UACnBqB,IAAI,EAAEtN,QAAQ,CAACgM,IAAI;SACpB,CAAC;QAEF;QACA,OAAOnB,eAAe,CAAC9B,OAAO,CAAC,CAAC,CAAC;QAEjC,OAAOoC,iBAAiB,CAACtF,IAAI,GAAG,EAAE,EAAE;UAClC,MAAM0H,MAAM,GAAGrN,QAAQ,CAACsN,UAAU,CAACrC,iBAAiB,CAAC;UACrDA,iBAAiB,CAACsC,MAAM,CAACF,MAAM,CAAC;UAChC,KAAK,MAAM3I,EAAE,IAAI2I,MAAM,EAAE;YACvBtC,cAAc,CAACwC,MAAM,CAAC7I,EAAE,CAAC;UAC3B;QACF;MACF;IACF,CAAC,CAAC,CAAC6B,IAAI,CACLhH,MAAM,CAAC0K,MAAM,EACb1K,MAAM,CAACiO,QAAQ,CAAC7C,eAAe,CAACtF,UAAU,CAAC,EAC3C9F,MAAM,CAACiH,aAAa,CAAEC,KAAK,IAAKlH,MAAM,CAACmH,UAAU,CAAC,sCAAsC,EAAED,KAAK,CAAC,CAAC,EACjGlH,MAAM,CAACoH,MAAM,CAACnG,QAAQ,CAACoG,MAAM,CAACnE,MAAM,CAACoE,yBAAyB,CAAC,CAAC,EAChEtH,MAAM,CAACuH,YAAY,CAAC;MAClBC,OAAO,EAAE,iBAAiB;MAC1BC,MAAM,EAAE,UAAU;MAClBC,KAAK,EAAE,mBAAmB;MAC1BC,MAAM,EAAEhC;KACT,CAAC,EACF3F,MAAM,CAAC4H,aAAa,EACpB5H,MAAM,CAACqG,MAAM,CAAC9C,aAAa,CAAC,CAC7B;IAED;IACA,OAAOsD,gBAAgB,CAACC,IAAI,CAACE,IAAI,CAC/BhH,MAAM,CAAC0I,KAAK,CAACxF,MAAM,CAACoE,yBAAyB,CAAC,EAC9CtH,MAAM,CAAC2I,OAAO,EACd3I,MAAM,CAAC4H,aAAa,EACpB5H,MAAM,CAACqG,MAAM,CAAC9C,aAAa,CAAC,CAC7B;IAED;IACA,MAAM0J,qBAAqB,GAAGtM,cAAc,CAACsD,KAAK,EAG9C;IACJ,MAAMwJ,uBAAuB,GAAIS,mBAAiD,IAAI;MACpF,MAAMvJ,OAAO,GAAGuJ,mBAAmB,CAACrC,QAAQ,CAAClH,OAAO;MACpD,MAAMqI,eAAe,GAAGrM,cAAc,CAACuJ,GAAG,CAAC+C,qBAAqB,EAAEtI,OAAO,CAAC;MAC1E,IAAI7D,MAAM,CAAC8D,MAAM,CAACoI,eAAe,CAAC,EAAE;QAClCA,eAAe,CAACjI,KAAK,CAACmI,WAAW,CAAChH,GAAG,CAACgI,mBAAmB,CAACrC,QAAQ,CAACC,SAAS,CAAC;QAC7E,OAAO9L,MAAM,CAACoI,IAAI;MACpB;MACAzH,cAAc,CAACwJ,GAAG,CAAC8C,qBAAqB,EAAEtI,OAAO,EAAE;QACjDuI,WAAW,EAAE,IAAIzB,GAAG,CAAC,CAACyC,mBAAmB,CAACrC,QAAQ,CAACC,SAAS,CAAC,CAAC;QAC9DqB,UAAU,EAAE,IAAIpJ,GAAG;OACpB,CAAC;MACF,OAAOoK,2BAA2B,CAACxJ,OAAO,CAAC;IAC7C,CAAC;IACD,MAAMwJ,2BAA2B,GAAGnO,MAAM,CAAC4J,UAAU,CACnD,WAAUjF,OAAsB;MAC9B,MAAMsE,KAAK,GAAGnF,cAAc,CAACoG,GAAG,CAACvF,OAAO,CAACoH,UAAU,CAAC;MACpD,IAAI,CAAC9C,KAAK,EAAE;QACVtI,cAAc,CAACsF,MAAM,CAACgH,qBAAqB,EAAEtI,OAAO,CAAC;QACrD;MACF;MAEA,MAAMqI,eAAe,GAAGlM,MAAM,CAACsN,UAAU,CAACzN,cAAc,CAACuJ,GAAG,CAAC+C,qBAAqB,EAAEtI,OAAO,CAAC,CAAC;MAC7F,IAAI0J,IAAI,GAAG,KAAK;MAEhB,OAAO,CAACA,IAAI,EAAE;QACZ;QACA,IAAI,CAACzN,cAAc,CAAC6E,GAAG,CAACtB,cAAc,EAAEQ,OAAO,CAACe,OAAO,CAAC,EAAE;UACxD;QACF;QAEA;QACA,MAAM4I,UAAU,GAAG1O,GAAG,CAACqE,KAAK,EAAuB;QACnD,KAAK,MAAMkB,EAAE,IAAI6H,eAAe,CAACE,WAAW,EAAE;UAC5C,IAAIoB,UAAU,CAAC1H,MAAM,KAAK,IAAI,EAAE;UAChC0H,UAAU,CAACC,IAAI,CAACpJ,EAAE,CAAC;QACrB;QAEA,MAAMiH,QAAQ,GAAG,OAAO1I,OAAO,CAAC8K,uBAAuB,CAACF,UAAU,CAAC;QAEnE;QACA,IAAIlC,QAAQ,CAACxF,MAAM,KAAK,CAAC,EAAE;UACzB,OAAO5G,MAAM,CAAC+G,KAAK,CAAC7D,MAAM,CAACoE,yBAAyB,CAAC;UACrD;QACF;QAEA,IAAIkF,KAAK,GAAG,CAAC;QAEb,MAAMiC,aAAa,GAGfzO,MAAM,CAAC0O,SAAS,CAClB1O,MAAM,CAAC6H,OAAO,CAAC,MAAK;UAClB,IAAI,CAACjH,cAAc,CAAC6E,GAAG,CAACtB,cAAc,EAAEQ,OAAO,CAACe,OAAO,CAAC,EAAE;YACxD,OAAO1F,MAAM,CAAC2O,IAAI,CAAC,IAAItN,yBAAyB,CAAC;cAAEsD;YAAO,CAAE,CAAC,CAAC;UAChE;UAEA,MAAMiH,OAAO,GAAGQ,QAAQ,CAACI,KAAK,CAAC;UAC/B;UACA,MAAMoC,SAAS,GAAGhD,OAAO,CAACa,IAAI,KAAK,iBAAiB,IAClDO,eAAe,CAACG,UAAU,CAACjD,GAAG,CAAC0B,OAAO,CAACC,QAAQ,CAACC,SAAS,CAAC;UAC5D,OAAO8C,SAAS,GACd5O,MAAM,CAAC+H,OAAO,CAACkB,KAAK,CAACC,OAAO,CAACqD,IAAI,CAACX,OAAO,CAAC,EAAE,MAAK;YAC/CoB,eAAe,CAACG,UAAU,CAACa,MAAM,CAACpC,OAAO,CAACC,QAAQ,CAACC,SAAS,CAAC;YAC7D,OAAO7C,KAAK,CAACC,OAAO,CAACqD,IAAI,CAACqC,SAAS,CAAC;UACtC,CAAC,CAAC,GACF3F,KAAK,CAACC,OAAO,CAACqD,IAAI,CAACX,OAAO,CAAC;QAC/B,CAAC,CAAC,EACF;UACEiD,WAAW,EAAEA,CAAA,KAAM7O,MAAM,CAAC0I,KAAK,CAAC+F,aAAa,EAAEvL,MAAM,CAAC4L,iBAAiB,CAAC;UACxE1N,wBAAwB,EAAEA,CAAA,KAAMpB,MAAM,CAACoI;SACxC,CACF;QAED,OAAOpI,MAAM,CAAC0N,SAAS,CAAC;UACtBC,KAAK,EAAEA,CAAA,KAAMnB,KAAK,GAAGJ,QAAQ,CAACxF,MAAM;UACpCiH,IAAI,EAAEtN,QAAQ,CAACkO,aAAa,CAAC;UAC7Bb,IAAI,EAAEA,CAAA,KAAMpB,KAAK;SAClB,CAAC;QAEF,KAAK,MAAMrH,EAAE,IAAImJ,UAAU,EAAE;UAC3BtB,eAAe,CAACE,WAAW,CAACc,MAAM,CAAC7I,EAAE,CAAC;QACxC;QACA,IAAI6H,eAAe,CAACE,WAAW,CAAC9G,IAAI,GAAG,CAAC,EAAE;QAE1C;QACA,OAAOiF,mBAAmB,CAACrL,MAAM,CAAC+O,IAAI,CAAC,MAAK;UAC1C,IAAI/B,eAAe,CAACE,WAAW,CAAC9G,IAAI,KAAK,CAAC,EAAE;YAC1CzF,cAAc,CAACsF,MAAM,CAACgH,qBAAqB,EAAEtI,OAAO,CAAC;YACrD0J,IAAI,GAAG,IAAI;UACb;QACF,CAAC,CAAC,CAAC;MACL;IACF,CAAC,EACDrO,MAAM,CAACqI,KAAK,CAAC;MACXsF,KAAK,EAAGqB,CAAC,IAAKA,CAAC,CAACvC,IAAI,KAAK,kBAAkB;MAC3ClE,QAAQ,EAAEtH,QAAQ,CAACoG,MAAM,CAACnE,MAAM,CAACoE,yBAAyB;KAC3D,CAAC,EACFtH,MAAM,CAACiH,aAAa,CAAEC,KAAK,IAAKlH,MAAM,CAACwI,QAAQ,CAAC,uCAAuC,EAAEtB,KAAK,CAAC,CAAC,EAChG,CAAC+H,MAAM,EAAEtK,OAAO,KACd3E,MAAM,CAACuH,YAAY,CAAC0H,MAAM,EAAE;MAC1BzH,OAAO,EAAE,iBAAiB;MAC1BC,MAAM,EAAE,UAAU;MAClBC,KAAK,EAAE,+BAA+B;MACtCC,MAAM,EAAEhC,WAAW;MACnBuJ,MAAM,EAAEvK;KACT,CAAC,EACJ,CAACsK,MAAM,EAAEtK,OAAO,KACd3E,MAAM,CAACiO,QAAQ,CACbgB,MAAM,EACNjP,MAAM,CAAC+O,IAAI,CAAC,MAAMpO,cAAc,CAACsF,MAAM,CAACgH,qBAAqB,EAAEtI,OAAO,CAAC,CAAC,CACzE,EACH3E,MAAM,CAAC4H,aAAa,EACpB5H,MAAM,CAACqG,MAAM,CAAC9C,aAAa,CAAC,CAC7B;EACH;EAEA;EAEA,MAAM4L,SAAS,GACbvD,OAAU,IASV5L,MAAM,CAAC6H,OAAO,CAAC,MAAK;IAClB,MAAMlD,OAAO,GAAGiH,OAAO,CAACC,QAAQ,CAAClH,OAAO;IACxC,IAAI,CAACa,qBAAqB,CAACb,OAAO,CAAC,EAAE;MACnC,OAAO3E,MAAM,CAAC2O,IAAI,CAAC,IAAItN,yBAAyB,CAAC;QAAEsD;MAAO,CAAE,CAAC,CAAC;IAChE;IACA,MAAMsE,KAAK,GAAGnF,cAAc,CAACoG,GAAG,CAACvF,OAAO,CAACoH,UAAU,CAAC;IACpD,IAAI,CAAC9C,KAAK,EAAE;MACV,OAAOjJ,MAAM,CAAC2O,IAAI,CAAC,IAAIrN,wBAAwB,CAAC;QAAEqD;MAAO,CAAE,CAAC,CAAC;IAC/D;IAEA,OAAOiH,OAAO,CAACa,IAAI,KAAK,iBAAiB,IAAIb,OAAO,CAACa,IAAI,KAAK,kBAAkB,GAC9ExD,KAAK,CAACC,OAAO,CAACqD,IAAI,CAACX,OAAO,CAAC,GAC3BzI,OAAO,CAACgM,SAAS,CAAC;MAChBvD,OAAO;MACPW,IAAI,EAAEtD,KAAK,CAACC,OAAO,CAACiG,SAAS;MAC7BC,2BAA2B,EAAElM,MAAM,CAACkM;KACrC,CAAQ;EACb,CAAC,CAAC;EAEJ,MAAMC,WAAW,GAAGA,CAClBzD,OAAU,EACVvC,OAAgB,KAEhBrJ,MAAM,CAAC6H,OAAO,CACZ,MAMI;IACF,MAAMlD,OAAO,GAAGiH,OAAO,CAACC,QAAQ,CAAClH,OAAO;IACxC,IAAI,CAACa,qBAAqB,CAACb,OAAO,CAAC,EAAE;MACnC,OAAO3E,MAAM,CAAC2O,IAAI,CAAC,IAAItN,yBAAyB,CAAC;QAAEsD;MAAO,CAAE,CAAC,CAAC;IAChE,CAAC,MAAM,IAAI,CAACb,cAAc,CAAC2B,GAAG,CAACd,OAAO,CAACoH,UAAU,CAAC,EAAE;MAClD,OAAO/L,MAAM,CAAC2O,IAAI,CAAC,IAAIrN,wBAAwB,CAAC;QAAEqD;MAAO,CAAE,CAAC,CAAC;IAC/D;IAEA,MAAM2K,MAAM,GAAG3L,cAAc,GACzBwH,oBAAoB,GACpB,MAAMnL,MAAM,CAACoK,UAAU,CAAC,2CAA2C,CAAC;IAExE,IAAIwB,OAAO,CAACa,IAAI,KAAK,iBAAiB,IAAIb,OAAO,CAACa,IAAI,KAAK,kBAAkB,EAAE;MAC7E,IAAIb,OAAO,CAACa,IAAI,KAAK,iBAAiB,IAAInB,uBAAuB,CAACM,OAAO,CAAC,EAAE;QAC1E,OAAO5L,MAAM,CAAC2O,IAAI,CAAC,IAAIvN,wBAAwB,CAAC;UAAEuD,OAAO;UAAE4K,UAAU,EAAE3D,OAAO,CAACC,QAAQ,CAACC;QAAS,CAAE,CAAC,CAAC;MACvG;MACA,OAAOwD,MAAM,EAAE;IACjB;IAEA,OAAOnM,OAAO,CAACkM,WAAW,CAAC;MAAEzD,OAAO;MAAE0D,MAAM;MAAEjG;IAAO,CAAE,CAAQ;EACjE,CAAC,CACF;EAEH,MAAMmG,gBAAgB,GAAGzO,SAAS,CAAC0O,EAAE,CAAClO,iBAAiB,CAACmO,EAAE,EAAErO,yBAAyB,CAACqO,EAAE,CAAC;EACzF,SAASC,YAAYA,CACnB/D,OAA8B,EAC9BvC,OAAgB,EAChBuG,OAAgB;IAKhB,OAAO5P,MAAM,CAAC6P,OAAO,CACnB7P,MAAM,CAAC6H,OAAO,CAAC,MAAK;MAClB,MAAMlD,OAAO,GAAGiH,OAAO,CAACC,QAAQ,CAAClH,OAAO;MACxC,MAAMmL,WAAW,GAAGnP,cAAc,CAACuJ,GAAG,CAAClG,gBAAgB,EAAEW,OAAO,CAACe,OAAO,CAAC;MACzE,MAAMqK,WAAW,GAAGjQ,OAAO,CAACoK,GAAG,CAAC0B,OAAO,CAACoE,GAAG,CAACC,WAAW,EAAEzO,SAAS,CAAC;MACnE,IAAIuO,WAAW,IAAI,CAACpM,cAAc,EAAE;QAClC,OAAO3D,MAAM,CAACoK,UAAU,CAAC,kEAAkE,CAAC;MAC9F;MACA,MAAM8F,aAAa,GAAGpP,MAAM,CAAC8D,MAAM,CAACkL,WAAW,CAAC,IAAIpL,aAAa,CAACoL,WAAW,CAAC/K,KAAK,CAAC;MACpF,IAAIgL,WAAW,EAAE;QACf,OAAOG,aAAa,GAChBb,WAAW,CAACzD,OAAO,EAAEvC,OAAO,CAAC,GAC7BlG,OAAO,CAACmM,MAAM,CAAC;UAAE3K,OAAO,EAAEmL,WAAW;UAAElE,OAAO;UAAEvC;QAAO,CAAE,CAAC;MAChE,CAAC,MAAM,IAAIvI,MAAM,CAACwM,MAAM,CAACwC,WAAW,CAAC,EAAE;QACrC,OAAO9P,MAAM,CAAC2O,IAAI,CAAC,IAAItN,yBAAyB,CAAC;UAAEsD;QAAO,CAAE,CAAC,CAAC;MAChE;MACA,OAAOuL,aAAa,GAChBf,SAAS,CAACvD,OAAO,CAAC,GAClBzI,OAAO,CAACoJ,IAAI,CAAC;QAAE5H,OAAO,EAAEmL,WAAW,CAAC/K,KAAK;QAAE6G;MAAO,CAAE,CAAC;IAC3D,CAAC,CAAC,EACF4D,gBAAgB,EACfpC,KAAK,IAAI;MACR,IAAIwC,OAAO,KAAK,CAAC,EAAE;QACjB,OAAO5P,MAAM,CAACmQ,GAAG,CAAC/C,KAAK,CAAC;MAC1B;MACA,OAAOpN,MAAM,CAAC0I,KAAK,CAACiH,YAAY,CAAC/D,OAAO,EAAEvC,OAAO,EAAEuG,OAAO,IAAIA,OAAO,GAAG,CAAC,CAAC,EAAE1M,MAAM,CAAC4L,iBAAiB,CAAC;IACvG,CAAC,CACF;EACH;EAEA,MAAMsB,KAAK,GAA8BpQ,MAAM,CAAC4J,UAAU,CACxD,WAAUkC,SAAS;IACjB,OAAOpI,OAAO,CAAC2M,YAAY,CAACvE,SAAS,CAAC;IACtCN,cAAc,CAACwC,MAAM,CAAClC,SAAS,CAAC;EAClC,CAAC,EACD9L,MAAM,CAACsQ,UAAU,CAAC;IAChBC,SAAS,EAAEA,CAAA,KAAM,IAAI;IACrBC,SAAS,EAAEA,CAAA,KAAM;GAClB,CAAC,CACH;EAED;EAEA,MAAMC,wBAAwB,GAAG,OAAOrQ,WAAW,CAAC4C,IAAI,EAAE,CAACgE,IAAI,CAC7D9F,KAAK,CAACwP,MAAM,CAACnN,aAAa,CAAC,CAC5B;EACD,MAAMoN,wBAAwB,GAAGvQ,WAAW,CAAC0J,GAAG,CAC9C2G,wBAAwB,EACxBzQ,MAAM,CAAC+H,OAAO,CAAC/H,MAAM,CAAC+G,KAAK,CAAC7D,MAAM,CAAC0N,8BAA8B,CAAC,EAAE,MAAK;IACvEjQ,cAAc,CAAC4I,KAAK,CAACvF,gBAAgB,CAAC;IACtC,OAAOyE,eAAe;EACxB,CAAC,CAAC,EACF;IAAEoI,aAAa,EAAE;EAAI,CAAE,CACxB;EACD,MAAMC,uBAAuB,GAAG1Q,WAAW,CAACmJ,KAAK,CAACkH,wBAAwB,CAAC;EAE3E;EACA;EACA,OAAOzQ,MAAM,CAACiD,GAAG,CAAC,aAAS;IACzB,OAAOjD,MAAM,CAAC8K,QAAQ,CAAC,gCAAgC,CAAC;IACxD,IAAIhK,MAAM,CAAC8D,MAAM,CAAC1B,MAAM,CAAC2B,aAAa,CAAC,EAAE;MACvC,MAAMkM,SAAS,GAAG,OAAO3N,YAAY,CAAC4N,QAAQ,CAAC9N,MAAM,CAAC2B,aAAa,CAACE,KAAK,EAAE7B,MAAM,CAAC+N,WAAW,CAAC;MAC9F,OAAO5N,YAAY,CAAC6N,YAAY,CAACH,SAAS,CAAC;IAC7C;IAEA,OAAOD,uBAAuB;IAE9B,OAAO9Q,MAAM,CAAC8K,QAAQ,CAAC,gCAAgC,CAAC;IACxD,MAAMqG,OAAO,GAAG,OAAO/N,YAAY,CAACgO,cAAc;IAClD,MAAMC,YAAY,GAAG,OAAOtR,QAAQ,CAACiD,IAAI,EAAQ;IAEjD,MAAMsO,WAAW,GAAG,OAAOtR,MAAM,CAACiD,GAAG,CAAC,aAAS;MAC7C,OAAO,IAAI,EAAE;QACX,MAAM,CAACqB,MAAM,CAAC,GAAG,OAAO6M,OAAO,CAACI,OAAO;QACvC,KAAK,MAAMC,KAAK,IAAIlN,MAAM,EAAE;UAC1B,OAAOtE,MAAM,CAAC8K,QAAQ,CAAC,yBAAyB,EAAE0G,KAAK,CAAC;UAExD,QAAQA,KAAK,CAAC/E,IAAI;YAChB,KAAK,eAAe;cAAE;gBACpB,OAAO1M,QAAQ,CAACsO,IAAI,CAACgD,YAAY,EAAEnR,IAAI,CAACkI,IAAI,CAAC;gBAC7C;cACF;YACA,KAAK,gBAAgB;cAAE;gBACrB,KAAK,MAAMqJ,KAAK,IAAID,KAAK,CAACE,MAAM,EAAE;kBAChC/Q,cAAc,CAACwJ,GAAG,CAACnG,gBAAgB,EAAEyN,KAAK,EAAED,KAAK,CAAC7M,OAAO,CAAC;gBAC5D;gBACA,IAAI,CAAC9D,UAAU,CAACqJ,GAAG,CAACzG,UAAU,CAAC,IAAIiB,aAAa,CAAC8M,KAAK,CAAC7M,OAAO,CAAC,EAAE;kBAC/D,KAAK,MAAMe,OAAO,IAAI8L,KAAK,CAACE,MAAM,EAAE;oBAClC,IAAI9Q,cAAc,CAAC6E,GAAG,CAACvB,UAAU,EAAEwB,OAAO,CAAC,EAAE;oBAC7C9E,cAAc,CAACsF,GAAG,CAAChC,UAAU,EAAEwB,OAAO,CAAC;kBACzC;kBACA,OAAOtB,iBAAiB,CAAC0C,IAAI;gBAC/B;gBACA;cACF;YACA,KAAK,kBAAkB;cAAE;gBACvB,KAAK,MAAM2K,KAAK,IAAID,KAAK,CAACE,MAAM,EAAE;kBAChC/Q,cAAc,CAACsF,MAAM,CAACjC,gBAAgB,EAAEyN,KAAK,CAAC;gBAChD;gBACA,IAAI/M,aAAa,CAAC8M,KAAK,CAAC7M,OAAO,CAAC,EAAE;kBAChC,KAAK,MAAM8M,KAAK,IAAID,KAAK,CAACE,MAAM,EAAE;oBAChC9Q,cAAc,CAACqF,MAAM,CAAC/B,UAAU,EAAEuN,KAAK,CAAC;kBAC1C;kBACA,OAAOrN,iBAAiB,CAAC0C,IAAI;gBAC/B;gBACA;cACF;UACF;QACF;MACF;IACF,CAAC,CAAC,CAACE,IAAI,CACLhH,MAAM,CAAC2R,YAAY,CAACN,YAAY,CAAC,EACjCrR,MAAM,CAAC4R,UAAU,CAClB;IAED;IACA,OAAO7R,QAAQ,CAACiG,KAAK,CAACqL,YAAY,CAAC;IAEnC;IACA,MAAMQ,SAAS,GAAG,OAAOC,eAAe,CAAC9K,IAAI,CAC3ChH,MAAM,CAACmI,OAAO,CAACnI,MAAM,CAAC+G,KAAK,CAAC7D,MAAM,CAAC6O,0BAA0B,CAAC,CAAC,EAC/D/R,MAAM,CAAC2I,OAAO,EACd3I,MAAM,CAAC4R,UAAU,CAClB;IAED,OAAOzR,KAAK,CAAC6R,OAAO,CAAC,CAACV,WAAW,EAAEO,SAAS,CAAC,CAAC;EAChD,CAAC,CAAC,CAAC7K,IAAI,CACLhH,MAAM,CAAC0K,MAAM,EACb1K,MAAM,CAACiH,aAAa,CAAEC,KAAK,IAAKlH,MAAM,CAAC8K,QAAQ,CAAC5D,KAAK,CAAC,CAAC,EACvDlH,MAAM,CAACiS,QAAQ,CAACtB,wBAAwB,CAAC,EACzC3Q,MAAM,CAACoH,MAAM,CACXnG,QAAQ,CAACiR,WAAW,CAAC,IAAI,CAAC,CAAClL,IAAI,CAC7B/F,QAAQ,CAACkR,KAAK,CAAClR,QAAQ,CAACoG,MAAM,CAAC,MAAM,CAAC,CAAC,CACxC,CACF,EACDrH,MAAM,CAACuH,YAAY,CAAC;IAClBC,OAAO,EAAE,iBAAiB;IAC1BC,MAAM,EAAE,UAAU;IAClBC,KAAK,EAAE,mBAAmB;IAC1BC,MAAM,EAAEzE,MAAM,CAAC2B;GAChB,CAAC,EACF7E,MAAM,CAAC4H,aAAa,EACpB5H,MAAM,CAACqG,MAAM,CAAC9C,aAAa,CAAC,CAC7B;EAED,MAAMuO,eAAe,GAAG9R,MAAM,CAACiD,GAAG,CAAC,aAAS;IAC1C,MAAMmP,WAAW,GAAG,OAAOhP,YAAY,CAACiP,cAAc;IACtD,OAAOrS,MAAM,CAAC8K,QAAQ,CAAC,4BAA4B,EAAEsH,WAAW,CAAC;IAEjE,KAAK,MAAM,CAAC1M,OAAO,EAAEiC,MAAM,CAAC,IAAIyK,WAAW,EAAE;MAC3C,IAAItR,MAAM,CAACwM,MAAM,CAAC3F,MAAM,CAAC,EAAE;QACzBhH,cAAc,CAACsF,MAAM,CAACjC,gBAAgB,EAAE0B,OAAO,CAAC;QAChD9E,cAAc,CAACqF,MAAM,CAAC/B,UAAU,EAAEwB,OAAO,CAAC;QAC1C;MACF;MAEA/E,cAAc,CAACwJ,GAAG,CAACnG,gBAAgB,EAAE0B,OAAO,EAAEiC,MAAM,CAAC5C,KAAK,CAAC;MAE3D,IAAI,CAACL,aAAa,CAACiD,MAAM,CAAC5C,KAAK,CAAC,EAAE;QAChCnE,cAAc,CAACqF,MAAM,CAAC/B,UAAU,EAAEwB,OAAO,CAAC;QAC1C;MACF;MACA,IAAI7E,UAAU,CAACqJ,GAAG,CAACzG,UAAU,CAAC,IAAI7C,cAAc,CAAC6E,GAAG,CAACvB,UAAU,EAAEwB,OAAO,CAAC,EAAE;QACzE;MACF;MACA9E,cAAc,CAACsF,GAAG,CAAChC,UAAU,EAAEwB,OAAO,CAAC;IACzC;IAEA,OAAOtB,iBAAiB,CAAC0C,IAAI;EAC/B,CAAC,CAAC;EASF,MAAMwL,cAAc,GAAG,IAAIvO,GAAG,EAA2C;EAEzE,MAAMwO,OAAO,GAOT,OAAOtQ,WAAW,CAACe,IAAI,CAAChD,MAAM,CAAC4J,UAAU,CAAC,WAAUsF,MAAmB;IACzE,MAAMsD,MAAM,GAAG,OAAO9S,SAAS,CAAC+S,mBAAmB,CAACvD,MAAM,CAACwD,QAAQ,EAAE;MACnEC,UAAU,EAAE,GAAGzD,MAAM,CAAC0D,IAAI,SAAS;MACnCC,WAAW,EAAE,IAAI;MACjBC,iBAAiB,EAAEA,CAAA,KAAMnT,SAAS,CAAC0D,YAAY,CAACwJ,UAAU,EAAE,CAAC;MAC7DkG,YAAYA,CAAChJ,OAAO;QAIlB,MAAMpF,OAAO,GAAG7E,OAAO,CAACkT,SAAS,CAACjJ,OAAO,CAACM,OAAO,EAAE4I,gBAAgB,CAAC;QACpE,QAAQlJ,OAAO,CAAC6B,OAAO,CAACa,IAAI;UAC1B,KAAK,SAAS;YAAE;cACd,MAAM/E,KAAK,GAAG5G,MAAM,CAACsN,UAAU,CAACjO,KAAK,CAAC+S,eAAe,EAAE,CAAC;cACxD,MAAM/N,EAAE,GAAGtC,SAAS,CAACA,SAAS,CAACkH,OAAO,CAAC6B,OAAO,CAACzG,EAAE,CAAC;cAClD,MAAM6K,GAAG,GAAGd,MAAM,CAACwD,QAAQ,CAACS,QAAQ,CAACjJ,GAAG,CAACH,OAAO,CAAC6B,OAAO,CAACwH,GAAG,CAAE;cAC9D,IAAI1G,OAAyD;cAC7D,IAAI,CAAC3C,OAAO,CAACV,OAAO,EAAE;gBACpB,MAAMgK,KAAK,GAAuB;kBAChCrD,GAAG,EAAEA,GAAU;kBACf3F,OAAO,EAAE3C,KAAK,CAAC4L;iBAChB;gBACDhB,cAAc,CAACnI,GAAG,CAAChF,EAAE,EAAEkO,KAAK,CAAC;gBAC7B3G,OAAO,GAAG6G,iBAAiB,CAACF,KAAK,EAAEb,MAAM,CAACgB,KAAK,CAAC;cAClD,CAAC,MAAM;gBACL9G,OAAO,GAAG+G,oBAAoB;cAChC;cACA,OAAO9D,YAAY,CACjB,IAAIzN,OAAO,CAACwR,eAAe,CAAC;gBAC1B7H,QAAQ,EAAEjK,QAAQ,CAAC+R,WAAW,CAAC;kBAC7B7H,SAAS,EAAE3G,EAAE;kBACbR,OAAO;kBACPyO,GAAG,EAAErJ,OAAO,CAAC6B,OAAO,CAACwH,GAAG;kBACxBQ,OAAO,EAAE7J,OAAO,CAAC6B,OAAO,CAACgI,OAAO;kBAChCC,OAAO,EAAE9J,OAAO,CAAC6B,OAAO,CAACiI,OAAO;kBAChCC,OAAO,EAAE/J,OAAO,CAAC6B,OAAO,CAACkI,OAAO;kBAChCC,MAAM,EAAEhK,OAAO,CAAC6B,OAAO,CAACmI,MAAM;kBAC9BC,OAAO,EAAEjK,OAAO,CAAC6B,OAAO,CAACoI;iBAC1B,CAAC;gBACFC,iBAAiB,EAAEnT,MAAM,CAACoT,IAAI,EAAE;gBAChClE,GAAG;gBACH3F,OAAO,EAAE3C,KAAK,CAAC4L,cAAsC;gBACrD5G;eACD,CAAC,EACF3C,OAAO,CAACV,OAAO,CAChB;YACH;UACA,KAAK,KAAK;YAAE;cACV,MAAMyC,SAAS,GAAGjJ,SAAS,CAACA,SAAS,CAACkH,OAAO,CAAC6B,OAAO,CAACE,SAAS,CAAC;cAChE,MAAMuH,KAAK,GAAGf,cAAc,CAACpI,GAAG,CAAC4B,SAAS,CAAC;cAC3C,IAAI,CAACuH,KAAK,EAAE,OAAOrT,MAAM,CAACoI,IAAI;cAC9B,OAAOuH,YAAY,CACjB,IAAIzN,OAAO,CAACiS,gBAAgB,CAAC;gBAC3BtI,QAAQ,EAAE,IAAIjK,QAAQ,CAACwS,QAAQ,CAAC;kBAC9BjP,EAAE,EAAE9B,YAAY,CAACwJ,UAAU,EAAE;kBAC7BlI,OAAO;kBACPmH,SAAS;kBACTuI,OAAO,EAAEhB,KAAK,CAACiB;iBAChB,CAAC;gBACFtE,GAAG,EAAEqD,KAAK,CAACrD;eACZ,CAAC,EACF,KAAK,CACN;YACH;UACA,KAAK,WAAW;YAAE;cAChB,MAAMlE,SAAS,GAAGjJ,SAAS,CAACA,SAAS,CAACkH,OAAO,CAAC6B,OAAO,CAACE,SAAS,CAAC;cAChE,MAAMuH,KAAK,GAAGf,cAAc,CAACpI,GAAG,CAAC4B,SAAS,CAAE;cAC5C,IAAI,CAACuH,KAAK,EAAE,OAAOrT,MAAM,CAACoI,IAAI;cAC9BkK,cAAc,CAACtE,MAAM,CAAClC,SAAS,CAAC;cAChC,IAAIhM,OAAO,CAACoK,GAAG,CAACmJ,KAAK,CAACrD,GAAG,CAACC,WAAW,EAAExO,eAAe,CAAC,EAAE;gBACvD,OAAOzB,MAAM,CAACoI,IAAI;cACpB;cACA;cACA;cACA,MAAMmM,oBAAoB,GAAG1T,UAAU,CAACqJ,GAAG,CAACzG,UAAU,CAAC,IACrDsG,OAAO,CAAC6B,OAAO,CAAC4I,YAAY,CAACxM,IAAI,CAAE7C,EAAE,IAAKnD,oBAAoB,CAACyD,GAAG,CAACN,EAAE,CAAC,CAAC;cACzE,IAAIoP,oBAAoB,IAAIzU,OAAO,CAACoK,GAAG,CAACmJ,KAAK,CAACrD,GAAG,CAACC,WAAW,EAAEzO,SAAS,CAAC,EAAE;gBACzE,OAAOxB,MAAM,CAACoI,IAAI;cACpB;cACA,OAAOpI,MAAM,CAAC6F,MAAM,CAAC8J,YAAY,CAC/B,IAAIzN,OAAO,CAACiS,gBAAgB,CAAC;gBAC3BtI,QAAQ,EAAE,IAAIjK,QAAQ,CAAC6S,SAAS,CAAC;kBAC/BtP,EAAE,EAAE9B,YAAY,CAACwJ,UAAU,EAAE;kBAC7BlI,OAAO;kBACPmH;iBACD,CAAC;gBACFkE,GAAG,EAAEqD,KAAK,CAACrD;eACZ,CAAC,EACF,KAAK,EACL,CAAC,CACF,CAAC;YACJ;QACF;QACA,OAAOhQ,MAAM,CAACoI,IAAI;MACpB;KACD,CAAC;IAEF,MAAMsM,aAAa,GAAQ,EAAE;IAC7B,KAAK,MAAMC,MAAM,IAAIC,MAAM,CAACC,IAAI,CAACrC,MAAM,CAACA,MAAM,CAAC,EAAE;MAC/CkC,aAAa,CAACC,MAAM,CAAC,GAAG,UAAoBf,OAAY,EAAE7J,OAEzD;QACC,OAAQyI,MAAc,CAACA,MAAM,CAACmC,MAAM,CAAC,CAACf,OAAO,EAAE;UAC7C,GAAG7J,OAAO;UACVM,OAAO,EAAEN,OAAO,EAAEM,OAAO,GACrBvK,OAAO,CAACgV,KAAK,CAAC/K,OAAO,CAACM,OAAO,EAAE,IAAI,CAAC0K,oBAAoB,CAAC,CAAC,GAC1D,IAAI,CAACA,oBAAoB;SAC9B,CAAC;MACJ,CAAC;IACH;IAEA,OAAO7T,KAAK,CAACyK,YAAY,CACvB,OAAO3L,MAAM,CAACwD,KAAK,EACnBxD,MAAM,CAACgV,gBAAgB,CAAEtN,KAAK,IAAI;MAChC1F,oBAAoB,CAACkE,GAAG,CAACwB,KAAK,CAACvC,EAAE,EAAE,CAAC;MACpC,OAAOnF,MAAM,CAACoI,IAAI;IACpB,CAAC,CAAC,CACH;IAED,OAAQnD,QAAgB,IAAI;MAC1B,MAAME,EAAE,GAAGxD,QAAQ,CAACqB,IAAI,CAACiC,QAAQ,CAAC;MAClC,OAAO;QACL,GAAGyP,aAAa;QAChB,CAACK,oBAAoB,GAAG9B,gBAAgB,CAAC5I,OAAO,CAAC3I,aAAa,CAACsB,IAAI,CAAC;UAClE0C,OAAO,EAAEV,UAAU,CAACG,EAAE,EAAE+J,MAAM,CAAC+F,aAAa,CAAChQ,QAAoB,CAAC,CAAC;UACnEA,QAAQ,EAAEE,EAAE;UACZ4G,UAAU,EAAEmD,MAAM,CAAC0D;SACpB,CAAC;OACH;IACH,CAAC;EACH,CAAC,CAAC,CAAC;EAEH,MAAMsC,UAAU,GAA0BhG,MAAoB,IAEzDqD,OAAO,CAACrI,GAAG,CAACgF,MAAM,CAAC;EAExB,MAAMuE,oBAAoB,GAAI0B,MAAwB,IAAKnV,MAAM,CAACoI,IAAI;EAEtE,MAAMmL,iBAAiB,GAAGA,CACxBF,KAAyB,EACzBG,KAAsD,KAEvD4B,KAAuB,IAAI;IAC1B,QAAQA,KAAK,CAAC3I,IAAI;MAChB,KAAK,OAAO;QAAE;UACZ4G,KAAK,CAACiB,WAAW,GAAGc,KAAK,CAACjQ,EAAE;UAC5B,OAAOqO,KAAK,CAAC;YACX/G,IAAI,EAAE,OAAO;YACb4I,QAAQ,EAAE,CAAC;YACXvJ,SAAS,EAAEnM,SAAS,CAACyV,KAAK,CAACtJ,SAAS,CAAC;YACrC9C,MAAM,EAAEoM,KAAK,CAACpM;WACf,CAAC;QACJ;MACA,KAAK,UAAU;QAAE;UACfsJ,cAAc,CAACtE,MAAM,CAACoH,KAAK,CAACtJ,SAAS,CAAC;UACtC,OAAO0H,KAAK,CAAC;YACX/G,IAAI,EAAE,MAAM;YACZ4I,QAAQ,EAAE,CAAC;YACXvJ,SAAS,EAAEnM,SAAS,CAACyV,KAAK,CAACtJ,SAAS,CAAC;YACrCwJ,IAAI,EAAEF,KAAK,CAACE;WACb,CAAC;QACJ;IACF;EACF,CAAC;EAED;EAEA,MAAMjL,OAAO,GAAG,OAAOrK,MAAM,CAACqK,OAAO,EAAkB;EACvD,MAAMkL,MAAM,GAAG,OAAOzT,YAAY;EAClC,MAAM0T,cAAc,GAAuCxV,MAAM,CAAC4J,UAAU,CAC1E,WAAUsF,MAAM,EAAEuG,KAAK,EAAE1L,OAAO;IAC9B,IAAIjJ,MAAM,CAACwM,MAAM,CAACpK,MAAM,CAAC2B,aAAa,CAAC,IAAIf,cAAc,CAAC2B,GAAG,CAACyJ,MAAM,CAAC0D,IAAI,CAAC,EAAE;IAC5E,MAAMpP,KAAK,GAAG,OAAOtC,KAAK,CAAC8B,IAAI,EAAE;IACjC,MAAMkG,OAAO,GAAG,OAAOrH,aAAa,CAACmB,IAAI,CAACkM,MAAM,EAAEuG,KAAK,EAAE;MACvD,GAAG1L,OAAO;MACVrG,OAAO;MACPmB,aAAa,EAAE3B,MAAM,CAAC2B,aAAa,CAACE,KAAK;MACzC2Q;KACD,CAAC,CAAC1O,IAAI,CACLhH,MAAM,CAAC2K,OAAO,CAACN,OAAO,CAACrD,IAAI,CACzBlH,OAAO,CAACoG,GAAG,CAACpE,YAAY,EAAEyT,MAAM,CAAC,EACjCzV,OAAO,CAACoG,GAAG,CAAChF,KAAK,CAACA,KAAK,EAAEsC,KAAK,CAAC,EAC/B1D,OAAO,CAACoG,GAAG,CAACrD,SAAS,CAACS,SAAS,EAAED,YAAY,CAAC,CAC/C,CAAC,CAC2C;IAC/CS,cAAc,CAACqG,GAAG,CAAC+E,MAAM,CAAC0D,IAAI,EAAE;MAC9B1D,MAAM;MACN1L,KAAK;MACL0F;KACD,CAAC;IAEF,OAAOhI,KAAK,CAACyK,YAAY,CAACnI,KAAK,EAAExD,MAAM,CAAC+O,IAAI,CAAC,MAAMjL,cAAc,CAACkK,MAAM,CAACkB,MAAM,CAAC0D,IAAI,CAAC,CAAC,CAAC;IACvF,OAAO5R,MAAM,CAAC6J,OAAO,CAACvG,MAAM,EAAE9B,gBAAgB,CAAC;MAAE0M;IAAM,CAAE,CAAC,CAAC;EAC7D,CAAC,CACF;EAED,OAAOhO,KAAK,CAAC0E,gBAAgB,CAC3BrC,aAAa,EACZ+R,IAAI,IACHtV,MAAM,CAAC+I,OAAO,CACZjF,cAAc,CAACkF,MAAM,EAAE,EACtBC,KAAK,IACJjJ,MAAM,CAACiH,aAAa,CAAC/F,KAAK,CAACsF,KAAK,CAACyC,KAAK,CAACzF,KAAK,EAAE8R,IAAI,CAAC,EAAGpO,KAAK,IACzDlH,MAAM,CAACuH,YAAY,CAACvH,MAAM,CAACwI,QAAQ,CAAC,8BAA8B,EAAEtB,KAAK,CAAC,EAAE;IAC1EgI,MAAM,EAAEjG,KAAK,CAACiG,MAAM,CAAC0D;GACtB,CAAC,CAAC,EACP;IAAExJ,WAAW,EAAE,WAAW;IAAEC,OAAO,EAAE;EAAI,CAAE,CAC5C,CACJ;EAED;EAEA,IAAIvI,MAAM,CAAC8D,MAAM,CAAC1B,MAAM,CAAC2B,aAAa,CAAC,EAAE;IACvC,MAAMc,WAAW,GAAGzC,MAAM,CAAC2B,aAAa,CAACE,KAAK;IAC9C;IACA,OAAO7D,KAAK,CAACyK,YAAY,CACvBpI,aAAa,EACbvD,MAAM,CAACiD,GAAG,CAAC,aAAS;MAClB,OAAOjD,MAAM,CAAC8K,QAAQ,CAAC,yCAAyC,EAAEnF,WAAW,CAAC;MAC9E,OAAOvC,YAAY,CAACuS,UAAU,CAAChQ,WAAW,CAAC,CAACqB,IAAI,CAC9ChH,MAAM,CAACiH,aAAa,CAAEC,KAAK,IAAKlH,MAAM,CAACwI,QAAQ,CAAC,6CAA6C,EAAEtB,KAAK,CAAC,CAAC,CACvG;MACD,OAAOuB,eAAe;IACxB,CAAC,CAAC,CACH;EACH;EAEA,OAAOvH,KAAK,CAACyK,YAAY,CACvBpI,aAAa,EACbvD,MAAM,CAACgV,gBAAgB,CAAEtN,KAAK,IAAI;IAChC7G,UAAU,CAACsJ,GAAG,CAAC1G,UAAU,EAAE,IAAI,CAAC;IAChCzB,oBAAoB,CAACkE,GAAG,CAACwB,KAAK,CAACvC,EAAE,EAAE,CAAC;IACpC,OAAOnF,MAAM,CAACoI,IAAI;EACpB,CAAC,CAAC,CACH;EAED,MAAMwN,iBAAiB,GAAG5V,MAAM,CAACiD,GAAG,CAAC,aAAS;IAC5C,IAAI4S,KAAK,GAAG,CAAC;IACb,KAAK,MAAM5M,KAAK,IAAInF,cAAc,CAACkF,MAAM,EAAE,EAAE;MAC3C6M,KAAK,IAAI,OAAO5M,KAAK,CAACC,OAAO,CAAC0M,iBAAiB;IACjD;IACA,OAAOC,KAAK;EACd,CAAC,CAAC;EAEF,MAAMH,QAAQ,GAAG5S,QAAQ,CAACgT,EAAE,CAAC;IAC3BtR,qBAAqB;IACrBQ,UAAU;IACVvB,UAAU,EAAEzD,MAAM,CAAC+O,IAAI,CAAC,MAAMlO,UAAU,CAACqJ,GAAG,CAACzG,UAAU,CAAC,CAAC;IACzD+R,cAAc;IACd7L,iBAAiB;IACjBuL,UAAU;IACV3I,IAAI,EAAE4C,SAAS;IACfQ,YAAY,EAAEA,CAAC/D,OAAO,EAAEvC,OAAO,KAAKsG,YAAY,CAAC/D,OAAO,EAAEvC,OAAO,CAAC;IAClEiG,MAAM,EAAG1D,OAAO,IAAKyD,WAAW,CAACzD,OAAO,EAAE,KAAK,CAAC;IAChDgK,iBAAiB;IACjBG,WAAW,EAAElP,gBAAgB,CAACC,IAAI;IAClCsJ;GACD,CAAC;EAEF,OAAOsF,QAAQ;AACjB,CAAC,CAAC;AAEF;;;;AAIA,OAAO,MAAMM,KAAK,gBAIdtV,KAAK,CAACgK,MAAM,CAAC5H,QAAQ,EAAEE,IAAI,CAAC,CAACgE,IAAI,cACnCtG,KAAK,CAACiK,OAAO,CAAC,CAAC9H,SAAS,CAACoT,cAAc,EAAEnU,YAAY,CAACoU,OAAO,CAAC,CAAC,CAChE;AAED;AAEA,MAAMjD,gBAAgB,gBAAGnT,OAAO,CAACqW,UAAU,CAAgB,wCAAwC,CAAC;AACpG,MAAMpB,oBAAoB,gBAAGqB,MAAM,CAACC,GAAG,CAACpD,gBAAgB,CAACqD,GAAG,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"Sharding.js","names":["RpcClient","RequestId","Arr","Cause","Context","Deferred","Effect","Equal","Exit","Fiber","FiberHandle","FiberMap","FiberRef","constant","HashMap","Iterable","Layer","MutableHashMap","MutableHashSet","MutableRef","Option","Predicate","PubSub","Schedule","Scope","Stream","AlreadyProcessingMessage","EntityNotAssignedToRunner","EntityNotManagedByRunner","RunnerUnavailable","Persisted","Uninterruptible","EntityAddress","EntityId","Envelope","EntityManager","EntityReaper","hashString","internalInterruptors","ResourceMap","Message","MessageStorage","Reply","Runners","ShardId","ShardingConfig","EntityRegistered","SingletonRegistered","ShardManagerClient","ShardStorage","SingletonAddress","Snowflake","Sharding","Tag","make","gen","config","runners","shardManager","snowflakeGen","Generator","shardingScope","scope","isShutdown","storage","storageEnabled","noop","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","shardsPerGroup","disableValidation","isEntityOnLocalShards","has","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","map","get","set","dieMessage","context","wrappedRun","locally","currentLogAnnotations","never","scoped","provide","orDie","publish","logDebug","running","unsafeHas","shouldBeRunning","fiberId","openStorageReadLatch","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","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","interrupt","MailboxFull","sendRetryInterval","sync","e","effect","entity","sendLocal","simulateRemoteSerialization","notifyLocal","notify","envelopeId","isTransientError","or","is","sendOutgoing","retries","catchIf","maybeRunner","isPersisted","rpc","annotations","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","client","makeNoSerialization","protocol","spanPrefix","type","supportsAck","generateRequestId","onFromClient","unsafeGet","ClientAddressTag","getCurrentFiber","requests","tag","entry","currentContext","makeClientRespond","write","clientRespondDiscard","OutgoingRequest","makeRequest","payload","headers","traceId","spanId","sampled","lastReceivedReply","none","OutgoingEnvelope","AckChunk","replyId","lastChunkId","isTransientInterrupt","interruptors","Interrupt","patchClient","wrappedClient","method","Object","keys","merge","currentClientAddress","withFiberRuntime","getShardGroup","makeClient","_reply","reply","clientId","exit","reaper","registerEntity","build","sharding","unregister","activeEntityCount","count","of","pollStorage","layer","layerGenerator","Default","GenericTag","Symbol","for","key"],"sources":["../../src/Sharding.ts"],"sourcesContent":[null],"mappings":"AAIA,OAAO,KAAKA,SAAS,MAAM,uBAAuB;AAClD,SAA0BC,SAAS,QAAQ,wBAAwB;AACnE,OAAO,KAAKC,GAAG,MAAM,cAAc;AACnC,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,OAAO,MAAM,gBAAgB;AACzC,OAAO,KAAKC,QAAQ,MAAM,iBAAiB;AAE3C,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,IAAI,MAAM,aAAa;AACnC,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,WAAW,MAAM,oBAAoB;AACjD,OAAO,KAAKC,QAAQ,MAAM,iBAAiB;AAC3C,OAAO,KAAKC,QAAQ,MAAM,iBAAiB;AAC3C,SAASC,QAAQ,QAAQ,iBAAiB;AAC1C,OAAO,KAAKC,OAAO,MAAM,gBAAgB;AACzC,OAAO,KAAKC,QAAQ,MAAM,iBAAiB;AAC3C,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,cAAc,MAAM,uBAAuB;AACvD,OAAO,KAAKC,cAAc,MAAM,uBAAuB;AACvD,OAAO,KAAKC,UAAU,MAAM,mBAAmB;AAC/C,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,SAAS,MAAM,kBAAkB;AAC7C,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,QAAQ,MAAM,iBAAiB;AAC3C,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,MAAM,MAAM,eAAe;AAEvC,SACEC,wBAAwB,EACxBC,yBAAyB,EACzBC,wBAAwB,EACxBC,iBAAiB,QACZ,mBAAmB;AAC1B,SAASC,SAAS,EAAEC,eAAe,QAAQ,oBAAoB;AAE/D,SAASC,aAAa,QAAQ,oBAAoB;AAClD,SAASC,QAAQ,QAAQ,eAAe;AACxC,OAAO,KAAKC,QAAQ,MAAM,eAAe;AACzC,OAAO,KAAKC,aAAa,MAAM,6BAA6B;AAC5D,SAASC,YAAY,QAAQ,4BAA4B;AACzD,SAASC,UAAU,QAAQ,oBAAoB;AAC/C,SAASC,oBAAoB,QAAQ,4BAA4B;AACjE,SAASC,WAAW,QAAQ,2BAA2B;AACvD,OAAO,KAAKC,OAAO,MAAM,cAAc;AACvC,OAAO,KAAKC,cAAc,MAAM,qBAAqB;AACrD,OAAO,KAAKC,KAAK,MAAM,YAAY;AAEnC,SAASC,OAAO,QAAQ,cAAc;AACtC,SAASC,OAAO,QAAQ,cAAc;AACtC,SAASC,cAAc,QAAQ,qBAAqB;AACpD,SAASC,gBAAgB,EAAkCC,mBAAmB,QAAQ,gCAAgC;AACtH,SAASC,kBAAkB,QAAQ,mBAAmB;AACtD,SAASC,YAAY,QAAQ,mBAAmB;AAChD,SAASC,gBAAgB,QAAQ,uBAAuB;AACxD,OAAO,KAAKC,SAAS,MAAM,gBAAgB;AAE3C;;;;AAIA,OAAM,MAAOC,QAAS,sBAAQhD,OAAO,CAACiD,GAAG,CAAC,0BAA0B,CAAC,EAsGjE;AAYJ,MAAMC,IAAI,gBAAGhD,MAAM,CAACiD,GAAG,CAAC,aAAS;EAC/B,MAAMC,MAAM,GAAG,OAAOX,cAAc;EAEpC,MAAMY,OAAO,GAAG,OAAOd,OAAO;EAC9B,MAAMe,YAAY,GAAG,OAAOV,kBAAkB;EAC9C,MAAMW,YAAY,GAAG,OAAOR,SAAS,CAACS,SAAS;EAC/C,MAAMC,aAAa,GAAG,OAAOvD,MAAM,CAACwD,KAAK;EACzC,MAAMC,UAAU,GAAG5C,UAAU,CAACmC,IAAI,CAAC,KAAK,CAAC;EAEzC,MAAMU,OAAO,GAAG,OAAOvB,cAAc,CAACA,cAAc;EACpD,MAAMwB,cAAc,GAAGD,OAAO,KAAKvB,cAAc,CAACyB,IAAI;EACtD,MAAMC,YAAY,GAAG,OAAOlB,YAAY;EAExC,MAAMmB,cAAc,GAAG,IAAIC,GAAG,EAA8B;EAE5D,MAAMC,gBAAgB,GAAGrD,cAAc,CAACsD,KAAK,EAA0B;EACvE,MAAMC,UAAU,GAAGtD,cAAc,CAACqD,KAAK,EAAW;EAElD;EACA,MAAME,cAAc,GAAGvD,cAAc,CAACqD,KAAK,EAAW;EACtD,MAAMG,iBAAiB,GAAG,OAAOpE,MAAM,CAACqE,SAAS,CAAC,KAAK,CAAC;EAExD,MAAMC,MAAM,GAAG,OAAOtD,MAAM,CAACuD,SAAS,EAA6B;EACnE,MAAMC,qBAAqB,GAA6CrD,MAAM,CAACsD,UAAU,CAACH,MAAM,CAAC;EAEjG,MAAMI,aAAa,GAAIC,OAAsB,IAC3C7D,MAAM,CAAC8D,MAAM,CAAC1B,MAAM,CAAC2B,aAAa,CAAC,IAAI5E,KAAK,CAAC6E,MAAM,CAACH,OAAO,EAAEzB,MAAM,CAAC2B,aAAa,CAACE,KAAK,CAAC;EAE1F,SAASC,UAAUA,CAACC,QAAkB,EAAEC,KAAa;IACnD,MAAMC,EAAE,GAAGC,IAAI,CAACC,GAAG,CAACtD,UAAU,CAACkD,QAAQ,CAAC,GAAG/B,MAAM,CAACoC,cAAc,CAAC,GAAG,CAAC;IACrE,OAAOhD,OAAO,CAACU,IAAI,CAAC;MAAEkC,KAAK;MAAEC;IAAE,CAAE,EAAE;MAAEI,iBAAiB,EAAE;IAAI,CAAE,CAAC;EACjE;EAEA,SAASC,qBAAqBA,CAACb,OAAsB;IACnD,OAAO/D,cAAc,CAAC6E,GAAG,CAACtB,cAAc,EAAEQ,OAAO,CAACe,OAAO,CAAC;EAC5D;EAEA;EAEA,IAAI5E,MAAM,CAAC8D,MAAM,CAAC1B,MAAM,CAAC2B,aAAa,CAAC,EAAE;IACvC,MAAMc,WAAW,GAAGzC,MAAM,CAAC2B,aAAa,CAACE,KAAK;IAC9C,OAAO7D,KAAK,CAAC0E,gBAAgB,CAACrC,aAAa,EAAE,MAAK;MAChD;MACA,OAAOvD,MAAM,CAAC6F,MAAM,CAAChC,YAAY,CAACiC,UAAU,CAACH,WAAW,CAAC,CAAC;IAC5D,CAAC,CAAC;IAEF,MAAMI,eAAe,GAAGnF,cAAc,CAACqD,KAAK,EAAW;IACvD,OAAOjE,MAAM,CAACiD,GAAG,CAAC,aAAS;MACzB,OAAO,IAAI,EAAE;QACX,OAAOmB,iBAAiB,CAAC4B,KAAK;QAE9B;QACA,KAAK,MAAMN,OAAO,IAAIvB,cAAc,EAAE;UACpC,IAAIvD,cAAc,CAAC6E,GAAG,CAACvB,UAAU,EAAEwB,OAAO,CAAC,EAAE;UAC7C9E,cAAc,CAACqF,MAAM,CAAC9B,cAAc,EAAEuB,OAAO,CAAC;UAC9C9E,cAAc,CAACsF,GAAG,CAACH,eAAe,EAAEL,OAAO,CAAC;QAC9C;QACA;QACA,MAAMS,gBAAgB,GAAGvF,cAAc,CAACqD,KAAK,EAAW;QACxD,KAAK,MAAMyB,OAAO,IAAIxB,UAAU,EAAE;UAChC,IAAItD,cAAc,CAAC6E,GAAG,CAACtB,cAAc,EAAEuB,OAAO,CAAC,IAAI9E,cAAc,CAAC6E,GAAG,CAACM,eAAe,EAAEL,OAAO,CAAC,EAAE;UACjG9E,cAAc,CAACsF,GAAG,CAACC,gBAAgB,EAAET,OAAO,CAAC;QAC/C;QAEA,IAAI9E,cAAc,CAACwF,IAAI,CAACL,eAAe,CAAC,GAAG,CAAC,EAAE;UAC5C,OAAO/F,MAAM,CAACqG,MAAM,CAACC,cAAc,EAAE/C,aAAa,CAAC;UACnD,OAAOgD,aAAa;QACtB;QAEA,IAAI3F,cAAc,CAACwF,IAAI,CAACD,gBAAgB,CAAC,KAAK,CAAC,EAAE;UAC/C,OAAO/B,iBAAiB,CAACoC,KAAK;UAC9B;QACF;QAEA,MAAMC,QAAQ,GAAG,OAAO5C,YAAY,CAAC6C,OAAO,CAACf,WAAW,EAAEQ,gBAAgB,CAAC;QAC3E,OAAOnG,MAAM,CAAC6F,MAAM,CAACnC,OAAO,CAACiD,WAAW,CAACF,QAAQ,CAAC,CAAC;QACnD,KAAK,MAAMf,OAAO,IAAIe,QAAQ,EAAE;UAC9B7F,cAAc,CAACsF,GAAG,CAAC/B,cAAc,EAAEuB,OAAO,CAAC;QAC7C;QACA,IAAIe,QAAQ,CAACG,MAAM,GAAG,CAAC,EAAE;UACvB,OAAOC,gBAAgB,CAACC,IAAI;UAC5B,OAAO9G,MAAM,CAACqG,MAAM,CAACC,cAAc,EAAE/C,aAAa,CAAC;QACrD;QACA,OAAOvD,MAAM,CAAC+G,KAAK,CAAC,IAAI,CAAC;MAC3B;IACF,CAAC,CAAC,CAACC,IAAI,CACLhH,MAAM,CAACiH,aAAa,CAAEC,KAAK,IAAKlH,MAAM,CAACmH,UAAU,CAAC,kCAAkC,EAAED,KAAK,CAAC,CAAC,EAC7FlH,MAAM,CAACoH,MAAM,CAACnG,QAAQ,CAACoG,MAAM,CAACnE,MAAM,CAACoE,yBAAyB,CAAC,CAAC,EAChEtH,MAAM,CAACuH,YAAY,CAAC;MAClBC,OAAO,EAAE,iBAAiB;MAC1BC,MAAM,EAAE,UAAU;MAClBC,KAAK,EAAE,wBAAwB;MAC/BC,MAAM,EAAEhC;KACT,CAAC,EACF3F,MAAM,CAAC4H,aAAa,EACpB5H,MAAM,CAACqG,MAAM,CAAC9C,aAAa,CAAC,CAC7B;IAED;IACA,OAAOvD,MAAM,CAAC6H,OAAO,CAAC,MACpBhE,YAAY,CAACiE,OAAO,CAACnC,WAAW,EAAE,CAChC,GAAGxB,cAAc,EACjB,GAAG4B,eAAe,CACnB,CAAC,CACH,CAACiB,IAAI,CACJhH,MAAM,CAAC+H,OAAO,CAAEtB,QAAQ,IAAI;MAC1B,KAAK,MAAMf,OAAO,IAAIvB,cAAc,EAAE;QACpC,IAAI,CAACsC,QAAQ,CAACuB,IAAI,CAAEC,CAAC,IAAKA,CAAC,CAAChI,KAAK,CAACiI,MAAM,CAAC,CAACxC,OAAO,CAAC,CAAC,EAAE;UACnD9E,cAAc,CAACqF,MAAM,CAAC9B,cAAc,EAAEuB,OAAO,CAAC;UAC9C9E,cAAc,CAACsF,GAAG,CAACH,eAAe,EAAEL,OAAO,CAAC;QAC9C;MACF;MACA,OAAO9E,cAAc,CAACwF,IAAI,CAACL,eAAe,CAAC,GAAG,CAAC,GAC7C/F,MAAM,CAACmI,OAAO,CACZnI,MAAM,CAACqG,MAAM,CAACC,cAAc,EAAE/C,aAAa,CAAC,EAC5CgD,aAAa,CACd,GACDvG,MAAM,CAACoI,IAAI;IACf,CAAC,CAAC,EACFpI,MAAM,CAACqI,KAAK,CAAC;MACXC,KAAK,EAAE,CAAC;MACRC,QAAQ,EAAEtH,QAAQ,CAACoG,MAAM,CAAC,EAAE;KAC7B,CAAC,EACFrH,MAAM,CAACiH,aAAa,CAAEC,KAAK,IACzBlH,MAAM,CAACwI,QAAQ,CAAC,+BAA+B,EAAEtB,KAAK,CAAC,CAACF,IAAI,CAC1DhH,MAAM,CAACmI,OAAO,CAACM,eAAe,CAAC,CAChC,CACF,EACDzI,MAAM,CAAC0I,KAAK,CAAC,WAAW,CAAC,EACzB1I,MAAM,CAAC2I,OAAO,EACd3I,MAAM,CAAC4H,aAAa,EACpB5H,MAAM,CAACqG,MAAM,CAAC9C,aAAa,CAAC,CAC7B;IAED,MAAMqF,iBAAiB,GAAG5I,MAAM,CAAC6I,mBAAmB,CAAC,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC,CAAC;IACtE,MAAMvC,aAAa,GAAGqC,iBAAiB,CACrC5I,MAAM,CAAC6H,OAAO,CAAC,MACb7H,MAAM,CAAC+I,OAAO,CACZhD,eAAe,EACdL,OAAO,IACN1F,MAAM,CAAC+I,OAAO,CACZjF,cAAc,CAACkF,MAAM,EAAE,EACtBC,KAAK,IAAKA,KAAK,CAACC,OAAO,CAACC,cAAc,CAACzD,OAAO,CAAC,EAChD;MAAE0D,WAAW,EAAE,WAAW;MAAEC,OAAO,EAAE;IAAI,CAAE,CAC5C,CAACrC,IAAI,CACJhH,MAAM,CAACmI,OAAO,CAACtE,YAAY,CAACyF,OAAO,CAAC3D,WAAW,EAAED,OAAO,CAAC,CAAC,EAC1D1F,MAAM,CAACuH,YAAY,CAAC;MAClBI,MAAM,EAAEhC;KACT,CAAC,EACF3F,MAAM,CAACmI,OAAO,CAAC,MAAK;MAClBvH,cAAc,CAACqF,MAAM,CAACF,eAAe,EAAEL,OAAO,CAAC;IACjD,CAAC,CAAC,CACH,EACH;MAAE0D,WAAW,EAAE,WAAW;MAAEC,OAAO,EAAE;IAAI,CAAE,CAC5C,CACF,CACF;EACH;EAEA,MAAMZ,eAAe,GAAGzI,MAAM,CAAC6H,OAAO,CAAC,MAAK;IAC1CjH,cAAc,CAAC2I,KAAK,CAACrF,UAAU,CAAC;IAChC,OAAOE,iBAAiB,CAAC0C,IAAI;EAC/B,CAAC,CAAC;EAEF;EAEA,MAAM0C,UAAU,GAAG,IAAIzF,GAAG,EAAiF;EAC3G,MAAM0F,eAAe,GAAG,OAAOpJ,QAAQ,CAAC2C,IAAI,EAAoB;EAChE,MAAM0G,iBAAiB,GAAG1J,MAAM,CAAC6I,mBAAmB,CAAC,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC,CAAC;EAEtE,MAAMa,iBAAiB,GAA0C3J,MAAM,CAAC4J,UAAU,CAChF,WAAUC,IAAI,EAAEC,GAAG,EAAEC,OAAO;IAC1B,MAAMC,UAAU,GAAGD,OAAO,EAAEC,UAAU,IAAI,SAAS;IACnD,MAAMrF,OAAO,GAAG,IAAI/B,gBAAgB,CAAC;MACnC8C,OAAO,EAAEV,UAAU,CAACrD,QAAQ,CAACqB,IAAI,CAAC6G,IAAI,CAAC,EAAEG,UAAU,CAAC;MACpDH;KACD,CAAC;IAEF,IAAII,GAAG,GAAGT,UAAU,CAACU,GAAG,CAACvF,OAAO,CAACe,OAAO,CAAC;IACzC,IAAI,CAACuE,GAAG,EAAE;MACRA,GAAG,GAAGtJ,cAAc,CAACsD,KAAK,EAAE;MAC5BuF,UAAU,CAACW,GAAG,CAACxF,OAAO,CAACe,OAAO,EAAEuE,GAAG,CAAC;IACtC;IACA,IAAItJ,cAAc,CAAC8E,GAAG,CAACwE,GAAG,EAAEtF,OAAO,CAAC,EAAE;MACpC,OAAO,OAAO3E,MAAM,CAACoK,UAAU,CAAC,cAAcP,IAAI,yBAAyB,CAAC;IAC9E;IAEA,MAAMQ,OAAO,GAAG,OAAOrK,MAAM,CAACqK,OAAO,EAAS;IAC9C,MAAMC,UAAU,GAAGR,GAAG,CAAC9C,IAAI,CACzBhH,MAAM,CAACuK,OAAO,CAACjK,QAAQ,CAACkK,qBAAqB,EAAEhK,OAAO,CAACyD,KAAK,EAAE,CAAC,EAC/DjE,MAAM,CAACmI,OAAO,CAACnI,MAAM,CAACyK,KAAK,CAAC,EAC5BzK,MAAM,CAAC0K,MAAM,EACb1K,MAAM,CAAC2K,OAAO,CAACN,OAAO,CAAC,EACvBrK,MAAM,CAAC4K,KAAK,EACZ5K,MAAM,CAAC4H,aAAa,CACG;IACzBjH,cAAc,CAACwJ,GAAG,CAACF,GAAG,EAAEtF,OAAO,EAAE2F,UAAU,CAAC;IAE5C,OAAOtJ,MAAM,CAAC6J,OAAO,CAACvG,MAAM,EAAE7B,mBAAmB,CAAC;MAAEkC;IAAO,CAAE,CAAC,CAAC;IAE/D;IACA,IAAI/D,cAAc,CAAC6E,GAAG,CAACtB,cAAc,EAAEQ,OAAO,CAACe,OAAO,CAAC,EAAE;MACvD,OAAO1F,MAAM,CAAC8K,QAAQ,CAAC,oBAAoB,EAAEnG,OAAO,CAAC;MACrD,OAAOtE,QAAQ,CAACyJ,GAAG,CAACL,eAAe,EAAE9E,OAAO,EAAE2F,UAAU,CAAC;IAC3D;EACF,CAAC,EACDZ,iBAAiB,CAClB;EAED,MAAMpD,cAAc,GAAGoD,iBAAiB,CAAC1J,MAAM,CAACiD,GAAG,CAAC,aAAS;IAC3D,KAAK,MAAM,CAACyC,OAAO,EAAEuE,GAAG,CAAC,IAAIT,UAAU,EAAE;MACvC,KAAK,MAAM,CAAC7E,OAAO,EAAEmF,GAAG,CAAC,IAAIG,GAAG,EAAE;QAChC,MAAMc,OAAO,GAAG1K,QAAQ,CAAC2K,SAAS,CAACvB,eAAe,EAAE9E,OAAO,CAAC;QAC5D,MAAMsG,eAAe,GAAGrK,cAAc,CAAC6E,GAAG,CAACtB,cAAc,EAAEuB,OAAO,CAAC;QACnE,IAAIqF,OAAO,IAAI,CAACE,eAAe,EAAE;UAC/B,OAAOjL,MAAM,CAAC8K,QAAQ,CAAC,oBAAoB,EAAEnG,OAAO,CAAC;UACrD3C,oBAAoB,CAACkE,GAAG,CAAC,OAAOlG,MAAM,CAACkL,OAAO,CAAC;UAC/C,OAAO7K,QAAQ,CAAC4F,MAAM,CAACwD,eAAe,EAAE9E,OAAO,CAAC;QAClD,CAAC,MAAM,IAAI,CAACoG,OAAO,IAAIE,eAAe,EAAE;UACtC,OAAOjL,MAAM,CAAC8K,QAAQ,CAAC,oBAAoB,EAAEnG,OAAO,CAAC;UACrD,OAAOtE,QAAQ,CAACyJ,GAAG,CAACL,eAAe,EAAE9E,OAAO,EAAEmF,GAAG,CAAC;QACpD;MACF;IACF;EACF,CAAC,CAAC,CAAC;EAEH;EAEA,MAAMjD,gBAAgB,GAAG,OAAO7G,MAAM,CAACqE,SAAS,CAAC,IAAI,CAAC;EACtD,MAAM8G,oBAAoB,GAAG5K,QAAQ,CAACsG,gBAAgB,CAACC,IAAI,CAAC;EAE5D,MAAMsE,eAAe,GAAGpL,MAAM,CAAC6I,mBAAmB,CAAC,CAAC,CAAC;EACrD,MAAMwC,mBAAmB,GAAGD,eAAe,CAACtC,WAAW,CAAC,CAAC,CAAC;EAE1D,IAAIwC,uBAAuB,GAAIC,QAAsC,IAAK,IAAI;EAE9E;EACA;EACA,MAAMC,cAAc,GAAG,IAAIC,GAAG,EAAuB;EACrD,MAAMC,iBAAiB,GAAG,IAAID,GAAG,EAA4B;EAE7D,IAAI9H,cAAc,IAAI7C,MAAM,CAAC8D,MAAM,CAAC1B,MAAM,CAAC2B,aAAa,CAAC,EAAE;IACzD,MAAMc,WAAW,GAAGzC,MAAM,CAAC2B,aAAa,CAACE,KAAK;IAE9C,OAAO/E,MAAM,CAACiD,GAAG,CAAC,aAAS;MACzB,OAAOjD,MAAM,CAAC8K,QAAQ,CAAC,UAAU,CAAC;MAClC,OAAO9K,MAAM,CAAC2L,YAAY,CAAC,MAAM3L,MAAM,CAAC8K,QAAQ,CAAC,eAAe,CAAC,CAAC;MAElEU,cAAc,CAACjC,KAAK,EAAE;MACtBmC,iBAAiB,CAACnC,KAAK,EAAE;MAEzB+B,uBAAuB,GAAIM,OAAqC,IAAI;QAClE,IAAI,CAACJ,cAAc,CAAC/F,GAAG,CAACmG,OAAO,CAACC,QAAQ,CAACC,SAAS,CAAC,EAAE;UACnD,OAAO,KAAK;QACd;QACA,MAAM7C,KAAK,GAAGnF,cAAc,CAACoG,GAAG,CAAC0B,OAAO,CAACC,QAAQ,CAAClH,OAAO,CAACoH,UAAU,CAAC;QACrE,IAAI,CAAC9C,KAAK,EAAE,OAAO,IAAI;QACvB,OAAO,CAACA,KAAK,CAACC,OAAO,CAAC8C,eAAe,CAACJ,OAAO,EAAE;UAAEK,cAAc,EAAE;QAAI,CAAE,CAAC;MAC1E,CAAC;MAED,OAAO,IAAI,EAAE;QACX;QACA,OAAOpF,gBAAgB,CAACb,KAAK;QAE7B;QACA;QACAa,gBAAgB,CAACqF,WAAW,EAAE;QAE9B;QACA;QACA;QACA,OAAOd,eAAe,CAACe,IAAI,CAAC,CAAC,CAAC;QAE9B,MAAMC,QAAQ,GAAG,OAAO1I,OAAO,CAAC2I,mBAAmB,CAAClI,cAAc,CAAC;QACnE,MAAMmI,qBAAqB,GAAG,IAAIb,GAAG,EAAuB;QAC5DC,iBAAiB,CAACxF,GAAG,CAACoG,qBAAqB,CAAC;QAE5C,MAAMC,IAAI,GAAGvM,MAAM,CAACiH,aAAa,CAC/BjH,MAAM,CAAC6H,OAAO,CAAC,MAAK;UAClB,MAAM+D,OAAO,GAAGQ,QAAQ,CAACI,KAAK,CAAC;UAC/B,IAAIZ,OAAO,CAACa,IAAI,KAAK,iBAAiB,EAAE;YACtC,IAAIjB,cAAc,CAAC/F,GAAG,CAACmG,OAAO,CAACC,QAAQ,CAACC,SAAS,CAAC,EAAE;cAClD,OAAO9L,MAAM,CAACoI,IAAI;YACpB;YACAoD,cAAc,CAACtF,GAAG,CAAC0F,OAAO,CAACC,QAAQ,CAACC,SAAS,CAAC;YAC9CQ,qBAAqB,CAACpG,GAAG,CAAC0F,OAAO,CAACC,QAAQ,CAACC,SAAS,CAAC;UACvD;UACA,MAAMnH,OAAO,GAAGiH,OAAO,CAACC,QAAQ,CAAClH,OAAO;UACxC,IAAI,CAAC/D,cAAc,CAAC6E,GAAG,CAACtB,cAAc,EAAEQ,OAAO,CAACe,OAAO,CAAC,EAAE;YACxD,OAAO1F,MAAM,CAACoI,IAAI;UACpB;UACA,MAAMa,KAAK,GAAGnF,cAAc,CAACoG,GAAG,CAACvF,OAAO,CAACoH,UAAU,CAAC;UACpD,IAAI,CAAC9C,KAAK,EAAE;YACV,IAAI2C,OAAO,CAACa,IAAI,KAAK,iBAAiB,EAAE;cACtC,OAAOzM,MAAM,CAAC4K,KAAK,CAACgB,OAAO,CAACc,OAAO,CAACtK,KAAK,CAACuK,gBAAgB,CAACC,UAAU,CAAC;gBACpEzH,EAAE,EAAE9B,YAAY,CAACwJ,UAAU,EAAE;gBAC7Bf,SAAS,EAAEF,OAAO,CAACC,QAAQ,CAACC,SAAS;gBACrCgB,MAAM,EAAE,IAAIxL,wBAAwB,CAAC;kBAAEqD;gBAAO,CAAE;eACjD,CAAC,CAAC,CAAC;YACN;YACA,OAAO3E,MAAM,CAACoI,IAAI;UACpB;UAEA,MAAM2E,YAAY,GAAG9D,KAAK,CAACC,OAAO,CAAC8C,eAAe,CAACJ,OAAO,CAAC;UAE3D;UACA;UACA,IAAIA,OAAO,CAACa,IAAI,KAAK,kBAAkB,IAAIM,YAAY,EAAE;YACvD,OAAO9D,KAAK,CAACC,OAAO,CAACqD,IAAI,CAACX,OAAO,CAAC;UACpC,CAAC,MAAM,IAAImB,YAAY,EAAE;YACvB,OAAO/M,MAAM,CAACoI,IAAI;UACpB;UAEA;UACA;UACA,MAAM4E,eAAe,GAAGrM,cAAc,CAACuJ,GAAG,CAAC+C,qBAAqB,EAAEtI,OAAO,CAAC;UAC1E,IAAI7D,MAAM,CAAC8D,MAAM,CAACoI,eAAe,CAAC,EAAE;YAClCA,eAAe,CAACjI,KAAK,CAACmI,WAAW,CAAChH,GAAG,CAAC0F,OAAO,CAACC,QAAQ,CAACC,SAAS,CAAC;YACjE,IAAIF,OAAO,CAACC,QAAQ,CAACY,IAAI,KAAK,WAAW,EAAE;cACzCO,eAAe,CAACjI,KAAK,CAACoI,UAAU,CAAChD,GAAG,CAACyB,OAAO,CAACC,QAAQ,CAACC,SAAS,EAAEF,OAAmC,CAAC;YACvG;YACA,OAAO5L,MAAM,CAACoI,IAAI;UACpB;UACA,OAAOa,KAAK,CAACC,OAAO,CAACqD,IAAI,CAACX,OAAO,CAAC;QACpC,CAAC,CAAC,EACD1E,KAAK,IAAI;UACR,MAAM0E,OAAO,GAAGQ,QAAQ,CAACI,KAAK,CAAC;UAC/B,MAAMY,KAAK,GAAGvN,KAAK,CAACwN,aAAa,CAACnG,KAAK,CAAC;UACxC;UACA,IAAIpG,MAAM,CAACwM,MAAM,CAACF,KAAK,CAAC,EAAE;YACxB,OAAO1J,OAAO,CAAC6J,SAAS,CAACnL,KAAK,CAACuK,gBAAgB,CAACC,UAAU,CAAC;cACzDzH,EAAE,EAAE9B,YAAY,CAACwJ,UAAU,EAAE;cAC7Bf,SAAS,EAAEF,OAAO,CAACC,QAAQ,CAACC,SAAS;cACrCgB,MAAM,EAAEjN,KAAK,CAAC2N,MAAM,CAACtG,KAAK;aAC3B,CAAC,CAAC;UACL;UACA,IAAIkG,KAAK,CAACrI,KAAK,CAAC0H,IAAI,KAAK,aAAa,EAAE;YACtC;YACA,OAAOgB,uBAAuB,CAAC7B,OAAuC,CAAC;UACzE;UACA,OAAO5L,MAAM,CAACoI,IAAI;QACpB,CAAC,CACF;QAED,IAAIoE,KAAK,GAAG,CAAC;QACb,OAAOxM,MAAM,CAAC0N,SAAS,CAAC;UACtBC,KAAK,EAAEA,CAAA,KAAMnB,KAAK,GAAGJ,QAAQ,CAACxF,MAAM;UACpCgH,IAAI,EAAEA,CAAA,KAAMpB,KAAK,EAAE;UACnBqB,IAAI,EAAEtN,QAAQ,CAACgM,IAAI;SACpB,CAAC;QAEF;QACA,OAAOnB,eAAe,CAAC9B,OAAO,CAAC,CAAC,CAAC;QAEjC,OAAOoC,iBAAiB,CAACtF,IAAI,GAAG,EAAE,EAAE;UAClC,MAAM0H,MAAM,GAAGrN,QAAQ,CAACsN,UAAU,CAACrC,iBAAiB,CAAC;UACrDA,iBAAiB,CAACsC,MAAM,CAACF,MAAM,CAAC;UAChC,KAAK,MAAM3I,EAAE,IAAI2I,MAAM,EAAE;YACvBtC,cAAc,CAACwC,MAAM,CAAC7I,EAAE,CAAC;UAC3B;QACF;MACF;IACF,CAAC,CAAC,CAAC6B,IAAI,CACLhH,MAAM,CAAC0K,MAAM,EACb1K,MAAM,CAACiO,QAAQ,CAAC7C,eAAe,CAACtF,UAAU,CAAC,EAC3C9F,MAAM,CAACiH,aAAa,CAAEC,KAAK,IAAKlH,MAAM,CAACmH,UAAU,CAAC,sCAAsC,EAAED,KAAK,CAAC,CAAC,EACjGlH,MAAM,CAACoH,MAAM,CAACnG,QAAQ,CAACoG,MAAM,CAACnE,MAAM,CAACoE,yBAAyB,CAAC,CAAC,EAChEtH,MAAM,CAACuH,YAAY,CAAC;MAClBC,OAAO,EAAE,iBAAiB;MAC1BC,MAAM,EAAE,UAAU;MAClBC,KAAK,EAAE,mBAAmB;MAC1BC,MAAM,EAAEhC;KACT,CAAC,EACF3F,MAAM,CAAC4H,aAAa,EACpB5H,MAAM,CAACqG,MAAM,CAAC9C,aAAa,CAAC,CAC7B;IAED;IACA,OAAOsD,gBAAgB,CAACC,IAAI,CAACE,IAAI,CAC/BhH,MAAM,CAAC0I,KAAK,CAACxF,MAAM,CAACoE,yBAAyB,CAAC,EAC9CtH,MAAM,CAAC2I,OAAO,EACd3I,MAAM,CAAC4H,aAAa,EACpB5H,MAAM,CAACqG,MAAM,CAAC9C,aAAa,CAAC,CAC7B;IAED;IACA,MAAM0J,qBAAqB,GAAGtM,cAAc,CAACsD,KAAK,EAG9C;IACJ,MAAMwJ,uBAAuB,GAAIS,mBAAiD,IAAI;MACpF,MAAMvJ,OAAO,GAAGuJ,mBAAmB,CAACrC,QAAQ,CAAClH,OAAO;MACpD,MAAMqI,eAAe,GAAGrM,cAAc,CAACuJ,GAAG,CAAC+C,qBAAqB,EAAEtI,OAAO,CAAC;MAC1E,IAAI7D,MAAM,CAAC8D,MAAM,CAACoI,eAAe,CAAC,EAAE;QAClCA,eAAe,CAACjI,KAAK,CAACmI,WAAW,CAAChH,GAAG,CAACgI,mBAAmB,CAACrC,QAAQ,CAACC,SAAS,CAAC;QAC7E,OAAO9L,MAAM,CAACoI,IAAI;MACpB;MACAzH,cAAc,CAACwJ,GAAG,CAAC8C,qBAAqB,EAAEtI,OAAO,EAAE;QACjDuI,WAAW,EAAE,IAAIzB,GAAG,CAAC,CAACyC,mBAAmB,CAACrC,QAAQ,CAACC,SAAS,CAAC,CAAC;QAC9DqB,UAAU,EAAE,IAAIpJ,GAAG;OACpB,CAAC;MACF,OAAOoK,2BAA2B,CAACxJ,OAAO,CAAC;IAC7C,CAAC;IACD,MAAMwJ,2BAA2B,GAAGnO,MAAM,CAAC4J,UAAU,CACnD,WAAUjF,OAAsB;MAC9B,MAAMsE,KAAK,GAAGnF,cAAc,CAACoG,GAAG,CAACvF,OAAO,CAACoH,UAAU,CAAC;MACpD,IAAI,CAAC9C,KAAK,EAAE;QACVtI,cAAc,CAACsF,MAAM,CAACgH,qBAAqB,EAAEtI,OAAO,CAAC;QACrD;MACF;MAEA,MAAMqI,eAAe,GAAGlM,MAAM,CAACsN,UAAU,CAACzN,cAAc,CAACuJ,GAAG,CAAC+C,qBAAqB,EAAEtI,OAAO,CAAC,CAAC;MAC7F,IAAI0J,IAAI,GAAG,KAAK;MAEhB,OAAO,CAACA,IAAI,EAAE;QACZ;QACA,IAAI,CAACzN,cAAc,CAAC6E,GAAG,CAACtB,cAAc,EAAEQ,OAAO,CAACe,OAAO,CAAC,EAAE;UACxD;QACF;QAEA;QACA,MAAM4I,UAAU,GAAG1O,GAAG,CAACqE,KAAK,EAAuB;QACnD,KAAK,MAAMkB,EAAE,IAAI6H,eAAe,CAACE,WAAW,EAAE;UAC5C,IAAIoB,UAAU,CAAC1H,MAAM,KAAK,IAAI,EAAE;UAChC0H,UAAU,CAACC,IAAI,CAACpJ,EAAE,CAAC;QACrB;QAEA,MAAMiH,QAAQ,GAAG,OAAO1I,OAAO,CAAC8K,uBAAuB,CAACF,UAAU,CAAC;QAEnE;QACA,IAAIlC,QAAQ,CAACxF,MAAM,KAAK,CAAC,EAAE;UACzB,OAAO5G,MAAM,CAAC+G,KAAK,CAAC7D,MAAM,CAACoE,yBAAyB,CAAC;UACrD;QACF;QAEA,IAAIkF,KAAK,GAAG,CAAC;QAEb,MAAMiC,aAAa,GAGfzO,MAAM,CAAC0O,SAAS,CAClB1O,MAAM,CAAC6H,OAAO,CAAC,MAAK;UAClB,IAAI,CAACjH,cAAc,CAAC6E,GAAG,CAACtB,cAAc,EAAEQ,OAAO,CAACe,OAAO,CAAC,EAAE;YACxD,OAAO1F,MAAM,CAAC2O,IAAI,CAAC,IAAItN,yBAAyB,CAAC;cAAEsD;YAAO,CAAE,CAAC,CAAC;UAChE;UAEA,MAAMiH,OAAO,GAAGQ,QAAQ,CAACI,KAAK,CAAC;UAC/B;UACA,MAAMoC,SAAS,GAAGhD,OAAO,CAACa,IAAI,KAAK,iBAAiB,IAClDO,eAAe,CAACG,UAAU,CAACjD,GAAG,CAAC0B,OAAO,CAACC,QAAQ,CAACC,SAAS,CAAC;UAC5D,OAAO8C,SAAS,GACd5O,MAAM,CAAC+H,OAAO,CAACkB,KAAK,CAACC,OAAO,CAACqD,IAAI,CAACX,OAAO,CAAC,EAAE,MAAK;YAC/CoB,eAAe,CAACG,UAAU,CAACa,MAAM,CAACpC,OAAO,CAACC,QAAQ,CAACC,SAAS,CAAC;YAC7D,OAAO7C,KAAK,CAACC,OAAO,CAACqD,IAAI,CAACqC,SAAS,CAAC;UACtC,CAAC,CAAC,GACF3F,KAAK,CAACC,OAAO,CAACqD,IAAI,CAACX,OAAO,CAAC;QAC/B,CAAC,CAAC,EACF;UACEiD,WAAW,EAAEA,CAAA,KAAM7O,MAAM,CAAC0I,KAAK,CAAC+F,aAAa,EAAEvL,MAAM,CAAC4L,iBAAiB,CAAC;UACxE1N,wBAAwB,EAAEA,CAAA,KAAMpB,MAAM,CAACoI;SACxC,CACF;QAED,OAAOpI,MAAM,CAAC0N,SAAS,CAAC;UACtBC,KAAK,EAAEA,CAAA,KAAMnB,KAAK,GAAGJ,QAAQ,CAACxF,MAAM;UACpCiH,IAAI,EAAEtN,QAAQ,CAACkO,aAAa,CAAC;UAC7Bb,IAAI,EAAEA,CAAA,KAAMpB,KAAK;SAClB,CAAC;QAEF,KAAK,MAAMrH,EAAE,IAAImJ,UAAU,EAAE;UAC3BtB,eAAe,CAACE,WAAW,CAACc,MAAM,CAAC7I,EAAE,CAAC;QACxC;QACA,IAAI6H,eAAe,CAACE,WAAW,CAAC9G,IAAI,GAAG,CAAC,EAAE;QAE1C;QACA,OAAOiF,mBAAmB,CAACrL,MAAM,CAAC+O,IAAI,CAAC,MAAK;UAC1C,IAAI/B,eAAe,CAACE,WAAW,CAAC9G,IAAI,KAAK,CAAC,EAAE;YAC1CzF,cAAc,CAACsF,MAAM,CAACgH,qBAAqB,EAAEtI,OAAO,CAAC;YACrD0J,IAAI,GAAG,IAAI;UACb;QACF,CAAC,CAAC,CAAC;MACL;IACF,CAAC,EACDrO,MAAM,CAACqI,KAAK,CAAC;MACXsF,KAAK,EAAGqB,CAAC,IAAKA,CAAC,CAACvC,IAAI,KAAK,kBAAkB;MAC3ClE,QAAQ,EAAEtH,QAAQ,CAACoG,MAAM,CAACnE,MAAM,CAACoE,yBAAyB;KAC3D,CAAC,EACFtH,MAAM,CAACiH,aAAa,CAAEC,KAAK,IAAKlH,MAAM,CAACwI,QAAQ,CAAC,uCAAuC,EAAEtB,KAAK,CAAC,CAAC,EAChG,CAAC+H,MAAM,EAAEtK,OAAO,KACd3E,MAAM,CAACuH,YAAY,CAAC0H,MAAM,EAAE;MAC1BzH,OAAO,EAAE,iBAAiB;MAC1BC,MAAM,EAAE,UAAU;MAClBC,KAAK,EAAE,+BAA+B;MACtCC,MAAM,EAAEhC,WAAW;MACnBuJ,MAAM,EAAEvK;KACT,CAAC,EACJ,CAACsK,MAAM,EAAEtK,OAAO,KACd3E,MAAM,CAACiO,QAAQ,CACbgB,MAAM,EACNjP,MAAM,CAAC+O,IAAI,CAAC,MAAMpO,cAAc,CAACsF,MAAM,CAACgH,qBAAqB,EAAEtI,OAAO,CAAC,CAAC,CACzE,EACH3E,MAAM,CAAC4H,aAAa,EACpB5H,MAAM,CAACqG,MAAM,CAAC9C,aAAa,CAAC,CAC7B;EACH;EAEA;EAEA,MAAM4L,SAAS,GACbvD,OAAU,IASV5L,MAAM,CAAC6H,OAAO,CAAC,MAAK;IAClB,MAAMlD,OAAO,GAAGiH,OAAO,CAACC,QAAQ,CAAClH,OAAO;IACxC,IAAI,CAACa,qBAAqB,CAACb,OAAO,CAAC,EAAE;MACnC,OAAO3E,MAAM,CAAC2O,IAAI,CAAC,IAAItN,yBAAyB,CAAC;QAAEsD;MAAO,CAAE,CAAC,CAAC;IAChE;IACA,MAAMsE,KAAK,GAAGnF,cAAc,CAACoG,GAAG,CAACvF,OAAO,CAACoH,UAAU,CAAC;IACpD,IAAI,CAAC9C,KAAK,EAAE;MACV,OAAOjJ,MAAM,CAAC2O,IAAI,CAAC,IAAIrN,wBAAwB,CAAC;QAAEqD;MAAO,CAAE,CAAC,CAAC;IAC/D;IAEA,OAAOiH,OAAO,CAACa,IAAI,KAAK,iBAAiB,IAAIb,OAAO,CAACa,IAAI,KAAK,kBAAkB,GAC9ExD,KAAK,CAACC,OAAO,CAACqD,IAAI,CAACX,OAAO,CAAC,GAC3BzI,OAAO,CAACgM,SAAS,CAAC;MAChBvD,OAAO;MACPW,IAAI,EAAEtD,KAAK,CAACC,OAAO,CAACiG,SAAS;MAC7BC,2BAA2B,EAAElM,MAAM,CAACkM;KACrC,CAAQ;EACb,CAAC,CAAC;EAEJ,MAAMC,WAAW,GAAGA,CAClBzD,OAAU,EACVvC,OAAgB,KAEhBrJ,MAAM,CAAC6H,OAAO,CACZ,MAMI;IACF,MAAMlD,OAAO,GAAGiH,OAAO,CAACC,QAAQ,CAAClH,OAAO;IACxC,IAAI,CAACa,qBAAqB,CAACb,OAAO,CAAC,EAAE;MACnC,OAAO3E,MAAM,CAAC2O,IAAI,CAAC,IAAItN,yBAAyB,CAAC;QAAEsD;MAAO,CAAE,CAAC,CAAC;IAChE,CAAC,MAAM,IAAI,CAACb,cAAc,CAAC2B,GAAG,CAACd,OAAO,CAACoH,UAAU,CAAC,EAAE;MAClD,OAAO/L,MAAM,CAAC2O,IAAI,CAAC,IAAIrN,wBAAwB,CAAC;QAAEqD;MAAO,CAAE,CAAC,CAAC;IAC/D;IAEA,MAAM2K,MAAM,GAAG3L,cAAc,GACzBwH,oBAAoB,GACpB,MAAMnL,MAAM,CAACoK,UAAU,CAAC,2CAA2C,CAAC;IAExE,IAAIwB,OAAO,CAACa,IAAI,KAAK,iBAAiB,IAAIb,OAAO,CAACa,IAAI,KAAK,kBAAkB,EAAE;MAC7E,IAAIb,OAAO,CAACa,IAAI,KAAK,iBAAiB,IAAInB,uBAAuB,CAACM,OAAO,CAAC,EAAE;QAC1E,OAAO5L,MAAM,CAAC2O,IAAI,CAAC,IAAIvN,wBAAwB,CAAC;UAAEuD,OAAO;UAAE4K,UAAU,EAAE3D,OAAO,CAACC,QAAQ,CAACC;QAAS,CAAE,CAAC,CAAC;MACvG;MACA,OAAOwD,MAAM,EAAE;IACjB;IAEA,OAAOnM,OAAO,CAACkM,WAAW,CAAC;MAAEzD,OAAO;MAAE0D,MAAM;MAAEjG;IAAO,CAAE,CAAQ;EACjE,CAAC,CACF;EAEH,MAAMmG,gBAAgB,GAAGzO,SAAS,CAAC0O,EAAE,CAAClO,iBAAiB,CAACmO,EAAE,EAAErO,yBAAyB,CAACqO,EAAE,CAAC;EACzF,SAASC,YAAYA,CACnB/D,OAA8B,EAC9BvC,OAAgB,EAChBuG,OAAgB;IAKhB,OAAO5P,MAAM,CAAC6P,OAAO,CACnB7P,MAAM,CAAC6H,OAAO,CAAC,MAAK;MAClB,MAAMlD,OAAO,GAAGiH,OAAO,CAACC,QAAQ,CAAClH,OAAO;MACxC,MAAMmL,WAAW,GAAGnP,cAAc,CAACuJ,GAAG,CAAClG,gBAAgB,EAAEW,OAAO,CAACe,OAAO,CAAC;MACzE,MAAMqK,WAAW,GAAGjQ,OAAO,CAACoK,GAAG,CAAC0B,OAAO,CAACoE,GAAG,CAACC,WAAW,EAAEzO,SAAS,CAAC;MACnE,IAAIuO,WAAW,IAAI,CAACpM,cAAc,EAAE;QAClC,OAAO3D,MAAM,CAACoK,UAAU,CAAC,kEAAkE,CAAC;MAC9F;MACA,MAAM8F,aAAa,GAAGpP,MAAM,CAAC8D,MAAM,CAACkL,WAAW,CAAC,IAAIpL,aAAa,CAACoL,WAAW,CAAC/K,KAAK,CAAC;MACpF,IAAIgL,WAAW,EAAE;QACf,OAAOG,aAAa,GAChBb,WAAW,CAACzD,OAAO,EAAEvC,OAAO,CAAC,GAC7BlG,OAAO,CAACmM,MAAM,CAAC;UAAE3K,OAAO,EAAEmL,WAAW;UAAElE,OAAO;UAAEvC;QAAO,CAAE,CAAC;MAChE,CAAC,MAAM,IAAIvI,MAAM,CAACwM,MAAM,CAACwC,WAAW,CAAC,EAAE;QACrC,OAAO9P,MAAM,CAAC2O,IAAI,CAAC,IAAItN,yBAAyB,CAAC;UAAEsD;QAAO,CAAE,CAAC,CAAC;MAChE;MACA,OAAOuL,aAAa,GAChBf,SAAS,CAACvD,OAAO,CAAC,GAClBzI,OAAO,CAACoJ,IAAI,CAAC;QAAE5H,OAAO,EAAEmL,WAAW,CAAC/K,KAAK;QAAE6G;MAAO,CAAE,CAAC;IAC3D,CAAC,CAAC,EACF4D,gBAAgB,EACfpC,KAAK,IAAI;MACR,IAAIwC,OAAO,KAAK,CAAC,EAAE;QACjB,OAAO5P,MAAM,CAACmQ,GAAG,CAAC/C,KAAK,CAAC;MAC1B;MACA,OAAOpN,MAAM,CAAC0I,KAAK,CAACiH,YAAY,CAAC/D,OAAO,EAAEvC,OAAO,EAAEuG,OAAO,IAAIA,OAAO,GAAG,CAAC,CAAC,EAAE1M,MAAM,CAAC4L,iBAAiB,CAAC;IACvG,CAAC,CACF;EACH;EAEA,MAAMsB,KAAK,GAA8BpQ,MAAM,CAAC4J,UAAU,CACxD,WAAUkC,SAAS;IACjB,OAAOpI,OAAO,CAAC2M,YAAY,CAACvE,SAAS,CAAC;IACtCN,cAAc,CAACwC,MAAM,CAAClC,SAAS,CAAC;EAClC,CAAC,EACD9L,MAAM,CAACsQ,UAAU,CAAC;IAChBC,SAAS,EAAEA,CAAA,KAAM,IAAI;IACrBC,SAAS,EAAEA,CAAA,KAAM;GAClB,CAAC,CACH;EAED;EAEA,MAAMC,wBAAwB,GAAG,OAAOrQ,WAAW,CAAC4C,IAAI,EAAE,CAACgE,IAAI,CAC7D9F,KAAK,CAACwP,MAAM,CAACnN,aAAa,CAAC,CAC5B;EACD,MAAMoN,wBAAwB,GAAGvQ,WAAW,CAAC0J,GAAG,CAC9C2G,wBAAwB,EACxBzQ,MAAM,CAAC+H,OAAO,CAAC/H,MAAM,CAAC+G,KAAK,CAAC7D,MAAM,CAAC0N,8BAA8B,CAAC,EAAE,MAAK;IACvEjQ,cAAc,CAAC4I,KAAK,CAACvF,gBAAgB,CAAC;IACtC,OAAOyE,eAAe;EACxB,CAAC,CAAC,EACF;IAAEoI,aAAa,EAAE;EAAI,CAAE,CACxB;EACD,MAAMC,uBAAuB,GAAG1Q,WAAW,CAACmJ,KAAK,CAACkH,wBAAwB,CAAC;EAE3E;EACA;EACA,OAAOzQ,MAAM,CAACiD,GAAG,CAAC,aAAS;IACzB,OAAOjD,MAAM,CAAC8K,QAAQ,CAAC,gCAAgC,CAAC;IACxD,IAAIhK,MAAM,CAAC8D,MAAM,CAAC1B,MAAM,CAAC2B,aAAa,CAAC,EAAE;MACvC,MAAMkM,SAAS,GAAG,OAAO3N,YAAY,CAAC4N,QAAQ,CAAC9N,MAAM,CAAC2B,aAAa,CAACE,KAAK,EAAE7B,MAAM,CAAC+N,WAAW,CAAC;MAC9F,OAAO5N,YAAY,CAAC6N,YAAY,CAACH,SAAS,CAAC;IAC7C;IAEA,OAAOD,uBAAuB;IAE9B,OAAO9Q,MAAM,CAAC8K,QAAQ,CAAC,gCAAgC,CAAC;IACxD,MAAMqG,OAAO,GAAG,OAAO/N,YAAY,CAACgO,cAAc;IAClD,MAAMC,YAAY,GAAG,OAAOtR,QAAQ,CAACiD,IAAI,EAAQ;IAEjD,MAAMsO,WAAW,GAAG,OAAOtR,MAAM,CAACiD,GAAG,CAAC,aAAS;MAC7C,OAAO,IAAI,EAAE;QACX,MAAM,CAACqB,MAAM,CAAC,GAAG,OAAO6M,OAAO,CAACI,OAAO;QACvC,KAAK,MAAMC,KAAK,IAAIlN,MAAM,EAAE;UAC1B,OAAOtE,MAAM,CAAC8K,QAAQ,CAAC,yBAAyB,EAAE0G,KAAK,CAAC;UAExD,QAAQA,KAAK,CAAC/E,IAAI;YAChB,KAAK,eAAe;cAAE;gBACpB,OAAO1M,QAAQ,CAACsO,IAAI,CAACgD,YAAY,EAAEnR,IAAI,CAACkI,IAAI,CAAC;gBAC7C;cACF;YACA,KAAK,gBAAgB;cAAE;gBACrB,KAAK,MAAMqJ,KAAK,IAAID,KAAK,CAACE,MAAM,EAAE;kBAChC/Q,cAAc,CAACwJ,GAAG,CAACnG,gBAAgB,EAAEyN,KAAK,EAAED,KAAK,CAAC7M,OAAO,CAAC;gBAC5D;gBACA,IAAI,CAAC9D,UAAU,CAACqJ,GAAG,CAACzG,UAAU,CAAC,IAAIiB,aAAa,CAAC8M,KAAK,CAAC7M,OAAO,CAAC,EAAE;kBAC/D,KAAK,MAAMe,OAAO,IAAI8L,KAAK,CAACE,MAAM,EAAE;oBAClC,IAAI9Q,cAAc,CAAC6E,GAAG,CAACvB,UAAU,EAAEwB,OAAO,CAAC,EAAE;oBAC7C9E,cAAc,CAACsF,GAAG,CAAChC,UAAU,EAAEwB,OAAO,CAAC;kBACzC;kBACA,OAAOtB,iBAAiB,CAAC0C,IAAI;gBAC/B;gBACA;cACF;YACA,KAAK,kBAAkB;cAAE;gBACvB,KAAK,MAAM2K,KAAK,IAAID,KAAK,CAACE,MAAM,EAAE;kBAChC/Q,cAAc,CAACsF,MAAM,CAACjC,gBAAgB,EAAEyN,KAAK,CAAC;gBAChD;gBACA,IAAI/M,aAAa,CAAC8M,KAAK,CAAC7M,OAAO,CAAC,EAAE;kBAChC,KAAK,MAAM8M,KAAK,IAAID,KAAK,CAACE,MAAM,EAAE;oBAChC9Q,cAAc,CAACqF,MAAM,CAAC/B,UAAU,EAAEuN,KAAK,CAAC;kBAC1C;kBACA,OAAOrN,iBAAiB,CAAC0C,IAAI;gBAC/B;gBACA;cACF;UACF;QACF;MACF;IACF,CAAC,CAAC,CAACE,IAAI,CACLhH,MAAM,CAAC2R,YAAY,CAACN,YAAY,CAAC,EACjCrR,MAAM,CAAC4R,UAAU,CAClB;IAED;IACA,OAAO7R,QAAQ,CAACiG,KAAK,CAACqL,YAAY,CAAC;IAEnC;IACA,MAAMQ,SAAS,GAAG,OAAOC,eAAe,CAAC9K,IAAI,CAC3ChH,MAAM,CAACmI,OAAO,CAACnI,MAAM,CAAC+G,KAAK,CAAC7D,MAAM,CAAC6O,0BAA0B,CAAC,CAAC,EAC/D/R,MAAM,CAAC2I,OAAO,EACd3I,MAAM,CAAC4R,UAAU,CAClB;IAED,OAAOzR,KAAK,CAAC6R,OAAO,CAAC,CAACV,WAAW,EAAEO,SAAS,CAAC,CAAC;EAChD,CAAC,CAAC,CAAC7K,IAAI,CACLhH,MAAM,CAAC0K,MAAM,EACb1K,MAAM,CAACiH,aAAa,CAAEC,KAAK,IAAKlH,MAAM,CAAC8K,QAAQ,CAAC5D,KAAK,CAAC,CAAC,EACvDlH,MAAM,CAACiS,QAAQ,CAACtB,wBAAwB,CAAC,EACzC3Q,MAAM,CAACoH,MAAM,CACXnG,QAAQ,CAACiR,WAAW,CAAC,IAAI,CAAC,CAAClL,IAAI,CAC7B/F,QAAQ,CAACkR,KAAK,CAAClR,QAAQ,CAACoG,MAAM,CAAC,MAAM,CAAC,CAAC,CACxC,CACF,EACDrH,MAAM,CAACuH,YAAY,CAAC;IAClBC,OAAO,EAAE,iBAAiB;IAC1BC,MAAM,EAAE,UAAU;IAClBC,KAAK,EAAE,mBAAmB;IAC1BC,MAAM,EAAEzE,MAAM,CAAC2B;GAChB,CAAC,EACF7E,MAAM,CAAC4H,aAAa,EACpB5H,MAAM,CAACqG,MAAM,CAAC9C,aAAa,CAAC,CAC7B;EAED,MAAMuO,eAAe,GAAG9R,MAAM,CAACiD,GAAG,CAAC,aAAS;IAC1C,MAAMmP,WAAW,GAAG,OAAOhP,YAAY,CAACiP,cAAc;IACtD,OAAOrS,MAAM,CAAC8K,QAAQ,CAAC,4BAA4B,EAAEsH,WAAW,CAAC;IAEjE,KAAK,MAAM,CAAC1M,OAAO,EAAEiC,MAAM,CAAC,IAAIyK,WAAW,EAAE;MAC3C,IAAItR,MAAM,CAACwM,MAAM,CAAC3F,MAAM,CAAC,EAAE;QACzBhH,cAAc,CAACsF,MAAM,CAACjC,gBAAgB,EAAE0B,OAAO,CAAC;QAChD9E,cAAc,CAACqF,MAAM,CAAC/B,UAAU,EAAEwB,OAAO,CAAC;QAC1C;MACF;MAEA/E,cAAc,CAACwJ,GAAG,CAACnG,gBAAgB,EAAE0B,OAAO,EAAEiC,MAAM,CAAC5C,KAAK,CAAC;MAE3D,IAAI,CAACL,aAAa,CAACiD,MAAM,CAAC5C,KAAK,CAAC,EAAE;QAChCnE,cAAc,CAACqF,MAAM,CAAC/B,UAAU,EAAEwB,OAAO,CAAC;QAC1C;MACF;MACA,IAAI7E,UAAU,CAACqJ,GAAG,CAACzG,UAAU,CAAC,IAAI7C,cAAc,CAAC6E,GAAG,CAACvB,UAAU,EAAEwB,OAAO,CAAC,EAAE;QACzE;MACF;MACA9E,cAAc,CAACsF,GAAG,CAAChC,UAAU,EAAEwB,OAAO,CAAC;IACzC;IAEA,OAAOtB,iBAAiB,CAAC0C,IAAI;EAC/B,CAAC,CAAC;EASF,MAAMwL,cAAc,GAAG,IAAIvO,GAAG,EAA2C;EAEzE,MAAMwO,OAAO,GAOT,OAAOtQ,WAAW,CAACe,IAAI,CAAChD,MAAM,CAAC4J,UAAU,CAAC,WAAUsF,MAA2B;IACjF,MAAMsD,MAAM,GAAG,OAAO9S,SAAS,CAAC+S,mBAAmB,CAACvD,MAAM,CAACwD,QAAQ,EAAE;MACnEC,UAAU,EAAE,GAAGzD,MAAM,CAAC0D,IAAI,SAAS;MACnCC,WAAW,EAAE,IAAI;MACjBC,iBAAiB,EAAEA,CAAA,KAAMnT,SAAS,CAAC0D,YAAY,CAACwJ,UAAU,EAAE,CAAC;MAC7DkG,YAAYA,CAAChJ,OAAO;QAIlB,MAAMpF,OAAO,GAAG7E,OAAO,CAACkT,SAAS,CAACjJ,OAAO,CAACM,OAAO,EAAE4I,gBAAgB,CAAC;QACpE,QAAQlJ,OAAO,CAAC6B,OAAO,CAACa,IAAI;UAC1B,KAAK,SAAS;YAAE;cACd,MAAM/E,KAAK,GAAG5G,MAAM,CAACsN,UAAU,CAACjO,KAAK,CAAC+S,eAAe,EAAE,CAAC;cACxD,MAAM/N,EAAE,GAAGtC,SAAS,CAACA,SAAS,CAACkH,OAAO,CAAC6B,OAAO,CAACzG,EAAE,CAAC;cAClD,MAAM6K,GAAG,GAAGd,MAAM,CAACwD,QAAQ,CAACS,QAAQ,CAACjJ,GAAG,CAACH,OAAO,CAAC6B,OAAO,CAACwH,GAAG,CAAE;cAC9D,IAAI1G,OAAyD;cAC7D,IAAI,CAAC3C,OAAO,CAACV,OAAO,EAAE;gBACpB,MAAMgK,KAAK,GAAuB;kBAChCrD,GAAG,EAAEA,GAAU;kBACf3F,OAAO,EAAE3C,KAAK,CAAC4L;iBAChB;gBACDhB,cAAc,CAACnI,GAAG,CAAChF,EAAE,EAAEkO,KAAK,CAAC;gBAC7B3G,OAAO,GAAG6G,iBAAiB,CAACF,KAAK,EAAEb,MAAM,CAACgB,KAAK,CAAC;cAClD,CAAC,MAAM;gBACL9G,OAAO,GAAG+G,oBAAoB;cAChC;cACA,OAAO9D,YAAY,CACjB,IAAIzN,OAAO,CAACwR,eAAe,CAAC;gBAC1B7H,QAAQ,EAAEjK,QAAQ,CAAC+R,WAAW,CAAC;kBAC7B7H,SAAS,EAAE3G,EAAE;kBACbR,OAAO;kBACPyO,GAAG,EAAErJ,OAAO,CAAC6B,OAAO,CAACwH,GAAG;kBACxBQ,OAAO,EAAE7J,OAAO,CAAC6B,OAAO,CAACgI,OAAO;kBAChCC,OAAO,EAAE9J,OAAO,CAAC6B,OAAO,CAACiI,OAAO;kBAChCC,OAAO,EAAE/J,OAAO,CAAC6B,OAAO,CAACkI,OAAO;kBAChCC,MAAM,EAAEhK,OAAO,CAAC6B,OAAO,CAACmI,MAAM;kBAC9BC,OAAO,EAAEjK,OAAO,CAAC6B,OAAO,CAACoI;iBAC1B,CAAC;gBACFC,iBAAiB,EAAEnT,MAAM,CAACoT,IAAI,EAAE;gBAChClE,GAAG;gBACH3F,OAAO,EAAE3C,KAAK,CAAC4L,cAAsC;gBACrD5G;eACD,CAAC,EACF3C,OAAO,CAACV,OAAO,CAChB;YACH;UACA,KAAK,KAAK;YAAE;cACV,MAAMyC,SAAS,GAAGjJ,SAAS,CAACA,SAAS,CAACkH,OAAO,CAAC6B,OAAO,CAACE,SAAS,CAAC;cAChE,MAAMuH,KAAK,GAAGf,cAAc,CAACpI,GAAG,CAAC4B,SAAS,CAAC;cAC3C,IAAI,CAACuH,KAAK,EAAE,OAAOrT,MAAM,CAACoI,IAAI;cAC9B,OAAOuH,YAAY,CACjB,IAAIzN,OAAO,CAACiS,gBAAgB,CAAC;gBAC3BtI,QAAQ,EAAE,IAAIjK,QAAQ,CAACwS,QAAQ,CAAC;kBAC9BjP,EAAE,EAAE9B,YAAY,CAACwJ,UAAU,EAAE;kBAC7BlI,OAAO;kBACPmH,SAAS;kBACTuI,OAAO,EAAEhB,KAAK,CAACiB;iBAChB,CAAC;gBACFtE,GAAG,EAAEqD,KAAK,CAACrD;eACZ,CAAC,EACF,KAAK,CACN;YACH;UACA,KAAK,WAAW;YAAE;cAChB,MAAMlE,SAAS,GAAGjJ,SAAS,CAACA,SAAS,CAACkH,OAAO,CAAC6B,OAAO,CAACE,SAAS,CAAC;cAChE,MAAMuH,KAAK,GAAGf,cAAc,CAACpI,GAAG,CAAC4B,SAAS,CAAE;cAC5C,IAAI,CAACuH,KAAK,EAAE,OAAOrT,MAAM,CAACoI,IAAI;cAC9BkK,cAAc,CAACtE,MAAM,CAAClC,SAAS,CAAC;cAChC,IAAIhM,OAAO,CAACoK,GAAG,CAACmJ,KAAK,CAACrD,GAAG,CAACC,WAAW,EAAExO,eAAe,CAAC,EAAE;gBACvD,OAAOzB,MAAM,CAACoI,IAAI;cACpB;cACA;cACA;cACA,MAAMmM,oBAAoB,GAAG1T,UAAU,CAACqJ,GAAG,CAACzG,UAAU,CAAC,IACrDsG,OAAO,CAAC6B,OAAO,CAAC4I,YAAY,CAACxM,IAAI,CAAE7C,EAAE,IAAKnD,oBAAoB,CAACyD,GAAG,CAACN,EAAE,CAAC,CAAC;cACzE,IAAIoP,oBAAoB,IAAIzU,OAAO,CAACoK,GAAG,CAACmJ,KAAK,CAACrD,GAAG,CAACC,WAAW,EAAEzO,SAAS,CAAC,EAAE;gBACzE,OAAOxB,MAAM,CAACoI,IAAI;cACpB;cACA,OAAOpI,MAAM,CAAC6F,MAAM,CAAC8J,YAAY,CAC/B,IAAIzN,OAAO,CAACiS,gBAAgB,CAAC;gBAC3BtI,QAAQ,EAAE,IAAIjK,QAAQ,CAAC6S,SAAS,CAAC;kBAC/BtP,EAAE,EAAE9B,YAAY,CAACwJ,UAAU,EAAE;kBAC7BlI,OAAO;kBACPmH;iBACD,CAAC;gBACFkE,GAAG,EAAEqD,KAAK,CAACrD;eACZ,CAAC,EACF,KAAK,EACL,CAAC,CACF,CAAC;YACJ;QACF;QACA,OAAOhQ,MAAM,CAACoI,IAAI;MACpB;KACD,CAAC;IAEF,SAASsM,WAAWA,CAAClC,MAAW;MAC9B,MAAMmC,aAAa,GAAQ,EAAE;MAC7B,KAAK,MAAMC,MAAM,IAAIC,MAAM,CAACC,IAAI,CAACtC,MAAM,CAACA,MAAM,CAAC,EAAE;QAC/C,IAAI,OAAOA,MAAM,CAACA,MAAM,CAACoC,MAAM,CAAC,KAAK,QAAQ,EAAE;UAC7CD,aAAa,CAACC,MAAM,CAAC,GAAGF,WAAW,CAAClC,MAAM,CAACA,MAAM,CAACoC,MAAM,CAAC,CAAC;UAC1D;QACF;QACAD,aAAa,CAACC,MAAM,CAAC,GAAG,UAAoBhB,OAAY,EAAE7J,OAEzD;UACC,OAAQyI,MAAc,CAACA,MAAM,CAACoC,MAAM,CAAC,CAAChB,OAAO,EAAE;YAC7C,GAAG7J,OAAO;YACVM,OAAO,EAAEN,OAAO,EAAEM,OAAO,GACrBvK,OAAO,CAACiV,KAAK,CAAChL,OAAO,CAACM,OAAO,EAAE,IAAI,CAAC2K,oBAAoB,CAAC,CAAC,GAC1D,IAAI,CAACA,oBAAoB;WAC9B,CAAC;QACJ,CAAC;MACH;MACA,OAAOL,aAAa;IACtB;IAEA,MAAMA,aAAa,GAAGD,WAAW,CAAClC,MAAM,CAAC;IAEzC,OAAOtR,KAAK,CAACyK,YAAY,CACvB,OAAO3L,MAAM,CAACwD,KAAK,EACnBxD,MAAM,CAACiV,gBAAgB,CAAEvN,KAAK,IAAI;MAChC1F,oBAAoB,CAACkE,GAAG,CAACwB,KAAK,CAACvC,EAAE,EAAE,CAAC;MACpC,OAAOnF,MAAM,CAACoI,IAAI;IACpB,CAAC,CAAC,CACH;IAED,OAAQnD,QAAgB,IAAI;MAC1B,MAAME,EAAE,GAAGxD,QAAQ,CAACqB,IAAI,CAACiC,QAAQ,CAAC;MAClC,OAAO;QACL,GAAG0P,aAAa;QAChB,CAACK,oBAAoB,GAAG/B,gBAAgB,CAAC5I,OAAO,CAAC3I,aAAa,CAACsB,IAAI,CAAC;UAClE0C,OAAO,EAAEV,UAAU,CAACG,EAAE,EAAE+J,MAAM,CAACgG,aAAa,CAACjQ,QAAoB,CAAC,CAAC;UACnEA,QAAQ,EAAEE,EAAE;UACZ4G,UAAU,EAAEmD,MAAM,CAAC0D;SACpB,CAAC;OACH;IACH,CAAC;EACH,CAAC,CAAC,CAAC;EAEH,MAAMuC,UAAU,GAA+CjG,MAA0B,IAEpFqD,OAAO,CAACrI,GAAG,CAACgF,MAAM,CAAQ;EAE/B,MAAMuE,oBAAoB,GAAI2B,MAAwB,IAAKpV,MAAM,CAACoI,IAAI;EAEtE,MAAMmL,iBAAiB,GAAGA,CACxBF,KAAyB,EACzBG,KAAsD,KAEvD6B,KAAuB,IAAI;IAC1B,QAAQA,KAAK,CAAC5I,IAAI;MAChB,KAAK,OAAO;QAAE;UACZ4G,KAAK,CAACiB,WAAW,GAAGe,KAAK,CAAClQ,EAAE;UAC5B,OAAOqO,KAAK,CAAC;YACX/G,IAAI,EAAE,OAAO;YACb6I,QAAQ,EAAE,CAAC;YACXxJ,SAAS,EAAEnM,SAAS,CAAC0V,KAAK,CAACvJ,SAAS,CAAC;YACrC9C,MAAM,EAAEqM,KAAK,CAACrM;WACf,CAAC;QACJ;MACA,KAAK,UAAU;QAAE;UACfsJ,cAAc,CAACtE,MAAM,CAACqH,KAAK,CAACvJ,SAAS,CAAC;UACtC,OAAO0H,KAAK,CAAC;YACX/G,IAAI,EAAE,MAAM;YACZ6I,QAAQ,EAAE,CAAC;YACXxJ,SAAS,EAAEnM,SAAS,CAAC0V,KAAK,CAACvJ,SAAS,CAAC;YACrCyJ,IAAI,EAAEF,KAAK,CAACE;WACb,CAAC;QACJ;IACF;EACF,CAAC;EAED;EAEA,MAAMlL,OAAO,GAAG,OAAOrK,MAAM,CAACqK,OAAO,EAAkB;EACvD,MAAMmL,MAAM,GAAG,OAAO1T,YAAY;EAClC,MAAM2T,cAAc,GAAuCzV,MAAM,CAAC4J,UAAU,CAC1E,WAAUsF,MAAM,EAAEwG,KAAK,EAAE3L,OAAO;IAC9B,IAAIjJ,MAAM,CAACwM,MAAM,CAACpK,MAAM,CAAC2B,aAAa,CAAC,IAAIf,cAAc,CAAC2B,GAAG,CAACyJ,MAAM,CAAC0D,IAAI,CAAC,EAAE;IAC5E,MAAMpP,KAAK,GAAG,OAAOtC,KAAK,CAAC8B,IAAI,EAAE;IACjC,MAAMkG,OAAO,GAAG,OAAOrH,aAAa,CAACmB,IAAI,CAACkM,MAAM,EAAEwG,KAAK,EAAE;MACvD,GAAG3L,OAAO;MACVrG,OAAO;MACPmB,aAAa,EAAE3B,MAAM,CAAC2B,aAAa,CAACE,KAAK;MACzC4Q;KACD,CAAC,CAAC3O,IAAI,CACLhH,MAAM,CAAC2K,OAAO,CAACN,OAAO,CAACrD,IAAI,CACzBlH,OAAO,CAACoG,GAAG,CAACpE,YAAY,EAAE0T,MAAM,CAAC,EACjC1V,OAAO,CAACoG,GAAG,CAAChF,KAAK,CAACA,KAAK,EAAEsC,KAAK,CAAC,EAC/B1D,OAAO,CAACoG,GAAG,CAACrD,SAAS,CAACS,SAAS,EAAED,YAAY,CAAC,CAC/C,CAAC,CAC2C;IAC/CS,cAAc,CAACqG,GAAG,CAAC+E,MAAM,CAAC0D,IAAI,EAAE;MAC9B1D,MAAM;MACN1L,KAAK;MACL0F;KACD,CAAC;IAEF,OAAOhI,KAAK,CAACyK,YAAY,CAACnI,KAAK,EAAExD,MAAM,CAAC+O,IAAI,CAAC,MAAMjL,cAAc,CAACkK,MAAM,CAACkB,MAAM,CAAC0D,IAAI,CAAC,CAAC,CAAC;IACvF,OAAO5R,MAAM,CAAC6J,OAAO,CAACvG,MAAM,EAAE9B,gBAAgB,CAAC;MAAE0M;IAAM,CAAE,CAAC,CAAC;EAC7D,CAAC,CACF;EAED,OAAOhO,KAAK,CAAC0E,gBAAgB,CAC3BrC,aAAa,EACZgS,IAAI,IACHvV,MAAM,CAAC+I,OAAO,CACZjF,cAAc,CAACkF,MAAM,EAAE,EACtBC,KAAK,IACJjJ,MAAM,CAACiH,aAAa,CAAC/F,KAAK,CAACsF,KAAK,CAACyC,KAAK,CAACzF,KAAK,EAAE+R,IAAI,CAAC,EAAGrO,KAAK,IACzDlH,MAAM,CAACuH,YAAY,CAACvH,MAAM,CAACwI,QAAQ,CAAC,8BAA8B,EAAEtB,KAAK,CAAC,EAAE;IAC1EgI,MAAM,EAAEjG,KAAK,CAACiG,MAAM,CAAC0D;GACtB,CAAC,CAAC,EACP;IAAExJ,WAAW,EAAE,WAAW;IAAEC,OAAO,EAAE;EAAI,CAAE,CAC5C,CACJ;EAED;EAEA,IAAIvI,MAAM,CAAC8D,MAAM,CAAC1B,MAAM,CAAC2B,aAAa,CAAC,EAAE;IACvC,MAAMc,WAAW,GAAGzC,MAAM,CAAC2B,aAAa,CAACE,KAAK;IAC9C;IACA,OAAO7D,KAAK,CAACyK,YAAY,CACvBpI,aAAa,EACbvD,MAAM,CAACiD,GAAG,CAAC,aAAS;MAClB,OAAOjD,MAAM,CAAC8K,QAAQ,CAAC,yCAAyC,EAAEnF,WAAW,CAAC;MAC9E,OAAOvC,YAAY,CAACwS,UAAU,CAACjQ,WAAW,CAAC,CAACqB,IAAI,CAC9ChH,MAAM,CAACiH,aAAa,CAAEC,KAAK,IAAKlH,MAAM,CAACwI,QAAQ,CAAC,6CAA6C,EAAEtB,KAAK,CAAC,CAAC,CACvG;MACD,OAAOuB,eAAe;IACxB,CAAC,CAAC,CACH;EACH;EAEA,OAAOvH,KAAK,CAACyK,YAAY,CACvBpI,aAAa,EACbvD,MAAM,CAACiV,gBAAgB,CAAEvN,KAAK,IAAI;IAChC7G,UAAU,CAACsJ,GAAG,CAAC1G,UAAU,EAAE,IAAI,CAAC;IAChCzB,oBAAoB,CAACkE,GAAG,CAACwB,KAAK,CAACvC,EAAE,EAAE,CAAC;IACpC,OAAOnF,MAAM,CAACoI,IAAI;EACpB,CAAC,CAAC,CACH;EAED,MAAMyN,iBAAiB,GAAG7V,MAAM,CAACiD,GAAG,CAAC,aAAS;IAC5C,IAAI6S,KAAK,GAAG,CAAC;IACb,KAAK,MAAM7M,KAAK,IAAInF,cAAc,CAACkF,MAAM,EAAE,EAAE;MAC3C8M,KAAK,IAAI,OAAO7M,KAAK,CAACC,OAAO,CAAC2M,iBAAiB;IACjD;IACA,OAAOC,KAAK;EACd,CAAC,CAAC;EAEF,MAAMH,QAAQ,GAAG7S,QAAQ,CAACiT,EAAE,CAAC;IAC3BvR,qBAAqB;IACrBQ,UAAU;IACVvB,UAAU,EAAEzD,MAAM,CAAC+O,IAAI,CAAC,MAAMlO,UAAU,CAACqJ,GAAG,CAACzG,UAAU,CAAC,CAAC;IACzDgS,cAAc;IACd9L,iBAAiB;IACjBwL,UAAU;IACV5I,IAAI,EAAE4C,SAAS;IACfQ,YAAY,EAAEA,CAAC/D,OAAO,EAAEvC,OAAO,KAAKsG,YAAY,CAAC/D,OAAO,EAAEvC,OAAO,CAAC;IAClEiG,MAAM,EAAG1D,OAAO,IAAKyD,WAAW,CAACzD,OAAO,EAAE,KAAK,CAAC;IAChDiK,iBAAiB;IACjBG,WAAW,EAAEnP,gBAAgB,CAACC,IAAI;IAClCsJ;GACD,CAAC;EAEF,OAAOuF,QAAQ;AACjB,CAAC,CAAC;AAEF;;;;AAIA,OAAO,MAAMM,KAAK,gBAIdvV,KAAK,CAACgK,MAAM,CAAC5H,QAAQ,EAAEE,IAAI,CAAC,CAACgE,IAAI,cACnCtG,KAAK,CAACiK,OAAO,CAAC,CAAC9H,SAAS,CAACqT,cAAc,EAAEpU,YAAY,CAACqU,OAAO,CAAC,CAAC,CAChE;AAED;AAEA,MAAMlD,gBAAgB,gBAAGnT,OAAO,CAACsW,UAAU,CAAgB,wCAAwC,CAAC;AACpG,MAAMpB,oBAAoB,gBAAGqB,MAAM,CAACC,GAAG,CAACrD,gBAAgB,CAACsD,GAAG,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"entityManager.js","names":["RequestId","RpcServer","Arr","Cause","Context","Duration","Effect","Equal","Exit","FiberRef","identity","HashMap","Metric","Option","Schedule","Schema","Scope","AlreadyProcessingMessage","EntityNotAssignedToRunner","MailboxFull","MalformedMessage","ClusterMetrics","Persisted","Uninterruptible","CurrentAddress","CurrentRunnerAddress","Request","Envelope","Message","MessageStorage","Reply","ShardingConfig","Snowflake","EntityReaper","internalInterruptors","ResourceMap","ResourceRef","make","fnUntraced","entity","buildHandlers","options","config","snowflakeGen","Generator","managerScope","scope","storageEnabled","storage","noop","mailboxCapacity","entityMailboxCapacity","clock","context","retryDriver","driver","defectRetryPolicy","andThen","defaultRetryPolicy","activeServers","Map","entities","address","sharding","isShutdown","endLatch","makeLatch","addFinalizer","ignore","resetAddress","activeRequests","defectRequestIds","writeRef","from","isShuttingDown","handlers","protocol","toHandlersContext","pipe","provide","add","runnerAddress","locally","currentLogAnnotations","empty","server","makeNoSerialization","spanPrefix","type","entityId","spanAttributes","concurrency","disableFatalDefects","onFromServer","response","_tag","request","get","requestId","void","sentReply","rpc","annotations","isInterrupted","exit","retryRespond","suspend","message","respond","WithExit","id","unsafeNext","flatMap","delete","size","state","lastActiveCheck","unsafeCurrentTimeMillis","orDie","sequence","reply","Chunk","values","lastSentChunk","some","forkIn","onDefect","die","defect","open","extend","sync","write","envelope","tag","payload","cause","effect","unsafeRebuild","Array","keys","logError","next","annotateLogs","module","runner","catchAllCause","mailboxGauge","mailboxSize","tagged","clientId","current","await","value","withFiberRuntime","fiber","interruptible","timeoutOption","entityTerminationTimeout","set","reaper","maxIdleTime","toMillis","entityMaxIdleTime","Number","isFinite","register","servers","gauge","unsafeUpdate","BigInt","sleep","forever","sendLocal","entry","fail","envelopeId","requests","dieMessage","lastSentReply","match","onNone","onSome","isSome","replyId","interruptors","interruptShard","shardId","loop","toInterrupt","Set","symbol","forEach","removeIgnore","discard","decodeMessage","decode","makeMessageSchema","isProcessingFor","undefined","excludeReplies","send","matchEffect","onFailure","ReplyWithContext","onSuccess","decoded","IncomingEnvelope","IncomingRequestLocal","activeEntityCount","exponential","union","spaced","push","TaggedStruct","transform","Struct","PartialEncodedRequestFromSelf","fields","Literal","payloadSchema","RequestFromSelf","encoded","makeRequest","encode","OptionFromSelf","Union","typeSchema","AckChunk","Interrupt","times","catchAll","delay"],"sources":["../../../src/internal/entityManager.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"entityManager.js","names":["RequestId","RpcServer","Arr","Cause","Context","Duration","Effect","Equal","Exit","FiberRef","identity","HashMap","Metric","Option","Schedule","Schema","Scope","AlreadyProcessingMessage","EntityNotAssignedToRunner","MailboxFull","MalformedMessage","ClusterMetrics","Persisted","Uninterruptible","CurrentAddress","CurrentRunnerAddress","Request","Envelope","Message","MessageStorage","Reply","ShardingConfig","Snowflake","EntityReaper","internalInterruptors","ResourceMap","ResourceRef","make","fnUntraced","entity","buildHandlers","options","config","snowflakeGen","Generator","managerScope","scope","storageEnabled","storage","noop","mailboxCapacity","entityMailboxCapacity","clock","context","retryDriver","driver","defectRetryPolicy","andThen","defaultRetryPolicy","activeServers","Map","entities","address","sharding","isShutdown","endLatch","makeLatch","addFinalizer","ignore","resetAddress","activeRequests","defectRequestIds","writeRef","from","isShuttingDown","handlers","protocol","toHandlersContext","pipe","provide","add","runnerAddress","locally","currentLogAnnotations","empty","server","makeNoSerialization","spanPrefix","type","entityId","spanAttributes","concurrency","disableFatalDefects","onFromServer","response","_tag","request","get","requestId","void","sentReply","rpc","annotations","isInterrupted","exit","retryRespond","suspend","message","respond","WithExit","id","unsafeNext","flatMap","delete","size","state","lastActiveCheck","unsafeCurrentTimeMillis","orDie","sequence","reply","Chunk","values","lastSentChunk","some","forkIn","onDefect","die","defect","open","extend","sync","write","envelope","tag","payload","cause","effect","unsafeRebuild","Array","keys","logError","next","annotateLogs","module","runner","catchAllCause","mailboxGauge","mailboxSize","tagged","clientId","current","await","value","withFiberRuntime","fiber","interruptible","timeoutOption","entityTerminationTimeout","set","reaper","maxIdleTime","toMillis","entityMaxIdleTime","Number","isFinite","register","servers","gauge","unsafeUpdate","BigInt","sleep","forever","sendLocal","entry","fail","envelopeId","requests","dieMessage","lastSentReply","match","onNone","onSome","isSome","replyId","interruptors","interruptShard","shardId","loop","toInterrupt","Set","symbol","forEach","removeIgnore","discard","decodeMessage","decode","makeMessageSchema","isProcessingFor","undefined","excludeReplies","send","matchEffect","onFailure","ReplyWithContext","onSuccess","decoded","IncomingEnvelope","IncomingRequestLocal","activeEntityCount","exponential","union","spaced","push","TaggedStruct","transform","Struct","PartialEncodedRequestFromSelf","fields","Literal","payloadSchema","RequestFromSelf","encoded","makeRequest","encode","OptionFromSelf","Union","typeSchema","AckChunk","Interrupt","times","catchAll","delay"],"sources":["../../../src/internal/entityManager.ts"],"sourcesContent":[null],"mappings":"AACA,SAASA,SAAS,QAAQ,wBAAwB;AAClD,OAAO,KAAKC,SAAS,MAAM,uBAAuB;AAClD,OAAO,KAAKC,GAAG,MAAM,cAAc;AACnC,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,OAAO,MAAM,gBAAgB;AACzC,OAAO,KAAKC,QAAQ,MAAM,iBAAiB;AAE3C,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,IAAI,MAAM,aAAa;AACnC,OAAO,KAAKC,QAAQ,MAAM,iBAAiB;AAC3C,SAASC,QAAQ,QAAQ,iBAAiB;AAC1C,OAAO,KAAKC,OAAO,MAAM,gBAAgB;AACzC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,QAAQ,MAAM,iBAAiB;AAC3C,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,SAASC,wBAAwB,EAAEC,yBAAyB,EAAEC,WAAW,EAAEC,gBAAgB,QAAQ,oBAAoB;AACvH,OAAO,KAAKC,cAAc,MAAM,sBAAsB;AACtD,SAASC,SAAS,EAAEC,eAAe,QAAQ,qBAAqB;AAEhE,SAASC,cAAc,EAAEC,oBAAoB,EAAEC,OAAO,QAAQ,cAAc;AAG5E,OAAO,KAAKC,QAAQ,MAAM,gBAAgB;AAC1C,OAAO,KAAKC,OAAO,MAAM,eAAe;AACxC,OAAO,KAAKC,cAAc,MAAM,sBAAsB;AACtD,OAAO,KAAKC,KAAK,MAAM,aAAa;AAIpC,SAASC,cAAc,QAAQ,sBAAsB;AACrD,OAAO,KAAKC,SAAS,MAAM,iBAAiB;AAC5C,SAASC,YAAY,QAAQ,mBAAmB;AAChD,SAASC,oBAAoB,QAAQ,mBAAmB;AACxD,SAASC,WAAW,QAAQ,kBAAkB;AAC9C,SAASC,WAAW,QAAQ,kBAAkB;AAqC9C;AACA,OAAO,MAAMC,IAAI,gBAAG/B,MAAM,CAACgC,UAAU,CAAC,WAMpCC,MAA0B,EAC1BC,aAAiD,EACjDC,OAUC;EAED,MAAMC,MAAM,GAAG,OAAOX,cAAc;EACpC,MAAMY,YAAY,GAAG,OAAOX,SAAS,CAACY,SAAS;EAC/C,MAAMC,YAAY,GAAG,OAAOvC,MAAM,CAACwC,KAAK;EACxC,MAAMC,cAAc,GAAGN,OAAO,CAACO,OAAO,KAAKnB,cAAc,CAACoB,IAAI;EAC9D,MAAMC,eAAe,GAAGT,OAAO,CAACS,eAAe,IAAIR,MAAM,CAACS,qBAAqB;EAC/E,MAAMC,KAAK,GAAG,OAAO9C,MAAM,CAAC8C,KAAK;EACjC,MAAMC,OAAO,GAAG,OAAO/C,MAAM,CAAC+C,OAAO,EAAiD;EACtF,MAAMC,WAAW,GAAG,OAAOxC,QAAQ,CAACyC,MAAM,CACxCd,OAAO,CAACe,iBAAiB,GAAG1C,QAAQ,CAAC2C,OAAO,CAAChB,OAAO,CAACe,iBAAiB,EAAEE,kBAAkB,CAAC,GAAGA,kBAAkB,CACjH;EAED,MAAMC,aAAa,GAAG,IAAIC,GAAG,EAAyB;EAEtD,MAAMC,QAAQ,GAIV,OAAO1B,WAAW,CAACE,IAAI,CAAC/B,MAAM,CAACgC,UAAU,CAAC,WAAUwB,OAAO;IAC7D,IAAI,OAAOrB,OAAO,CAACsB,QAAQ,CAACC,UAAU,EAAE;MACtC,OAAO,OAAO,IAAI9C,yBAAyB,CAAC;QAAE4C;MAAO,CAAE,CAAC;IAC1D;IAEA,MAAMhB,KAAK,GAAG,OAAOxC,MAAM,CAACwC,KAAK;IACjC,MAAMmB,QAAQ,GAAG,OAAO3D,MAAM,CAAC4D,SAAS,EAAE;IAE1C;IACA,OAAOlD,KAAK,CAACmD,YAAY,CACvBrB,KAAK,EACLxC,MAAM,CAAC8D,MAAM,CAAC3B,OAAO,CAACO,OAAO,CAACqB,YAAY,CAACP,OAAO,CAAC,CAAC,CACrD;IAED,MAAMQ,cAAc,GAAkC,IAAIV,GAAG,EAAE;IAC/D,IAAIW,gBAAgB,GAAkB,EAAE;IAExC;IACA;IACA,MAAMC,QAAQ,GAAG,OAAOpC,WAAW,CAACqC,IAAI,CACtC3B,KAAK,EACLxC,MAAM,CAACgC,UAAU,CAAC,WAAUQ,KAAK;MAC/B,IAAI4B,cAAc,GAAG,KAAK;MAE1B;MACA,MAAMC,QAAQ,GAAG,OAAQpC,MAAM,CAACqC,QAAQ,CAACC,iBAAiB,CAACrC,aAAa,CAAC,CAACsC,IAAI,CAC5ExE,MAAM,CAACyE,OAAO,CAAC1B,OAAO,CAACyB,IAAI,CACzB1E,OAAO,CAAC4E,GAAG,CAACxD,cAAc,EAAEsC,OAAO,CAAC,EACpC1D,OAAO,CAAC4E,GAAG,CAACvD,oBAAoB,EAAEgB,OAAO,CAACwC,aAAa,CAAC,EACxD7E,OAAO,CAAC4E,GAAG,CAAChE,KAAK,CAACA,KAAK,EAAE8B,KAAK,CAAC,CAChC,CAAC,EACFxC,MAAM,CAAC4E,OAAO,CAACzE,QAAQ,CAAC0E,qBAAqB,EAAExE,OAAO,CAACyE,KAAK,EAAE,CAAC,CACR;MAEzD,MAAMC,MAAM,GAAG,OAAOpF,SAAS,CAACqF,mBAAmB,CAAC/C,MAAM,CAACqC,QAAQ,EAAE;QACnEW,UAAU,EAAE,GAAGhD,MAAM,CAACiD,IAAI,IAAI1B,OAAO,CAAC2B,QAAQ,GAAG;QACjDC,cAAc,EAAE;UACd,GAAGjD,OAAO,CAACiD,cAAc;UACzB,aAAa,EAAEnD,MAAM,CAACiD,IAAI;UAC1B,WAAW,EAAE1B,OAAO,CAAC2B;SACtB;QACDE,WAAW,EAAElD,OAAO,CAACkD,WAAW,IAAI,CAAC;QACrCC,mBAAmB,EAAEnD,OAAO,CAACmD,mBAAmB;QAChDC,YAAYA,CAACC,QAAQ;UACnB,QAAQA,QAAQ,CAACC,IAAI;YACnB,KAAK,MAAM;cAAE;gBACX,MAAMC,OAAO,GAAG1B,cAAc,CAAC2B,GAAG,CAACH,QAAQ,CAACI,SAAS,CAAC;gBACtD,IAAI,CAACF,OAAO,EAAE,OAAO1F,MAAM,CAAC6F,IAAI;gBAEhCH,OAAO,CAACI,SAAS,GAAG,IAAI;gBAExB;gBACA;gBACA;gBACA;gBACA,IACErD,cAAc,IACd3C,OAAO,CAAC6F,GAAG,CAACD,OAAO,CAACK,GAAG,CAACC,WAAW,EAAEhF,SAAS,CAAC,IAC/Cd,IAAI,CAAC+F,aAAa,CAACT,QAAQ,CAACU,IAAI,CAAC,KAChC9B,cAAc,IAAItE,OAAO,CAAC6F,GAAG,CAACD,OAAO,CAACK,GAAG,CAACC,WAAW,EAAE/E,eAAe,CAAC,CAAC,EACzE;kBACA,OAAOjB,MAAM,CAAC6F,IAAI;gBACpB;gBACA,OAAOM,YAAY,CACjB,CAAC,EACDnG,MAAM,CAACoG,OAAO,CAAC,MACbV,OAAO,CAACW,OAAO,CAACC,OAAO,CACrB,IAAI9E,KAAK,CAAC+E,QAAQ,CAAC;kBACjBX,SAAS,EAAElE,SAAS,CAACA,SAAS,CAAC8D,QAAQ,CAACI,SAAS,CAAC;kBAClDY,EAAE,EAAEnE,YAAY,CAACoE,UAAU,EAAE;kBAC7BP,IAAI,EAAEV,QAAQ,CAACU;iBAChB,CAAC,CACH,CACF,CACF,CAAC1B,IAAI,CACJxE,MAAM,CAAC0G,OAAO,CAAC,MAAK;kBAClB1C,cAAc,CAAC2C,MAAM,CAACnB,QAAQ,CAACI,SAAS,CAAC;kBAEzC;kBACA;kBACA,IAAI5B,cAAc,CAAC4C,IAAI,KAAK,CAAC,EAAE;oBAC7BC,KAAK,CAACC,eAAe,GAAGhE,KAAK,CAACiE,uBAAuB,EAAE;kBACzD;kBAEA,OAAO/G,MAAM,CAAC6F,IAAI;gBACpB,CAAC,CAAC,EACF7F,MAAM,CAACgH,KAAK,CACb;cACH;YACA,KAAK,OAAO;cAAE;gBACZ,MAAMtB,OAAO,GAAG1B,cAAc,CAAC2B,GAAG,CAACH,QAAQ,CAACI,SAAS,CAAC;gBACtD,IAAI,CAACF,OAAO,EAAE,OAAO1F,MAAM,CAAC6F,IAAI;gBAChC,MAAMoB,QAAQ,GAAGvB,OAAO,CAACuB,QAAQ;gBACjCvB,OAAO,CAACuB,QAAQ,EAAE;gBAClB,IAAI,CAACvB,OAAO,CAACI,SAAS,EAAE;kBACtBJ,OAAO,CAACI,SAAS,GAAG,IAAI;gBAC1B;gBACA,OAAO9F,MAAM,CAACgH,KAAK,CAACb,YAAY,CAC9B,CAAC,EACDnG,MAAM,CAACoG,OAAO,CAAC,MAAK;kBAClB,MAAMc,KAAK,GAAG,IAAI1F,KAAK,CAAC2F,KAAK,CAAC;oBAC5BvB,SAAS,EAAElE,SAAS,CAACA,SAAS,CAAC8D,QAAQ,CAACI,SAAS,CAAC;oBAClDY,EAAE,EAAEnE,YAAY,CAACoE,UAAU,EAAE;oBAC7BQ,QAAQ;oBACRG,MAAM,EAAE5B,QAAQ,CAAC4B;mBAClB,CAAC;kBACF1B,OAAO,CAAC2B,aAAa,GAAG9G,MAAM,CAAC+G,IAAI,CAACJ,KAAK,CAAC;kBAC1C,OAAOxB,OAAO,CAACW,OAAO,CAACC,OAAO,CAACY,KAAK,CAAC;gBACvC,CAAC,CAAC,CACH,CAAC;cACJ;YACA,KAAK,QAAQ;cAAE;gBACb,OAAOlH,MAAM,CAACuH,MAAM,CAACC,QAAQ,CAAC3H,KAAK,CAAC4H,GAAG,CAACjC,QAAQ,CAACkC,MAAM,CAAC,CAAC,EAAEnF,YAAY,CAAC;cAC1E;YACA,KAAK,WAAW;cAAE;gBAChB,OAAOoB,QAAQ,CAACgE,IAAI;cACtB;UACF;QACF;OACD,CAAC,CAACnD,IAAI,CACL9D,KAAK,CAACkH,MAAM,CAACpF,KAAK,CAAC,EACnBxC,MAAM,CAACyE,OAAO,CAACJ,QAAQ,CAAC,CACzB;MAED,OAAO3D,KAAK,CAACmD,YAAY,CACvBrB,KAAK,EACLxC,MAAM,CAAC6H,IAAI,CAAC,MAAK;QACfzD,cAAc,GAAG,IAAI;MACvB,CAAC,CAAC,CACH;MAED,KAAK,MAAMoC,EAAE,IAAIvC,gBAAgB,EAAE;QACjC,MAAM;UAAEoD,aAAa;UAAEhB;QAAO,CAAE,GAAGrC,cAAc,CAAC2B,GAAG,CAACa,EAAE,CAAE;QAC1D,OAAOzB,MAAM,CAAC+C,KAAK,CAAC,CAAC,EAAE;UACrB,GAAGzB,OAAO,CAAC0B,QAAQ;UACnBvB,EAAE,EAAE9G,SAAS,CAAC2G,OAAO,CAAC0B,QAAQ,CAACnC,SAAS,CAAC;UACzCoC,GAAG,EAAE3B,OAAO,CAAC0B,QAAQ,CAACC,GAAU;UAChCC,OAAO,EAAE,IAAI7G,OAAO,CAAC;YACnB,GAAGiF,OAAO,CAAC0B,QAAQ;YACnBV;WACM;SACT,CAAC;MACJ;MACApD,gBAAgB,GAAG,EAAE;MAErB,OAAOc,MAAM,CAAC+C,KAAK;IACrB,CAAC,CAAC,CACH;IAED,SAASN,QAAQA,CAACU,KAAyB;MACzC,MAAMC,MAAM,GAAGjE,QAAQ,CAACkE,aAAa,EAAE;MACvCnE,gBAAgB,GAAGoE,KAAK,CAAClE,IAAI,CAACH,cAAc,CAACsE,IAAI,EAAE,CAAC;MACpD,OAAOtI,MAAM,CAACuI,QAAQ,CAAC,8BAA8B,EAAEL,KAAK,CAAC,CAAC1D,IAAI,CAChExE,MAAM,CAACmD,OAAO,CAACnD,MAAM,CAAC8D,MAAM,CAACd,WAAW,CAACwF,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EACvDxI,MAAM,CAACmD,OAAO,CAACgF,MAAM,CAAC,EACtBnI,MAAM,CAACyI,YAAY,CAAC;QAClBC,MAAM,EAAE,eAAe;QACvBlF,OAAO;QACPmF,MAAM,EAAExG,OAAO,CAACwC;OACjB,CAAC,EACF3E,MAAM,CAAC4I,aAAa,CAACpB,QAAQ,CAAC,CAC/B;IACH;IAEA,MAAMX,KAAK,GAAgB;MACzBrD,OAAO;MACPqF,YAAY,EAAE9H,cAAc,CAAC+H,WAAW,CAACtE,IAAI,CAC3ClE,MAAM,CAACyI,MAAM,CAAC,MAAM,EAAE9G,MAAM,CAACiD,IAAI,CAAC,EAClC5E,MAAM,CAACyI,MAAM,CAAC,UAAU,EAAEvF,OAAO,CAAC2B,QAAQ,CAAC,CAC5C;MACD2C,KAAKA,CAACkB,QAAQ,EAAE3C,OAAO;QACrB,IAAInC,QAAQ,CAAC2C,KAAK,CAACoC,OAAO,CAACxD,IAAI,KAAK,UAAU,EAAE;UAC9C,OAAOzF,MAAM,CAAC0G,OAAO,CAACxC,QAAQ,CAACgF,KAAK,EAAGpB,KAAK,IAAKA,KAAK,CAACkB,QAAQ,EAAE3C,OAAO,CAAC,CAAC;QAC5E;QACA,OAAOnC,QAAQ,CAAC2C,KAAK,CAACoC,OAAO,CAACE,KAAK,CAACH,QAAQ,EAAE3C,OAAO,CAAC;MACxD,CAAC;MACDrC,cAAc;MACd8C,eAAe,EAAEhE,KAAK,CAACiE,uBAAuB;KAC/C;IAED;IACA;IACA;IACA;IACA,OAAOrG,KAAK,CAACmD,YAAY,CACvBrB,KAAK,EACLxC,MAAM,CAACoJ,gBAAgB,CAAEC,KAAK,IAAI;MAChChG,aAAa,CAACsD,MAAM,CAACnD,OAAO,CAAC2B,QAAQ,CAAC;MACtCvD,oBAAoB,CAAC8C,GAAG,CAAC2E,KAAK,CAAC7C,EAAE,EAAE,CAAC;MACpC,OAAOK,KAAK,CAACiB,KAAK,CAAC,CAAC,EAAE;QAAErC,IAAI,EAAE;MAAK,CAAE,CAAC,CAACjB,IAAI,CACzCxE,MAAM,CAACmD,OAAO,CAACnD,MAAM,CAACsJ,aAAa,CAAC3F,QAAQ,CAACuF,KAAK,CAAC,CAAC,EACpDlJ,MAAM,CAACuJ,aAAa,CAACnH,MAAM,CAACoH,wBAAwB,CAAC,CACtD;IACH,CAAC,CAAC,CACH;IACDnG,aAAa,CAACoG,GAAG,CAACjG,OAAO,CAAC2B,QAAQ,EAAE0B,KAAK,CAAC;IAE1C,OAAOA,KAAK;EACd,CAAC,EAAE7G,MAAM,CAAC4E,OAAO,CAACzE,QAAQ,CAAC0E,qBAAqB,EAAExE,OAAO,CAACyE,KAAK,EAAE,CAAC,CAAC,CAAC;EAEpE,MAAM4E,MAAM,GAAG,OAAO/H,YAAY;EAClC,MAAMgI,WAAW,GAAG5J,QAAQ,CAAC6J,QAAQ,CAACzH,OAAO,CAACwH,WAAW,IAAIvH,MAAM,CAACyH,iBAAiB,CAAC;EACtF,IAAIC,MAAM,CAACC,QAAQ,CAACJ,WAAW,CAAC,EAAE;IAChC,OAAOD,MAAM,CAACM,QAAQ,CAAC;MACrBL,WAAW;MACXM,OAAO,EAAE5G,aAAa;MACtBE;KACD,CAAC;EACJ;EAEA;EACA,MAAM2G,KAAK,GAAGnJ,cAAc,CAACwC,QAAQ,CAACiB,IAAI,CAAClE,MAAM,CAACyI,MAAM,CAAC,MAAM,EAAE9G,MAAM,CAACiD,IAAI,CAAC,CAAC;EAC9E,OAAOlF,MAAM,CAAC6H,IAAI,CAAC,MAAK;IACtBqC,KAAK,CAACC,YAAY,CAACC,MAAM,CAAC/G,aAAa,CAACuD,IAAI,CAAC,EAAE,EAAE,CAAC;IAClD,KAAK,MAAMC,KAAK,IAAIxD,aAAa,CAAC+D,MAAM,EAAE,EAAE;MAC1CP,KAAK,CAACgC,YAAY,CAACsB,YAAY,CAACC,MAAM,CAACvD,KAAK,CAAC7C,cAAc,CAAC4C,IAAI,CAAC,EAAE,EAAE,CAAC;IACxE;EACF,CAAC,CAAC,CAACpC,IAAI,CACLxE,MAAM,CAACmD,OAAO,CAACnD,MAAM,CAACqK,KAAK,CAAC,IAAI,CAAC,CAAC,EAClCrK,MAAM,CAACsK,OAAO,EACdtK,MAAM,CAACuH,MAAM,CAAChF,YAAY,CAAC,CAC5B;EAED,SAASgI,SAASA,CAChBlE,OAAiC;IAEjC,OAAOrG,MAAM,CAAC4E,OAAO,CACnB5E,MAAM,CAAC0G,OAAO,CACZnD,QAAQ,CAACoC,GAAG,CAACU,OAAO,CAAC0B,QAAQ,CAACvE,OAAO,CAAC,EACrCuB,MAAM,IAA6F;MAClG,QAAQsB,OAAO,CAACZ,IAAI;QAClB,KAAK,sBAAsB;UAAE;YAC3B;YACA;YACA;YACA,IAAI+E,KAAK,GAAGzF,MAAM,CAACf,cAAc,CAAC2B,GAAG,CAACU,OAAO,CAAC0B,QAAQ,CAACnC,SAAS,CAAC;YACjE,IAAI4E,KAAK,EAAE;cACT,OAAOxK,MAAM,CAACyK,IAAI,CAChB,IAAI9J,wBAAwB,CAAC;gBAC3B+J,UAAU,EAAErE,OAAO,CAAC0B,QAAQ,CAACnC,SAAS;gBACtCpC,OAAO,EAAE6C,OAAO,CAAC0B,QAAQ,CAACvE;eAC3B,CAAC,CACH;YACH;YAEA,MAAMuC,GAAG,GAAG9D,MAAM,CAACqC,QAAQ,CAACqG,QAAQ,CAAChF,GAAG,CAACU,OAAO,CAAC0B,QAAQ,CAACC,GAAG,CAA6B;YAC1F,IAAI,CAACvF,cAAc,IAAI3C,OAAO,CAAC6F,GAAG,CAACI,GAAG,CAACC,WAAW,EAAEhF,SAAS,CAAC,EAAE;cAC9D,OAAOhB,MAAM,CAAC4K,UAAU,CACtB,oFAAoF,CACrF;YACH;YAEA,IAAIhI,eAAe,KAAK,WAAW,IAAImC,MAAM,CAACf,cAAc,CAAC4C,IAAI,IAAIhE,eAAe,EAAE;cACpF,OAAO5C,MAAM,CAACyK,IAAI,CAAC,IAAI5J,WAAW,CAAC;gBAAE2C,OAAO,EAAE6C,OAAO,CAAC0B,QAAQ,CAACvE;cAAO,CAAE,CAAC,CAAC;YAC5E;YAEAgH,KAAK,GAAG;cACNzE,GAAG;cACHM,OAAO;cACPP,SAAS,EAAE,KAAK;cAChBuB,aAAa,EAAEhB,OAAO,CAACwE,aAAoB;cAC3C5D,QAAQ,EAAE1G,MAAM,CAACuK,KAAK,CAACzE,OAAO,CAACwE,aAAa,EAAE;gBAC5CE,MAAM,EAAEA,CAAA,KAAM,CAAC;gBACfC,MAAM,EAAG9D,KAAK,IAAKA,KAAK,CAACzB,IAAI,KAAK,OAAO,GAAGyB,KAAK,CAACD,QAAQ,GAAG,CAAC,GAAG;eAClE;aACF;YACDlC,MAAM,CAACf,cAAc,CAACyF,GAAG,CAACpD,OAAO,CAAC0B,QAAQ,CAACnC,SAAS,EAAE4E,KAAK,CAAC;YAC5D,OAAOzF,MAAM,CAAC+C,KAAK,CAAC,CAAC,EAAE;cACrB,GAAGzB,OAAO,CAAC0B,QAAQ;cACnBvB,EAAE,EAAE9G,SAAS,CAAC2G,OAAO,CAAC0B,QAAQ,CAACnC,SAAS,CAAC;cACzCqC,OAAO,EAAE,IAAI7G,OAAO,CAAC;gBACnB,GAAGiF,OAAO,CAAC0B,QAAQ;gBACnBV,aAAa,EAAEhB,OAAO,CAACwE;eACxB;aACF,CAAC;UACJ;QACA,KAAK,kBAAkB;UAAE;YACvB,MAAML,KAAK,GAAGzF,MAAM,CAACf,cAAc,CAAC2B,GAAG,CAACU,OAAO,CAAC0B,QAAQ,CAACnC,SAAS,CAAC;YACnE,IAAI,CAAC4E,KAAK,EAAE;cACV,OAAOxK,MAAM,CAAC6F,IAAI;YACpB,CAAC,MAAM,IACLQ,OAAO,CAAC0B,QAAQ,CAACtC,IAAI,KAAK,UAAU,IACpClF,MAAM,CAAC0K,MAAM,CAACT,KAAK,CAACnD,aAAa,CAAC,IAClChB,OAAO,CAAC0B,QAAQ,CAACmD,OAAO,KAAKV,KAAK,CAACnD,aAAa,CAAC8B,KAAK,CAAC3C,EAAE,EACzD;cACA,OAAOxG,MAAM,CAAC6F,IAAI;YACpB;YACA,OAAOd,MAAM,CAAC+C,KAAK,CACjB,CAAC,EACDzB,OAAO,CAAC0B,QAAQ,CAACtC,IAAI,KAAK,UAAU,GAChC;cAAEA,IAAI,EAAE,KAAK;cAAEG,SAAS,EAAElG,SAAS,CAAC2G,OAAO,CAAC0B,QAAQ,CAACnC,SAAS;YAAC,CAAE,GACjE;cAAEH,IAAI,EAAE,WAAW;cAAEG,SAAS,EAAElG,SAAS,CAAC2G,OAAO,CAAC0B,QAAQ,CAACnC,SAAS,CAAC;cAAEuF,YAAY,EAAE;YAAE,CAAE,CAC9F;UACH;MACF;IACF,CAAC,CACF,EACDhL,QAAQ,CAAC0E,qBAAqB,EAC9BxE,OAAO,CAACyE,KAAK,EAAE,CAChB;EACH;EAEA,MAAMsG,cAAc,GAAIC,OAAgB,IACtCrL,MAAM,CAACoG,OAAO,CAAC,SAASkF,IAAIA,CAAA;IAC1B,MAAMC,WAAW,GAAG,IAAIC,GAAG,EAAe;IAC1C,KAAK,MAAM3E,KAAK,IAAIxD,aAAa,CAAC+D,MAAM,EAAE,EAAE;MAC1C,IAAIiE,OAAO,CAACpL,KAAK,CAACwL,MAAM,CAAC,CAAC5E,KAAK,CAACrD,OAAO,CAAC6H,OAAO,CAAC,EAAE;QAChDE,WAAW,CAAC7G,GAAG,CAACmC,KAAK,CAAC;MACxB;IACF;IACA,IAAI0E,WAAW,CAAC3E,IAAI,KAAK,CAAC,EAAE;MAC1B,OAAO5G,MAAM,CAAC6F,IAAI;IACpB;IACA,OAAO7F,MAAM,CAAC0G,OAAO,CACnB1G,MAAM,CAAC0L,OAAO,CAACH,WAAW,EAAG1E,KAAK,IAAKtD,QAAQ,CAACoI,YAAY,CAAC9E,KAAK,CAACrD,OAAO,CAAC,EAAE;MAC3E6B,WAAW,EAAE,WAAW;MACxBuG,OAAO,EAAE;KACV,CAAC,EACFN,IAAI,CACL;EACH,CAAC,CAAC;EAEJ,MAAMO,aAAa,GAAGpL,MAAM,CAACqL,MAAM,CAACC,iBAAiB,CAAC9J,MAAM,CAAC,CAAC;EAE9D,OAAO7B,QAAQ,CAAgB;IAC7BgL,cAAc;IACdY,eAAeA,CAAC3F,OAAO,EAAElE,OAAO;MAC9B,MAAM0E,KAAK,GAAGxD,aAAa,CAACsC,GAAG,CAACU,OAAO,CAAC0B,QAAQ,CAACvE,OAAO,CAAC2B,QAAQ,CAAC;MAClE,IAAI,CAAC0B,KAAK,EAAE,OAAO,KAAK;MACxB,MAAMnB,OAAO,GAAGmB,KAAK,CAAC7C,cAAc,CAAC2B,GAAG,CAACU,OAAO,CAAC0B,QAAQ,CAACnC,SAAS,CAAC;MACpE,IAAIF,OAAO,KAAKuG,SAAS,EAAE;QACzB,OAAO,KAAK;MACd,CAAC,MAAM,IAAI9J,OAAO,EAAE+J,cAAc,IAAIxG,OAAO,CAACI,SAAS,EAAE;QACvD,OAAO,KAAK;MACd;MACA,OAAO,IAAI;IACb,CAAC;IACDyE,SAAS;IACT4B,IAAI,EAAG9F,OAAO,IACZwF,aAAa,CAACxF,OAAO,CAAC,CAAC7B,IAAI,CACzBxE,MAAM,CAACoM,WAAW,CAAC;MACjBC,SAAS,EAAGnE,KAAK,IAAI;QACnB,IAAI7B,OAAO,CAACZ,IAAI,KAAK,kBAAkB,EAAE;UACvC,OAAOzF,MAAM,CAACyH,GAAG,CAAC,IAAI3G,gBAAgB,CAAC;YAAEoH;UAAK,CAAE,CAAC,CAAC;QACpD;QACA,OAAOlI,MAAM,CAACgH,KAAK,CAACX,OAAO,CAACC,OAAO,CACjC,IAAI9E,KAAK,CAAC8K,gBAAgB,CAAC;UACzBpF,KAAK,EAAE,IAAI1F,KAAK,CAAC+E,QAAQ,CAAC;YACxBC,EAAE,EAAEnE,YAAY,CAACoE,UAAU,EAAE;YAC7Bb,SAAS,EAAES,OAAO,CAAC0B,QAAQ,CAACnC,SAAS;YACrCM,IAAI,EAAEhG,IAAI,CAACuH,GAAG,CAAC,IAAI3G,gBAAgB,CAAC;cAAEoH;YAAK,CAAE,CAAC;WAC/C,CAAC;UACFnC,GAAG,EAAE9D,MAAM,CAACqC,QAAQ,CAACqG,QAAQ,CAAChF,GAAG,CAACU,OAAO,CAAC0B,QAAQ,CAACC,GAAG,CAAE;UACxDjF;SACD,CAAC,CACH,CAAC;MACJ,CAAC;MACDwJ,SAAS,EAAGC,OAAO,IAAI;QACrB,IAAIA,OAAO,CAAC/G,IAAI,KAAK,kBAAkB,EAAE;UACvC,OAAO8E,SAAS,CACd,IAAIjJ,OAAO,CAACmL,gBAAgB,CAACD,OAAO,CAAC,CACtC;QACH;QACA,MAAM9G,OAAO,GAAGW,OAAuC;QACvD,MAAMN,GAAG,GAAG9D,MAAM,CAACqC,QAAQ,CAACqG,QAAQ,CAAChF,GAAG,CAAC6G,OAAO,CAACzE,QAAQ,CAACC,GAAG,CAAE;QAC/D,OAAOuC,SAAS,CACd,IAAIjJ,OAAO,CAACoL,oBAAoB,CAAC;UAC/B3E,QAAQ,EAAEyE,OAAO,CAACzE,QAAQ;UAC1B8C,aAAa,EAAE2B,OAAO,CAAC3B,aAAa;UACpCvE,OAAO,EAAGY,KAAK,IACbxB,OAAO,CAACY,OAAO,CACb,IAAI9E,KAAK,CAAC8K,gBAAgB,CAAC;YACzBpF,KAAK;YACLnB,GAAG;YACHhD;WACD,CAAC;SAEP,CAAC,CACH;MACH;KACD,CAAC,EACF/C,MAAM,CAACyE,OAAO,CAAC1B,OAAmC,CAAC,CACpD;IACH4J,iBAAiB,EAAE3M,MAAM,CAAC6H,IAAI,CAAC,MAAMxE,aAAa,CAACuD,IAAI;GACxD,CAAC;AACJ,CAAC,CAAC;AAEF,MAAMxD,kBAAkB,gBAAG5C,QAAQ,CAACoM,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAACpI,IAAI,cAC5DhE,QAAQ,CAACqM,KAAK,cAACrM,QAAQ,CAACsM,MAAM,CAAC,YAAY,CAAC,CAAC,CAC9C;AAED,MAAMf,iBAAiB,GAA+C9J,MAA0B,IAW5F;EACF,MAAM0I,QAAQ,GAAG/K,GAAG,CAACkF,KAAK,EAAqB;EAE/C,KAAK,MAAMiB,GAAG,IAAI9D,MAAM,CAACqC,QAAQ,CAACqG,QAAQ,CAACvD,MAAM,EAAE,EAAE;IACnDuD,QAAQ,CAACoC,IAAI,CACXtM,MAAM,CAACuM,YAAY,CAAC,iBAAiB,EAAE;MACrCjF,QAAQ,EAAEtH,MAAM,CAACwM,SAAS,CACxBxM,MAAM,CAACyM,MAAM,CAAC;QACZ,GAAG7L,QAAQ,CAAC8L,6BAA6B,CAACC,MAAM;QAChDpF,GAAG,EAAEvH,MAAM,CAAC4M,OAAO,CAACtH,GAAG,CAACN,IAAI,CAAC;QAC7BwC,OAAO,EAAGlC,GAA+B,CAACuH;OAC3C,CAAC,EACFjM,QAAQ,CAACkM,eAAe,EACxB;QACEzB,MAAM,EAAG0B,OAAO,IAAKnM,QAAQ,CAACoM,WAAW,CAACD,OAAO,CAAC;QAClDE,MAAM,EAAEtN;OACT,CACF;MACDyK,aAAa,EAAEpK,MAAM,CAACkN,cAAc,CAACnM,KAAK,CAACA,KAAK,CAACuE,GAAG,CAAC;KACtD,CAAC,CACH;EACH;EAEA,OAAOtF,MAAM,CAACmN,KAAK,CACjB,GAAGjD,QAAQ,EACXlK,MAAM,CAACuM,YAAY,CAAC,kBAAkB,EAAE;IACtCjF,QAAQ,EAAEtH,MAAM,CAACmN,KAAK,CACpBnN,MAAM,CAACoN,UAAU,CAACxM,QAAQ,CAACyM,QAAQ,CAAC,EACpCrN,MAAM,CAACoN,UAAU,CAACxM,QAAQ,CAAC0M,SAAS,CAAC;GAExC,CAAC,CACI;AACV,CAAC;AAED,MAAM5H,YAAY,GAAGA,CAAU6H,KAAa,EAAE7F,MAA8B,KAC1E6F,KAAK,KAAK,CAAC,GACT7F,MAAM,GACNnI,MAAM,CAACiO,QAAQ,CAAC9F,MAAM,EAAE,MAAMnI,MAAM,CAACkO,KAAK,CAAC/H,YAAY,CAAC6H,KAAK,GAAG,CAAC,EAAE7F,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect/cluster",
3
- "version": "0.40.0",
3
+ "version": "0.41.0",
4
4
  "description": "Unified interfaces for common cluster-specific services",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -11,10 +11,10 @@
11
11
  "sideEffects": [],
12
12
  "homepage": "https://effect.website",
13
13
  "peerDependencies": {
14
- "@effect/platform": "^0.86.0",
15
- "@effect/rpc": "^0.63.0",
16
- "@effect/sql": "^0.39.0",
17
- "@effect/workflow": "^0.3.0",
14
+ "@effect/platform": "^0.87.0",
15
+ "@effect/rpc": "^0.64.0",
16
+ "@effect/sql": "^0.40.0",
17
+ "@effect/workflow": "^0.4.0",
18
18
  "effect": "^3.16.9"
19
19
  },
20
20
  "publishConfig": {
@@ -41,6 +41,7 @@ export const make = Effect.gen(function*() {
41
41
  const entities = new Map<
42
42
  string,
43
43
  Entity.Entity<
44
+ string,
44
45
  | Rpc.Rpc<"run", Schema.Struct<{}>, Schema.Schema<Workflow.Result<any, any>>>
45
46
  | Rpc.Rpc<"deferred", Schema.Struct<{ name: typeof Schema.String; exit: typeof ExitUnknown }>, typeof ExitUnknown>
46
47
  | Rpc.Rpc<
package/src/Entity.ts CHANGED
@@ -6,6 +6,7 @@ import * as RpcClient from "@effect/rpc/RpcClient"
6
6
  import * as RpcGroup from "@effect/rpc/RpcGroup"
7
7
  import * as RpcServer from "@effect/rpc/RpcServer"
8
8
  import * as Arr from "effect/Array"
9
+ import type { Brand } from "effect/Brand"
9
10
  import type * as Cause from "effect/Cause"
10
11
  import * as Context from "effect/Context"
11
12
  import * as Data from "effect/Data"
@@ -58,12 +59,15 @@ export type TypeId = typeof TypeId
58
59
  * @since 1.0.0
59
60
  * @category models
60
61
  */
61
- export interface Entity<in out Rpcs extends Rpc.Any> extends Equal.Equal {
62
+ export interface Entity<
63
+ in out Type extends string,
64
+ in out Rpcs extends Rpc.Any
65
+ > extends Equal.Equal {
62
66
  readonly [TypeId]: TypeId
63
67
  /**
64
68
  * The name of the entity type.
65
69
  */
66
- readonly type: EntityType
70
+ readonly type: Type & Brand<"EntityType">
67
71
 
68
72
  /**
69
73
  * A RpcGroup definition for messages which represents the messaging protocol
@@ -84,22 +88,22 @@ export interface Entity<in out Rpcs extends Rpc.Any> extends Equal.Equal {
84
88
  /**
85
89
  * Annotate the entity with a value.
86
90
  */
87
- annotate<I, S>(tag: Context.Tag<I, S>, value: S): Entity<Rpcs>
91
+ annotate<I, S>(tag: Context.Tag<I, S>, value: S): Entity<Type, Rpcs>
88
92
 
89
93
  /**
90
94
  * Annotate the Rpc's above this point with a value.
91
95
  */
92
- annotateRpcs<I, S>(tag: Context.Tag<I, S>, value: S): Entity<Rpcs>
96
+ annotateRpcs<I, S>(tag: Context.Tag<I, S>, value: S): Entity<Type, Rpcs>
93
97
 
94
98
  /**
95
99
  * Annotate the entity with a context object.
96
100
  */
97
- annotateContext<S>(context: Context.Context<S>): Entity<Rpcs>
101
+ annotateContext<S>(context: Context.Context<S>): Entity<Type, Rpcs>
98
102
 
99
103
  /**
100
104
  * Annotate the Rpc's above this point with a context object.
101
105
  */
102
- annotateRpcsContext<S>(context: Context.Context<S>): Entity<Rpcs>
106
+ annotateRpcsContext<S>(context: Context.Context<S>): Entity<Type, Rpcs>
103
107
 
104
108
  /**
105
109
  * Create a client for this entity.
@@ -188,7 +192,7 @@ export interface Entity<in out Rpcs extends Rpc.Any> extends Equal.Equal {
188
192
  * @since 1.0.0
189
193
  * @category models
190
194
  */
191
- export type Any = Entity<Rpc.Any>
195
+ export type Any = Entity<string, Rpc.Any>
192
196
 
193
197
  /**
194
198
  * @since 1.0.0
@@ -208,25 +212,25 @@ export const isEntity = (u: unknown): u is Any => Predicate.hasProperty(u, TypeI
208
212
 
209
213
  const Proto = {
210
214
  [TypeId]: TypeId,
211
- [Hash.symbol](this: Entity<any>): number {
215
+ [Hash.symbol](this: Entity<string, any>): number {
212
216
  return Hash.structure({ type: this.type })
213
217
  },
214
- [Equal.symbol](this: Entity<any>, that: Equal.Equal): boolean {
218
+ [Equal.symbol](this: Entity<string, any>, that: Equal.Equal): boolean {
215
219
  return isEntity(that) && this.type === that.type
216
220
  },
217
- annotate<I, S>(this: Entity<any>, tag: Context.Tag<I, S>, value: S) {
221
+ annotate<I, S>(this: Entity<string, any>, tag: Context.Tag<I, S>, value: S) {
218
222
  return fromRpcGroup(this.type, this.protocol.annotate(tag, value))
219
223
  },
220
- annotateRpcs<I, S>(this: Entity<any>, tag: Context.Tag<I, S>, value: S) {
224
+ annotateRpcs<I, S>(this: Entity<string, any>, tag: Context.Tag<I, S>, value: S) {
221
225
  return fromRpcGroup(this.type, this.protocol.annotateRpcs(tag, value))
222
226
  },
223
- annotateContext<S>(this: Entity<any>, context: Context.Context<S>) {
227
+ annotateContext<S>(this: Entity<string, any>, context: Context.Context<S>) {
224
228
  return fromRpcGroup(this.type, this.protocol.annotateContext(context))
225
229
  },
226
- annotateRpcsContext<S>(this: Entity<any>, context: Context.Context<S>) {
230
+ annotateRpcsContext<S>(this: Entity<string, any>, context: Context.Context<S>) {
227
231
  return fromRpcGroup(this.type, this.protocol.annotateRpcsContext(context))
228
232
  },
229
- getShardId(this: Entity<any>, entityId: EntityId) {
233
+ getShardId(this: Entity<string, any>, entityId: EntityId) {
230
234
  return Effect.map(shardingTag, (sharding) => sharding.getShardId(entityId, this.getShardGroup(entityId)))
231
235
  },
232
236
  get client() {
@@ -239,7 +243,7 @@ const Proto = {
239
243
  Handlers extends HandlersFrom<Rpcs>,
240
244
  RX = never
241
245
  >(
242
- this: Entity<Rpcs>,
246
+ this: Entity<string, Rpcs>,
243
247
  build: Handlers | Effect.Effect<Handlers, never, RX>,
244
248
  options?: {
245
249
  readonly maxIdleTime?: DurationInput | undefined
@@ -275,7 +279,7 @@ const Proto = {
275
279
  R,
276
280
  RX = never
277
281
  >(
278
- this: Entity<Rpcs>,
282
+ this: Entity<string, Rpcs>,
279
283
  build:
280
284
  | ((
281
285
  mailbox: Mailbox.ReadonlyMailbox<Envelope.Request<Rpcs>>,
@@ -360,17 +364,17 @@ const Proto = {
360
364
  * @since 1.0.0
361
365
  * @category constructors
362
366
  */
363
- export const fromRpcGroup = <Rpcs extends Rpc.Any>(
367
+ export const fromRpcGroup = <const Type extends string, Rpcs extends Rpc.Any>(
364
368
  /**
365
369
  * The entity type name.
366
370
  */
367
- type: string,
371
+ type: Type,
368
372
  /**
369
373
  * The schema definition for messages that the entity is capable of
370
374
  * processing.
371
375
  */
372
376
  protocol: RpcGroup.RpcGroup<Rpcs>
373
- ): Entity<Rpcs> => {
377
+ ): Entity<Type, Rpcs> => {
374
378
  const self = Object.create(Proto)
375
379
  self.type = EntityType.make(type)
376
380
  self.protocol = protocol
@@ -385,17 +389,17 @@ export const fromRpcGroup = <Rpcs extends Rpc.Any>(
385
389
  * @since 1.0.0
386
390
  * @category constructors
387
391
  */
388
- export const make = <Rpcs extends ReadonlyArray<Rpc.Any>>(
392
+ export const make = <const Type extends string, Rpcs extends ReadonlyArray<Rpc.Any>>(
389
393
  /**
390
394
  * The entity type name.
391
395
  */
392
- type: string,
396
+ type: Type,
393
397
  /**
394
398
  * The schema definition for messages that the entity is capable of
395
399
  * processing.
396
400
  */
397
401
  protocol: Rpcs
398
- ): Entity<Rpcs[number]> => fromRpcGroup(type, RpcGroup.make(...protocol))
402
+ ): Entity<Type, Rpcs[number]> => fromRpcGroup(type, RpcGroup.make(...protocol))
399
403
 
400
404
  /**
401
405
  * A Context.Tag to access the current entity address.
@@ -492,15 +496,15 @@ const shardingTag = Context.GenericTag<Sharding, Sharding["Type"]>("@effect/clus
492
496
  * @since 1.0.0
493
497
  * @category Testing
494
498
  */
495
- export const makeTestClient: <Rpcs extends Rpc.Any, LA, LE, LR>(
496
- entity: Entity<Rpcs>,
499
+ export const makeTestClient: <Type extends string, Rpcs extends Rpc.Any, LA, LE, LR>(
500
+ entity: Entity<Type, Rpcs>,
497
501
  layer: Layer.Layer<LA, LE, LR>
498
502
  ) => Effect.Effect<
499
503
  (entityId: string) => Effect.Effect<RpcClient.RpcClient<Rpcs>>,
500
504
  LE,
501
505
  Scope | ShardingConfig | Exclude<LR, Sharding> | Rpc.MiddlewareClient<Rpcs>
502
- > = Effect.fnUntraced(function*<Rpcs extends Rpc.Any, LA, LE, LR>(
503
- entity: Entity<Rpcs>,
506
+ > = Effect.fnUntraced(function*<Type extends string, Rpcs extends Rpc.Any, LA, LE, LR>(
507
+ entity: Entity<Type, Rpcs>,
504
508
  layer: Layer.Layer<LA, LE, LR>
505
509
  ) {
506
510
  const config = yield* ShardingConfig
@@ -45,13 +45,9 @@ const clientErrors = [
45
45
  * @since 1.0.0
46
46
  * @category Constructors
47
47
  */
48
- export const toRpcGroup = <Rpcs extends Rpc.Any, const Prefix extends string = "">(
49
- entity: Entity.Entity<Rpcs>,
50
- options?: {
51
- readonly prefix?: Prefix | undefined
52
- }
53
- ): RpcGroup.RpcGroup<ConvertRpcs<Rpcs, Prefix>> => {
54
- const prefix = options?.prefix ?? ""
48
+ export const toRpcGroup = <Type extends string, Rpcs extends Rpc.Any>(
49
+ entity: Entity.Entity<Type, Rpcs>
50
+ ): RpcGroup.RpcGroup<ConvertRpcs<Rpcs, Type>> => {
55
51
  const rpcs: Array<Rpc.Any> = []
56
52
  for (const parentRpc_ of entity.protocol.requests.values()) {
57
53
  const parentRpc = parentRpc_ as any as Rpc.AnyWithProps
@@ -66,14 +62,14 @@ export const toRpcGroup = <Rpcs extends Rpc.Any, const Prefix extends string = "
66
62
  payload: parentRpc.payloadSchema.make ? parentRpc.payloadSchema.make(input.payload, options) : input.payload
67
63
  }, options)
68
64
  }
69
- const rpc = Rpc.make(`${prefix}${parentRpc._tag}`, {
65
+ const rpc = Rpc.make(`${entity.type}.${parentRpc._tag}`, {
70
66
  payload: payloadSchema,
71
67
  error: Schema.Union(parentRpc.errorSchema, ...clientErrors),
72
68
  success: parentRpc.successSchema
73
69
  }).annotateContext(parentRpc.annotations)
74
70
  rpcs.push(rpc)
75
71
  }
76
- return RpcGroup.make(...rpcs) as any as RpcGroup.RpcGroup<ConvertRpcs<Rpcs, Prefix>>
72
+ return RpcGroup.make(...rpcs) as any as RpcGroup.RpcGroup<ConvertRpcs<Rpcs, Type>>
77
73
  }
78
74
 
79
75
  /**
@@ -86,7 +82,7 @@ export type ConvertRpcs<Rpcs extends Rpc.Any, Prefix extends string> = Rpcs exte
86
82
  infer _Error,
87
83
  infer _Middleware
88
84
  > ? Rpc.Rpc<
89
- `${Prefix}${_Tag}`,
85
+ `${Prefix}.${_Tag}`,
90
86
  Schema.Struct<{
91
87
  entityId: typeof Schema.String
92
88
  payload: _Payload
@@ -144,9 +140,9 @@ const entityIdPath = Schema.Struct({
144
140
  * @since 1.0.0
145
141
  * @category Constructors
146
142
  */
147
- export const toHttpApiGroup = <const Name extends string, Rpcs extends Rpc.Any>(
143
+ export const toHttpApiGroup = <const Name extends string, Type extends string, Rpcs extends Rpc.Any>(
148
144
  name: Name,
149
- entity: Entity.Entity<Rpcs>
145
+ entity: Entity.Entity<Type, Rpcs>
150
146
  ): HttpApiGroup.HttpApiGroup<Name, ConvertHttpApi<Rpcs>> => {
151
147
  let group = HttpApiGroup.make(name)
152
148
  for (const parentRpc_ of entity.protocol.requests.values()) {
@@ -21,11 +21,12 @@ export const layerHttpApi = <
21
21
  ApiE,
22
22
  ApiR,
23
23
  Name extends HttpApiGroup.Name<Groups>,
24
+ Type extends string,
24
25
  Rpcs extends Rpc.Any
25
26
  >(
26
27
  api: HttpApi.HttpApi<ApiId, Groups, ApiE, ApiR>,
27
28
  name: Name,
28
- entity: Entity.Entity<Rpcs>
29
+ entity: Entity.Entity<Type, Rpcs>
29
30
  ): Layer.Layer<ApiGroup<ApiId, Name>, never, Sharding | Rpc.Context<Rpcs>> =>
30
31
  HttpApiBuilder.group(
31
32
  api,
@@ -50,19 +51,16 @@ export const layerHttpApi = <
50
51
  * @category Layers
51
52
  */
52
53
  export const layerRpcHandlers = <
53
- Rpcs extends Rpc.Any,
54
- const Prefix extends string = ""
55
- >(entity: Entity.Entity<Rpcs>, options?: {
56
- readonly prefix?: Prefix
57
- }): Layer.Layer<RpcHandlers<Rpcs, Prefix>, never, Sharding | Rpc.Context<Rpcs>> =>
54
+ const Type extends string,
55
+ Rpcs extends Rpc.Any
56
+ >(entity: Entity.Entity<Type, Rpcs>): Layer.Layer<RpcHandlers<Rpcs, Type>, never, Sharding | Rpc.Context<Rpcs>> =>
58
57
  Layer.effectContext(Effect.gen(function*() {
59
58
  const context = yield* Effect.context<never>()
60
- const prefix = options?.prefix ?? ""
61
59
  const client = yield* entity.client
62
60
  const handlers = new Map<string, Rpc.Handler<string>>()
63
61
  for (const parentRpc_ of entity.protocol.requests.values()) {
64
62
  const parentRpc = parentRpc_ as any as Rpc.AnyWithProps
65
- const tag = `${prefix}${parentRpc._tag}` as const
63
+ const tag = `${entity.type}.${parentRpc._tag}` as const
66
64
  const key = `@effect/rpc/Rpc/${tag}`
67
65
  handlers.set(key, {
68
66
  context,
@@ -82,5 +80,5 @@ export type RpcHandlers<Rpcs extends Rpc.Any, Prefix extends string> = Rpcs exte
82
80
  infer _Success,
83
81
  infer _Error,
84
82
  infer _Middleware
85
- > ? Rpc.Handler<`${Prefix}${_Tag}`>
83
+ > ? Rpc.Handler<`${Prefix}.${_Tag}`>
86
84
  : never