sig   type +'a tree   val empty : 'BatAvlTree.tree   val is_empty : 'BatAvlTree.tree -> bool   val make_tree :     'BatAvlTree.tree -> '-> 'BatAvlTree.tree -> 'BatAvlTree.tree   val create :     'BatAvlTree.tree -> '-> 'BatAvlTree.tree -> 'BatAvlTree.tree   val height : 'BatAvlTree.tree -> int   val left_branch : 'BatAvlTree.tree -> 'BatAvlTree.tree   val right_branch : 'BatAvlTree.tree -> 'BatAvlTree.tree   val root : 'BatAvlTree.tree -> 'a   val singleton_tree : '-> 'BatAvlTree.tree   val split_leftmost : 'BatAvlTree.tree -> 'a * 'BatAvlTree.tree   val split_rightmost : 'BatAvlTree.tree -> 'a * 'BatAvlTree.tree   val concat : 'BatAvlTree.tree -> 'BatAvlTree.tree -> 'BatAvlTree.tree   val iter : ('-> unit) -> 'BatAvlTree.tree -> unit   val fold : ('-> '-> 'b) -> 'BatAvlTree.tree -> '-> 'b   val enum : 'BatAvlTree.tree -> 'BatEnum.t   val check : 'BatAvlTree.tree -> bool   val check_height_cache : 'BatAvlTree.tree -> bool   val check_height_balance : 'BatAvlTree.tree -> bool end