I love memoization. Sue me.