method add_element (e : 'a element) = data <- (List.filter (fun ele -> self#compare ele e <> 0) data ) @ [e]; self#update_data data