docs: function multiplyB(product, left, right) {
    var leftRows = left.rows;
    var leftColumns = left.columns;
    var rightColumns = right.columns;
  
    // loop over rows of left
    for (var leftRow = 0; leftRow < leftRows; leftRow++) {
      var leftRowBase = leftColumns * leftRow;
      var rightRowBase = rightColumns * leftRow;
      // loop over cols of right
      for (var rightColumn = 0; rightColumn < rightColumns; rightColumn++) {
  
        //loop over columns of left
        for (var leftColumn = 0; leftColumn < leftColumns; leftColumn++) {
          var rightColumnBase = rightColumns * leftColumn;
          var _leftRow = leftRowBase + leftColumn;
          var rightRow = rightColumnBase + rightColumn;
          var backPropagateValue = product.deltas[rightRowBase + rightColumn];
          left.deltas[_leftRow] += right.weights[rightRow] * backPropagateValue;
          right.deltas[rightRow] += left.weights[_leftRow] * backPropagateValue;
        }
      }
    }
  }