add idgen