finished cachematrix assignment