sig   type 'a t   exception Underflow   val stack : 'a Kwstack.t   val empty : 'a Kwstack.t -> bool   val depth : 'a Kwstack.t -> int   val push : 'a -> 'a Kwstack.t -> 'a Kwstack.t   val top : 'a Kwstack.t -> 'a   val pop : 'a Kwstack.t -> 'a * 'a Kwstack.t   val reverse : 'a Kwstack.t -> 'a Kwstack.t   val concat : 'a Kwstack.t -> 'a Kwstack.t -> 'a Kwstack.t   val fold : ('a -> 'b -> 'b) -> 'b -> 'a Kwstack.t -> 'b   val map : ('a -> 'b) -> 'a Kwstack.t -> 'b Kwstack.t   val iter : ('a -> unit) -> 'a Kwstack.t -> unit   val of_list : 'a list -> 'a Kwstack.t   val to_list : 'a Kwstack.t -> 'a list end