Added support for caching