cache: support for caching