revert to fastSum()