Split out primitive generators