improved caching behavior