my cachematrix programming assignment 2