add support for caching views