maintain uinques when ID is set retroactively