functor (M : MONAD->
  sig
    val sequence_m : ('M.t, 'err) CCResult.t -> ('a, 'err) CCResult.t M.t
    val fold_m :
      ('-> '-> 'M.t) -> '-> ('a, 'err) CCResult.t -> 'M.t
    val map_m :
      ('-> 'M.t) -> ('a, 'err) CCResult.t -> ('b, 'err) CCResult.t M.t
    val retry_m :
      int ->
      (unit -> ('a, 'err) CCResult.t M.t) -> ('a, 'err list) CCResult.t M.t
  end