renaming, preconditions, docs