use genUID fn