improve caching issue