import * as Effect from "effect/Effect";import * as Context from "effect/Context";import * as Layer from "effect/Layer";const C=Context.Service("C");let n=0;const layer=Layer.effect(C,Effect.sync(()=>++n));const p=Effect.gen(function*(){const a=yield* C.pipe(Effect.provide(layer));const b=yield* C.pipe(Effect.provide(Layer.fresh(layer)));const c=yield* C.pipe(Effect.provide(layer,{local:true}));return [a,b,c]});Effect.runPromise(p.pipe(Effect.tap(v=>Effect.sync(()=>console.log(JSON.stringify(v))))))