let remove_dups l =
let m = List.sort compare l in
let rec remove_dups_rec ll = match ll with
| [] -> ll
| [x] -> ll
| x::y::d -> if (x=y) then remove_dups_rec (y::d)
else x::(remove_dups_rec d)
in remove_dups_rec m