adding caching
fixed caching