add caching and update max results for event