adding caching homework