forked from: Unique id generator

