let add t ?abs contents =
  let abstract =
    match abs with
      None ->
        let prefix = replace_blanks (chop_n_char t.abst_len contents) in
        find_free_abstract t prefix
    | Some s -> replace_blanks s
  in
  Hashtbl.replace t.elts abstract contents