Added id generator interface