rem: var ni = this.elements.length, ki = ni, i, nj, kj = this.elements[0].length, j; do { i = ki - ni; nj = kj; do { j = kj - nj; 
add: var i = this.elements.length, nj = this.elements[0].length, j; while (i--) { j = nj; while (j--) { 
context:   rank: function() {    var M = this.toRightTriangular(), rank = 0;    var ni = this.elements.length, ki = ni, i, nj, kj = this.elements[0].length, j;    do { i = ki - ni;      nj = kj;      do { j = kj - nj;        if (Math.abs(M.elements[i][j]) > Sylvester.precision) { rank++; break; }      } while (--nj);    } while (--ni);    return rank;  },
meta: 3877	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/3877/5bb35ddb3516d7e68f3747d86540ffaa68de3fe3/matrix.js/buggy/src/matrix.js