memoizing