(* This code extends 'mini_prelude'. *) type ('a) tree = Tree of ('a) tree * 'a * ('a) tree | Empty ;; let empty = Empty ;; let rec member v4 = (fun v5 -> (fun v6 -> (match v6 with Empty -> false | (Tree (v3, v2, v1)) -> (if ((v4 v5) v2) then (((member v4) v5) v3) else (if ((v4 v2) v5) then (((member v4) v5) v1) else true))))) ;; let rec insert v4 = (fun v5 -> (fun v6 -> (match v6 with Empty -> (Tree (Empty, v5, Empty)) | (Tree (v3, v2, v1)) -> (if ((v4 v5) v2) then (Tree ((((insert v4) v5) v3), v2, v1)) else (if ((v4 v2) v5) then (Tree (v3, v2, (((insert v4) v5) v1))) else (Tree (v3, v2, v1))))))) ;;