sig   exception Empty   module Make :     functor (X : Set.OrderedType->       sig         type t         val empty : Leftistheap.Make.t         val is_empty : Leftistheap.Make.t -> bool         val insert : X.t -> Leftistheap.Make.t -> Leftistheap.Make.t         val min : Leftistheap.Make.t -> X.t         val extract_min : Leftistheap.Make.t -> X.t * Leftistheap.Make.t         val merge :           Leftistheap.Make.t -> Leftistheap.Make.t -> Leftistheap.Make.t         val fold : (X.t -> '-> 'a) -> Leftistheap.Make.t -> '-> 'a         val elements : Leftistheap.Make.t -> X.t list         val of_list : X.t list -> Leftistheap.Make.t       end end