effect 3.4.5 → 3.4.7

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 (35) hide show
  1. package/dist/cjs/Micro.js +481 -425
  2. package/dist/cjs/Micro.js.map +1 -1
  3. package/dist/cjs/internal/channel.js +5 -2
  4. package/dist/cjs/internal/channel.js.map +1 -1
  5. package/dist/cjs/internal/core-effect.js +14 -11
  6. package/dist/cjs/internal/core-effect.js.map +1 -1
  7. package/dist/cjs/internal/fiberRuntime.js +4 -9
  8. package/dist/cjs/internal/fiberRuntime.js.map +1 -1
  9. package/dist/cjs/internal/pubsub.js +13 -2
  10. package/dist/cjs/internal/pubsub.js.map +1 -1
  11. package/dist/cjs/internal/version.js +1 -1
  12. package/dist/dts/Match.d.ts +14 -14
  13. package/dist/dts/Match.d.ts.map +1 -1
  14. package/dist/dts/Micro.d.ts +344 -260
  15. package/dist/dts/Micro.d.ts.map +1 -1
  16. package/dist/dts/internal/core-effect.d.ts.map +1 -1
  17. package/dist/esm/Micro.js +456 -402
  18. package/dist/esm/Micro.js.map +1 -1
  19. package/dist/esm/internal/channel.js +5 -2
  20. package/dist/esm/internal/channel.js.map +1 -1
  21. package/dist/esm/internal/core-effect.js +11 -9
  22. package/dist/esm/internal/core-effect.js.map +1 -1
  23. package/dist/esm/internal/fiberRuntime.js +4 -9
  24. package/dist/esm/internal/fiberRuntime.js.map +1 -1
  25. package/dist/esm/internal/pubsub.js +13 -2
  26. package/dist/esm/internal/pubsub.js.map +1 -1
  27. package/dist/esm/internal/version.js +1 -1
  28. package/package.json +1 -1
  29. package/src/Match.ts +16 -16
  30. package/src/Micro.ts +715 -603
  31. package/src/internal/channel.ts +17 -19
  32. package/src/internal/core-effect.ts +14 -10
  33. package/src/internal/fiberRuntime.ts +4 -10
  34. package/src/internal/pubsub.ts +13 -2
  35. package/src/internal/version.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"pubsub.js","names":["Chunk","dual","pipe","MutableQueue","MutableRef","nextPow2","Option","pipeArguments","core","executionStrategy","fiberRuntime","queue","AbsentValue","Symbol","for","addSubscribers","subscription","pollers","subscribers","has","set","Set","get","add","removeSubscribers","delete","size","bounded","requestedCapacity","sync","makeBoundedPubSub","flatMap","atomicPubSub","makePubSub","BackPressureStrategy","dropping","DroppingStrategy","sliding","SlidingStrategy","unbounded","makeUnboundedPubSub","capacity","self","isFull","isEmpty","shutdown","isShutdown","awaitShutdown","publish","value","publishAll","elements","subscribe","ensureCapacity","BoundedPubSubSingle","BoundedPubSubPow2","BoundedPubSubArb","UnboundedPubSub","makeSubscription","pubsub","strategy","map","deferredMake","deferred","unsafeMakeSubscription","make","shutdownHook","shutdownFlag","SubscriptionImpl","array","publisherIndex","subscriberCount","subscribersIndex","constructor","Array","from","length","index","chunk","fromIterable","n","available","forPubSub","Math","min","iteratorIndex","publishAllIndex","a","unsafeGet","drop","slide","BoundedPubSubArbSubscription","subscriberIndex","unsubscribed","max","poll","default_","elem","pollUpTo","empty","toPoll","builder","pollUpToIndex","push","unsubscribe","mask","BoundedPubSubPow2Subscription","arguments","unsafeHead","BoundedPubSubSingleSubscription","of","publisherHead","next","publisherTail","Number","MAX_SAFE_INTEGER","UnboundedPubSubSubscription","subscriberHead","loop","polled","i","DequeueTypeId","dequeueVariance","isActive","suspend","interrupt","succeed","unsafeSize","none","some","uninterruptible","withFiberRuntime","state","forEachParUnbounded","unsafePollAllQueue","d","deferredInterruptWith","id","zipRight","unsafeOnPubSubEmptySpace","whenEffect","deferredSucceed","asVoid","deferredAwait","take","message","EmptyMutableQueue","deferredUnsafeMake","offer","unsafeCompletePollers","onInterrupt","unsafeRemove","takeAll","as","unsafePollAllSubscription","takeUpTo","unsafePollN","takeBetween","takeRemainderLoop","acc","bs","remaining","b","appendAll","append","PubSubImpl","scope","EnqueueTypeId","enqueueVariance","close","exitInterrupt","unsafeCompleteSubscribers","handleSurplus","unsafeOffer","surplus","unsafePublishAll","acquire","tap","all","fork","sequential","tuple","addFinalizer","acquireRelease","exit","offerAll","scopeMake","unsafeMakePubSub","Map","InvalidPubSubCapacityException","unsafeCompleteDeferred","deferredUnsafeDone","unsafeOfferAll","POSITIVE_INFINITY","filter","publishers","fiberId","forEachConcurrentDiscard","_","last","void","keepPolling","publisher","published","prepend","unsafeStrategyCompletePollers","unsafeStrategyCompleteSubscribers","iterator","done","_pubsub","_subscribers","_elements","_isShutdown","unsafeSlidingPublish","it","pub","poller","pollResult","pollersSet"],"sources":["../../../src/internal/pubsub.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,aAAa;AAGpC,SAASC,IAAI,EAAEC,IAAI,QAAQ,gBAAgB;AAC3C,OAAO,KAAKC,YAAY,MAAM,oBAAoB;AAClD,OAAO,KAAKC,UAAU,MAAM,kBAAkB;AAC9C,SAASC,QAAQ,QAAQ,cAAc;AACvC,OAAO,KAAKC,MAAM,MAAM,cAAc;AACtC,SAASC,aAAa,QAAQ,gBAAgB;AAI9C,OAAO,KAAKC,IAAI,MAAM,WAAW;AACjC,OAAO,KAAKC,iBAAiB,MAAM,wBAAwB;AAC3D,OAAO,KAAKC,YAAY,MAAM,mBAAmB;AACjD,OAAO,KAAKC,KAAK,MAAM,YAAY;AAEnC,MAAMC,WAAW,gBAAGC,MAAM,CAACC,GAAG,CAAC,2BAA2B,CAAC;AA8B3D,MAAMC,cAAc,GAAGA,CACrBC,YAA6B,EAC7BC,OAAwD,KAEzDC,WAA2B,IAAI;EAC9B,IAAI,CAACA,WAAW,CAACC,GAAG,CAACH,YAAY,CAAC,EAAE;IAClCE,WAAW,CAACE,GAAG,CAACJ,YAAY,EAAE,IAAIK,GAAG,EAAE,CAAC;EAC1C;EACA,MAAMD,GAAG,GAAGF,WAAW,CAACI,GAAG,CAACN,YAAY,CAAE;EAC1CI,GAAG,CAACG,GAAG,CAACN,OAAO,CAAC;AAClB,CAAC;AAED,MAAMO,iBAAiB,GAAGA,CACxBR,YAA6B,EAC7BC,OAAwD,KAEzDC,WAA2B,IAAI;EAC9B,IAAI,CAACA,WAAW,CAACC,GAAG,CAACH,YAAY,CAAC,EAAE;IAClC;EACF;EACA,MAAMI,GAAG,GAAGF,WAAW,CAACI,GAAG,CAACN,YAAY,CAAE;EAC1CI,GAAG,CAACK,MAAM,CAACR,OAAO,CAAC;EACnB,IAAIG,GAAG,CAACM,IAAI,KAAK,CAAC,EAAE;IAClBR,WAAW,CAACO,MAAM,CAACT,YAAY,CAAC;EAClC;AACF,CAAC;AAED;AACA,OAAO,MAAMW,OAAO,GAAOC,iBAAyB,IAClD1B,IAAI,CACFM,IAAI,CAACqB,IAAI,CAAC,MAAMC,iBAAiB,CAAIF,iBAAiB,CAAC,CAAC,EACxDpB,IAAI,CAACuB,OAAO,CAAEC,YAAY,IAAKC,UAAU,CAACD,YAAY,EAAE,IAAIE,oBAAoB,EAAE,CAAC,CAAC,CACrF;AAEH;AACA,OAAO,MAAMC,QAAQ,GAAOP,iBAAyB,IACnD1B,IAAI,CACFM,IAAI,CAACqB,IAAI,CAAC,MAAMC,iBAAiB,CAAIF,iBAAiB,CAAC,CAAC,EACxDpB,IAAI,CAACuB,OAAO,CAAEC,YAAY,IAAKC,UAAU,CAACD,YAAY,EAAE,IAAII,gBAAgB,EAAE,CAAC,CAAC,CACjF;AAEH;AACA,OAAO,MAAMC,OAAO,GAAOT,iBAAyB,IAClD1B,IAAI,CACFM,IAAI,CAACqB,IAAI,CAAC,MAAMC,iBAAiB,CAAIF,iBAAiB,CAAC,CAAC,EACxDpB,IAAI,CAACuB,OAAO,CAAEC,YAAY,IAAKC,UAAU,CAACD,YAAY,EAAE,IAAIM,eAAe,EAAE,CAAC,CAAC,CAChF;AAEH;AACA,OAAO,MAAMC,SAAS,GAAGA,CAAA,KACvBrC,IAAI,CACFM,IAAI,CAACqB,IAAI,CAAC,MAAMW,mBAAmB,EAAK,CAAC,EACzChC,IAAI,CAACuB,OAAO,CAAEC,YAAY,IAAKC,UAAU,CAACD,YAAY,EAAE,IAAII,gBAAgB,EAAE,CAAC,CAAC,CACjF;AAEH;AACA,OAAO,MAAMK,QAAQ,GAAOC,IAAsB,IAAaA,IAAI,CAACD,QAAQ,EAAE;AAE9E;AACA,OAAO,MAAMf,IAAI,GAAOgB,IAAsB,IAA4BA,IAAI,CAAChB,IAAI;AAEnF;AACA,OAAO,MAAMiB,MAAM,GAAOD,IAAsB,IAA6BA,IAAI,CAACC,MAAM;AAExF;AACA,OAAO,MAAMC,OAAO,GAAOF,IAAsB,IAA6BA,IAAI,CAACE,OAAO;AAE1F;AACA,OAAO,MAAMC,QAAQ,GAAOH,IAAsB,IAA0BA,IAAI,CAACG,QAAQ;AAEzF;AACA,OAAO,MAAMC,UAAU,GAAOJ,IAAsB,IAA6BA,IAAI,CAACI,UAAU;AAEhG;AACA,OAAO,MAAMC,aAAa,GAAOL,IAAsB,IAA0BA,IAAI,CAACK,aAAa;AAEnG;AACA,OAAO,MAAMC,OAAO,gBAAG/C,IAAI,CAGzB,CAAC,EAAE,CAACyC,IAAI,EAAEO,KAAK,KAAKP,IAAI,CAACM,OAAO,CAACC,KAAK,CAAC,CAAC;AAE1C;AACA,OAAO,MAAMC,UAAU,gBAAGjD,IAAI,CAG5B,CAAC,EAAE,CAACyC,IAAI,EAAES,QAAQ,KAAKT,IAAI,CAACQ,UAAU,CAACC,QAAQ,CAAC,CAAC;AAEnD;AACA,OAAO,MAAMC,SAAS,GAAOV,IAAsB,IACjDA,IAAI,CAACU,SAAS;AAEhB;AACA,MAAMtB,iBAAiB,GAAOF,iBAAyB,IAAqB;EAC1EyB,cAAc,CAACzB,iBAAiB,CAAC;EACjC,IAAIA,iBAAiB,KAAK,CAAC,EAAE;IAC3B,OAAO,IAAI0B,mBAAmB,EAAE;EAClC,CAAC,MAAM,IAAIjD,QAAQ,CAACuB,iBAAiB,CAAC,KAAKA,iBAAiB,EAAE;IAC5D,OAAO,IAAI2B,iBAAiB,CAAC3B,iBAAiB,CAAC;EACjD,CAAC,MAAM;IACL,OAAO,IAAI4B,gBAAgB,CAAC5B,iBAAiB,CAAC;EAChD;AACF,CAAC;AAED;AACA,MAAMY,mBAAmB,GAAGA,CAAA,KAAyB;EACnD,OAAO,IAAIiB,eAAe,EAAE;AAC9B,CAAC;AAED;AACA,MAAMC,gBAAgB,GAAGA,CACvBC,MAAuB,EACvBzC,WAA2B,EAC3B0C,QAA2B,KAE3BpD,IAAI,CAACqD,GAAG,CAACrD,IAAI,CAACsD,YAAY,EAAQ,EAAGC,QAAQ,IAC3CC,sBAAsB,CACpBL,MAAM,EACNzC,WAAW,EACXyC,MAAM,CAACP,SAAS,EAAE,EAClBjD,YAAY,CAACoC,SAAS,EAAwB,EAC9CwB,QAAQ,EACR3D,UAAU,CAAC6D,IAAI,CAAC,KAAK,CAAC,EACtBL,QAAQ,CACT,CAAC;AAEN;AACA,OAAO,MAAMI,sBAAsB,GAAGA,CACpCL,MAAuB,EACvBzC,WAA2B,EAC3BF,YAA6B,EAC7BC,OAAwD,EACxDiD,YAAqC,EACrCC,YAA4C,EAC5CP,QAA2B,KACP;EACpB,OAAO,IAAIQ,gBAAgB,CACzBT,MAAM,EACNzC,WAAW,EACXF,YAAY,EACZC,OAAO,EACPiD,YAAY,EACZC,YAAY,EACZP,QAAQ,CACT;AACH,CAAC;AAED;AACA,MAAMJ,gBAAgB;EACpBa,KAAK;EACLC,cAAc,GAAG,CAAC;EAClBpD,WAAW;EACXqD,eAAe,GAAG,CAAC;EACnBC,gBAAgB,GAAG,CAAC;EAEX/B,QAAQ;EAEjBgC,YAAY7C,iBAAyB;IACnC,IAAI,CAACyC,KAAK,GAAGK,KAAK,CAACC,IAAI,CAAC;MAAEC,MAAM,EAAEhD;IAAiB,CAAE,CAAC;IACtD,IAAI,CAACV,WAAW,GAAGwD,KAAK,CAACC,IAAI,CAAC;MAAEC,MAAM,EAAEhD;IAAiB,CAAE,CAAC;IAC5D,IAAI,CAACa,QAAQ,GAAGb,iBAAiB;EACnC;EAEAgB,OAAOA,CAAA;IACL,OAAO,IAAI,CAAC0B,cAAc,KAAK,IAAI,CAACE,gBAAgB;EACtD;EAEA7B,MAAMA,CAAA;IACJ,OAAO,IAAI,CAAC2B,cAAc,KAAK,IAAI,CAACE,gBAAgB,GAAG,IAAI,CAAC/B,QAAQ;EACtE;EAEAf,IAAIA,CAAA;IACF,OAAO,IAAI,CAAC4C,cAAc,GAAG,IAAI,CAACE,gBAAgB;EACpD;EAEAxB,OAAOA,CAACC,KAAQ;IACd,IAAI,IAAI,CAACN,MAAM,EAAE,EAAE;MACjB,OAAO,KAAK;IACd;IACA,IAAI,IAAI,CAAC4B,eAAe,KAAK,CAAC,EAAE;MAC9B,MAAMM,KAAK,GAAG,IAAI,CAACP,cAAc,GAAG,IAAI,CAAC7B,QAAQ;MACjD,IAAI,CAAC4B,KAAK,CAACQ,KAAK,CAAC,GAAG5B,KAAK;MACzB,IAAI,CAAC/B,WAAW,CAAC2D,KAAK,CAAC,GAAG,IAAI,CAACN,eAAe;MAC9C,IAAI,CAACD,cAAc,IAAI,CAAC;IAC1B;IACA,OAAO,IAAI;EACb;EAEApB,UAAUA,CAACC,QAAqB;IAC9B,MAAM2B,KAAK,GAAG9E,KAAK,CAAC+E,YAAY,CAAC5B,QAAQ,CAAC;IAC1C,MAAM6B,CAAC,GAAGF,KAAK,CAACF,MAAM;IACtB,MAAMlD,IAAI,GAAG,IAAI,CAAC4C,cAAc,GAAG,IAAI,CAACE,gBAAgB;IACxD,MAAMS,SAAS,GAAG,IAAI,CAACxC,QAAQ,GAAGf,IAAI;IACtC,MAAMwD,SAAS,GAAGC,IAAI,CAACC,GAAG,CAACJ,CAAC,EAAEC,SAAS,CAAC;IACxC,IAAIC,SAAS,KAAK,CAAC,EAAE;MACnB,OAAOJ,KAAK;IACd;IACA,IAAIO,aAAa,GAAG,CAAC;IACrB,MAAMC,eAAe,GAAG,IAAI,CAAChB,cAAc,GAAGY,SAAS;IACvD,OAAO,IAAI,CAACZ,cAAc,KAAKgB,eAAe,EAAE;MAC9C,MAAMC,CAAC,GAAGvF,KAAK,CAACwF,SAAS,CAACV,KAAK,EAAEO,aAAa,EAAE,CAAC;MACjD,MAAMR,KAAK,GAAG,IAAI,CAACP,cAAc,GAAG,IAAI,CAAC7B,QAAQ;MACjD,IAAI,CAAC4B,KAAK,CAACQ,KAAK,CAAC,GAAGU,CAAC;MACrB,IAAI,CAACrE,WAAW,CAAC2D,KAAK,CAAC,GAAG,IAAI,CAACN,eAAe;MAC9C,IAAI,CAACD,cAAc,IAAI,CAAC;IAC1B;IACA,OAAOtE,KAAK,CAACyF,IAAI,CAACX,KAAK,EAAEO,aAAa,CAAC;EACzC;EAEAK,KAAKA,CAAA;IACH,IAAI,IAAI,CAAClB,gBAAgB,KAAK,IAAI,CAACF,cAAc,EAAE;MACjD,MAAMO,KAAK,GAAG,IAAI,CAACL,gBAAgB,GAAG,IAAI,CAAC/B,QAAQ;MACnD,IAAI,CAAC4B,KAAK,CAACQ,KAAK,CAAC,GAAGjE,WAA2B;MAC/C,IAAI,CAACM,WAAW,CAAC2D,KAAK,CAAC,GAAG,CAAC;MAC3B,IAAI,CAACL,gBAAgB,IAAI,CAAC;IAC5B;EACF;EAEApB,SAASA,CAAA;IACP,IAAI,CAACmB,eAAe,IAAI,CAAC;IACzB,OAAO,IAAIoB,4BAA4B,CAAC,IAAI,EAAE,IAAI,CAACrB,cAAc,EAAE,KAAK,CAAC;EAC3E;;AAGF,MAAMqB,4BAA4B;EAEtBjD,IAAA;EACAkD,eAAA;EACAC,YAAA;EAHVpB,YACU/B,IAAyB,EACzBkD,eAAuB,EACvBC,YAAqB;IAFrB,KAAAnD,IAAI,GAAJA,IAAI;IACJ,KAAAkD,eAAe,GAAfA,eAAe;IACf,KAAAC,YAAY,GAAZA,YAAY;EAEtB;EAEAjD,OAAOA,CAAA;IACL,OACE,IAAI,CAACiD,YAAY,IACjB,IAAI,CAACnD,IAAI,CAAC4B,cAAc,KAAK,IAAI,CAACsB,eAAe,IACjD,IAAI,CAAClD,IAAI,CAAC4B,cAAc,KAAK,IAAI,CAAC5B,IAAI,CAAC8B,gBAAgB;EAE3D;EAEA9C,IAAIA,CAAA;IACF,IAAI,IAAI,CAACmE,YAAY,EAAE;MACrB,OAAO,CAAC;IACV;IACA,OAAO,IAAI,CAACnD,IAAI,CAAC4B,cAAc,GAAGa,IAAI,CAACW,GAAG,CAAC,IAAI,CAACF,eAAe,EAAE,IAAI,CAAClD,IAAI,CAAC8B,gBAAgB,CAAC;EAC9F;EAEAuB,IAAIA,CAAIC,QAAW;IACjB,IAAI,IAAI,CAACH,YAAY,EAAE;MACrB,OAAOG,QAAQ;IACjB;IACA,IAAI,CAACJ,eAAe,GAAGT,IAAI,CAACW,GAAG,CAAC,IAAI,CAACF,eAAe,EAAE,IAAI,CAAClD,IAAI,CAAC8B,gBAAgB,CAAC;IACjF,IAAI,IAAI,CAACoB,eAAe,KAAK,IAAI,CAAClD,IAAI,CAAC4B,cAAc,EAAE;MACrD,MAAMO,KAAK,GAAG,IAAI,CAACe,eAAe,GAAG,IAAI,CAAClD,IAAI,CAACD,QAAQ;MACvD,MAAMwD,IAAI,GAAG,IAAI,CAACvD,IAAI,CAAC2B,KAAK,CAACQ,KAAK,CAAE;MACpC,IAAI,CAACnC,IAAI,CAACxB,WAAW,CAAC2D,KAAK,CAAC,IAAI,CAAC;MACjC,IAAI,IAAI,CAACnC,IAAI,CAACxB,WAAW,CAAC2D,KAAK,CAAC,KAAK,CAAC,EAAE;QACtC,IAAI,CAACnC,IAAI,CAAC2B,KAAK,CAACQ,KAAK,CAAC,GAAGjE,WAA2B;QACpD,IAAI,CAAC8B,IAAI,CAAC8B,gBAAgB,IAAI,CAAC;MACjC;MACA,IAAI,CAACoB,eAAe,IAAI,CAAC;MACzB,OAAOK,IAAI;IACb;IACA,OAAOD,QAAQ;EACjB;EAEAE,QAAQA,CAAClB,CAAS;IAChB,IAAI,IAAI,CAACa,YAAY,EAAE;MACrB,OAAO7F,KAAK,CAACmG,KAAK,EAAE;IACtB;IACA,IAAI,CAACP,eAAe,GAAGT,IAAI,CAACW,GAAG,CAAC,IAAI,CAACF,eAAe,EAAE,IAAI,CAAClD,IAAI,CAAC8B,gBAAgB,CAAC;IACjF,MAAM9C,IAAI,GAAG,IAAI,CAACgB,IAAI,CAAC4B,cAAc,GAAG,IAAI,CAACsB,eAAe;IAC5D,MAAMQ,MAAM,GAAGjB,IAAI,CAACC,GAAG,CAACJ,CAAC,EAAEtD,IAAI,CAAC;IAChC,IAAI0E,MAAM,IAAI,CAAC,EAAE;MACf,OAAOpG,KAAK,CAACmG,KAAK,EAAE;IACtB;IACA,MAAME,OAAO,GAAa,EAAE;IAC5B,MAAMC,aAAa,GAAG,IAAI,CAACV,eAAe,GAAGQ,MAAM;IACnD,OAAO,IAAI,CAACR,eAAe,KAAKU,aAAa,EAAE;MAC7C,MAAMzB,KAAK,GAAG,IAAI,CAACe,eAAe,GAAG,IAAI,CAAClD,IAAI,CAACD,QAAQ;MACvD,MAAM8C,CAAC,GAAG,IAAI,CAAC7C,IAAI,CAAC2B,KAAK,CAACQ,KAAK,CAAM;MACrC,IAAI,CAACnC,IAAI,CAACxB,WAAW,CAAC2D,KAAK,CAAC,IAAI,CAAC;MACjC,IAAI,IAAI,CAACnC,IAAI,CAACxB,WAAW,CAAC2D,KAAK,CAAC,KAAK,CAAC,EAAE;QACtC,IAAI,CAACnC,IAAI,CAAC2B,KAAK,CAACQ,KAAK,CAAC,GAAGjE,WAA2B;QACpD,IAAI,CAAC8B,IAAI,CAAC8B,gBAAgB,IAAI,CAAC;MACjC;MACA6B,OAAO,CAACE,IAAI,CAAChB,CAAC,CAAC;MACf,IAAI,CAACK,eAAe,IAAI,CAAC;IAC3B;IAEA,OAAO5F,KAAK,CAAC+E,YAAY,CAACsB,OAAO,CAAC;EACpC;EAEAG,WAAWA,CAAA;IACT,IAAI,CAAC,IAAI,CAACX,YAAY,EAAE;MACtB,IAAI,CAACA,YAAY,GAAG,IAAI;MACxB,IAAI,CAACnD,IAAI,CAAC6B,eAAe,IAAI,CAAC;MAC9B,IAAI,CAACqB,eAAe,GAAGT,IAAI,CAACW,GAAG,CAAC,IAAI,CAACF,eAAe,EAAE,IAAI,CAAClD,IAAI,CAAC8B,gBAAgB,CAAC;MACjF,OAAO,IAAI,CAACoB,eAAe,KAAK,IAAI,CAAClD,IAAI,CAAC4B,cAAc,EAAE;QACxD,MAAMO,KAAK,GAAG,IAAI,CAACe,eAAe,GAAG,IAAI,CAAClD,IAAI,CAACD,QAAQ;QACvD,IAAI,CAACC,IAAI,CAACxB,WAAW,CAAC2D,KAAK,CAAC,IAAI,CAAC;QACjC,IAAI,IAAI,CAACnC,IAAI,CAACxB,WAAW,CAAC2D,KAAK,CAAC,KAAK,CAAC,EAAE;UACtC,IAAI,CAACnC,IAAI,CAAC2B,KAAK,CAACQ,KAAK,CAAC,GAAGjE,WAA2B;UACpD,IAAI,CAAC8B,IAAI,CAAC8B,gBAAgB,IAAI,CAAC;QACjC;QACA,IAAI,CAACoB,eAAe,IAAI,CAAC;MAC3B;IACF;EACF;;AAGF;AACA,MAAMrC,iBAAiB;EACrBc,KAAK;EACLoC,IAAI;EACJnC,cAAc,GAAG,CAAC;EAClBpD,WAAW;EACXqD,eAAe,GAAG,CAAC;EACnBC,gBAAgB,GAAG,CAAC;EAEX/B,QAAQ;EAEjBgC,YAAY7C,iBAAyB;IACnC,IAAI,CAACyC,KAAK,GAAGK,KAAK,CAACC,IAAI,CAAC;MAAEC,MAAM,EAAEhD;IAAiB,CAAE,CAAC;IACtD,IAAI,CAAC6E,IAAI,GAAG7E,iBAAiB,GAAG,CAAC;IACjC,IAAI,CAACV,WAAW,GAAGwD,KAAK,CAACC,IAAI,CAAC;MAAEC,MAAM,EAAEhD;IAAiB,CAAE,CAAC;IAC5D,IAAI,CAACa,QAAQ,GAAGb,iBAAiB;EACnC;EAEAgB,OAAOA,CAAA;IACL,OAAO,IAAI,CAAC0B,cAAc,KAAK,IAAI,CAACE,gBAAgB;EACtD;EAEA7B,MAAMA,CAAA;IACJ,OAAO,IAAI,CAAC2B,cAAc,KAAK,IAAI,CAACE,gBAAgB,GAAG,IAAI,CAAC/B,QAAQ;EACtE;EAEAf,IAAIA,CAAA;IACF,OAAO,IAAI,CAAC4C,cAAc,GAAG,IAAI,CAACE,gBAAgB;EACpD;EAEAxB,OAAOA,CAACC,KAAQ;IACd,IAAI,IAAI,CAACN,MAAM,EAAE,EAAE;MACjB,OAAO,KAAK;IACd;IACA,IAAI,IAAI,CAAC4B,eAAe,KAAK,CAAC,EAAE;MAC9B,MAAMM,KAAK,GAAG,IAAI,CAACP,cAAc,GAAG,IAAI,CAACmC,IAAI;MAC7C,IAAI,CAACpC,KAAK,CAACQ,KAAK,CAAC,GAAG5B,KAAK;MACzB,IAAI,CAAC/B,WAAW,CAAC2D,KAAK,CAAC,GAAG,IAAI,CAACN,eAAe;MAC9C,IAAI,CAACD,cAAc,IAAI,CAAC;IAC1B;IACA,OAAO,IAAI;EACb;EAEApB,UAAUA,CAACC,QAAqB;IAC9B,MAAM2B,KAAK,GAAG9E,KAAK,CAAC+E,YAAY,CAAC5B,QAAQ,CAAC;IAC1C,MAAM6B,CAAC,GAAGF,KAAK,CAACF,MAAM;IACtB,MAAMlD,IAAI,GAAG,IAAI,CAAC4C,cAAc,GAAG,IAAI,CAACE,gBAAgB;IACxD,MAAMS,SAAS,GAAG,IAAI,CAACxC,QAAQ,GAAGf,IAAI;IACtC,MAAMwD,SAAS,GAAGC,IAAI,CAACC,GAAG,CAACJ,CAAC,EAAEC,SAAS,CAAC;IACxC,IAAIC,SAAS,KAAK,CAAC,EAAE;MACnB,OAAOJ,KAAK;IACd;IACA,IAAIO,aAAa,GAAG,CAAC;IACrB,MAAMC,eAAe,GAAG,IAAI,CAAChB,cAAc,GAAGY,SAAS;IACvD,OAAO,IAAI,CAACZ,cAAc,KAAKgB,eAAe,EAAE;MAC9C,MAAMW,IAAI,GAAGjG,KAAK,CAACwF,SAAS,CAACV,KAAK,EAAEO,aAAa,EAAE,CAAC;MACpD,MAAMR,KAAK,GAAG,IAAI,CAACP,cAAc,GAAG,IAAI,CAACmC,IAAI;MAC7C,IAAI,CAACpC,KAAK,CAACQ,KAAK,CAAC,GAAGoB,IAAI;MACxB,IAAI,CAAC/E,WAAW,CAAC2D,KAAK,CAAC,GAAG,IAAI,CAACN,eAAe;MAC9C,IAAI,CAACD,cAAc,IAAI,CAAC;IAC1B;IACA,OAAOtE,KAAK,CAACyF,IAAI,CAACX,KAAK,EAAEO,aAAa,CAAC;EACzC;EAEAK,KAAKA,CAAA;IACH,IAAI,IAAI,CAAClB,gBAAgB,KAAK,IAAI,CAACF,cAAc,EAAE;MACjD,MAAMO,KAAK,GAAG,IAAI,CAACL,gBAAgB,GAAG,IAAI,CAACiC,IAAI;MAC/C,IAAI,CAACpC,KAAK,CAACQ,KAAK,CAAC,GAAGjE,WAA2B;MAC/C,IAAI,CAACM,WAAW,CAAC2D,KAAK,CAAC,GAAG,CAAC;MAC3B,IAAI,CAACL,gBAAgB,IAAI,CAAC;IAC5B;EACF;EAEApB,SAASA,CAAA;IACP,IAAI,CAACmB,eAAe,IAAI,CAAC;IACzB,OAAO,IAAImC,6BAA6B,CAAC,IAAI,EAAE,IAAI,CAACpC,cAAc,EAAE,KAAK,CAAC;EAC5E;;AAGF;AACA,MAAMoC,6BAA6B;EAEvBhE,IAAA;EACAkD,eAAA;EACAC,YAAA;EAHVpB,YACU/B,IAA0B,EAC1BkD,eAAuB,EACvBC,YAAqB;IAFrB,KAAAnD,IAAI,GAAJA,IAAI;IACJ,KAAAkD,eAAe,GAAfA,eAAe;IACf,KAAAC,YAAY,GAAZA,YAAY;EAEtB;EAEAjD,OAAOA,CAAA;IACL,OACE,IAAI,CAACiD,YAAY,IACjB,IAAI,CAACnD,IAAI,CAAC4B,cAAc,KAAK,IAAI,CAACsB,eAAe,IACjD,IAAI,CAAClD,IAAI,CAAC4B,cAAc,KAAK,IAAI,CAAC5B,IAAI,CAAC8B,gBAAgB;EAE3D;EAEA9C,IAAIA,CAAA;IACF,IAAI,IAAI,CAACmE,YAAY,EAAE;MACrB,OAAO,CAAC;IACV;IACA,OAAO,IAAI,CAACnD,IAAI,CAAC4B,cAAc,GAAGa,IAAI,CAACW,GAAG,CAAC,IAAI,CAACF,eAAe,EAAE,IAAI,CAAClD,IAAI,CAAC8B,gBAAgB,CAAC;EAC9F;EAEAuB,IAAIA,CAAIC,QAAW;IACjB,IAAI,IAAI,CAACH,YAAY,EAAE;MACrB,OAAOG,QAAQ;IACjB;IACA,IAAI,CAACJ,eAAe,GAAGT,IAAI,CAACW,GAAG,CAAC,IAAI,CAACF,eAAe,EAAE,IAAI,CAAClD,IAAI,CAAC8B,gBAAgB,CAAC;IACjF,IAAI,IAAI,CAACoB,eAAe,KAAK,IAAI,CAAClD,IAAI,CAAC4B,cAAc,EAAE;MACrD,MAAMO,KAAK,GAAG,IAAI,CAACe,eAAe,GAAG,IAAI,CAAClD,IAAI,CAAC+D,IAAI;MACnD,MAAMR,IAAI,GAAG,IAAI,CAACvD,IAAI,CAAC2B,KAAK,CAACQ,KAAK,CAAE;MACpC,IAAI,CAACnC,IAAI,CAACxB,WAAW,CAAC2D,KAAK,CAAC,IAAI,CAAC;MACjC,IAAI,IAAI,CAACnC,IAAI,CAACxB,WAAW,CAAC2D,KAAK,CAAC,KAAK,CAAC,EAAE;QACtC,IAAI,CAACnC,IAAI,CAAC2B,KAAK,CAACQ,KAAK,CAAC,GAAGjE,WAA2B;QACpD,IAAI,CAAC8B,IAAI,CAAC8B,gBAAgB,IAAI,CAAC;MACjC;MACA,IAAI,CAACoB,eAAe,IAAI,CAAC;MACzB,OAAOK,IAAI;IACb;IACA,OAAOD,QAAQ;EACjB;EAEAE,QAAQA,CAAClB,CAAS;IAChB,IAAI,IAAI,CAACa,YAAY,EAAE;MACrB,OAAO7F,KAAK,CAACmG,KAAK,EAAE;IACtB;IACA,IAAI,CAACP,eAAe,GAAGT,IAAI,CAACW,GAAG,CAAC,IAAI,CAACF,eAAe,EAAE,IAAI,CAAClD,IAAI,CAAC8B,gBAAgB,CAAC;IACjF,MAAM9C,IAAI,GAAG,IAAI,CAACgB,IAAI,CAAC4B,cAAc,GAAG,IAAI,CAACsB,eAAe;IAC5D,MAAMQ,MAAM,GAAGjB,IAAI,CAACC,GAAG,CAACJ,CAAC,EAAEtD,IAAI,CAAC;IAChC,IAAI0E,MAAM,IAAI,CAAC,EAAE;MACf,OAAOpG,KAAK,CAACmG,KAAK,EAAE;IACtB;IACA,MAAME,OAAO,GAAa,EAAE;IAC5B,MAAMC,aAAa,GAAG,IAAI,CAACV,eAAe,GAAGQ,MAAM;IACnD,OAAO,IAAI,CAACR,eAAe,KAAKU,aAAa,EAAE;MAC7C,MAAMzB,KAAK,GAAG,IAAI,CAACe,eAAe,GAAG,IAAI,CAAClD,IAAI,CAAC+D,IAAI;MACnD,MAAMR,IAAI,GAAG,IAAI,CAACvD,IAAI,CAAC2B,KAAK,CAACQ,KAAK,CAAM;MACxC,IAAI,CAACnC,IAAI,CAACxB,WAAW,CAAC2D,KAAK,CAAC,IAAI,CAAC;MACjC,IAAI,IAAI,CAACnC,IAAI,CAACxB,WAAW,CAAC2D,KAAK,CAAC,KAAK,CAAC,EAAE;QACtC,IAAI,CAACnC,IAAI,CAAC2B,KAAK,CAACQ,KAAK,CAAC,GAAGjE,WAA2B;QACpD,IAAI,CAAC8B,IAAI,CAAC8B,gBAAgB,IAAI,CAAC;MACjC;MACA6B,OAAO,CAACE,IAAI,CAACN,IAAI,CAAC;MAClB,IAAI,CAACL,eAAe,IAAI,CAAC;IAC3B;IACA,OAAO5F,KAAK,CAAC+E,YAAY,CAACsB,OAAO,CAAC;EACpC;EAEAG,WAAWA,CAAA;IACT,IAAI,CAAC,IAAI,CAACX,YAAY,EAAE;MACtB,IAAI,CAACA,YAAY,GAAG,IAAI;MACxB,IAAI,CAACnD,IAAI,CAAC6B,eAAe,IAAI,CAAC;MAC9B,IAAI,CAACqB,eAAe,GAAGT,IAAI,CAACW,GAAG,CAAC,IAAI,CAACF,eAAe,EAAE,IAAI,CAAClD,IAAI,CAAC8B,gBAAgB,CAAC;MACjF,OAAO,IAAI,CAACoB,eAAe,KAAK,IAAI,CAAClD,IAAI,CAAC4B,cAAc,EAAE;QACxD,MAAMO,KAAK,GAAG,IAAI,CAACe,eAAe,GAAG,IAAI,CAAClD,IAAI,CAAC+D,IAAI;QACnD,IAAI,CAAC/D,IAAI,CAACxB,WAAW,CAAC2D,KAAK,CAAC,IAAI,CAAC;QACjC,IAAI,IAAI,CAACnC,IAAI,CAACxB,WAAW,CAAC2D,KAAK,CAAC,KAAK,CAAC,EAAE;UACtC,IAAI,CAACnC,IAAI,CAAC2B,KAAK,CAACQ,KAAK,CAAC,GAAGjE,WAA2B;UACpD,IAAI,CAAC8B,IAAI,CAAC8B,gBAAgB,IAAI,CAAC;QACjC;QACA,IAAI,CAACoB,eAAe,IAAI,CAAC;MAC3B;IACF;EACF;;AAGF;AACA,MAAMtC,mBAAmB;EACvBgB,cAAc,GAAG,CAAC;EAClBC,eAAe,GAAG,CAAC;EACnBrD,WAAW,GAAG,CAAC;EACf+B,KAAK,GAAMrC,WAA2B;EAE7B6B,QAAQ,GAAG,CAAC;EAErBvC,IAAIA,CAAA;IACF,OAAOK,aAAa,CAAC,IAAI,EAAEoG,SAAS,CAAC;EACvC;EAEA/D,OAAOA,CAAA;IACL,OAAO,IAAI,CAAC1B,WAAW,KAAK,CAAC;EAC/B;EAEAyB,MAAMA,CAAA;IACJ,OAAO,CAAC,IAAI,CAACC,OAAO,EAAE;EACxB;EAEAlB,IAAIA,CAAA;IACF,OAAO,IAAI,CAACkB,OAAO,EAAE,GAAG,CAAC,GAAG,CAAC;EAC/B;EAEAI,OAAOA,CAACC,KAAQ;IACd,IAAI,IAAI,CAACN,MAAM,EAAE,EAAE;MACjB,OAAO,KAAK;IACd;IACA,IAAI,IAAI,CAAC4B,eAAe,KAAK,CAAC,EAAE;MAC9B,IAAI,CAACtB,KAAK,GAAGA,KAAK;MAClB,IAAI,CAAC/B,WAAW,GAAG,IAAI,CAACqD,eAAe;MACvC,IAAI,CAACD,cAAc,IAAI,CAAC;IAC1B;IACA,OAAO,IAAI;EACb;EAEApB,UAAUA,CAACC,QAAqB;IAC9B,MAAM2B,KAAK,GAAG9E,KAAK,CAAC+E,YAAY,CAAC5B,QAAQ,CAAC;IAC1C,IAAInD,KAAK,CAAC4C,OAAO,CAACkC,KAAK,CAAC,EAAE;MACxB,OAAOA,KAAK;IACd;IACA,IAAI,IAAI,CAAC9B,OAAO,CAAChD,KAAK,CAAC4G,UAAU,CAAC9B,KAAK,CAAC,CAAC,EAAE;MACzC,OAAO9E,KAAK,CAACyF,IAAI,CAACX,KAAK,EAAE,CAAC,CAAC;IAC7B,CAAC,MAAM;MACL,OAAOA,KAAK;IACd;EACF;EAEAY,KAAKA,CAAA;IACH,IAAI,IAAI,CAAC/C,MAAM,EAAE,EAAE;MACjB,IAAI,CAACzB,WAAW,GAAG,CAAC;MACpB,IAAI,CAAC+B,KAAK,GAAGrC,WAA2B;IAC1C;EACF;EAEAwC,SAASA,CAAA;IACP,IAAI,CAACmB,eAAe,IAAI,CAAC;IACzB,OAAO,IAAIsC,+BAA+B,CAAC,IAAI,EAAE,IAAI,CAACvC,cAAc,EAAE,KAAK,CAAC;EAC9E;;AAGF;AACA,MAAMuC,+BAA+B;EAEzBnE,IAAA;EACAkD,eAAA;EACAC,YAAA;EAHVpB,YACU/B,IAA4B,EAC5BkD,eAAuB,EACvBC,YAAqB;IAFrB,KAAAnD,IAAI,GAAJA,IAAI;IACJ,KAAAkD,eAAe,GAAfA,eAAe;IACf,KAAAC,YAAY,GAAZA,YAAY;EAEtB;EAEAjD,OAAOA,CAAA;IACL,OACE,IAAI,CAACiD,YAAY,IACjB,IAAI,CAACnD,IAAI,CAACxB,WAAW,KAAK,CAAC,IAC3B,IAAI,CAAC0E,eAAe,KAAK,IAAI,CAAClD,IAAI,CAAC4B,cAAc;EAErD;EAEA5C,IAAIA,CAAA;IACF,OAAO,IAAI,CAACkB,OAAO,EAAE,GAAG,CAAC,GAAG,CAAC;EAC/B;EAEAmD,IAAIA,CAAIC,QAAW;IACjB,IAAI,IAAI,CAACpD,OAAO,EAAE,EAAE;MAClB,OAAOoD,QAAQ;IACjB;IACA,MAAMC,IAAI,GAAG,IAAI,CAACvD,IAAI,CAACO,KAAK;IAC5B,IAAI,CAACP,IAAI,CAACxB,WAAW,IAAI,CAAC;IAC1B,IAAI,IAAI,CAACwB,IAAI,CAACxB,WAAW,KAAK,CAAC,EAAE;MAC/B,IAAI,CAACwB,IAAI,CAACO,KAAK,GAAGrC,WAA2B;IAC/C;IACA,IAAI,CAACgF,eAAe,IAAI,CAAC;IACzB,OAAOK,IAAI;EACb;EAEAC,QAAQA,CAAClB,CAAS;IAChB,IAAI,IAAI,CAACpC,OAAO,EAAE,IAAIoC,CAAC,GAAG,CAAC,EAAE;MAC3B,OAAOhF,KAAK,CAACmG,KAAK,EAAE;IACtB;IACA,MAAMZ,CAAC,GAAG,IAAI,CAAC7C,IAAI,CAACO,KAAK;IACzB,IAAI,CAACP,IAAI,CAACxB,WAAW,IAAI,CAAC;IAC1B,IAAI,IAAI,CAACwB,IAAI,CAACxB,WAAW,KAAK,CAAC,EAAE;MAC/B,IAAI,CAACwB,IAAI,CAACO,KAAK,GAAGrC,WAA2B;IAC/C;IACA,IAAI,CAACgF,eAAe,IAAI,CAAC;IACzB,OAAO5F,KAAK,CAAC8G,EAAE,CAACvB,CAAC,CAAC;EACpB;EAEAiB,WAAWA,CAAA;IACT,IAAI,CAAC,IAAI,CAACX,YAAY,EAAE;MACtB,IAAI,CAACA,YAAY,GAAG,IAAI;MACxB,IAAI,CAACnD,IAAI,CAAC6B,eAAe,IAAI,CAAC;MAC9B,IAAI,IAAI,CAACqB,eAAe,KAAK,IAAI,CAAClD,IAAI,CAAC4B,cAAc,EAAE;QACrD,IAAI,CAAC5B,IAAI,CAACxB,WAAW,IAAI,CAAC;QAC1B,IAAI,IAAI,CAACwB,IAAI,CAACxB,WAAW,KAAK,CAAC,EAAE;UAC/B,IAAI,CAACwB,IAAI,CAACO,KAAK,GAAGrC,WAA2B;QAC/C;MACF;IACF;EACF;;AAUF;AACA,MAAM6C,eAAe;EACnBsD,aAAa,GAAY;IACvB9D,KAAK,EAAErC,WAAW;IAClBM,WAAW,EAAE,CAAC;IACd8F,IAAI,EAAE;GACP;EACDC,aAAa,GAAG,IAAI,CAACF,aAAa;EAClCzC,cAAc,GAAG,CAAC;EAClBE,gBAAgB,GAAG,CAAC;EAEX/B,QAAQ,GAAGyE,MAAM,CAACC,gBAAgB;EAE3CvE,OAAOA,CAAA;IACL,OAAO,IAAI,CAACmE,aAAa,KAAK,IAAI,CAACE,aAAa;EAClD;EAEAtE,MAAMA,CAAA;IACJ,OAAO,KAAK;EACd;EAEAjB,IAAIA,CAAA;IACF,OAAO,IAAI,CAAC4C,cAAc,GAAG,IAAI,CAACE,gBAAgB;EACpD;EAEAxB,OAAOA,CAACC,KAAQ;IACd,MAAM/B,WAAW,GAAG,IAAI,CAAC+F,aAAa,CAAC/F,WAAW;IAClD,IAAIA,WAAW,KAAK,CAAC,EAAE;MACrB,IAAI,CAAC+F,aAAa,CAACD,IAAI,GAAG;QACxB/D,KAAK;QACL/B,WAAW;QACX8F,IAAI,EAAE;OACP;MACD,IAAI,CAACC,aAAa,GAAG,IAAI,CAACA,aAAa,CAACD,IAAI;MAC5C,IAAI,CAAC1C,cAAc,IAAI,CAAC;IAC1B;IACA,OAAO,IAAI;EACb;EAEApB,UAAUA,CAACC,QAAqB;IAC9B,KAAK,MAAMoC,CAAC,IAAIpC,QAAQ,EAAE;MACxB,IAAI,CAACH,OAAO,CAACuC,CAAC,CAAC;IACjB;IACA,OAAOvF,KAAK,CAACmG,KAAK,EAAE;EACtB;EAEAT,KAAKA,CAAA;IACH,IAAI,IAAI,CAACqB,aAAa,KAAK,IAAI,CAACE,aAAa,EAAE;MAC7C,IAAI,CAACF,aAAa,GAAG,IAAI,CAACA,aAAa,CAACC,IAAK;MAC7C,IAAI,CAACD,aAAa,CAAC9D,KAAK,GAAGrC,WAAW;MACtC,IAAI,CAAC4D,gBAAgB,IAAI,CAAC;IAC5B;EACF;EAEApB,SAASA,CAAA;IACP,IAAI,CAAC6D,aAAa,CAAC/F,WAAW,IAAI,CAAC;IACnC,OAAO,IAAIkG,2BAA2B,CACpC,IAAI,EACJ,IAAI,CAACH,aAAa,EAClB,IAAI,CAAC3C,cAAc,EACnB,KAAK,CACN;EACH;;AAGF;AACA,MAAM8C,2BAA2B;EAErB1E,IAAA;EACA2E,cAAA;EACAzB,eAAA;EACAC,YAAA;EAJVpB,YACU/B,IAAwB,EACxB2E,cAAuB,EACvBzB,eAAuB,EACvBC,YAAqB;IAHrB,KAAAnD,IAAI,GAAJA,IAAI;IACJ,KAAA2E,cAAc,GAAdA,cAAc;IACd,KAAAzB,eAAe,GAAfA,eAAe;IACf,KAAAC,YAAY,GAAZA,YAAY;EAEtB;EAEAjD,OAAOA,CAAA;IACL,IAAI,IAAI,CAACiD,YAAY,EAAE;MACrB,OAAO,IAAI;IACb;IACA,IAAIM,KAAK,GAAG,IAAI;IAChB,IAAImB,IAAI,GAAG,IAAI;IACf,OAAOA,IAAI,EAAE;MACX,IAAI,IAAI,CAACD,cAAc,KAAK,IAAI,CAAC3E,IAAI,CAACuE,aAAa,EAAE;QACnDK,IAAI,GAAG,KAAK;MACd,CAAC,MAAM;QACL,IAAI,IAAI,CAACD,cAAc,CAACL,IAAK,CAAC/D,KAAK,KAAKrC,WAAW,EAAE;UACnDuF,KAAK,GAAG,KAAK;UACbmB,IAAI,GAAG,KAAK;QACd,CAAC,MAAM;UACL,IAAI,CAACD,cAAc,GAAG,IAAI,CAACA,cAAc,CAACL,IAAK;UAC/C,IAAI,CAACpB,eAAe,IAAI,CAAC;QAC3B;MACF;IACF;IACA,OAAOO,KAAK;EACd;EAEAzE,IAAIA,CAAA;IACF,IAAI,IAAI,CAACmE,YAAY,EAAE;MACrB,OAAO,CAAC;IACV;IACA,OAAO,IAAI,CAACnD,IAAI,CAAC4B,cAAc,GAAGa,IAAI,CAACW,GAAG,CAAC,IAAI,CAACF,eAAe,EAAE,IAAI,CAAClD,IAAI,CAAC8B,gBAAgB,CAAC;EAC9F;EAEAuB,IAAIA,CAAIC,QAAW;IACjB,IAAI,IAAI,CAACH,YAAY,EAAE;MACrB,OAAOG,QAAQ;IACjB;IACA,IAAIsB,IAAI,GAAG,IAAI;IACf,IAAIC,MAAM,GAAUvB,QAAQ;IAC5B,OAAOsB,IAAI,EAAE;MACX,IAAI,IAAI,CAACD,cAAc,KAAK,IAAI,CAAC3E,IAAI,CAACuE,aAAa,EAAE;QACnDK,IAAI,GAAG,KAAK;MACd,CAAC,MAAM;QACL,MAAMrB,IAAI,GAAG,IAAI,CAACoB,cAAc,CAACL,IAAK,CAAC/D,KAAK;QAC5C,IAAIgD,IAAI,KAAKrF,WAAW,EAAE;UACxB2G,MAAM,GAAGtB,IAAI;UACb,IAAI,CAACoB,cAAc,CAACnG,WAAW,IAAI,CAAC;UACpC,IAAI,IAAI,CAACmG,cAAc,CAACnG,WAAW,KAAK,CAAC,EAAE;YACzC,IAAI,CAACwB,IAAI,CAACqE,aAAa,GAAG,IAAI,CAACrE,IAAI,CAACqE,aAAa,CAACC,IAAK;YACvD,IAAI,CAACtE,IAAI,CAACqE,aAAa,CAAC9D,KAAK,GAAGrC,WAAW;YAC3C,IAAI,CAAC8B,IAAI,CAAC8B,gBAAgB,IAAI,CAAC;UACjC;UACA8C,IAAI,GAAG,KAAK;QACd;QACA,IAAI,CAACD,cAAc,GAAG,IAAI,CAACA,cAAc,CAACL,IAAK;QAC/C,IAAI,CAACpB,eAAe,IAAI,CAAC;MAC3B;IACF;IACA,OAAO2B,MAAM;EACf;EAEArB,QAAQA,CAAClB,CAAS;IAChB,MAAMqB,OAAO,GAAa,EAAE;IAC5B,MAAML,QAAQ,GAAGpF,WAAW;IAC5B,IAAI4G,CAAC,GAAG,CAAC;IACT,OAAOA,CAAC,KAAKxC,CAAC,EAAE;MACd,MAAMO,CAAC,GAAG,IAAI,CAACQ,IAAI,CAACC,QAAwB,CAAC;MAC7C,IAAIT,CAAC,KAAKS,QAAQ,EAAE;QAClBwB,CAAC,GAAGxC,CAAC;MACP,CAAC,MAAM;QACLqB,OAAO,CAACE,IAAI,CAAChB,CAAC,CAAC;QACfiC,CAAC,IAAI,CAAC;MACR;IACF;IACA,OAAOxH,KAAK,CAAC+E,YAAY,CAACsB,OAAO,CAAC;EACpC;EAEAG,WAAWA,CAAA;IACT,IAAI,CAAC,IAAI,CAACX,YAAY,EAAE;MACtB,IAAI,CAACA,YAAY,GAAG,IAAI;MACxB,IAAI,CAACnD,IAAI,CAACuE,aAAa,CAAC/F,WAAW,IAAI,CAAC;MACxC,OAAO,IAAI,CAACmG,cAAc,KAAK,IAAI,CAAC3E,IAAI,CAACuE,aAAa,EAAE;QACtD,IAAI,IAAI,CAACI,cAAc,CAACL,IAAK,CAAC/D,KAAK,KAAKrC,WAAW,EAAE;UACnD,IAAI,CAACyG,cAAc,CAACnG,WAAW,IAAI,CAAC;UACpC,IAAI,IAAI,CAACmG,cAAc,CAACnG,WAAW,KAAK,CAAC,EAAE;YACzC,IAAI,CAACwB,IAAI,CAACqE,aAAa,GAAG,IAAI,CAACrE,IAAI,CAACqE,aAAa,CAACC,IAAK;YACvD,IAAI,CAACtE,IAAI,CAACqE,aAAa,CAAC9D,KAAK,GAAGrC,WAAW;YAC3C,IAAI,CAAC8B,IAAI,CAAC8B,gBAAgB,IAAI,CAAC;UACjC;QACF;QACA,IAAI,CAAC6C,cAAc,GAAG,IAAI,CAACA,cAAc,CAACL,IAAK;MACjD;IACF;EACF;;AAGF;AACA,MAAM5C,gBAAgB;EAITT,MAAA;EACAzC,WAAA;EACAF,YAAA;EACAC,OAAA;EACAiD,YAAA;EACAC,YAAA;EACAP,QAAA;EATX,CAACjD,KAAK,CAAC8G,aAAa,IAAI9G,KAAK,CAAC+G,eAAe;EAE7CjD,YACWd,MAAuB,EACvBzC,WAA2B,EAC3BF,YAA6B,EAC7BC,OAAwD,EACxDiD,YAAqC,EACrCC,YAA4C,EAC5CP,QAA2B;IAN3B,KAAAD,MAAM,GAANA,MAAM;IACN,KAAAzC,WAAW,GAAXA,WAAW;IACX,KAAAF,YAAY,GAAZA,YAAY;IACZ,KAAAC,OAAO,GAAPA,OAAO;IACP,KAAAiD,YAAY,GAAZA,YAAY;IACZ,KAAAC,YAAY,GAAZA,YAAY;IACZ,KAAAP,QAAQ,GAARA,QAAQ;EAEnB;EAEA1D,IAAIA,CAAA;IACF,OAAOK,aAAa,CAAC,IAAI,EAAEoG,SAAS,CAAC;EACvC;EAEAlE,QAAQA,CAAA;IACN,OAAO,IAAI,CAACkB,MAAM,CAAClB,QAAQ;EAC7B;EAEAkF,QAAQA,CAAA;IACN,OAAO,CAACvH,UAAU,CAACkB,GAAG,CAAC,IAAI,CAAC6C,YAAY,CAAC;EAC3C;EAEA,IAAIzC,IAAIA,CAAA;IACN,OAAOlB,IAAI,CAACoH,OAAO,CAAC,MAClBxH,UAAU,CAACkB,GAAG,CAAC,IAAI,CAAC6C,YAAY,CAAC,GAC7B3D,IAAI,CAACqH,SAAS,GACdrH,IAAI,CAACsH,OAAO,CAAC,IAAI,CAAC9G,YAAY,CAACU,IAAI,EAAE,CAAC,CAC3C;EACH;EAEAqG,UAAUA,CAAA;IACR,IAAI3H,UAAU,CAACkB,GAAG,CAAC,IAAI,CAAC6C,YAAY,CAAC,EAAE;MACrC,OAAO7D,MAAM,CAAC0H,IAAI,EAAE;IACtB;IACA,OAAO1H,MAAM,CAAC2H,IAAI,CAAC,IAAI,CAACjH,YAAY,CAACU,IAAI,EAAE,CAAC;EAC9C;EAEA,IAAIiB,MAAMA,CAAA;IACR,OAAOnC,IAAI,CAACqD,GAAG,CAAC,IAAI,CAACnC,IAAI,EAAGA,IAAI,IAAKA,IAAI,KAAK,IAAI,CAACe,QAAQ,EAAE,CAAC;EAChE;EAEA,IAAIG,OAAOA,CAAA;IACT,OAAOpC,IAAI,CAACqD,GAAG,CAAC,IAAI,CAACnC,IAAI,EAAGA,IAAI,IAAKA,IAAI,KAAK,CAAC,CAAC;EAClD;EAEA,IAAImB,QAAQA,CAAA;IACV,OAAOrC,IAAI,CAAC0H,eAAe,CACzB1H,IAAI,CAAC2H,gBAAgB,CAAQC,KAAK,IAAI;MACpChI,UAAU,CAACgB,GAAG,CAAC,IAAI,CAAC+C,YAAY,EAAE,IAAI,CAAC;MACvC,OAAOjE,IAAI,CACTQ,YAAY,CAAC2H,mBAAmB,CAC9BC,kBAAkB,CAAC,IAAI,CAACrH,OAAO,CAAC,EAC/BsH,CAAC,IAAK/H,IAAI,CAACgI,qBAAqB,CAACD,CAAC,EAAEH,KAAK,CAACK,EAAE,EAAE,CAAC,EAChD,KAAK,CACN,EACDjI,IAAI,CAACkI,QAAQ,CAAClI,IAAI,CAACqB,IAAI,CAAC,MAAK;QAC3B,IAAI,CAACX,WAAW,CAACO,MAAM,CAAC,IAAI,CAACT,YAAY,CAAC;QAC1C,IAAI,CAACA,YAAY,CAACwF,WAAW,EAAE;QAC/B,IAAI,CAAC5C,QAAQ,CAAC+E,wBAAwB,CAAC,IAAI,CAAChF,MAAM,EAAE,IAAI,CAACzC,WAAW,CAAC;MACvE,CAAC,CAAC,CAAC,EACHV,IAAI,CAACoI,UAAU,CAACpI,IAAI,CAACqI,eAAe,CAAC,IAAI,CAAC3E,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC,EAChE1D,IAAI,CAACsI,MAAM,CACZ;IACH,CAAC,CAAC,CACH;EACH;EAEA,IAAIhG,UAAUA,CAAA;IACZ,OAAOtC,IAAI,CAACqB,IAAI,CAAC,MAAMzB,UAAU,CAACkB,GAAG,CAAC,IAAI,CAAC6C,YAAY,CAAC,CAAC;EAC3D;EAEA,IAAIpB,aAAaA,CAAA;IACf,OAAOvC,IAAI,CAACuI,aAAa,CAAC,IAAI,CAAC7E,YAAY,CAAC;EAC9C;EAEA,IAAI8E,IAAIA,CAAA;IACN,OAAOxI,IAAI,CAAC2H,gBAAgB,CAAEC,KAAK,IAAI;MACrC,IAAIhI,UAAU,CAACkB,GAAG,CAAC,IAAI,CAAC6C,YAAY,CAAC,EAAE;QACrC,OAAO3D,IAAI,CAACqH,SAAS;MACvB;MACA,MAAMoB,OAAO,GAAG9I,YAAY,CAACyC,OAAO,CAAC,IAAI,CAAC3B,OAAO,CAAC,GAC9C,IAAI,CAACD,YAAY,CAAC+E,IAAI,CAAC5F,YAAY,CAAC+I,iBAAiB,CAAC,GACtD/I,YAAY,CAAC+I,iBAAiB;MAClC,IAAID,OAAO,KAAK9I,YAAY,CAAC+I,iBAAiB,EAAE;QAC9C,MAAMnF,QAAQ,GAAGvD,IAAI,CAAC2I,kBAAkB,CAAIf,KAAK,CAACK,EAAE,EAAE,CAAC;QACvD,OAAOvI,IAAI,CACTM,IAAI,CAACoH,OAAO,CAAC,MAAK;UAChB1H,IAAI,CAAC,IAAI,CAACe,OAAO,EAAEd,YAAY,CAACiJ,KAAK,CAACrF,QAAQ,CAAC,CAAC;UAChD7D,IAAI,CAAC,IAAI,CAACgB,WAAW,EAAEH,cAAc,CAAC,IAAI,CAACC,YAAY,EAAE,IAAI,CAACC,OAAO,CAAC,CAAC;UACvE,IAAI,CAAC2C,QAAQ,CAACyF,qBAAqB,CACjC,IAAI,CAAC1F,MAAM,EACX,IAAI,CAACzC,WAAW,EAChB,IAAI,CAACF,YAAY,EACjB,IAAI,CAACC,OAAO,CACb;UACD,OAAOb,UAAU,CAACkB,GAAG,CAAC,IAAI,CAAC6C,YAAY,CAAC,GAAG3D,IAAI,CAACqH,SAAS,GAAGrH,IAAI,CAACuI,aAAa,CAAChF,QAAQ,CAAC;QAC1F,CAAC,CAAC,EACFvD,IAAI,CAAC8I,WAAW,CAAC,MAAM9I,IAAI,CAACqB,IAAI,CAAC,MAAM0H,YAAY,CAAC,IAAI,CAACtI,OAAO,EAAE8C,QAAQ,CAAC,CAAC,CAAC,CAC9E;MACH,CAAC,MAAM;QACL,IAAI,CAACH,QAAQ,CAAC+E,wBAAwB,CAAC,IAAI,CAAChF,MAAM,EAAE,IAAI,CAACzC,WAAW,CAAC;QACrE,OAAOV,IAAI,CAACsH,OAAO,CAACmB,OAAO,CAAC;MAC9B;IACF,CAAC,CAAC;EACJ;EAEA,IAAIO,OAAOA,CAAA;IACT,OAAOhJ,IAAI,CAACoH,OAAO,CAAC,MAAK;MACvB,IAAIxH,UAAU,CAACkB,GAAG,CAAC,IAAI,CAAC6C,YAAY,CAAC,EAAE;QACrC,OAAO3D,IAAI,CAACqH,SAAS;MACvB;MACA,MAAM4B,EAAE,GAAGtJ,YAAY,CAACyC,OAAO,CAAC,IAAI,CAAC3B,OAAO,CAAC,GACzCyI,yBAAyB,CAAC,IAAI,CAAC1I,YAAY,CAAC,GAC5ChB,KAAK,CAACmG,KAAK,EAAE;MACjB,IAAI,CAACvC,QAAQ,CAAC+E,wBAAwB,CAAC,IAAI,CAAChF,MAAM,EAAE,IAAI,CAACzC,WAAW,CAAC;MACrE,OAAOV,IAAI,CAACsH,OAAO,CAAC2B,EAAE,CAAC;IACzB,CAAC,CAAC;EACJ;EAEAE,QAAQA,CAAa7D,GAAW;IAC9B,OAAOtF,IAAI,CAACoH,OAAO,CAAC,MAAK;MACvB,IAAIxH,UAAU,CAACkB,GAAG,CAAC,IAAI,CAAC6C,YAAY,CAAC,EAAE;QACrC,OAAO3D,IAAI,CAACqH,SAAS;MACvB;MACA,MAAM4B,EAAE,GAAGtJ,YAAY,CAACyC,OAAO,CAAC,IAAI,CAAC3B,OAAO,CAAC,GACzC2I,WAAW,CAAC,IAAI,CAAC5I,YAAY,EAAE8E,GAAG,CAAC,GACnC9F,KAAK,CAACmG,KAAK,EAAE;MACjB,IAAI,CAACvC,QAAQ,CAAC+E,wBAAwB,CAAC,IAAI,CAAChF,MAAM,EAAE,IAAI,CAACzC,WAAW,CAAC;MACrE,OAAOV,IAAI,CAACsH,OAAO,CAAC2B,EAAE,CAAC;IACzB,CAAC,CAAC;EACJ;EAEAI,WAAWA,CAACzE,GAAW,EAAEU,GAAW;IAClC,OAAOtF,IAAI,CAACoH,OAAO,CAAC,MAAMkC,iBAAiB,CAAC,IAAI,EAAE1E,GAAG,EAAEU,GAAG,EAAE9F,KAAK,CAACmG,KAAK,EAAE,CAAC,CAAC;EAC7E;;AAGF;AACA,MAAM2D,iBAAiB,GAAGA,CACxBpH,IAAsB,EACtB0C,GAAW,EACXU,GAAW,EACXiE,GAAmB,KACc;EACjC,IAAIjE,GAAG,GAAGV,GAAG,EAAE;IACb,OAAO5E,IAAI,CAACsH,OAAO,CAACiC,GAAG,CAAC;EAC1B;EACA,OAAO7J,IAAI,CACTwC,IAAI,CAACiH,QAAQ,CAAC7D,GAAG,CAAC,EAClBtF,IAAI,CAACuB,OAAO,CAAEiI,EAAE,IAAI;IAClB,MAAMC,SAAS,GAAG7E,GAAG,GAAG4E,EAAE,CAACpF,MAAM;IACjC,IAAIqF,SAAS,KAAK,CAAC,EAAE;MACnB,OAAO/J,IAAI,CAACwC,IAAI,CAACsG,IAAI,EAAExI,IAAI,CAACqD,GAAG,CAAEqG,CAAC,IAAKhK,IAAI,CAAC6J,GAAG,EAAE/J,KAAK,CAACmK,SAAS,CAACH,EAAE,CAAC,EAAEhK,KAAK,CAACoK,MAAM,CAACF,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1F;IACA,IAAID,SAAS,GAAG,CAAC,EAAE;MACjB,OAAO/J,IAAI,CACTwC,IAAI,CAACsG,IAAI,EACTxI,IAAI,CAACuB,OAAO,CAAEmI,CAAC,IACbJ,iBAAiB,CACfpH,IAAI,EACJuH,SAAS,GAAG,CAAC,EACbnE,GAAG,GAAGkE,EAAE,CAACpF,MAAM,GAAG,CAAC,EACnB1E,IAAI,CAAC6J,GAAG,EAAE/J,KAAK,CAACmK,SAAS,CAACH,EAAE,CAAC,EAAEhK,KAAK,CAACoK,MAAM,CAACF,CAAC,CAAC,CAAC,CAChD,CACF,CACF;IACH;IACA,OAAO1J,IAAI,CAACsH,OAAO,CAAC5H,IAAI,CAAC6J,GAAG,EAAE/J,KAAK,CAACmK,SAAS,CAACH,EAAE,CAAC,CAAC,CAAC;EACrD,CAAC,CAAC,CACH;AACH,CAAC;AAED;AACA,MAAMK,UAAU;EAKH1G,MAAA;EACAzC,WAAA;EACAoJ,KAAA;EACApG,YAAA;EACAC,YAAA;EACAP,QAAA;EATF,CAACjD,KAAK,CAAC4J,aAAa,IAAI5J,KAAK,CAAC6J,eAAe;EAC7C,CAAC7J,KAAK,CAAC8G,aAAa,IAAI9G,KAAK,CAAC+G,eAAe;EAEtDjD,YACWd,MAAuB,EACvBzC,WAA2B,EAC3BoJ,KAA4B,EAC5BpG,YAAqC,EACrCC,YAA4C,EAC5CP,QAA2B;IAL3B,KAAAD,MAAM,GAANA,MAAM;IACN,KAAAzC,WAAW,GAAXA,WAAW;IACX,KAAAoJ,KAAK,GAALA,KAAK;IACL,KAAApG,YAAY,GAAZA,YAAY;IACZ,KAAAC,YAAY,GAAZA,YAAY;IACZ,KAAAP,QAAQ,GAARA,QAAQ;EAEnB;EAEAnB,QAAQA,CAAA;IACN,OAAO,IAAI,CAACkB,MAAM,CAAClB,QAAQ;EAC7B;EAEA,IAAIf,IAAIA,CAAA;IACN,OAAOlB,IAAI,CAACoH,OAAO,CAAC,MAClBxH,UAAU,CAACkB,GAAG,CAAC,IAAI,CAAC6C,YAAY,CAAC,GAC/B3D,IAAI,CAACqH,SAAS,GACdrH,IAAI,CAACqB,IAAI,CAAC,MAAM,IAAI,CAAC8B,MAAM,CAACjC,IAAI,EAAE,CAAC,CACtC;EACH;EAEAqG,UAAUA,CAAA;IACR,IAAI3H,UAAU,CAACkB,GAAG,CAAC,IAAI,CAAC6C,YAAY,CAAC,EAAE;MACrC,OAAO7D,MAAM,CAAC0H,IAAI,EAAE;IACtB;IACA,OAAO1H,MAAM,CAAC2H,IAAI,CAAC,IAAI,CAACtE,MAAM,CAACjC,IAAI,EAAE,CAAC;EACxC;EAEA,IAAIiB,MAAMA,CAAA;IACR,OAAOnC,IAAI,CAACqD,GAAG,CAAC,IAAI,CAACnC,IAAI,EAAGA,IAAI,IAAKA,IAAI,KAAK,IAAI,CAACe,QAAQ,EAAE,CAAC;EAChE;EAEA,IAAIG,OAAOA,CAAA;IACT,OAAOpC,IAAI,CAACqD,GAAG,CAAC,IAAI,CAACnC,IAAI,EAAGA,IAAI,IAAKA,IAAI,KAAK,CAAC,CAAC;EAClD;EAEA,IAAIqB,aAAaA,CAAA;IACf,OAAOvC,IAAI,CAACuI,aAAa,CAAC,IAAI,CAAC7E,YAAY,CAAC;EAC9C;EAEA,IAAIpB,UAAUA,CAAA;IACZ,OAAOtC,IAAI,CAACqB,IAAI,CAAC,MAAMzB,UAAU,CAACkB,GAAG,CAAC,IAAI,CAAC6C,YAAY,CAAC,CAAC;EAC3D;EAEA,IAAItB,QAAQA,CAAA;IACV,OAAOrC,IAAI,CAAC0H,eAAe,CAAC1H,IAAI,CAAC2H,gBAAgB,CAAEC,KAAK,IAAI;MAC1DlI,IAAI,CAAC,IAAI,CAACiE,YAAY,EAAE/D,UAAU,CAACgB,GAAG,CAAC,IAAI,CAAC,CAAC;MAC7C,OAAOlB,IAAI,CACT,IAAI,CAACoK,KAAK,CAACG,KAAK,CAACjK,IAAI,CAACkK,aAAa,CAACtC,KAAK,CAACK,EAAE,EAAE,CAAC,CAAC,EAChDjI,IAAI,CAACkI,QAAQ,CAAC,IAAI,CAAC9E,QAAQ,CAACf,QAAQ,CAAC,EACrCrC,IAAI,CAACoI,UAAU,CAACpI,IAAI,CAACqI,eAAe,CAAC,IAAI,CAAC3E,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC,EAChE1D,IAAI,CAACsI,MAAM,CACZ;IACH,CAAC,CAAC,CAAC;EACL;EAEA9F,OAAOA,CAACC,KAAQ;IACd,OAAOzC,IAAI,CAACoH,OAAO,CAAC,MAAK;MACvB,IAAIxH,UAAU,CAACkB,GAAG,CAAC,IAAI,CAAC6C,YAAY,CAAC,EAAE;QACrC,OAAO3D,IAAI,CAACqH,SAAS;MACvB;MAEA,IAAK,IAAI,CAAClE,MAAgC,CAACX,OAAO,CAACC,KAAK,CAAC,EAAE;QACzD,IAAI,CAACW,QAAQ,CAAC+G,yBAAyB,CAAC,IAAI,CAAChH,MAAM,EAAE,IAAI,CAACzC,WAAW,CAAC;QACtE,OAAOV,IAAI,CAACsH,OAAO,CAAC,IAAI,CAAC;MAC3B;MAEA,OAAO,IAAI,CAAClE,QAAQ,CAACgH,aAAa,CAChC,IAAI,CAACjH,MAAM,EACX,IAAI,CAACzC,WAAW,EAChBlB,KAAK,CAAC8G,EAAE,CAAC7D,KAAK,CAAC,EACf,IAAI,CAACkB,YAAY,CAClB;IACH,CAAC,CAAC;EACJ;EAEAwD,QAAQA,CAAA;IACN,OAAO,CAACvH,UAAU,CAACkB,GAAG,CAAC,IAAI,CAAC6C,YAAY,CAAC;EAC3C;EAEA0G,WAAWA,CAAC5H,KAAQ;IAClB,IAAI7C,UAAU,CAACkB,GAAG,CAAC,IAAI,CAAC6C,YAAY,CAAC,EAAE;MACrC,OAAO,KAAK;IACd;IAEA,IAAK,IAAI,CAACR,MAAgC,CAACX,OAAO,CAACC,KAAK,CAAC,EAAE;MACzD,IAAI,CAACW,QAAQ,CAAC+G,yBAAyB,CAAC,IAAI,CAAChH,MAAM,EAAE,IAAI,CAACzC,WAAW,CAAC;MACtE,OAAO,IAAI;IACb;IAEA,OAAO,KAAK;EACd;EAEAgC,UAAUA,CAACC,QAAqB;IAC9B,OAAO3C,IAAI,CAACoH,OAAO,CAAC,MAAK;MACvB,IAAIxH,UAAU,CAACkB,GAAG,CAAC,IAAI,CAAC6C,YAAY,CAAC,EAAE;QACrC,OAAO3D,IAAI,CAACqH,SAAS;MACvB;MACA,MAAMiD,OAAO,GAAGC,gBAAgB,CAAC,IAAI,CAACpH,MAAM,EAAER,QAAQ,CAAC;MACvD,IAAI,CAACS,QAAQ,CAAC+G,yBAAyB,CAAC,IAAI,CAAChH,MAAM,EAAE,IAAI,CAACzC,WAAW,CAAC;MACtE,IAAIlB,KAAK,CAAC4C,OAAO,CAACkI,OAAO,CAAC,EAAE;QAC1B,OAAOtK,IAAI,CAACsH,OAAO,CAAC,IAAI,CAAC;MAC3B;MACA,OAAO,IAAI,CAAClE,QAAQ,CAACgH,aAAa,CAChC,IAAI,CAACjH,MAAM,EACX,IAAI,CAACzC,WAAW,EAChB4J,OAAO,EACP,IAAI,CAAC3G,YAAY,CAClB;IACH,CAAC,CAAC;EACJ;EAEA,IAAIf,SAASA,CAAA;IACX,MAAM4H,OAAO,GAAGxK,IAAI,CAACyK,GAAG,CACtBvK,YAAY,CAACwK,GAAG,CAAC,CACf,IAAI,CAACZ,KAAK,CAACa,IAAI,CAAC1K,iBAAiB,CAAC2K,UAAU,CAAC,EAC7C1H,gBAAgB,CAAC,IAAI,CAACC,MAAM,EAAE,IAAI,CAACzC,WAAW,EAAE,IAAI,CAAC0C,QAAQ,CAAC,CAC/D,CAAC,EACDyH,KAAK,IAAKA,KAAK,CAAC,CAAC,CAAC,CAACC,YAAY,CAAC,MAAMD,KAAK,CAAC,CAAC,CAAC,CAACxI,QAAQ,CAAC,CAC1D;IACD,OAAOrC,IAAI,CAACqD,GAAG,CACbnD,YAAY,CAAC6K,cAAc,CAACP,OAAO,EAAE,CAACK,KAAK,EAAEG,IAAI,KAAKH,KAAK,CAAC,CAAC,CAAC,CAACZ,KAAK,CAACe,IAAI,CAAC,CAAC,EAC1EH,KAAK,IAAKA,KAAK,CAAC,CAAC,CAAC,CACpB;EACH;EAEAjC,KAAKA,CAACnG,KAAQ;IACZ,OAAO,IAAI,CAACD,OAAO,CAACC,KAAK,CAAC;EAC5B;EAEAwI,QAAQA,CAACtI,QAAqB;IAC5B,OAAO,IAAI,CAACD,UAAU,CAACC,QAAQ,CAAC;EAClC;EAEAjD,IAAIA,CAAA;IACF,OAAOK,aAAa,CAAC,IAAI,EAAEoG,SAAS,CAAC;EACvC;;AAGF;AACA,OAAO,MAAM1E,UAAU,GAAGA,CACxB0B,MAAuB,EACvBC,QAA2B,KAE3BpD,IAAI,CAACuB,OAAO,CACVrB,YAAY,CAACgL,SAAS,EAAE,EACvBpB,KAAK,IACJ9J,IAAI,CAACqD,GAAG,CAACrD,IAAI,CAACsD,YAAY,EAAQ,EAAGC,QAAQ,IAC3C4H,gBAAgB,CACdhI,MAAM,EACN,IAAIiI,GAAG,EAAE,EACTtB,KAAK,EACLvG,QAAQ,EACR3D,UAAU,CAAC6D,IAAI,CAAC,KAAK,CAAC,EACtBL,QAAQ,CACT,CAAC,CACP;AAEH;AACA,OAAO,MAAM+H,gBAAgB,GAAGA,CAC9BhI,MAAuB,EACvBzC,WAA2B,EAC3BoJ,KAA4B,EAC5BpG,YAAqC,EACrCC,YAA4C,EAC5CP,QAA2B,KACP;EACpB,OAAO,IAAIyG,UAAU,CAAC1G,MAAM,EAAEzC,WAAW,EAAEoJ,KAAK,EAAEpG,YAAY,EAAEC,YAAY,EAAEP,QAAQ,CAAC;AACzF,CAAC;AAED;AACA,MAAMP,cAAc,GAAIZ,QAAgB,IAAU;EAChD,IAAIA,QAAQ,IAAI,CAAC,EAAE;IACjB,MAAM,IAAIjC,IAAI,CAACqL,8BAA8B,CAAC,4CAA4CpJ,QAAQ,EAAE,CAAC;EACvG;AACF,CAAC;AAED;AACA,MAAMqJ,sBAAsB,GAAGA,CAAI/H,QAA8B,EAAEwB,CAAI,KAAU;EAC/E/E,IAAI,CAACuL,kBAAkB,CAAChI,QAAQ,EAAEvD,IAAI,CAACsH,OAAO,CAACvC,CAAC,CAAC,CAAC;AACpD,CAAC;AAED;AACA,MAAMyG,cAAc,GAAGA,CAAIrL,KAAmC,EAAE8I,EAAe,KAAoB;EACjG,OAAOvJ,IAAI,CAACS,KAAK,EAAER,YAAY,CAACsL,QAAQ,CAAChC,EAAE,CAAC,CAAC;AAC/C,CAAC;AAED;AACA,MAAMnB,kBAAkB,GAAO3H,KAAmC,IAAoB;EACpF,OAAOT,IAAI,CAACS,KAAK,EAAER,YAAY,CAAC+F,QAAQ,CAACgB,MAAM,CAAC+E,iBAAiB,CAAC,CAAC;AACrE,CAAC;AAED;AACA,MAAMvC,yBAAyB,GAAO1I,YAA6B,IAAoB;EACrF,OAAOA,YAAY,CAACkF,QAAQ,CAACgB,MAAM,CAAC+E,iBAAiB,CAAC;AACxD,CAAC;AAED;AACA,MAAMrC,WAAW,GAAGA,CAAI5I,YAA6B,EAAE8E,GAAW,KAAoB;EACpF,OAAO9E,YAAY,CAACkF,QAAQ,CAACJ,GAAG,CAAC;AACnC,CAAC;AAED;AACA,MAAMiF,gBAAgB,GAAGA,CAAIpH,MAAuB,EAAE8F,EAAe,KAAoB;EACvF,OAAO9F,MAAM,CAACT,UAAU,CAACuG,EAAE,CAAC;AAC9B,CAAC;AAED;AACA,MAAMF,YAAY,GAAGA,CAAI5I,KAAmC,EAAEsC,KAAQ,KAAU;EAC9E+I,cAAc,CACZrL,KAAK,EACLT,IAAI,CAACoI,kBAAkB,CAAC3H,KAAK,CAAC,EAAEX,KAAK,CAACkM,MAAM,CAAEjG,IAAI,IAAKA,IAAI,KAAKhD,KAAK,CAAC,CAAC,CACxE;AACH,CAAC;AA4DD;;;;;;;;;AASA,MAAMf,oBAAoB;EACxBiK,UAAU,GAENhM,YAAY,CAACoC,SAAS,EAAE;EAE5B,IAAIM,QAAQA,CAAA;IACV,OAAOrC,IAAI,CAACuB,OAAO,CAACvB,IAAI,CAAC4L,OAAO,EAAGA,OAAO,IACxC5L,IAAI,CAACuB,OAAO,CACVvB,IAAI,CAACqB,IAAI,CAAC,MAAMyG,kBAAkB,CAAC,IAAI,CAAC6D,UAAU,CAAC,CAAC,EACnDA,UAAU,IACTzL,YAAY,CAAC2L,wBAAwB,CACnCF,UAAU,EACV,CAAC,CAACG,CAAC,EAAEvI,QAAQ,EAAEwI,IAAI,CAAC,KAClBA,IAAI,GACFrM,IAAI,CAACM,IAAI,CAACgI,qBAAqB,CAACzE,QAAQ,EAAEqI,OAAO,CAAC,EAAE5L,IAAI,CAACsI,MAAM,CAAC,GAChEtI,IAAI,CAACgM,IAAI,EACb,KAAK,EACL,KAAK,CACN,CACJ,CAAC;EACN;EAEA5B,aAAaA,CACXjH,MAAuB,EACvBzC,WAA2B,EAC3BiC,QAAqB,EACrBL,UAA0C;IAE1C,OAAOtC,IAAI,CAAC2H,gBAAgB,CAAEC,KAAK,IAAI;MACrC,MAAMrE,QAAQ,GAAGvD,IAAI,CAAC2I,kBAAkB,CAAUf,KAAK,CAACK,EAAE,EAAE,CAAC;MAC7D,OAAOvI,IAAI,CACTM,IAAI,CAACoH,OAAO,CAAC,MAAK;QAChB,IAAI,CAACiD,WAAW,CAAC1H,QAAQ,EAAEY,QAAQ,CAAC;QACpC,IAAI,CAAC4E,wBAAwB,CAAChF,MAAM,EAAEzC,WAAW,CAAC;QAClD,IAAI,CAACyJ,yBAAyB,CAAChH,MAAM,EAAEzC,WAAW,CAAC;QACnD,OAAOd,UAAU,CAACkB,GAAG,CAACwB,UAAU,CAAC,GAC/BtC,IAAI,CAACqH,SAAS,GACdrH,IAAI,CAACuI,aAAa,CAAChF,QAAQ,CAAC;MAChC,CAAC,CAAC,EACFvD,IAAI,CAAC8I,WAAW,CAAC,MAAM9I,IAAI,CAACqB,IAAI,CAAC,MAAM,IAAI,CAAC0H,YAAY,CAACxF,QAAQ,CAAC,CAAC,CAAC,CACrE;IACH,CAAC,CAAC;EACJ;EAEA4E,wBAAwBA,CACtBhF,MAAuB,EACvBzC,WAA2B;IAE3B,IAAIuL,WAAW,GAAG,IAAI;IACtB,OAAOA,WAAW,IAAI,CAAC9I,MAAM,CAAChB,MAAM,EAAE,EAAE;MACtC,MAAM+J,SAAS,GAAGxM,IAAI,CAAC,IAAI,CAACiM,UAAU,EAAEhM,YAAY,CAAC4F,IAAI,CAAC5F,YAAY,CAAC+I,iBAAiB,CAAC,CAAC;MAC1F,IAAIwD,SAAS,KAAKvM,YAAY,CAAC+I,iBAAiB,EAAE;QAChDuD,WAAW,GAAG,KAAK;MACrB,CAAC,MAAM;QACL,MAAME,SAAS,GAAGhJ,MAAM,CAACX,OAAO,CAAC0J,SAAS,CAAC,CAAC,CAAC,CAAC;QAC9C,IAAIC,SAAS,IAAID,SAAS,CAAC,CAAC,CAAC,EAAE;UAC7BZ,sBAAsB,CAACY,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC;QAC5C,CAAC,MAAM,IAAI,CAACC,SAAS,EAAE;UACrBX,cAAc,CACZ,IAAI,CAACG,UAAU,EACfjM,IAAI,CAACoI,kBAAkB,CAAC,IAAI,CAAC6D,UAAU,CAAC,EAAEnM,KAAK,CAAC4M,OAAO,CAACF,SAAS,CAAC,CAAC,CACpE;QACH;QACA,IAAI,CAAC/B,yBAAyB,CAAChH,MAAM,EAAEzC,WAAW,CAAC;MACrD;IACF;EACF;EAEAmI,qBAAqBA,CACnB1F,MAAuB,EACvBzC,WAA2B,EAC3BF,YAA6B,EAC7BC,OAAwD;IAExD,OAAO4L,6BAA6B,CAAC,IAAI,EAAElJ,MAAM,EAAEzC,WAAW,EAAEF,YAAY,EAAEC,OAAO,CAAC;EACxF;EAEA0J,yBAAyBA,CAAChH,MAAuB,EAAEzC,WAA2B;IAC5E,OAAO4L,iCAAiC,CAAC,IAAI,EAAEnJ,MAAM,EAAEzC,WAAW,CAAC;EACrE;EAEQ2J,WAAWA,CAAC1H,QAAqB,EAAEY,QAAoC;IAC7E,MAAMgJ,QAAQ,GAAG5J,QAAQ,CAACtC,MAAM,CAACkM,QAAQ,CAAC,EAAE;IAC5C,IAAI/F,IAAI,GAAsB+F,QAAQ,CAAC/F,IAAI,EAAE;IAC7C,IAAI,CAACA,IAAI,CAACgG,IAAI,EAAE;MACd;MACA,OAAO,CAAC,EAAE;QACR,MAAM/J,KAAK,GAAG+D,IAAI,CAAC/D,KAAK;QACxB+D,IAAI,GAAG+F,QAAQ,CAAC/F,IAAI,EAAE;QACtB,IAAIA,IAAI,CAACgG,IAAI,EAAE;UACb9M,IAAI,CACF,IAAI,CAACiM,UAAU,EACfhM,YAAY,CAACiJ,KAAK,CAAC,CAACnG,KAAK,EAAEc,QAAQ,EAAE,IAAe,CAAU,CAAC,CAChE;UACD;QACF;QACA7D,IAAI,CACF,IAAI,CAACiM,UAAU,EACfhM,YAAY,CAACiJ,KAAK,CAAC,CAACnG,KAAK,EAAEc,QAAQ,EAAE,KAAgB,CAAU,CAAC,CACjE;MACH;IACF;EACF;EAEAwF,YAAYA,CAACxF,QAAoC;IAC/CiI,cAAc,CACZ,IAAI,CAACG,UAAU,EACfjM,IAAI,CAACoI,kBAAkB,CAAC,IAAI,CAAC6D,UAAU,CAAC,EAAEnM,KAAK,CAACkM,MAAM,CAAC,CAAC,CAACI,CAAC,EAAE/G,CAAC,CAAC,KAAKA,CAAC,KAAKxB,QAAQ,CAAC,CAAC,CACpF;EACH;;AAGF;;;;;;;;;;AAUA,OAAM,MAAO3B,gBAAgB;EAC3B,IAAIS,QAAQA,CAAA;IACV,OAAOrC,IAAI,CAACgM,IAAI;EAClB;EAEA5B,aAAaA,CACXqC,OAAwB,EACxBC,YAA4B,EAC5BC,SAAsB,EACtBC,WAA2C;IAE3C,OAAO5M,IAAI,CAACsH,OAAO,CAAC,KAAK,CAAC;EAC5B;EAEAa,wBAAwBA,CACtBsE,OAAwB,EACxBC,YAA4B;IAE5B;EAAA;EAGF7D,qBAAqBA,CACnB1F,MAAuB,EACvBzC,WAA2B,EAC3BF,YAA6B,EAC7BC,OAAwD;IAExD,OAAO4L,6BAA6B,CAAC,IAAI,EAAElJ,MAAM,EAAEzC,WAAW,EAAEF,YAAY,EAAEC,OAAO,CAAC;EACxF;EAEA0J,yBAAyBA,CAAChH,MAAuB,EAAEzC,WAA2B;IAC5E,OAAO4L,iCAAiC,CAAC,IAAI,EAAEnJ,MAAM,EAAEzC,WAAW,CAAC;EACrE;;AAGF;;;;;;;;;AASA,OAAM,MAAOoB,eAAe;EAC1B,IAAIO,QAAQA,CAAA;IACV,OAAOrC,IAAI,CAACgM,IAAI;EAClB;EAEA5B,aAAaA,CACXjH,MAAuB,EACvBzC,WAA2B,EAC3BiC,QAAqB,EACrBiK,WAA2C;IAE3C,OAAO5M,IAAI,CAACqB,IAAI,CAAC,MAAK;MACpB,IAAI,CAACwL,oBAAoB,CAAC1J,MAAM,EAAER,QAAQ,CAAC;MAC3C,IAAI,CAACwH,yBAAyB,CAAChH,MAAM,EAAEzC,WAAW,CAAC;MACnD,OAAO,IAAI;IACb,CAAC,CAAC;EACJ;EAEAyH,wBAAwBA,CACtBsE,OAAwB,EACxBC,YAA4B;IAE5B;EAAA;EAGF7D,qBAAqBA,CACnB1F,MAAuB,EACvBzC,WAA2B,EAC3BF,YAA6B,EAC7BC,OAAwD;IAExD,OAAO4L,6BAA6B,CAAC,IAAI,EAAElJ,MAAM,EAAEzC,WAAW,EAAEF,YAAY,EAAEC,OAAO,CAAC;EACxF;EAEA0J,yBAAyBA,CAAChH,MAAuB,EAAEzC,WAA2B;IAC5E,OAAO4L,iCAAiC,CAAC,IAAI,EAAEnJ,MAAM,EAAEzC,WAAW,CAAC;EACrE;EAEAmM,oBAAoBA,CAAC1J,MAAuB,EAAER,QAAqB;IACjE,MAAMmK,EAAE,GAAGnK,QAAQ,CAACtC,MAAM,CAACkM,QAAQ,CAAC,EAAE;IACtC,IAAI/F,IAAI,GAAGsG,EAAE,CAACtG,IAAI,EAAE;IACpB,IAAI,CAACA,IAAI,CAACgG,IAAI,IAAIrJ,MAAM,CAAClB,QAAQ,GAAG,CAAC,EAAE;MACrC,IAAI8C,CAAC,GAAGyB,IAAI,CAAC/D,KAAK;MAClB,IAAIqE,IAAI,GAAG,IAAI;MACf,OAAOA,IAAI,EAAE;QACX3D,MAAM,CAAC+B,KAAK,EAAE;QACd,MAAM6H,GAAG,GAAG5J,MAAM,CAACX,OAAO,CAACuC,CAAC,CAAC;QAC7B,IAAIgI,GAAG,KAAKvG,IAAI,GAAGsG,EAAE,CAACtG,IAAI,EAAE,CAAC,IAAI,CAACA,IAAI,CAACgG,IAAI,EAAE;UAC3CzH,CAAC,GAAGyB,IAAI,CAAC/D,KAAK;QAChB,CAAC,MAAM,IAAIsK,GAAG,EAAE;UACdjG,IAAI,GAAG,KAAK;QACd;MACF;IACF;EACF;;AAGF;AACA,MAAMuF,6BAA6B,GAAGA,CACpCjJ,QAA2B,EAC3BD,MAAuB,EACvBzC,WAA2B,EAC3BF,YAA6B,EAC7BC,OAAwD,KAChD;EACR,IAAIwL,WAAW,GAAG,IAAI;EACtB,OAAOA,WAAW,IAAI,CAACzL,YAAY,CAAC4B,OAAO,EAAE,EAAE;IAC7C,MAAM4K,MAAM,GAAGtN,IAAI,CAACe,OAAO,EAAEd,YAAY,CAAC4F,IAAI,CAAC5F,YAAY,CAAC+I,iBAAiB,CAAC,CAAC;IAC/E,IAAIsE,MAAM,KAAKrN,YAAY,CAAC+I,iBAAiB,EAAE;MAC7ChJ,IAAI,CAACgB,WAAW,EAAEM,iBAAiB,CAACR,YAAY,EAAEC,OAAO,CAAC,CAAC;MAC3D,IAAId,YAAY,CAACyC,OAAO,CAAC3B,OAAO,CAAC,EAAE;QACjCwL,WAAW,GAAG,KAAK;MACrB,CAAC,MAAM;QACLvM,IAAI,CAACgB,WAAW,EAAEH,cAAc,CAACC,YAAY,EAAEC,OAAO,CAAC,CAAC;MAC1D;IACF,CAAC,MAAM;MACL,MAAMwM,UAAU,GAAGzM,YAAY,CAAC+E,IAAI,CAAC5F,YAAY,CAAC+I,iBAAiB,CAAC;MACpE,IAAIuE,UAAU,KAAKtN,YAAY,CAAC+I,iBAAiB,EAAE;QACjD8C,cAAc,CAAC/K,OAAO,EAAEf,IAAI,CAACoI,kBAAkB,CAACrH,OAAO,CAAC,EAAEjB,KAAK,CAAC4M,OAAO,CAACY,MAAM,CAAC,CAAC,CAAC;MACnF,CAAC,MAAM;QACL1B,sBAAsB,CAAC0B,MAAM,EAAEC,UAAU,CAAC;QAC1C7J,QAAQ,CAAC+E,wBAAwB,CAAChF,MAAM,EAAEzC,WAAW,CAAC;MACxD;IACF;EACF;AACF,CAAC;AAED;AACA,MAAM4L,iCAAiC,GAAGA,CACxClJ,QAA2B,EAC3BD,MAAuB,EACvBzC,WAA2B,KACnB;EACR,KACE,MAAM,CAACF,YAAY,EAAE0M,UAAU,CAAC,IAAIxM,WAAW,EAC/C;IACA,KAAK,MAAMD,OAAO,IAAIyM,UAAU,EAAE;MAChC9J,QAAQ,CAACyF,qBAAqB,CAAC1F,MAAM,EAAEzC,WAAW,EAAEF,YAAY,EAAEC,OAAO,CAAC;IAC5E;EACF;AACF,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"pubsub.js","names":["Chunk","dual","pipe","MutableQueue","MutableRef","nextPow2","Option","pipeArguments","core","executionStrategy","fiberRuntime","queue","AbsentValue","Symbol","for","addSubscribers","subscription","pollers","subscribers","has","set","Set","get","add","removeSubscribers","delete","size","bounded","requestedCapacity","sync","makeBoundedPubSub","flatMap","atomicPubSub","makePubSub","BackPressureStrategy","dropping","DroppingStrategy","sliding","SlidingStrategy","unbounded","makeUnboundedPubSub","capacity","self","isFull","isEmpty","shutdown","isShutdown","awaitShutdown","publish","value","publishAll","elements","subscribe","ensureCapacity","BoundedPubSubSingle","BoundedPubSubPow2","BoundedPubSubArb","UnboundedPubSub","makeSubscription","pubsub","strategy","map","deferredMake","deferred","unsafeMakeSubscription","make","shutdownHook","shutdownFlag","SubscriptionImpl","array","publisherIndex","subscriberCount","subscribersIndex","constructor","Array","from","length","index","empty","chunk","fromIterable","n","available","forPubSub","Math","min","iteratorIndex","publishAllIndex","a","unsafeGet","drop","slide","BoundedPubSubArbSubscription","subscriberIndex","unsubscribed","max","poll","default_","elem","pollUpTo","toPoll","builder","pollUpToIndex","push","unsubscribe","mask","BoundedPubSubPow2Subscription","arguments","unsafeHead","BoundedPubSubSingleSubscription","of","publisherHead","next","publisherTail","Number","MAX_SAFE_INTEGER","UnboundedPubSubSubscription","subscriberHead","loop","polled","i","DequeueTypeId","dequeueVariance","isActive","suspend","interrupt","succeed","unsafeSize","none","some","uninterruptible","withFiberRuntime","state","forEachParUnbounded","unsafePollAllQueue","d","deferredInterruptWith","id","zipRight","unsafeOnPubSubEmptySpace","whenEffect","deferredSucceed","asVoid","deferredAwait","take","message","EmptyMutableQueue","deferredUnsafeMake","offer","unsafeCompletePollers","onInterrupt","unsafeRemove","takeAll","as","unsafePollAllSubscription","takeUpTo","unsafePollN","takeBetween","takeRemainderLoop","acc","bs","remaining","b","appendAll","append","PubSubImpl","scope","EnqueueTypeId","enqueueVariance","close","exitInterrupt","unsafeCompleteSubscribers","handleSurplus","unsafeOffer","surplus","unsafePublishAll","acquire","tap","all","fork","sequential","tuple","addFinalizer","acquireRelease","exit","offerAll","scopeMake","unsafeMakePubSub","Map","InvalidPubSubCapacityException","unsafeCompleteDeferred","deferredUnsafeDone","unsafeOfferAll","POSITIVE_INFINITY","filter","publishers","fiberId","forEachConcurrentDiscard","_","last","void","keepPolling","publisher","published","prepend","unsafeStrategyCompletePollers","unsafeStrategyCompleteSubscribers","iterator","done","_pubsub","_subscribers","_elements","_isShutdown","unsafeSlidingPublish","it","pub","poller","pollResult","pollersSet"],"sources":["../../../src/internal/pubsub.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- let moduleVersion = "3.4.5";
1
+ let moduleVersion = "3.4.7";
2
2
  export const getCurrentVersion = () => moduleVersion;
3
3
  export const setCurrentVersion = version => {
4
4
  moduleVersion = version;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "effect",
3
- "version": "3.4.5",
3
+ "version": "3.4.7",
4
4
  "description": "The missing standard library for TypeScript, for writing production-grade software.",
5
5
  "license": "MIT",
6
6
  "repository": {
package/src/Match.ts CHANGED
@@ -6,7 +6,7 @@ import * as internal from "./internal/matcher.js"
6
6
  import type * as Option from "./Option.js"
7
7
  import type { Pipeable } from "./Pipeable.js"
8
8
  import * as Predicate from "./Predicate.js"
9
- import type { Contravariant, Covariant, UnionToIntersection } from "./Types.js"
9
+ import type * as T from "./Types.js"
10
10
  import type { Unify } from "./Unify.js"
11
11
 
12
12
  /**
@@ -36,11 +36,11 @@ export type Matcher<Input, Filters, RemainingApplied, Result, Provided, Return =
36
36
  export interface TypeMatcher<in Input, out Filters, out Remaining, out Result, out Return = any> extends Pipeable {
37
37
  readonly _tag: "TypeMatcher"
38
38
  readonly [MatcherTypeId]: {
39
- readonly _input: Contravariant<Input>
40
- readonly _filters: Covariant<Filters>
41
- readonly _remaining: Covariant<Remaining>
42
- readonly _result: Covariant<Result>
43
- readonly _return: Covariant<Return>
39
+ readonly _input: T.Contravariant<Input>
40
+ readonly _filters: T.Covariant<Filters>
41
+ readonly _remaining: T.Covariant<Remaining>
42
+ readonly _result: T.Covariant<Result>
43
+ readonly _return: T.Covariant<Return>
44
44
  }
45
45
  readonly cases: ReadonlyArray<Case>
46
46
  add<I, R, RA, A>(_case: Case): TypeMatcher<I, R, RA, A>
@@ -55,10 +55,10 @@ export interface ValueMatcher<in Input, Filters, out Remaining, out Result, Prov
55
55
  {
56
56
  readonly _tag: "ValueMatcher"
57
57
  readonly [MatcherTypeId]: {
58
- readonly _input: Contravariant<Input>
59
- readonly _filters: Covariant<Filters>
60
- readonly _result: Covariant<Result>
61
- readonly _return: Covariant<Return>
58
+ readonly _input: T.Contravariant<Input>
59
+ readonly _filters: T.Covariant<Filters>
60
+ readonly _result: T.Covariant<Result>
61
+ readonly _return: T.Covariant<Return>
62
62
  }
63
63
  readonly provided: Provided
64
64
  readonly value: Either.Either<Provided, Remaining>
@@ -196,15 +196,15 @@ export const whenAnd: <
196
196
  R,
197
197
  const P extends ReadonlyArray<Types.PatternPrimitive<R> | Types.PatternBase<R>>,
198
198
  Ret,
199
- Fn extends (_: Types.WhenMatch<R, UnionToIntersection<P[number]>>) => Ret
199
+ Fn extends (_: Types.WhenMatch<R, T.UnionToIntersection<P[number]>>) => Ret
200
200
  >(
201
201
  ...args: [...patterns: P, f: Fn]
202
202
  ) => <I, F, A, Pr>(
203
203
  self: Matcher<I, F, R, A, Pr, Ret>
204
204
  ) => Matcher<
205
205
  I,
206
- Types.AddWithout<F, Types.PForExclude<UnionToIntersection<P[number]>>>,
207
- Types.ApplyFilters<I, Types.AddWithout<F, Types.PForExclude<UnionToIntersection<P[number]>>>>,
206
+ Types.AddWithout<F, Types.PForExclude<T.UnionToIntersection<P[number]>>>,
207
+ Types.ApplyFilters<I, Types.AddWithout<F, Types.PForExclude<T.UnionToIntersection<P[number]>>>>,
208
208
  A | ReturnType<Fn>,
209
209
  Pr
210
210
  > = internal.whenAnd
@@ -297,7 +297,7 @@ export const discriminatorsExhaustive: <D extends string>(
297
297
  * @since 1.0.0
298
298
  */
299
299
  export const tag: <R, P extends Types.Tags<"_tag", R> & string, Ret, B extends Ret>(
300
- ...pattern: [first: P, ...values: Array<P>, f: (_: Extract<R, Record<"_tag", P>>) => B]
300
+ ...pattern: [first: P, ...values: Array<P>, f: (_: Extract<T.NoInfer<R>, Record<"_tag", P>>) => B]
301
301
  ) => <I, F, A, Pr>(
302
302
  self: Matcher<I, F, R, A, Pr, Ret>
303
303
  ) => Matcher<
@@ -315,7 +315,7 @@ export const tag: <R, P extends Types.Tags<"_tag", R> & string, Ret, B extends R
315
315
  */
316
316
  export const tagStartsWith: <R, P extends string, Ret, B extends Ret>(
317
317
  pattern: P,
318
- f: (_: Extract<R, Record<"_tag", `${P}${string}`>>) => B
318
+ f: (_: Extract<T.NoInfer<R>, Record<"_tag", `${P}${string}`>>) => B
319
319
  ) => <I, F, A, Pr>(
320
320
  self: Matcher<I, F, R, A, Pr, Ret>
321
321
  ) => Matcher<
@@ -692,7 +692,7 @@ export declare namespace Types {
692
692
  /**
693
693
  * @since 1.0.0
694
694
  */
695
- export type ArrayToIntersection<A extends ReadonlyArray<any>> = UnionToIntersection<
695
+ export type ArrayToIntersection<A extends ReadonlyArray<any>> = T.UnionToIntersection<
696
696
  A[number]
697
697
  >
698
698