fact: Definition source {M : Type -> Type} `{Monad M} {R A} (await : R -> (R -> A -> EitherT R M R) -> EitherT R M R) : Source M R A := Source_ M R A (Cont_ (R -> EitherT R M R) A (flip await ∘ flip)).
imports: Cont EitherT Trans