Should be final version for unique ids and validation.