let rec merge_all marks =
    match marks with
      | [] -> bottom
      | m :: [] -> m (* to avoid merging with bottom every time ! *)
      | m :: tl -> merge m (merge_all tl)