recur-sum