sig val finalise : ('a -> unit Lwt.t) -> 'a -> unit val finalise_or_exit : ('a -> unit Lwt.t) -> 'a -> unit end