More functional ace version