-val print_xml_fast : out_channel -> t -> unit
-val node_child : t -> t
-val node_sibling : t -> t
-val node_sibling_ctx : t -> t -> t
-val tags_below : t -> Tag.t -> Ptset.t
-val tags_after : t -> Tag.t -> Ptset.t
-val tags : t -> Tag.t -> Ptset.t*Ptset.t
+val print_xml_fast : out_channel -> t -> [ `Tree ] node -> unit
+val print_xml_fast2 : out_channel -> t -> [ `Tree ] node -> unit
+val print_xml_fast3 : t -> [ `Tree ] node -> Unix.file_descr -> unit
+
+val tags_children : t -> Tag.t -> Ptset.Int.t
+val tags_below : t -> Tag.t -> Ptset.Int.t
+val tags_siblings : t -> Tag.t -> Ptset.Int.t
+val tags_after : t -> Tag.t -> Ptset.Int.t
+val tags : t -> Tag.t -> Ptset.Int.t*Ptset.Int.t*Ptset.Int.t*Ptset.Int.t
+val is_below_right : t -> [`Tree] node -> [`Tree] node -> bool
+val is_binary_ancestor : t -> [`Tree] node -> [`Tree] node -> bool
+val is_left : t -> [`Tree] node -> bool
+
+val binary_parent : t -> [`Tree] node -> [`Tree] node
+
+val count_contains : t -> string -> int
+(* val unsorted_contains : t -> string -> unit *)
+val text_size : t -> int
+val doc_ids : t -> [`Tree] node -> [`Text] node * [`Text] node
+val subtree_tags : t -> Tag.t -> [`Tree] node -> int
+val get_text : t -> [`Tree] node -> string
+val get_text_id : t -> [`Tree] node -> [`Text ] node
+
+val dump_tree : Format.formatter -> t -> unit
+val subtree_size : t -> [`Tree] node -> int
+val subtree_elements : t -> [`Tree] node -> int
+val text_below : t -> [`Tree] node -> [`Tree] node
+val text_next : t -> [`Tree] node -> [`Tree] node -> [`Tree] node
+
+val closing : t -> [`Tree] node -> [`Tree] node
+val is_open : t -> [`Tree] node -> bool
+
+val benchmark_jump : t -> Tag.t -> unit
+val benchmark_fcns : t -> unit
+val benchmark_lcps : t -> unit
+val stats : t -> unit
+
+val test_suffix : t -> string -> int
+val test_prefix : t -> string -> int
+val test_equals : t -> string -> int
+val test_contains : t -> string -> int