new nad improved unique id generation