CacheMatrix(updated)