fix id gen