message: improve sink
diff: @@ -1612,9 +1612,11 @@ export function last<I>(): Sink<unknown, never, I, never, O.Option<I>> {
  * A sink that depends on another managed value
  * `resource` will be finalized after the processing.
  */
  -export function managed<R, E, A>(resource: M.Managed<R, E, A>) {
  - return <I, L extends I, Z>(fn: (a: A) => Sink<R, E, I, L, Z>) =>
  - M.chain_(
  +export function managed_<R, E, A, I, L extends I, Z>(
  + resource: M.Managed<R, E, A>,
  + fn: (a: A) => Sink<R, E, I, L, Z>
  +) {
  + return M.chain_(
  M.fold_(
  resource,
  (err) => fail(err)<I>() as Sink<R, E, I, I, Z>,
  @@ -1624,6 +1626,15 @@ export function managed<R, E, A>(resource: M.Managed<R, E, A>) {
  )
  }
  +/**
  + * A sink that depends on another managed value
  + * `resource` will be finalized after the processing.
  + */
  +export function managed<R, E, A>(resource: M.Managed<R, E, A>) {
  + return <I, L extends I, Z>(fn: (a: A) => Sink<R, E, I, L, Z>) =>
  + managed_(resource, fn)
  +}
  +
  /**
  * A sink that immediately ends with the specified value.
  */
  