val print : ?l:string list -> t -> string
val lift : int -> t -> t
val unwind : ?tbl:('a list * t * 'a list as 'a, t) Hashtbl.t -> 'a -> t
val print : ?l:string list -> t -> string
val lift : int -> t -> t
val unwind : ?tbl:('a list * t * 'a list as 'a, t) Hashtbl.t -> 'a -> t