effect 2.2.2 → 2.2.4

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 (55) hide show
  1. package/dist/cjs/Effect.js +7 -2
  2. package/dist/cjs/Effect.js.map +1 -1
  3. package/dist/cjs/Option.js +30 -1
  4. package/dist/cjs/Option.js.map +1 -1
  5. package/dist/cjs/ReadonlyArray.js +4 -1
  6. package/dist/cjs/ReadonlyArray.js.map +1 -1
  7. package/dist/cjs/internal/differ/readonlyArrayPatch.js +3 -1
  8. package/dist/cjs/internal/differ/readonlyArrayPatch.js.map +1 -1
  9. package/dist/cjs/internal/effect/circular.js +18 -16
  10. package/dist/cjs/internal/effect/circular.js.map +1 -1
  11. package/dist/cjs/internal/fiberId.js +10 -9
  12. package/dist/cjs/internal/fiberId.js.map +1 -1
  13. package/dist/cjs/internal/secret.js +6 -0
  14. package/dist/cjs/internal/secret.js.map +1 -1
  15. package/dist/cjs/internal/stm/tMap.js +3 -1
  16. package/dist/cjs/internal/stm/tMap.js.map +1 -1
  17. package/dist/cjs/internal/stm/tPriorityQueue.js +12 -4
  18. package/dist/cjs/internal/stm/tPriorityQueue.js.map +1 -1
  19. package/dist/cjs/internal/version.js +1 -1
  20. package/dist/dts/Effect.d.ts +8 -2
  21. package/dist/dts/Effect.d.ts.map +1 -1
  22. package/dist/dts/Option.d.ts +32 -0
  23. package/dist/dts/Option.d.ts.map +1 -1
  24. package/dist/dts/ReadonlyArray.d.ts.map +1 -1
  25. package/dist/dts/internal/version.d.ts +1 -1
  26. package/dist/esm/Effect.js +7 -2
  27. package/dist/esm/Effect.js.map +1 -1
  28. package/dist/esm/Option.js +29 -0
  29. package/dist/esm/Option.js.map +1 -1
  30. package/dist/esm/ReadonlyArray.js +4 -1
  31. package/dist/esm/ReadonlyArray.js.map +1 -1
  32. package/dist/esm/internal/differ/readonlyArrayPatch.js +3 -1
  33. package/dist/esm/internal/differ/readonlyArrayPatch.js.map +1 -1
  34. package/dist/esm/internal/effect/circular.js +18 -16
  35. package/dist/esm/internal/effect/circular.js.map +1 -1
  36. package/dist/esm/internal/fiberId.js +10 -9
  37. package/dist/esm/internal/fiberId.js.map +1 -1
  38. package/dist/esm/internal/secret.js +6 -0
  39. package/dist/esm/internal/secret.js.map +1 -1
  40. package/dist/esm/internal/stm/tMap.js +3 -1
  41. package/dist/esm/internal/stm/tMap.js.map +1 -1
  42. package/dist/esm/internal/stm/tPriorityQueue.js +12 -4
  43. package/dist/esm/internal/stm/tPriorityQueue.js.map +1 -1
  44. package/dist/esm/internal/version.js +1 -1
  45. package/package.json +1 -1
  46. package/src/Effect.ts +8 -2
  47. package/src/Option.ts +36 -0
  48. package/src/ReadonlyArray.ts +4 -1
  49. package/src/internal/differ/readonlyArrayPatch.ts +3 -1
  50. package/src/internal/effect/circular.ts +20 -16
  51. package/src/internal/fiberId.ts +17 -16
  52. package/src/internal/secret.ts +6 -0
  53. package/src/internal/stm/tMap.ts +3 -1
  54. package/src/internal/stm/tPriorityQueue.ts +12 -4
  55. package/src/internal/version.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"tMap.js","names":["Chunk","Equal","dual","pipe","Hash","HashMap","Option","hasProperty","RA","STM","core","stm","tArray","tRef","TMapSymbolKey","TMapTypeId","Symbol","for","tMapVariance","_K","_","_V","TMapImpl","tBuckets","tSize","constructor","isTMap","u","InitialCapacity","LoadFactor","nextPowerOfTwo","size","n","Math","clz32","hash","key","h","indexOf","k","capacity","allocate","data","buckets","Array","from","length","empty","distinct","Map","entry","index","prepend","fromIterable","flatMap","make","map","find","self","pf","findSTM","value","option","isSome","succeed","fail","none","f","reduceSTM","acc","isNone","matchSTM","onFailure","match","onNone","succeedNone","onSome","onSuccess","succeedSome","findAll","findAllSTM","a","append","forEach","asUnit","iterable","suspend","get","effect","journal","unsafeGet","chunk","bucket","findFirst","equals","getOrElse","fallback","has","isEmpty","keys","toReadonlyArray","entries","merge","as","set","v0","v1","reduce","zero","result","items","remove","toRemove","toRetain","partition","isNonEmpty","currentSize","unsafeSet","removeAll","iterator","next","done","removeIf","args","predicate","options","discard","removed","newSize","newBucket","v","push","retainIf","resize","newCapacity","newBuckets","pairs","newIndex","newArray","TRefImpl","newTArray","TArrayImpl","shouldUpdate","some","setIfAbsent","unit","takeFirst","recreate","collect","takeFirstSTM","takeSome","builder","takeSomeSTM","isNonEmptyArray","toChunk","toHashMap","toArray","unshift","toMap","transform","newPair","transformSTM","newData","transformValues","transformValuesSTM","updateWith","values"],"sources":["../../../../src/internal/stm/tMap.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"tMap.js","names":["Chunk","Equal","dual","pipe","Hash","HashMap","Option","hasProperty","RA","STM","core","stm","tArray","tRef","TMapSymbolKey","TMapTypeId","Symbol","for","tMapVariance","_K","_","_V","TMapImpl","tBuckets","tSize","constructor","isTMap","u","InitialCapacity","LoadFactor","nextPowerOfTwo","size","n","Math","clz32","hash","key","h","indexOf","k","capacity","allocate","data","buckets","Array","from","length","empty","distinct","Map","entry","index","prepend","fromIterable","flatMap","make","map","find","self","pf","findSTM","value","option","isSome","succeed","fail","none","f","reduceSTM","acc","isNone","matchSTM","onFailure","match","onNone","succeedNone","onSome","onSuccess","succeedSome","findAll","findAllSTM","a","append","forEach","asUnit","iterable","suspend","get","effect","journal","unsafeGet","chunk","bucket","findFirst","equals","getOrElse","fallback","has","isEmpty","keys","toReadonlyArray","entries","merge","as","set","v0","v1","reduce","zero","result","items","remove","toRemove","toRetain","partition","isNonEmpty","currentSize","unsafeSet","removeAll","iterator","next","done","removeIf","args","predicate","options","discard","removed","newSize","newBucket","v","push","retainIf","resize","newCapacity","newBuckets","pairs","newIndex","newArray","TRefImpl","newTArray","TArrayImpl","shouldUpdate","some","setIfAbsent","unit","takeFirst","recreate","collect","takeFirstSTM","takeSome","builder","takeSomeSTM","isNonEmptyArray","toChunk","toHashMap","toArray","unshift","toMap","transform","newPair","transformSTM","newData","transformValues","transformValuesSTM","updateWith","values"],"sources":["../../../../src/internal/stm/tMap.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,gBAAgB;AACvC,OAAO,KAAKC,KAAK,MAAM,gBAAgB;AAEvC,SAASC,IAAI,EAAEC,IAAI,QAAQ,mBAAmB;AAC9C,OAAO,KAAKC,IAAI,MAAM,eAAe;AACrC,OAAO,KAAKC,OAAO,MAAM,kBAAkB;AAC3C,OAAO,KAAKC,MAAM,MAAM,iBAAiB;AACzC,SAASC,WAAW,QAAQ,oBAAoB;AAChD,OAAO,KAAKC,EAAE,MAAM,wBAAwB;AAC5C,OAAO,KAAKC,GAAG,MAAM,cAAc;AAInC,OAAO,KAAKC,IAAI,MAAM,WAAW;AACjC,OAAO,KAAKC,GAAG,MAAM,UAAU;AAE/B,OAAO,KAAKC,MAAM,MAAM,aAAa;AACrC,OAAO,KAAKC,IAAI,MAAM,WAAW;AAEjC;AACA,MAAMC,aAAa,GAAG,aAAa;AAEnC;AACA,OAAO,MAAMC,UAAU,gBAAoBC,MAAM,CAACC,GAAG,CACnDH,aAAa,CACK;AAEpB,MAAMI,YAAY,GAAG;EACnB;EACAC,EAAE,EAAGC,CAAM,IAAKA,CAAC;EACjB;EACAC,EAAE,EAAGD,CAAM,IAAKA;CACjB;AAED;AACA,MAAME,QAAQ;EAGDC,QAAA;EACAC,KAAA;EAHF,CAACT,UAAU,IAAIG,YAAY;EACpCO,YACWF,QAAgE,EAChEC,KAAwB;IADxB,KAAAD,QAAQ,GAARA,QAAQ;IACR,KAAAC,KAAK,GAALA,KAAK;EACb;;AAGL,MAAME,MAAM,GAAIC,CAAU,IAAKpB,WAAW,CAACoB,CAAC,EAAEZ,UAAU,CAAC;AAEzD;AACA,MAAMa,eAAe,GAAG,EAAE;AAC1B,MAAMC,UAAU,GAAG,IAAI;AAEvB;AACA,MAAMC,cAAc,GAAIC,IAAY,IAAY;EAC9C,MAAMC,CAAC,GAAG,CAAC,CAAC,KAAKC,IAAI,CAACC,KAAK,CAACH,IAAI,GAAG,CAAC,CAAC;EACrC,OAAOC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAGA,CAAC,GAAG,CAAC;AAC1B,CAAC;AAED;AACA,MAAMG,IAAI,GAAOC,GAAM,IAAY;EACjC,MAAMC,CAAC,GAAGjC,IAAI,CAAC+B,IAAI,CAACC,GAAG,CAAC;EACxB,OAAOC,CAAC,GAAIA,CAAC,KAAK,EAAG;AACvB,CAAC;AAED;AACA,MAAMC,OAAO,GAAGA,CAAIC,CAAI,EAAEC,QAAgB,KAAaL,IAAI,CAACI,CAAC,CAAC,GAAIC,QAAQ,GAAG,CAAE;AAE/E;AACA,MAAMC,QAAQ,GAAGA,CACfD,QAAgB,EAChBE,IAAkC,KACQ;EAC1C,MAAMC,OAAO,GAAGC,KAAK,CAACC,IAAI,CAAC;IAAEC,MAAM,EAAEN;EAAQ,CAAE,EAAE,MAAMxC,KAAK,CAAC+C,KAAK,EAAmB,CAAC;EACtF,MAAMC,QAAQ,GAAG,IAAIC,GAAG,CAAOP,IAAI,CAAC;EACpC,IAAIX,IAAI,GAAG,CAAC;EACZ,KAAK,MAAMmB,KAAK,IAAIF,QAAQ,EAAE;IAC5B,MAAMG,KAAK,GAAGb,OAAO,CAACY,KAAK,CAAC,CAAC,CAAC,EAAEV,QAAQ,CAAC;IACzCG,OAAO,CAACQ,KAAK,CAAC,GAAGhD,IAAI,CAACwC,OAAO,CAACQ,KAAK,CAAC,EAAEnD,KAAK,CAACoD,OAAO,CAACF,KAAK,CAAC,CAAC;IAC3DnB,IAAI,GAAGA,IAAI,GAAG,CAAC;EACjB;EACA,OAAO5B,IAAI,CACTS,MAAM,CAACyC,YAAY,CAACV,OAAO,CAAC,EAC5BjC,IAAI,CAAC4C,OAAO,CAAEX,OAAO,IACnBxC,IAAI,CACFU,IAAI,CAAC0C,IAAI,CAACZ,OAAO,CAAC,EAClBjC,IAAI,CAAC4C,OAAO,CAAE/B,QAAQ,IACpBpB,IAAI,CACFU,IAAI,CAAC0C,IAAI,CAACxB,IAAI,CAAC,EACfrB,IAAI,CAAC8C,GAAG,CAAEhC,KAAK,IAAK,IAAIF,QAAQ,CAACC,QAAQ,EAAEC,KAAK,CAAC,CAAC,CACnD,CACF,CACF,CACF,CACF;AACH,CAAC;AAED;AACA,OAAO,MAAMuB,KAAK,GAAGA,CAAA,KAAoDM,YAAY,CAAO,EAAE,CAAC;AAE/F;AACA,OAAO,MAAMI,IAAI,gBAAGvD,IAAI,CAQtB,CAAC,EAAE,CAACwD,IAAI,EAAEC,EAAE,KACZC,OAAO,CAACF,IAAI,EAAE,CAACtB,GAAG,EAAEyB,KAAK,KAAI;EAC3B,MAAMC,MAAM,GAAGH,EAAE,CAACvB,GAAG,EAAEyB,KAAK,CAAC;EAC7B,IAAIvD,MAAM,CAACyD,MAAM,CAACD,MAAM,CAAC,EAAE;IACzB,OAAOpD,IAAI,CAACsD,OAAO,CAACF,MAAM,CAACD,KAAK,CAAC;EACnC;EACA,OAAOnD,IAAI,CAACuD,IAAI,CAAC3D,MAAM,CAAC4D,IAAI,EAAE,CAAC;AACjC,CAAC,CAAC,CAAC;AAEL;AACA,OAAO,MAAMN,OAAO,gBAAG1D,IAAI,CAQzB,CAAC,EAAE,CACHwD,IAAqB,EACrBS,CAAwD,KAExDC,SAAS,CAACV,IAAI,EAAEpD,MAAM,CAAC4D,IAAI,EAAK,EAAE,CAACG,GAAG,EAAER,KAAK,EAAEzB,GAAG,KAChD9B,MAAM,CAACgE,MAAM,CAACD,GAAG,CAAC,GAChB3D,IAAI,CAAC6D,QAAQ,CAACJ,CAAC,CAAC/B,GAAG,EAAEyB,KAAK,CAAC,EAAE;EAC3BW,SAAS,EAAElE,MAAM,CAACmE,KAAK,CAAC;IACtBC,MAAM,EAAEA,CAAA,KAAM/D,GAAG,CAACgE,WAAW;IAC7BC,MAAM,EAAElE,IAAI,CAACuD;GACd,CAAC;EACFY,SAAS,EAAElE,GAAG,CAACmE;CAChB,CAAC,GACFrE,GAAG,CAACuD,OAAO,CAACK,GAAG,CAAC,CAAC,CAAC;AAExB;AACA,OAAO,MAAMU,OAAO,gBAAG7E,IAAI,CAQzB,CAAC,EAAE,CAACwD,IAAI,EAAEC,EAAE,KACZqB,UAAU,CAACtB,IAAI,EAAE,CAACtB,GAAG,EAAEyB,KAAK,KAAI;EAC9B,MAAMC,MAAM,GAAGH,EAAE,CAACvB,GAAG,EAAEyB,KAAK,CAAC;EAC7B,IAAIvD,MAAM,CAACyD,MAAM,CAACD,MAAM,CAAC,EAAE;IACzB,OAAOpD,IAAI,CAACsD,OAAO,CAACF,MAAM,CAACD,KAAK,CAAC;EACnC;EACA,OAAOnD,IAAI,CAACuD,IAAI,CAAC3D,MAAM,CAAC4D,IAAI,EAAE,CAAC;AACjC,CAAC,CAAC,CAAC;AAEL;AACA,OAAO,MAAMc,UAAU,gBAAG9E,IAAI,CAQ5B,CAAC,EAAE,CACHwD,IAAqB,EACrBC,EAAyD,KAEzDjD,IAAI,CAAC8C,GAAG,CACNY,SAAS,CAACV,IAAI,EAAE1D,KAAK,CAAC+C,KAAK,EAAK,EAAE,CAACsB,GAAG,EAAER,KAAK,EAAEzB,GAAG,KAChD1B,IAAI,CAAC6D,QAAQ,CAACZ,EAAE,CAACvB,GAAG,EAAEyB,KAAK,CAAC,EAAE;EAC5BW,SAAS,EAAElE,MAAM,CAACmE,KAAK,CAAC;IACtBC,MAAM,EAAEA,CAAA,KAAMhE,IAAI,CAACsD,OAAO,CAACK,GAAG,CAAC;IAC/BO,MAAM,EAAElE,IAAI,CAACuD;GACd,CAAC;EACFY,SAAS,EAAGI,CAAC,IAAKvE,IAAI,CAACsD,OAAO,CAAChE,KAAK,CAACkF,MAAM,CAACb,GAAG,EAAEY,CAAC,CAAC;CACpD,CAAC,CAAC,EACJA,CAAC,IAAKrC,KAAK,CAACC,IAAI,CAACoC,CAAC,CAAC,CACrB,CAAC;AAEJ;AACA,OAAO,MAAME,OAAO,gBAAGjF,IAAI,CAGzB,CAAC,EAAE,CAACwD,IAAI,EAAES,CAAC,KACXC,SAAS,CACPV,IAAI,EACJ,KAAK,CAAS,EACd,CAACtC,CAAC,EAAEyC,KAAK,EAAEzB,GAAG,KAAKzB,GAAG,CAACyE,MAAM,CAACjB,CAAC,CAAC/B,GAAG,EAAEyB,KAAK,CAAC,CAAC,CAC7C,CAAC;AAEJ;AACA,OAAO,MAAMR,YAAY,GAAUgC,QAAmC,IACpE1E,GAAG,CAAC2E,OAAO,CAAC,MAAK;EACf,MAAM5C,IAAI,GAAG1C,KAAK,CAACqD,YAAY,CAACgC,QAAQ,CAAC;EACzC,MAAM7C,QAAQ,GAAGE,IAAI,CAACI,MAAM,GAAGlB,eAAe,GAC1CA,eAAe,GACfE,cAAc,CAACY,IAAI,CAACI,MAAM,CAAC;EAC/B,OAAOL,QAAQ,CAACD,QAAQ,EAAEE,IAAI,CAAC;AACjC,CAAC,CAAC;AAEJ;AACA,OAAO,MAAM6C,GAAG,gBAAGrF,IAAI,CAGrB,CAAC,EAAE,CAAOwD,IAAqB,EAAEtB,GAAM,KACvC1B,IAAI,CAAC8E,MAAM,CAA2BC,OAAO,IAAI;EAC/C,MAAM9C,OAAO,GAAG9B,IAAI,CAAC6E,SAAS,CAAChC,IAAI,CAACnC,QAAQ,EAAEkE,OAAO,CAAC;EACtD,MAAMtC,KAAK,GAAGb,OAAO,CAACF,GAAG,EAAEO,OAAO,CAACgD,KAAK,CAAC7C,MAAM,CAAC;EAChD,MAAM8C,MAAM,GAAG/E,IAAI,CAAC6E,SAAS,CAAC/C,OAAO,CAACgD,KAAK,CAACxC,KAAK,CAAC,EAAEsC,OAAO,CAAC;EAC5D,OAAOtF,IAAI,CACTH,KAAK,CAAC6F,SAAS,CAACD,MAAM,EAAG1C,KAAK,IAAKjD,KAAK,CAAC6F,MAAM,CAAC5C,KAAK,CAAC,CAAC,CAAC,CAAC,CAACd,GAAG,CAAC,CAAC,EAC/D9B,MAAM,CAACkD,GAAG,CAAEN,KAAK,IAAKA,KAAK,CAAC,CAAC,CAAC,CAAC,CAChC;AACH,CAAC,CAAC,CAAC;AAEL;AACA,OAAO,MAAM6C,SAAS,gBAAG7F,IAAI,CAG3B,CAAC,EAAE,CAACwD,IAAI,EAAEtB,GAAG,EAAE4D,QAAQ,KACvBtF,IAAI,CAAC8C,GAAG,CACN+B,GAAG,CAAC7B,IAAI,EAAEtB,GAAG,CAAC,EACd9B,MAAM,CAACyF,SAAS,CAACC,QAAQ,CAAC,CAC3B,CAAC;AAEJ;AACA,OAAO,MAAMC,GAAG,gBAAG/F,IAAI,CAGrB,CAAC,EAAE,CAACwD,IAAI,EAAEtB,GAAG,KAAK1B,IAAI,CAAC8C,GAAG,CAAC+B,GAAG,CAAC7B,IAAI,EAAEtB,GAAG,CAAC,EAAE9B,MAAM,CAACyD,MAAM,CAAC,CAAC;AAE5D;AACA,OAAO,MAAMmC,OAAO,GAAUxC,IAAqB,IACjDhD,IAAI,CAAC8C,GAAG,CAAC3C,IAAI,CAAC0E,GAAG,CAAC7B,IAAI,CAAClC,KAAK,CAAC,EAAGO,IAAI,IAAKA,IAAI,KAAK,CAAC,CAAC;AAEtD;AACA,OAAO,MAAMoE,IAAI,GAAUzC,IAAqB,IAC9ChD,IAAI,CAAC8C,GAAG,CAAC4C,eAAe,CAAC1C,IAAI,CAAC,EAAElD,EAAE,CAACgD,GAAG,CAAEN,KAAK,IAAKA,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAE9D;AACA,OAAO,MAAMK,IAAI,GAAGA,CAAO,GAAG8C,OAA+B,KAC3DhD,YAAY,CAACgD,OAAO,CAAC;AAEvB;AACA,OAAO,MAAMC,KAAK,gBAAGpG,IAAI,CAGvB,CAAC,EAAE,CAACwD,IAAI,EAAEtB,GAAG,EAAEyB,KAAK,EAAEM,CAAC,KACvBzD,IAAI,CAAC4C,OAAO,CACViC,GAAG,CAAC7B,IAAI,EAAEtB,GAAG,CAAC,EACd9B,MAAM,CAACmE,KAAK,CAAC;EACXC,MAAM,EAAEA,CAAA,KAAM/D,GAAG,CAAC4F,EAAE,CAACC,GAAG,CAAC9C,IAAI,EAAEtB,GAAG,EAAEyB,KAAK,CAAC,EAAEA,KAAK,CAAC;EAClDe,MAAM,EAAG6B,EAAE,IAAI;IACb,MAAMC,EAAE,GAAGvC,CAAC,CAACsC,EAAE,EAAE5C,KAAK,CAAC;IACvB,OAAOlD,GAAG,CAAC4F,EAAE,CAACC,GAAG,CAAC9C,IAAI,EAAEtB,GAAG,EAAEsE,EAAE,CAAC,EAAEA,EAAE,CAAC;EACvC;CACD,CAAC,CACH,CAAC;AAEJ;AACA,OAAO,MAAMC,MAAM,gBAAGzG,IAAI,CAIxB,CAAC,EACD,CAAUwD,IAAqB,EAAEkD,IAAO,EAAEzC,CAAkC,KAC1EzD,IAAI,CAAC8E,MAAM,CAAYC,OAAO,IAAI;EAChC,MAAM9C,OAAO,GAAG9B,IAAI,CAAC6E,SAAS,CAAChC,IAAI,CAACnC,QAAQ,EAAEkE,OAAO,CAAC;EACtD,IAAIoB,MAAM,GAAGD,IAAI;EACjB,IAAIzD,KAAK,GAAG,CAAC;EACb,OAAOA,KAAK,GAAGR,OAAO,CAACgD,KAAK,CAAC7C,MAAM,EAAE;IACnC,MAAM8C,MAAM,GAAGjD,OAAO,CAACgD,KAAK,CAACxC,KAAK,CAAC;IACnC,MAAM2D,KAAK,GAAGjG,IAAI,CAAC6E,SAAS,CAACE,MAAM,EAAEH,OAAO,CAAC;IAC7CoB,MAAM,GAAG7G,KAAK,CAAC2G,MAAM,CAACG,KAAK,EAAED,MAAM,EAAE,CAACxC,GAAG,EAAEnB,KAAK,KAAKiB,CAAC,CAACE,GAAG,EAAEnB,KAAK,CAAC,CAAC,CAAC,EAAEA,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAChFC,KAAK,GAAGA,KAAK,GAAG,CAAC;EACnB;EACA,OAAO0D,MAAM;AACf,CAAC,CAAC,CACL;AAED;AACA,OAAO,MAAMzC,SAAS,gBAAGlE,IAAI,CAU3B,CAAC,EAAE,CAACwD,IAAI,EAAEkD,IAAI,EAAEzC,CAAC,KACjBzD,IAAI,CAAC4C,OAAO,CACV8C,eAAe,CAAC1C,IAAI,CAAC,EACrB/C,GAAG,CAACgG,MAAM,CAACC,IAAI,EAAE,CAACvC,GAAG,EAAEnB,KAAK,KAAKiB,CAAC,CAACE,GAAG,EAAEnB,KAAK,CAAC,CAAC,CAAC,EAAEA,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAC7D,CAAC;AAEJ;AACA,OAAO,MAAM6D,MAAM,gBAAG7G,IAAI,CAGxB,CAAC,EAAE,CAACwD,IAAI,EAAEtB,GAAG,KACb1B,IAAI,CAAC8E,MAAM,CAAeC,OAAO,IAAI;EACnC,MAAM9C,OAAO,GAAG9B,IAAI,CAAC6E,SAAS,CAAChC,IAAI,CAACnC,QAAQ,EAAEkE,OAAO,CAAC;EACtD,MAAMtC,KAAK,GAAGb,OAAO,CAACF,GAAG,EAAEO,OAAO,CAACgD,KAAK,CAAC7C,MAAM,CAAC;EAChD,MAAM8C,MAAM,GAAG/E,IAAI,CAAC6E,SAAS,CAAC/C,OAAO,CAACgD,KAAK,CAACxC,KAAK,CAAC,EAAEsC,OAAO,CAAC;EAC5D,MAAM,CAACuB,QAAQ,EAAEC,QAAQ,CAAC,GAAGjH,KAAK,CAACkH,SAAS,CAACtB,MAAM,EAAG1C,KAAK,IAAKjD,KAAK,CAAC6F,MAAM,CAAC5C,KAAK,CAAC,CAAC,CAAC,EAAEd,GAAG,CAAC,CAAC;EAC5F,IAAIpC,KAAK,CAACmH,UAAU,CAACH,QAAQ,CAAC,EAAE;IAC9B,MAAMI,WAAW,GAAGvG,IAAI,CAAC6E,SAAS,CAAChC,IAAI,CAAClC,KAAK,EAAEiE,OAAO,CAAC;IACvD5E,IAAI,CAACwG,SAAS,CAAC1E,OAAO,CAACgD,KAAK,CAACxC,KAAK,CAAC,EAAE8D,QAAQ,EAAExB,OAAO,CAAC;IACvD5E,IAAI,CAACwG,SAAS,CAAC3D,IAAI,CAAClC,KAAK,EAAE4F,WAAW,GAAG,CAAC,EAAE3B,OAAO,CAAC;EACtD;AACF,CAAC,CAAC,CAAC;AAEL;AACA,OAAO,MAAM6B,SAAS,gBAAGpH,IAAI,CAG3B,CAAC,EAAE,CAAOwD,IAAqB,EAAEyC,IAAiB,KAClDzF,IAAI,CAAC8E,MAAM,CAAeC,OAAO,IAAI;EACnC,MAAM8B,QAAQ,GAAGpB,IAAI,CAACnF,MAAM,CAACuG,QAAQ,CAAC,EAAE;EACxC,IAAIC,IAA4B;EAChC,OAAO,CAACA,IAAI,GAAGD,QAAQ,CAACC,IAAI,EAAE,KAAK,CAACA,IAAI,CAACC,IAAI,EAAE;IAC7C,MAAM9E,OAAO,GAAG9B,IAAI,CAAC6E,SAAS,CAAChC,IAAI,CAACnC,QAAQ,EAAEkE,OAAO,CAAC;IACtD,MAAMtC,KAAK,GAAGb,OAAO,CAACkF,IAAI,CAAC3D,KAAK,EAAElB,OAAO,CAACgD,KAAK,CAAC7C,MAAM,CAAC;IACvD,MAAM8C,MAAM,GAAG/E,IAAI,CAAC6E,SAAS,CAAC/C,OAAO,CAACgD,KAAK,CAACxC,KAAK,CAAC,EAAEsC,OAAO,CAAC;IAC5D,MAAM,CAACuB,QAAQ,EAAEC,QAAQ,CAAC,GAAGjH,KAAK,CAACkH,SAAS,CAACtB,MAAM,EAAG1C,KAAK,IAAKjD,KAAK,CAAC6F,MAAM,CAAC0B,IAAI,CAAC3D,KAAK,CAAC,CAACX,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACnG,IAAIlD,KAAK,CAACmH,UAAU,CAACH,QAAQ,CAAC,EAAE;MAC9B,MAAMI,WAAW,GAAGvG,IAAI,CAAC6E,SAAS,CAAChC,IAAI,CAAClC,KAAK,EAAEiE,OAAO,CAAC;MACvD5E,IAAI,CAACwG,SAAS,CAAC1E,OAAO,CAACgD,KAAK,CAACxC,KAAK,CAAC,EAAE8D,QAAQ,EAAExB,OAAO,CAAC;MACvD5E,IAAI,CAACwG,SAAS,CAAC3D,IAAI,CAAClC,KAAK,EAAE4F,WAAW,GAAG,CAAC,EAAE3B,OAAO,CAAC;IACtD;EACF;AACF,CAAC,CAAC,CAAC;AAEL;AACA,OAAO,MAAMiC,QAAQ,gBA2BjBxH,IAAI,CAAEyH,IAAI,IAAKjG,MAAM,CAACiG,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAClCjE,IAAqB,EACrBkE,SAAwC,EACxCC,OAEC,KAEDnH,IAAI,CAAC8E,MAAM,CAAEC,OAAO,IAAI;EACtB,MAAMqC,OAAO,GAAGD,OAAO,EAAEC,OAAO,KAAK,IAAI;EACzC,MAAMnF,OAAO,GAAG9B,IAAI,CAAC6E,SAAS,CAAChC,IAAI,CAACnC,QAAQ,EAAEkE,OAAO,CAAC;EACtD,MAAMjD,QAAQ,GAAGG,OAAO,CAACgD,KAAK,CAAC7C,MAAM;EACrC,MAAMiF,OAAO,GAAkB,EAAE;EACjC,IAAI5E,KAAK,GAAG,CAAC;EACb,IAAI6E,OAAO,GAAG,CAAC;EACf,OAAO7E,KAAK,GAAGX,QAAQ,EAAE;IACvB,MAAMoD,MAAM,GAAG/E,IAAI,CAAC6E,SAAS,CAAC/C,OAAO,CAACgD,KAAK,CAACxC,KAAK,CAAC,EAAEsC,OAAO,CAAC;IAC5D,MAAM8B,QAAQ,GAAG3B,MAAM,CAAC5E,MAAM,CAACuG,QAAQ,CAAC,EAAE;IAC1C,IAAIC,IAA0C;IAC9C,IAAIS,SAAS,GAAGjI,KAAK,CAAC+C,KAAK,EAAmB;IAC9C,OAAO,CAACyE,IAAI,GAAGD,QAAQ,CAACC,IAAI,EAAE,KAAK,CAACA,IAAI,CAACC,IAAI,EAAE;MAC7C,MAAM,CAAClF,CAAC,EAAE2F,CAAC,CAAC,GAAGV,IAAI,CAAC3D,KAAK;MACzB,IAAI,CAAC+D,SAAS,CAACrF,CAAC,EAAE2F,CAAC,CAAC,EAAE;QACpBD,SAAS,GAAGjI,KAAK,CAACoD,OAAO,CAAC6E,SAAS,EAAET,IAAI,CAAC3D,KAAK,CAAC;QAChDmE,OAAO,GAAGA,OAAO,GAAG,CAAC;MACvB,CAAC,MAAM;QACL,IAAI,CAACF,OAAO,EAAE;UACZC,OAAO,CAACI,IAAI,CAAC,CAAC5F,CAAC,EAAE2F,CAAC,CAAC,CAAC;QACtB;MACF;IACF;IACArH,IAAI,CAACwG,SAAS,CAAC1E,OAAO,CAACgD,KAAK,CAACxC,KAAK,CAAC,EAAE8E,SAAS,EAAExC,OAAO,CAAC;IACxDtC,KAAK,GAAGA,KAAK,GAAG,CAAC;EACnB;EACAtC,IAAI,CAACwG,SAAS,CAAC3D,IAAI,CAAClC,KAAK,EAAEwG,OAAO,EAAEvC,OAAO,CAAC;EAC5C,IAAI,CAACqC,OAAO,EAAE;IACZ,OAAOC,OAAO;EAChB;AACF,CAAC,CAAC,CAAC;AAEL;AACA,OAAO,MAAMK,QAAQ,gBA2BjBlI,IAAI,CACLyH,IAAI,IAAKjG,MAAM,CAACiG,IAAI,CAAC,CAAC,CAAC,CAAC,EACzB,CAACjE,IAAI,EAAEkE,SAAS,EAAEC,OAAO,KAAKH,QAAQ,CAAChE,IAAI,EAAE,CAACtB,GAAG,EAAEyB,KAAK,KAAK,CAAC+D,SAAS,CAACxF,GAAG,EAAEyB,KAAK,CAAC,EAAEgE,OAAO,CAAC,CAC9F;AAED;AACA,OAAO,MAAMrB,GAAG,gBAAGtG,IAAI,CAGrB,CAAC,EAAE,CAAOwD,IAAqB,EAAEtB,GAAM,EAAEyB,KAAQ,KAAI;EACrD,MAAMwE,MAAM,GAAGA,CAAC5C,OAAwB,EAAE9C,OAAoD,KAAU;IACtG,MAAMH,QAAQ,GAAGG,OAAO,CAACgD,KAAK,CAAC7C,MAAM;IACrC,MAAMwF,WAAW,GAAG9F,QAAQ,IAAI,CAAC;IACjC,MAAM+F,UAAU,GAAG3F,KAAK,CAACC,IAAI,CAAC;MAAEC,MAAM,EAAEwF;IAAW,CAAE,EAAE,MAAMtI,KAAK,CAAC+C,KAAK,EAAmB,CAAC;IAC5F,IAAII,KAAK,GAAG,CAAC;IACb,OAAOA,KAAK,GAAGX,QAAQ,EAAE;MACvB,MAAMgG,KAAK,GAAG3H,IAAI,CAAC6E,SAAS,CAAC/C,OAAO,CAACgD,KAAK,CAACxC,KAAK,CAAC,EAAEsC,OAAO,CAAC;MAC3D,MAAM8B,QAAQ,GAAGiB,KAAK,CAACxH,MAAM,CAACuG,QAAQ,CAAC,EAAE;MACzC,IAAIC,IAA0C;MAC9C,OAAO,CAACA,IAAI,GAAGD,QAAQ,CAACC,IAAI,EAAE,KAAK,CAACA,IAAI,CAACC,IAAI,EAAE;QAC7C,MAAMgB,QAAQ,GAAGnG,OAAO,CAACkF,IAAI,CAAC3D,KAAK,CAAC,CAAC,CAAC,EAAEyE,WAAW,CAAC;QACpDC,UAAU,CAACE,QAAQ,CAAC,GAAGzI,KAAK,CAACoD,OAAO,CAACmF,UAAU,CAACE,QAAQ,CAAC,EAAEjB,IAAI,CAAC3D,KAAK,CAAC;MACxE;MACAV,KAAK,GAAGA,KAAK,GAAG,CAAC;IACnB;IACA;IACA,MAAMsF,QAAQ,GAAGnG,OAAO,CAACF,GAAG,EAAEkG,WAAW,CAAC;IAC1CC,UAAU,CAACE,QAAQ,CAAC,GAAGzI,KAAK,CAACoD,OAAO,CAACmF,UAAU,CAACE,QAAQ,CAAC,EAAE,CAACrG,GAAG,EAAEyB,KAAK,CAAU,CAAC;IAEjF,MAAM6E,QAAQ,GAAmD,EAAE;IACnEvF,KAAK,GAAG,CAAC;IACT,OAAOA,KAAK,GAAGmF,WAAW,EAAE;MAC1BI,QAAQ,CAACvF,KAAK,CAAC,GAAG,IAAItC,IAAI,CAAC8H,QAAQ,CAACJ,UAAU,CAACpF,KAAK,CAAC,CAAC;MACtDA,KAAK,GAAGA,KAAK,GAAG,CAAC;IACnB;IACA,MAAMyF,SAAS,GAAgD,IAAIhI,MAAM,CAACiI,UAAU,CAACH,QAAQ,CAAC;IAC9F7H,IAAI,CAACwG,SAAS,CAAC3D,IAAI,CAACnC,QAAQ,EAAEqH,SAAS,EAAEnD,OAAO,CAAC;EACnD,CAAC;EACD,OAAO/E,IAAI,CAAC8E,MAAM,CAAeC,OAAO,IAAI;IAC1C,MAAM9C,OAAO,GAAG9B,IAAI,CAAC6E,SAAS,CAAChC,IAAI,CAACnC,QAAQ,EAAEkE,OAAO,CAAC;IACtD,MAAMjD,QAAQ,GAAGG,OAAO,CAACgD,KAAK,CAAC7C,MAAM;IACrC,MAAMK,KAAK,GAAGb,OAAO,CAACF,GAAG,EAAEI,QAAQ,CAAC;IACpC,MAAMoD,MAAM,GAAG/E,IAAI,CAAC6E,SAAS,CAAC/C,OAAO,CAACgD,KAAK,CAACxC,KAAK,CAAC,EAAEsC,OAAO,CAAC;IAC5D,MAAMqD,YAAY,GAAG9I,KAAK,CAAC+I,IAAI,CAACnD,MAAM,EAAG1C,KAAK,IAAKjD,KAAK,CAAC6F,MAAM,CAAC1D,GAAG,CAAC,CAACc,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/E,IAAI4F,YAAY,EAAE;MAChB,MAAMb,SAAS,GAAGjI,KAAK,CAACwD,GAAG,CAACoC,MAAM,EAAG1C,KAAK,IACxCjD,KAAK,CAAC6F,MAAM,CAAC1D,GAAG,CAAC,CAACc,KAAK,CAAC,CAAC,CAAC,CAAC,GACzB,CAACd,GAAG,EAAEyB,KAAK,CAAU,GACrBX,KAAK,CAAC;MACVrC,IAAI,CAACwG,SAAS,CAAC1E,OAAO,CAACgD,KAAK,CAACxC,KAAK,CAAC,EAAE8E,SAAS,EAAExC,OAAO,CAAC;IAC1D,CAAC,MAAM;MACL,MAAMuC,OAAO,GAAGnH,IAAI,CAAC6E,SAAS,CAAChC,IAAI,CAAClC,KAAK,EAAEiE,OAAO,CAAC,GAAG,CAAC;MACvD5E,IAAI,CAACwG,SAAS,CAAC3D,IAAI,CAAClC,KAAK,EAAEwG,OAAO,EAAEvC,OAAO,CAAC;MAC5C,IAAIjD,QAAQ,GAAGX,UAAU,GAAGmG,OAAO,EAAE;QACnCK,MAAM,CAAC5C,OAAO,EAAE9C,OAAO,CAAC;MAC1B,CAAC,MAAM;QACL,MAAMsF,SAAS,GAAGjI,KAAK,CAACoD,OAAO,CAACwC,MAAM,EAAE,CAACxD,GAAG,EAAEyB,KAAK,CAAU,CAAC;QAC9DhD,IAAI,CAACwG,SAAS,CAAC1E,OAAO,CAACgD,KAAK,CAACxC,KAAK,CAAC,EAAE8E,SAAS,EAAExC,OAAO,CAAC;MAC1D;IACF;EACF,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF;AACA,OAAO,MAAMuD,WAAW,gBAAG9I,IAAI,CAG7B,CAAC,EAAE,CAACwD,IAAI,EAAEtB,GAAG,EAAEyB,KAAK,KACpBnD,IAAI,CAAC4C,OAAO,CACViC,GAAG,CAAC7B,IAAI,EAAEtB,GAAG,CAAC,EACd9B,MAAM,CAACmE,KAAK,CAAC;EACXC,MAAM,EAAEA,CAAA,KAAM8B,GAAG,CAAC9C,IAAI,EAAEtB,GAAG,EAAEyB,KAAK,CAAC;EACnCe,MAAM,EAAEA,CAAA,KAAMjE,GAAG,CAACsI;CACnB,CAAC,CACH,CAAC;AAEJ;AACA,OAAO,MAAMlH,IAAI,GAAU2B,IAAqB,IAAoC7C,IAAI,CAAC0E,GAAG,CAAC7B,IAAI,CAAClC,KAAK,CAAC;AAExG;AACA,OAAO,MAAM0H,SAAS,gBAAGhJ,IAAI,CAG3B,CAAC,EAAE,CAAUwD,IAAqB,EAAEC,EAA0C,KAC9ExD,IAAI,CACFO,IAAI,CAAC8E,MAAM,CAA2BC,OAAO,IAAI;EAC/C,MAAM9C,OAAO,GAAG9B,IAAI,CAAC6E,SAAS,CAAChC,IAAI,CAACnC,QAAQ,EAAEkE,OAAO,CAAC;EACtD,MAAMjD,QAAQ,GAAGG,OAAO,CAACgD,KAAK,CAAC7C,MAAM;EACrC,MAAMf,IAAI,GAAGlB,IAAI,CAAC6E,SAAS,CAAChC,IAAI,CAAClC,KAAK,EAAEiE,OAAO,CAAC;EAChD,IAAIoB,MAAM,GAAqBvG,MAAM,CAAC4D,IAAI,EAAE;EAC5C,IAAIf,KAAK,GAAG,CAAC;EACb,OAAOA,KAAK,GAAGX,QAAQ,IAAIlC,MAAM,CAACgE,MAAM,CAACuC,MAAM,CAAC,EAAE;IAChD,MAAMjB,MAAM,GAAG/E,IAAI,CAAC6E,SAAS,CAAC/C,OAAO,CAACgD,KAAK,CAACxC,KAAK,CAAC,EAAEsC,OAAO,CAAC;IAC5D,MAAM0D,QAAQ,GAAGnJ,KAAK,CAAC+I,IAAI,CAACnD,MAAM,EAAG1C,KAAK,IAAK5C,MAAM,CAACyD,MAAM,CAACJ,EAAE,CAACT,KAAK,CAAC,CAAC,CAAC,EAAEA,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACrF,IAAIiG,QAAQ,EAAE;MACZ,MAAM5B,QAAQ,GAAG3B,MAAM,CAAC5E,MAAM,CAACuG,QAAQ,CAAC,EAAE;MAC1C,IAAIU,SAAS,GAAGjI,KAAK,CAAC+C,KAAK,EAAmB;MAC9C,IAAIyE,IAA0C;MAC9C,OAAO,CAACA,IAAI,GAAGD,QAAQ,CAACC,IAAI,EAAE,KAAK,CAACA,IAAI,CAACC,IAAI,IAAInH,MAAM,CAACgE,MAAM,CAACuC,MAAM,CAAC,EAAE;QACtE,MAAM/C,MAAM,GAAGH,EAAE,CAAC6D,IAAI,CAAC3D,KAAK,CAAC,CAAC,CAAC,EAAE2D,IAAI,CAAC3D,KAAK,CAAC,CAAC,CAAC,CAAC;QAC/C,IAAIvD,MAAM,CAACyD,MAAM,CAACD,MAAM,CAAC,IAAIxD,MAAM,CAACgE,MAAM,CAACuC,MAAM,CAAC,EAAE;UAClDA,MAAM,GAAG/C,MAAM;QACjB,CAAC,MAAM;UACLmE,SAAS,GAAGjI,KAAK,CAACoD,OAAO,CAAC6E,SAAS,EAAET,IAAI,CAAC3D,KAAK,CAAC;QAClD;MACF;MACAhD,IAAI,CAACwG,SAAS,CAAC1E,OAAO,CAACgD,KAAK,CAACxC,KAAK,CAAC,EAAE8E,SAAS,EAAExC,OAAO,CAAC;IAC1D;IACAtC,KAAK,GAAGA,KAAK,GAAG,CAAC;EACnB;EACA,IAAI7C,MAAM,CAACyD,MAAM,CAAC8C,MAAM,CAAC,EAAE;IACzBhG,IAAI,CAACwG,SAAS,CAAC3D,IAAI,CAAClC,KAAK,EAAEO,IAAI,GAAG,CAAC,EAAE0D,OAAO,CAAC;EAC/C;EACA,OAAOoB,MAAM;AACf,CAAC,CAAC,EACFlG,GAAG,CAACyI,OAAO,CAAEtF,MAAM,IACjBxD,MAAM,CAACyD,MAAM,CAACD,MAAM,CAAC,GACnBxD,MAAM,CAACyI,IAAI,CAACjF,MAAM,CAACD,KAAK,CAAC,GACzBvD,MAAM,CAAC4D,IAAI,EAAK,CACnB,CACF,CAAC;AAEJ;AACA,OAAO,MAAMmF,YAAY,gBAAGnJ,IAAI,CAK9B,CAAC,EAAE,CAACwD,IAAI,EAAEC,EAAE,KACZxD,IAAI,CACFyD,OAAO,CAACF,IAAI,EAAE,CAACtB,GAAG,EAAEyB,KAAK,KAAKnD,IAAI,CAAC8C,GAAG,CAACG,EAAE,CAACvB,GAAG,EAAEyB,KAAK,CAAC,EAAGoB,CAAC,IAAK,CAAC7C,GAAG,EAAE6C,CAAC,CAAU,CAAC,CAAC,EACjFtE,GAAG,CAACyI,OAAO,CAAEtF,MAAM,IAAKxD,MAAM,CAACyD,MAAM,CAACD,MAAM,CAAC,GAAGxD,MAAM,CAACyI,IAAI,CAACjF,MAAM,CAACD,KAAK,CAAC,GAAGvD,MAAM,CAAC4D,IAAI,EAAE,CAAC,EAC1FxD,IAAI,CAAC4C,OAAO,CAAEJ,KAAK,IAAKvC,GAAG,CAAC4F,EAAE,CAACQ,MAAM,CAACrD,IAAI,EAAER,KAAK,CAAC,CAAC,CAAC,CAAC,EAAEA,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAClE,CAAC;AAEJ;AACA,OAAO,MAAMoG,QAAQ,gBAAGpJ,IAAI,CAQ1B,CAAC,EAAE,CAAUwD,IAAqB,EAAEC,EAA0C,KAC9ExD,IAAI,CACFO,IAAI,CAAC8E,MAAM,CAA6CC,OAAO,IAAI;EACjE,MAAM9C,OAAO,GAAG9B,IAAI,CAAC6E,SAAS,CAAChC,IAAI,CAACnC,QAAQ,EAAEkE,OAAO,CAAC;EACtD,MAAMjD,QAAQ,GAAGG,OAAO,CAACgD,KAAK,CAAC7C,MAAM;EACrC,MAAMyG,OAAO,GAAa,EAAE;EAC5B,IAAIvB,OAAO,GAAG,CAAC;EACf,IAAI7E,KAAK,GAAG,CAAC;EACb,OAAOA,KAAK,GAAGX,QAAQ,EAAE;IACvB,MAAMoD,MAAM,GAAG/E,IAAI,CAAC6E,SAAS,CAAC/C,OAAO,CAACgD,KAAK,CAACxC,KAAK,CAAC,EAAEsC,OAAO,CAAC;IAC5D,MAAM0D,QAAQ,GAAGnJ,KAAK,CAAC+I,IAAI,CAACnD,MAAM,EAAG1C,KAAK,IAAK5C,MAAM,CAACyD,MAAM,CAACJ,EAAE,CAACT,KAAK,CAAC,CAAC,CAAC,EAAEA,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACrF,IAAIiG,QAAQ,EAAE;MACZ,MAAM5B,QAAQ,GAAG3B,MAAM,CAAC5E,MAAM,CAACuG,QAAQ,CAAC,EAAE;MAC1C,IAAIU,SAAS,GAAGjI,KAAK,CAAC+C,KAAK,EAAmB;MAC9C,IAAIyE,IAA0C;MAC9C,OAAO,CAACA,IAAI,GAAGD,QAAQ,CAACC,IAAI,EAAE,KAAK,CAACA,IAAI,CAACC,IAAI,EAAE;QAC7C,MAAM3D,MAAM,GAAGH,EAAE,CAAC6D,IAAI,CAAC3D,KAAK,CAAC,CAAC,CAAC,EAAE2D,IAAI,CAAC3D,KAAK,CAAC,CAAC,CAAC,CAAC;QAC/C,IAAIvD,MAAM,CAACyD,MAAM,CAACD,MAAM,CAAC,EAAE;UACzByF,OAAO,CAACpB,IAAI,CAACrE,MAAM,CAACD,KAAK,CAAC;QAC5B,CAAC,MAAM;UACLoE,SAAS,GAAGjI,KAAK,CAACoD,OAAO,CAAC6E,SAAS,EAAET,IAAI,CAAC3D,KAAK,CAAC;UAChDmE,OAAO,GAAGA,OAAO,GAAG,CAAC;QACvB;MACF;MACAnH,IAAI,CAACwG,SAAS,CAAC1E,OAAO,CAACgD,KAAK,CAACxC,KAAK,CAAC,EAAE8E,SAAS,EAAExC,OAAO,CAAC;IAC1D,CAAC,MAAM;MACLuC,OAAO,GAAGA,OAAO,GAAGpC,MAAM,CAAC9C,MAAM;IACnC;IACAK,KAAK,GAAGA,KAAK,GAAG,CAAC;EACnB;EACAtC,IAAI,CAACwG,SAAS,CAAC3D,IAAI,CAAClC,KAAK,EAAEwG,OAAO,EAAEvC,OAAO,CAAC;EAC5C,IAAI8D,OAAO,CAACzG,MAAM,GAAG,CAAC,EAAE;IACtB,OAAOxC,MAAM,CAACyI,IAAI,CAACQ,OAA8B,CAAC;EACpD;EACA,OAAOjJ,MAAM,CAAC4D,IAAI,EAAE;AACtB,CAAC,CAAC,EACFvD,GAAG,CAACyI,OAAO,CAAEtF,MAAM,IACjBxD,MAAM,CAACyD,MAAM,CAACD,MAAM,CAAC,GACnBxD,MAAM,CAACyI,IAAI,CAACjF,MAAM,CAACD,KAAK,CAAC,GACzBvD,MAAM,CAAC4D,IAAI,EAAuB,CACrC,CACF,CAAC;AAEJ;AACA,OAAO,MAAMsF,WAAW,gBAAGtJ,IAAI,CAQ7B,CAAC,EAAE,CACHwD,IAAqB,EACrBC,EAAyD,KAEzDxD,IAAI,CACF6E,UAAU,CACRtB,IAAI,EACJ,CAACtB,GAAG,EAAEyB,KAAK,KAAKnD,IAAI,CAAC8C,GAAG,CAACG,EAAE,CAACvB,GAAG,EAAEyB,KAAK,CAAC,EAAGoB,CAAC,IAAK,CAAC7C,GAAG,EAAE6C,CAAC,CAAU,CAAC,CACnE,EACDvE,IAAI,CAAC8C,GAAG,CAAEmC,KAAK,IACbnF,EAAE,CAACiJ,eAAe,CAAC9D,KAAK,CAAC,GACvBrF,MAAM,CAACyI,IAAI,CAACpD,KAAK,CAAC,GAClBrF,MAAM,CAAC4D,IAAI,EAAE,CAChB,EACDvD,GAAG,CAACyI,OAAO,CAAEtF,MAAM,IACjBxD,MAAM,CAACyD,MAAM,CAACD,MAAM,CAAC,GACnBxD,MAAM,CAACyI,IAAI,CAACjF,MAAM,CAACD,KAAK,CAAC,GACzBvD,MAAM,CAAC4D,IAAI,EAAE,CAChB,EACDxD,IAAI,CAAC4C,OAAO,CAAE+C,OAAO,IACnB1F,GAAG,CAAC4F,EAAE,CACJe,SAAS,CAAC5D,IAAI,EAAE2C,OAAO,CAAC7C,GAAG,CAAEN,KAAK,IAAKA,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EACjD1C,EAAE,CAACgD,GAAG,CAAC6C,OAAO,EAAGnD,KAAK,IAAKA,KAAK,CAAC,CAAC,CAAC,CAAwB,CAC5D,CACF,CACF,CAAC;AAEJ,MAAMkD,eAAe,GAAU1C,IAAqB,IAClDhD,IAAI,CAAC8E,MAAM,CAAiCC,OAAO,IAAI;EACrD,MAAM9C,OAAO,GAAG9B,IAAI,CAAC6E,SAAS,CAAChC,IAAI,CAACnC,QAAQ,EAAEkE,OAAO,CAAC;EACtD,MAAMjD,QAAQ,GAAGG,OAAO,CAACgD,KAAK,CAAC7C,MAAM;EACrC,MAAMyG,OAAO,GAA2B,EAAE;EAC1C,IAAIpG,KAAK,GAAG,CAAC;EACb,OAAOA,KAAK,GAAGX,QAAQ,EAAE;IACvB,MAAMoD,MAAM,GAAGjD,OAAO,CAACgD,KAAK,CAACxC,KAAK,CAAC;IACnC,KAAK,MAAMD,KAAK,IAAIrC,IAAI,CAAC6E,SAAS,CAACE,MAAM,EAAEH,OAAO,CAAC,EAAE;MACnD8D,OAAO,CAACpB,IAAI,CAACjF,KAAK,CAAC;IACrB;IACAC,KAAK,GAAGA,KAAK,GAAG,CAAC;EACnB;EACA,OAAOoG,OAAO;AAChB,CAAC,CAAC;AAEJ;AACA,OAAO,MAAMG,OAAO,GAAUhG,IAAqB,IACjDiD,MAAM,CACJjD,IAAI,EACJ1D,KAAK,CAAC+C,KAAK,EAAU,EACrB,CAACsB,GAAG,EAAER,KAAK,EAAEzB,GAAG,KAAKpC,KAAK,CAACkF,MAAM,CAACb,GAAG,EAAE,CAACjC,GAAG,EAAEyB,KAAK,CAAC,CAAC,CACrD;AAEH;AACA,OAAO,MAAM8F,SAAS,GAAUjG,IAAqB,IACnDiD,MAAM,CACJjD,IAAI,EACJrD,OAAO,CAAC0C,KAAK,EAAQ,EACrB,CAACsB,GAAG,EAAER,KAAK,EAAEzB,GAAG,KAAKjC,IAAI,CAACkE,GAAG,EAAEhE,OAAO,CAACmG,GAAG,CAACpE,GAAG,EAAEyB,KAAK,CAAC,CAAC,CACxD;AAEH;AACA,OAAO,MAAM+F,OAAO,GAAUlG,IAAqB,IACjDiD,MAAM,CACJjD,IAAI,EACJ,EAAmB,EACnB,CAACW,GAAG,EAAER,KAAK,EAAEzB,GAAG,KAAI;EAClBiC,GAAG,CAACwF,OAAO,CAAC,CAACzH,GAAG,EAAEyB,KAAK,CAAC,CAAC;EACzB,OAAOQ,GAAG;AACZ,CAAC,CACF;AAEH;AACA,OAAO,MAAMyF,KAAK,GAAUpG,IAAqB,IAC/CiD,MAAM,CACJjD,IAAI,EACJ,IAAIT,GAAG,EAAQ,EACf,CAACoB,GAAG,EAAER,KAAK,EAAEzB,GAAG,KAAKiC,GAAG,CAACmC,GAAG,CAACpE,GAAG,EAAEyB,KAAK,CAAC,CACzC;AAEH;AACA,OAAO,MAAMkG,SAAS,gBAAG7J,IAAI,CAI3B,CAAC,EACD,CAAOwD,IAAqB,EAAES,CAAwC,KACpEzD,IAAI,CAAC8E,MAAM,CAAeC,OAAO,IAAI;EACnC,MAAM9C,OAAO,GAAGxC,IAAI,CAACuD,IAAI,CAACnC,QAAQ,EAAEV,IAAI,CAAC6E,SAAS,CAACD,OAAO,CAAC,CAAC;EAC5D,MAAMjD,QAAQ,GAAGG,OAAO,CAACgD,KAAK,CAAC7C,MAAM;EACrC,MAAMyF,UAAU,GAAG3F,KAAK,CAACC,IAAI,CAAC;IAAEC,MAAM,EAAEN;EAAQ,CAAE,EAAE,MAAMxC,KAAK,CAAC+C,KAAK,EAAmB,CAAC;EACzF,IAAIiF,OAAO,GAAG,CAAC;EACf,IAAI7E,KAAK,GAAG,CAAC;EACb,OAAOA,KAAK,GAAGX,QAAQ,EAAE;IACvB,MAAMoD,MAAM,GAAGjD,OAAO,CAACgD,KAAK,CAACxC,KAAK,CAAC;IACnC,MAAMqF,KAAK,GAAG3H,IAAI,CAAC6E,SAAS,CAACE,MAAM,EAAEH,OAAO,CAAC;IAC7C,MAAM8B,QAAQ,GAAGiB,KAAK,CAACxH,MAAM,CAACuG,QAAQ,CAAC,EAAE;IACzC,IAAIC,IAA0C;IAC9C,OAAO,CAACA,IAAI,GAAGD,QAAQ,CAACC,IAAI,EAAE,KAAK,CAACA,IAAI,CAACC,IAAI,EAAE;MAC7C,MAAMuC,OAAO,GAAG7F,CAAC,CAACqD,IAAI,CAAC3D,KAAK,CAAC,CAAC,CAAC,EAAE2D,IAAI,CAAC3D,KAAK,CAAC,CAAC,CAAC,CAAC;MAC/C,MAAMV,KAAK,GAAGb,OAAO,CAAC0H,OAAO,CAAC,CAAC,CAAC,EAAExH,QAAQ,CAAC;MAC3C,MAAMyF,SAAS,GAAGM,UAAU,CAACpF,KAAK,CAAC;MACnC,IAAI,CAACnD,KAAK,CAAC+I,IAAI,CAACd,SAAS,EAAG/E,KAAK,IAAKjD,KAAK,CAAC6F,MAAM,CAAC5C,KAAK,CAAC,CAAC,CAAC,EAAE8G,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;QACzEzB,UAAU,CAACpF,KAAK,CAAC,GAAGnD,KAAK,CAACoD,OAAO,CAAC6E,SAAS,EAAE+B,OAAO,CAAC;QACrDhC,OAAO,GAAGA,OAAO,GAAG,CAAC;MACvB;IACF;IACA7E,KAAK,GAAGA,KAAK,GAAG,CAAC;EACnB;EACAA,KAAK,GAAG,CAAC;EACT,OAAOA,KAAK,GAAGX,QAAQ,EAAE;IACvB3B,IAAI,CAACwG,SAAS,CAAC1E,OAAO,CAACgD,KAAK,CAACxC,KAAK,CAAC,EAAEoF,UAAU,CAACpF,KAAK,CAAC,EAAEsC,OAAO,CAAC;IAChEtC,KAAK,GAAGA,KAAK,GAAG,CAAC;EACnB;EACAtC,IAAI,CAACwG,SAAS,CAAC3D,IAAI,CAAClC,KAAK,EAAEwG,OAAO,EAAEvC,OAAO,CAAC;AAC9C,CAAC,CAAC,CACL;AAED;AACA,OAAO,MAAMwE,YAAY,gBAAG/J,IAAI,CAM9B,CAAC,EACD,CAAawD,IAAqB,EAAES,CAAuD,KACzFhE,IAAI,CACFO,IAAI,CAAC4C,OAAO,CACV8C,eAAe,CAAC1C,IAAI,CAAC,EACrB/C,GAAG,CAACwE,OAAO,CAAEjC,KAAK,IAAKiB,CAAC,CAACjB,KAAK,CAAC,CAAC,CAAC,EAAEA,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAC9C,EACDxC,IAAI,CAAC4C,OAAO,CAAE4G,OAAO,IACnBxJ,IAAI,CAAC8E,MAAM,CAAeC,OAAO,IAAI;EACnC,MAAM9C,OAAO,GAAG9B,IAAI,CAAC6E,SAAS,CAAChC,IAAI,CAACnC,QAAQ,EAAEkE,OAAO,CAAC;EACtD,MAAMjD,QAAQ,GAAGG,OAAO,CAACgD,KAAK,CAAC7C,MAAM;EACrC,MAAMyF,UAAU,GAAG3F,KAAK,CAACC,IAAI,CAAC;IAAEC,MAAM,EAAEN;EAAQ,CAAE,EAAE,MAAMxC,KAAK,CAAC+C,KAAK,EAAmB,CAAC;EACzF,MAAMwE,QAAQ,GAAG2C,OAAO,CAAClJ,MAAM,CAACuG,QAAQ,CAAC,EAAE;EAC3C,IAAIS,OAAO,GAAG,CAAC;EACf,IAAIR,IAA0C;EAC9C,OAAO,CAACA,IAAI,GAAGD,QAAQ,CAACC,IAAI,EAAE,KAAK,CAACA,IAAI,CAACC,IAAI,EAAE;IAC7C,MAAMtE,KAAK,GAAGb,OAAO,CAACkF,IAAI,CAAC3D,KAAK,CAAC,CAAC,CAAC,EAAErB,QAAQ,CAAC;IAC9C,MAAMyF,SAAS,GAAGM,UAAU,CAACpF,KAAK,CAAC;IACnC,IAAI,CAACnD,KAAK,CAAC+I,IAAI,CAACd,SAAS,EAAG/E,KAAK,IAAKjD,KAAK,CAAC6F,MAAM,CAAC5C,KAAK,CAAC,CAAC,CAAC,CAAC,CAACsE,IAAI,CAAC3D,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;MAC5E0E,UAAU,CAACpF,KAAK,CAAC,GAAGnD,KAAK,CAACoD,OAAO,CAAC6E,SAAS,EAAET,IAAI,CAAC3D,KAAK,CAAC;MACxDmE,OAAO,GAAGA,OAAO,GAAG,CAAC;IACvB;EACF;EACA,IAAI7E,KAAK,GAAG,CAAC;EACb,OAAOA,KAAK,GAAGX,QAAQ,EAAE;IACvB3B,IAAI,CAACwG,SAAS,CAAC1E,OAAO,CAACgD,KAAK,CAACxC,KAAK,CAAC,EAAEoF,UAAU,CAACpF,KAAK,CAAC,EAAEsC,OAAO,CAAC;IAChEtC,KAAK,GAAGA,KAAK,GAAG,CAAC;EACnB;EACAtC,IAAI,CAACwG,SAAS,CAAC3D,IAAI,CAAClC,KAAK,EAAEwG,OAAO,EAAEvC,OAAO,CAAC;AAC9C,CAAC,CAAC,CACH,CACF,CACJ;AAED;AACA,OAAO,MAAM0E,eAAe,gBAAGjK,IAAI,CAGjC,CAAC,EAAE,CAACwD,IAAI,EAAES,CAAC,KAAK4F,SAAS,CAACrG,IAAI,EAAE,CAACtB,GAAG,EAAEyB,KAAK,KAAK,CAACzB,GAAG,EAAE+B,CAAC,CAACN,KAAK,CAAC,CAAC,CAAC,CAAC;AAEnE;AACA,OAAO,MAAMuG,kBAAkB,gBAAGlK,IAAI,CAGpC,CAAC,EAAE,CAACwD,IAAI,EAAES,CAAC,KACX8F,YAAY,CACVvG,IAAI,EACJ,CAACtB,GAAG,EAAEyB,KAAK,KAAKnD,IAAI,CAAC8C,GAAG,CAACW,CAAC,CAACN,KAAK,CAAC,EAAGA,KAAK,IAAK,CAACzB,GAAG,EAAEyB,KAAK,CAAC,CAAC,CAC5D,CAAC;AAEJ;AACA,OAAO,MAAMwG,UAAU,gBAAGnK,IAAI,CAU5B,CAAC,EAAE,CAACwD,IAAI,EAAEtB,GAAG,EAAE+B,CAAC,KAChBzD,IAAI,CAAC4C,OAAO,CAACiC,GAAG,CAAC7B,IAAI,EAAEtB,GAAG,CAAC,EAAG0B,MAAM,IAClCxD,MAAM,CAACmE,KAAK,CACVN,CAAC,CAACL,MAAM,CAAC,EACT;EACEY,MAAM,EAAEA,CAAA,KAAM/D,GAAG,CAAC4F,EAAE,CAACQ,MAAM,CAACrD,IAAI,EAAEtB,GAAG,CAAC,EAAE9B,MAAM,CAAC4D,IAAI,EAAE,CAAC;EACtDU,MAAM,EAAGf,KAAK,IAAKlD,GAAG,CAAC4F,EAAE,CAACC,GAAG,CAAC9C,IAAI,EAAEtB,GAAG,EAAEyB,KAAK,CAAC,EAAEvD,MAAM,CAACyI,IAAI,CAAClF,KAAK,CAAC;CACpE,CACF,CAAC,CAAC;AAEP;AACA,OAAO,MAAMyG,MAAM,GAAU5G,IAAqB,IAChDhD,IAAI,CAAC8C,GAAG,CAAC4C,eAAe,CAAC1C,IAAI,CAAC,EAAElD,EAAE,CAACgD,GAAG,CAAEN,KAAK,IAAKA,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC"}
@@ -80,7 +80,9 @@ export const take = self => core.withSTMRuntime(runtime => {
80
80
  export const takeAll = self => tRef.modify(self.ref, map => {
81
81
  const builder = [];
82
82
  for (const entry of map) {
83
- builder.push(...entry[1]);
83
+ for (const value of entry[1]) {
84
+ builder.push(value);
85
+ }
84
86
  }
85
87
  return [builder, SortedMap.empty(SortedMap.getOrder(map))];
86
88
  });
@@ -106,7 +108,9 @@ export const takeUpTo = /*#__PURE__*/dual(2, (self, n) => tRef.modify(self.ref,
106
108
  while ((next = iterator.next()) && !next.done && index < n) {
107
109
  const [key, value] = next.value;
108
110
  const [left, right] = pipe(value, ReadonlyArray.splitAt(n - index));
109
- builder.push(...left);
111
+ for (const value of left) {
112
+ builder.push(value);
113
+ }
110
114
  if (right.length > 0) {
111
115
  updated = SortedMap.set(updated, key, right);
112
116
  } else {
@@ -120,7 +124,9 @@ export const takeUpTo = /*#__PURE__*/dual(2, (self, n) => tRef.modify(self.ref,
120
124
  export const toChunk = self => tRef.modify(self.ref, map => {
121
125
  const builder = [];
122
126
  for (const entry of map) {
123
- builder.push(...entry[1]);
127
+ for (const value of entry[1]) {
128
+ builder.push(value);
129
+ }
124
130
  }
125
131
  return [Chunk.unsafeFromArray(builder), map];
126
132
  });
@@ -128,7 +134,9 @@ export const toChunk = self => tRef.modify(self.ref, map => {
128
134
  export const toArray = self => tRef.modify(self.ref, map => {
129
135
  const builder = [];
130
136
  for (const entry of map) {
131
- builder.push(...entry[1]);
137
+ for (const value of entry[1]) {
138
+ builder.push(value);
139
+ }
132
140
  }
133
141
  return [builder, map];
134
142
  });
@@ -1 +1 @@
1
- {"version":3,"file":"tPriorityQueue.js","names":["Chunk","dual","pipe","Option","ReadonlyArray","SortedMap","core","tRef","TPriorityQueueSymbolKey","TPriorityQueueTypeId","Symbol","for","tPriorityQueueVariance","_A","_","TPriorityQueueImpl","ref","constructor","empty","order","make","map","fromIterable","iterable","Array","from","reduce","value","set","get","match","onNone","of","onSome","prepend","isEmpty","self","isNonEmpty","elements","offer","update","offerAll","values","peek","withSTMRuntime","runtime","unsafeGet","journal","headOption","retry","succeed","peekOption","modify","removeIf","predicate","retainIf","a","getOrder","key","filtered","filter","length","remove","size","n","as","take","head","tail","slice","unsafeSet","takeAll","builder","entry","push","takeOption","effect","none","some","takeUpTo","iterator","updated","index","next","done","left","right","splitAt","toChunk","unsafeFromArray","toArray"],"sources":["../../../../src/internal/stm/tPriorityQueue.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"tPriorityQueue.js","names":["Chunk","dual","pipe","Option","ReadonlyArray","SortedMap","core","tRef","TPriorityQueueSymbolKey","TPriorityQueueTypeId","Symbol","for","tPriorityQueueVariance","_A","_","TPriorityQueueImpl","ref","constructor","empty","order","make","map","fromIterable","iterable","Array","from","reduce","value","set","get","match","onNone","of","onSome","prepend","isEmpty","self","isNonEmpty","elements","offer","update","offerAll","values","peek","withSTMRuntime","runtime","unsafeGet","journal","headOption","retry","succeed","peekOption","modify","removeIf","predicate","retainIf","a","getOrder","key","filtered","filter","length","remove","size","n","as","take","head","tail","slice","unsafeSet","takeAll","builder","entry","push","takeOption","effect","none","some","takeUpTo","iterator","updated","index","next","done","left","right","splitAt","toChunk","unsafeFromArray","toArray"],"sources":["../../../../src/internal/stm/tPriorityQueue.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export const moduleVersion = "2.2.2";
1
+ export const moduleVersion = "2.2.4";
2
2
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "effect",
3
- "version": "2.2.2",
3
+ "version": "2.2.4",
4
4
  "description": "Functional programming in TypeScript",
5
5
  "license": "MIT",
6
6
  "repository": {
package/src/Effect.ts CHANGED
@@ -3095,7 +3095,7 @@ export const provide: {
3095
3095
 
3096
3096
  /**
3097
3097
  * Provides the effect with the single service it requires. If the effect
3098
- * requires more than one service use `provideContext` instead.
3098
+ * requires more than one service use `provide` instead.
3099
3099
  *
3100
3100
  * @since 2.0.0
3101
3101
  * @category context
@@ -3114,7 +3114,7 @@ export const provideService: {
3114
3114
 
3115
3115
  /**
3116
3116
  * Provides the effect with the single service it requires. If the effect
3117
- * requires more than one service use `provideContext` instead.
3117
+ * requires more than one service use `provide` instead.
3118
3118
  *
3119
3119
  * @since 2.0.0
3120
3120
  * @category context
@@ -3306,6 +3306,11 @@ export const either: <R, E, A>(self: Effect<R, E, A>) => Effect<R, never, Either
3306
3306
  export const exit: <R, E, A>(self: Effect<R, E, A>) => Effect<R, never, Exit.Exit<E, A>> = core.exit
3307
3307
 
3308
3308
  /**
3309
+ * Returns an effect that will succeed or fail the specified `Deferred` based
3310
+ * upon the result of the effect. Also synchronizes interruption, so if the
3311
+ * provided effect is interrupted, the specified `Deferred` will be interrupted
3312
+ * as well.
3313
+ *
3309
3314
  * @since 2.0.0
3310
3315
  * @category conversions
3311
3316
  */
@@ -4684,6 +4689,7 @@ export interface Semaphore {
4684
4689
  withPermits(permits: number): <R, E, A>(self: Effect<R, E, A>) => Effect<R, E, A>
4685
4690
  take(permits: number): Effect<never, never, number>
4686
4691
  release(permits: number): Effect<never, never, void>
4692
+ releaseAll: Effect<never, never, void>
4687
4693
  }
4688
4694
 
4689
4695
  /**
package/src/Option.ts CHANGED
@@ -347,6 +347,42 @@ export const orElse: {
347
347
  <A, B>(self: Option<A>, that: LazyArg<Option<B>>): Option<A | B> => isNone(self) ? that() : self
348
348
  )
349
349
 
350
+ /**
351
+ * Returns the provided default value as `Some` if `self` is `None`, otherwise returns `self`.
352
+ *
353
+ * @param self - The first `Option` to be checked.
354
+ * @param onNone - Function that returns the default value to return if the `Option` is `None`.
355
+ *
356
+ * @example
357
+ * import * as O from "effect/Option"
358
+ * import { pipe } from "effect/Function"
359
+ *
360
+ * assert.deepStrictEqual(
361
+ * pipe(
362
+ * O.none(),
363
+ * O.orElseSome(() => 'b')
364
+ * ),
365
+ * O.some('b')
366
+ * )
367
+ * assert.deepStrictEqual(
368
+ * pipe(
369
+ * O.some('a'),
370
+ * O.orElseSome(() => 'b')
371
+ * ),
372
+ * O.some('a')
373
+ * )
374
+ *
375
+ * @category error handling
376
+ * @since 2.0.0
377
+ */
378
+ export const orElseSome: {
379
+ <B>(onNone: LazyArg<B>): <A>(self: Option<A>) => Option<B | A>
380
+ <A, B>(self: Option<A>, onNone: LazyArg<B>): Option<A | B>
381
+ } = dual(
382
+ 2,
383
+ <A, B>(self: Option<A>, onNone: LazyArg<B>): Option<A | B> => isNone(self) ? some(onNone()) : self
384
+ )
385
+
350
386
  /**
351
387
  * Similar to `orElse`, but instead of returning a simple union, it returns an `Either` object,
352
388
  * which contains information about which of the two `Option`s has been chosen.
@@ -1545,7 +1545,10 @@ export const flatMap: {
1545
1545
  }
1546
1546
  const out: Array<B> = []
1547
1547
  for (let i = 0; i < self.length; i++) {
1548
- out.push(...f(self[i], i))
1548
+ const inner = f(self[i], i)
1549
+ for (let j = 0; j < inner.length; j++) {
1550
+ out.push(inner[j])
1551
+ }
1549
1552
  }
1550
1553
  return out
1551
1554
  }
@@ -188,7 +188,9 @@ export const patch = Dual.dual<
188
188
  break
189
189
  }
190
190
  case "Append": {
191
- readonlyArray.push(...head.values)
191
+ for (const value of head.values) {
192
+ readonlyArray.push(value)
193
+ }
192
194
  patches = tail
193
195
  break
194
196
  }
@@ -35,7 +35,7 @@ import * as supervisor from "../supervisor.js"
35
35
 
36
36
  /** @internal */
37
37
  class Semaphore {
38
- public waiters = new Array<() => void>()
38
+ public waiters = new Set<() => boolean>()
39
39
  public taken = 0
40
40
 
41
41
  constructor(readonly permits: number) {}
@@ -48,36 +48,40 @@ class Semaphore {
48
48
  core.asyncEither<never, never, number>((resume) => {
49
49
  if (this.free < n) {
50
50
  const observer = () => {
51
- if (this.free >= n) {
52
- const observerIndex = this.waiters.findIndex((cb) => cb === observer)
53
- if (observerIndex !== -1) {
54
- this.waiters.splice(observerIndex, 1)
55
- }
56
- this.taken += n
57
- resume(core.succeed(n))
51
+ if (this.free < n) {
52
+ return false
58
53
  }
54
+ this.waiters.delete(observer)
55
+ this.taken += n
56
+ resume(core.succeed(n))
57
+ return true
59
58
  }
60
- this.waiters.push(observer)
59
+ this.waiters.add(observer)
61
60
  return Either.left(core.sync(() => {
62
- const observerIndex = this.waiters.findIndex((cb) => cb === observer)
63
- if (observerIndex !== -1) {
64
- this.waiters.splice(observerIndex, 1)
65
- }
61
+ this.waiters.delete(observer)
66
62
  }))
67
63
  }
68
64
  this.taken += n
69
65
  return Either.right(core.succeed(n))
70
66
  })
71
67
 
72
- readonly release = (n: number): Effect.Effect<never, never, void> =>
68
+ readonly updateTaken = (f: (n: number) => number): Effect.Effect<never, never, void> =>
73
69
  core.withFiberRuntime<never, never, void>((fiber) => {
74
- this.taken -= n
70
+ this.taken = f(this.taken)
75
71
  fiber.getFiberRef(currentScheduler).scheduleTask(() => {
76
- this.waiters.forEach((wake) => wake())
72
+ const iter = this.waiters.values()
73
+ let item = iter.next()
74
+ while (item.done === false && item.value() === true) {
75
+ item = iter.next()
76
+ }
77
77
  }, fiber.getFiberRef(core.currentSchedulingPriority))
78
78
  return core.unit
79
79
  })
80
80
 
81
+ readonly release = (n: number): Effect.Effect<never, never, void> => this.updateTaken((taken) => taken - n)
82
+
83
+ readonly releaseAll: Effect.Effect<never, never, void> = this.updateTaken((_) => 0)
84
+
81
85
  readonly withPermits = (n: number) => <R, E, A>(self: Effect.Effect<R, E, A>) =>
82
86
  core.uninterruptibleMask((restore) =>
83
87
  core.flatMap(
@@ -35,16 +35,14 @@ const OP_COMPOSITE = "Composite" as const
35
35
  /** @internal */
36
36
  export type OP_COMPOSITE = typeof OP_COMPOSITE
37
37
 
38
+ const emptyHash = Hash.string(`${FiberIdSymbolKey}-${OP_NONE}`)
39
+
38
40
  /** @internal */
39
41
  class None implements FiberId.None {
40
42
  readonly [FiberIdTypeId]: FiberId.FiberIdTypeId = FiberIdTypeId
41
- readonly _tag = OP_NONE
42
- readonly _hash: number
43
- constructor() {
44
- this._hash = Hash.string(`${FiberIdSymbolKey}-${this._tag}`)
45
- }
43
+ readonly _tag = OP_NONE;
46
44
  [Hash.symbol](): number {
47
- return this._hash
45
+ return emptyHash
48
46
  }
49
47
  [Equal.symbol](that: unknown): boolean {
50
48
  return isFiberId(that) && that._tag === OP_NONE
@@ -67,14 +65,15 @@ class None implements FiberId.None {
67
65
  class Runtime implements FiberId.Runtime {
68
66
  readonly [FiberIdTypeId]: FiberId.FiberIdTypeId = FiberIdTypeId
69
67
  readonly _tag = OP_RUNTIME
70
- readonly _hash: number
71
68
  constructor(
72
69
  readonly id: number,
73
70
  readonly startTimeMillis: number
74
- ) {
75
- this._hash = Hash.string(`${FiberIdSymbolKey}-${this._tag}-${this.id}-${this.startTimeMillis}`)
76
- }
71
+ ) {}
72
+ _hash: number | undefined;
77
73
  [Hash.symbol](): number {
74
+ if (this._hash == undefined) {
75
+ this._hash = Hash.string(`${FiberIdSymbolKey}-${this._tag}-${this.id}-${this.startTimeMillis}`)
76
+ }
78
77
  return this._hash
79
78
  }
80
79
  [Equal.symbol](that: unknown): boolean {
@@ -103,18 +102,20 @@ class Runtime implements FiberId.Runtime {
103
102
  class Composite implements FiberId.Composite {
104
103
  readonly [FiberIdTypeId]: FiberId.FiberIdTypeId = FiberIdTypeId
105
104
  readonly _tag = OP_COMPOSITE
106
- readonly _hash: number
107
105
  constructor(
108
106
  readonly left: FiberId.FiberId,
109
107
  readonly right: FiberId.FiberId
110
108
  ) {
111
- this._hash = pipe(
112
- Hash.string(`${FiberIdSymbolKey}-${this._tag}`),
113
- Hash.combine(Hash.hash(this.left)),
114
- Hash.combine(Hash.hash(this.right))
115
- )
116
109
  }
110
+ _hash: number | undefined;
117
111
  [Hash.symbol](): number {
112
+ if (this._hash == undefined) {
113
+ this._hash = pipe(
114
+ Hash.string(`${FiberIdSymbolKey}-${this._tag}`),
115
+ Hash.combine(Hash.hash(this.left)),
116
+ Hash.combine(Hash.hash(this.right))
117
+ )
118
+ }
118
119
  return this._hash
119
120
  }
120
121
  [Equal.symbol](that: unknown): boolean {
@@ -40,6 +40,12 @@ export const make = (bytes: Array<number>): Secret.Secret => {
40
40
  return "Secret(<redacted>)"
41
41
  }
42
42
  })
43
+ Object.defineProperty(secret, "toJSON", {
44
+ enumerable: false,
45
+ value() {
46
+ return "<redacted>"
47
+ }
48
+ })
43
49
  Object.defineProperty(secret, "raw", {
44
50
  enumerable: false,
45
51
  value: bytes
@@ -661,7 +661,9 @@ const toReadonlyArray = <K, V>(self: TMap.TMap<K, V>): STM.STM<never, never, Rea
661
661
  let index = 0
662
662
  while (index < capacity) {
663
663
  const bucket = buckets.chunk[index]
664
- builder.push(...tRef.unsafeGet(bucket, journal))
664
+ for (const entry of tRef.unsafeGet(bucket, journal)) {
665
+ builder.push(entry)
666
+ }
665
667
  index = index + 1
666
668
  }
667
669
  return builder
@@ -189,7 +189,9 @@ export const takeAll = <A>(self: TPriorityQueue.TPriorityQueue<A>): STM.STM<neve
189
189
  tRef.modify(self.ref, (map) => {
190
190
  const builder: Array<A> = []
191
191
  for (const entry of map) {
192
- builder.push(...entry[1])
192
+ for (const value of entry[1]) {
193
+ builder.push(value)
194
+ }
193
195
  }
194
196
  return [builder, SortedMap.empty(SortedMap.getOrder(map))]
195
197
  })
@@ -228,7 +230,9 @@ export const takeUpTo = dual<
228
230
  while ((next = iterator.next()) && !next.done && index < n) {
229
231
  const [key, value] = next.value
230
232
  const [left, right] = pipe(value, ReadonlyArray.splitAt(n - index))
231
- builder.push(...left)
233
+ for (const value of left) {
234
+ builder.push(value)
235
+ }
232
236
  if (right.length > 0) {
233
237
  updated = SortedMap.set(updated, key, right as [A, ...Array<A>])
234
238
  } else {
@@ -244,7 +248,9 @@ export const toChunk = <A>(self: TPriorityQueue.TPriorityQueue<A>): STM.STM<neve
244
248
  tRef.modify(self.ref, (map) => {
245
249
  const builder: Array<A> = []
246
250
  for (const entry of map) {
247
- builder.push(...entry[1])
251
+ for (const value of entry[1]) {
252
+ builder.push(value)
253
+ }
248
254
  }
249
255
  return [Chunk.unsafeFromArray(builder), map]
250
256
  })
@@ -254,7 +260,9 @@ export const toArray = <A>(self: TPriorityQueue.TPriorityQueue<A>): STM.STM<neve
254
260
  tRef.modify(self.ref, (map) => {
255
261
  const builder: Array<A> = []
256
262
  for (const entry of map) {
257
- builder.push(...entry[1])
263
+ for (const value of entry[1]) {
264
+ builder.push(value)
265
+ }
258
266
  }
259
267
  return [builder, map]
260
268
  })
@@ -1 +1 @@
1
- export const moduleVersion = "2.2.2"
1
+ export const moduleVersion = "2.2.4"