added caching module