additional caching optimizations