57 needs memoization and BigInt