This one really is supposed to be memoized.