revert to using reduce as per RSG