This is the complete cachematrix.R file ready to be evaluated