CacheSolve edited according to assignment 2 v3