use new way to generate IDs