Revert to enum method with carry propagation corrections