updated caching techniques