updated  cacheSolve