Add support for caching