memoize more stuff