removed autoid gen to avoid lib dependency