sig
  val join : unit Lwt.t list -> unit Lwt.t
  val iter : ('-> unit Lwt.t) -> 'a list -> unit Lwt.t
  val iter_serial : ('-> unit Lwt.t) -> 'a list -> unit Lwt.t
  val map : ('-> 'Lwt.t) -> 'a list -> 'b list Lwt.t
  val map_with_waiting_action :
    ('-> 'Lwt.t) -> ('-> unit) -> 'a list -> 'b list Lwt.t
  val map_serial : ('-> 'Lwt.t) -> 'a list -> 'b list Lwt.t
  val fold_left : ('-> '-> 'Lwt.t) -> '-> 'b list -> 'Lwt.t
  type region
  val make_region : int -> Lwt_util.region
  val resize_region : Lwt_util.region -> int -> unit
  val run_in_region :
    Lwt_util.region -> int -> (unit -> 'Lwt.t) -> 'Lwt.t
end