add memoization on .all class methods