Added decorator for caching