functor (A : Applicative.Basic3->
  sig
    val traverse : ('-> ('u, 'v, 'b) A.t) -> 'a t -> ('u, 'v, 'b t) A.t
    val traverse_ : ('-> ('u, 'v, 'b) A.t) -> 'a t -> ('u, 'v, unit) A.t
    val sequence : ('a, 'b, 'c) A.t t -> ('a, 'b, 'c t) A.t
    val sequence_ : ('a, 'b, 'c) A.t t -> ('a, 'b, unit) A.t
  end