sig
  val ( >>= ) : 'a Lwt.t -> ('a -> 'b Lwt.t) -> 'b Lwt.t
  val ( =<< ) : ('a -> 'b Lwt.t) -> 'a Lwt.t -> 'b Lwt.t
  val ( >|= ) : 'a Lwt.t -> ('a -> 'b) -> 'b Lwt.t
  val ( =|< ) : ('a -> 'b) -> 'a Lwt.t -> 'b Lwt.t
  val ( <?> ) : 'a Lwt.t -> 'a Lwt.t -> 'a Lwt.t
  val ( <&> ) : unit Lwt.t -> unit Lwt.t -> unit Lwt.t
end