[Demonstration 1]

[Buggy Method]
public void setCostperP(int _costperpassenger) {
    costperpassenger = _costperpassenger;
}

[Buggy Hunk]
public void setCostperP(int _costperpassenger)

[Patch]
void setCostperP(int _costperpassenger)

[Demonstration 2]

[Buggy Method]
protected boolean isObservedFaultWrongPath(TraceNode observableNode, PairList pairList) {
    TraceNodePair pair = pairList.findByAfterNode(observableNode);
    if (pair == null) {
        return true;
    }
    if (pair.getBeforeNode() == null) {
        return true;
    }
    return false;
}

[Buggy Hunk]
TraceNodePair pair = pairList.findByAfterNode(observableNode);

[Patch]
TraceNodePair pair = pairList.findByBeforeNode(observableNode);

[Demonstration 3]

[Buggy Method]
@Override
public void solve(DMatrixRMaj B, DMatrixRMaj X) {
    //        if( B.numCols != X.numCols || B.numRows != numRows || X.numRows != numCols) {
    //            throw new IllegalArgumentException("Unexpected matrix size");
    //        }
    int[] pinv = decomposition.getPinv();
    int[] q = decomposition.getReducePermutation();
    double[] x = adjust(gx, X.numRows);
    double[] b = adjust(gb, B.numRows);
    DMatrixSparseCSC L = decomposition.getL();
    DMatrixSparseCSC U = decomposition.getU();
    boolean reduceFill = decomposition.getReduceFill() != null;
    // process each column in X and B individually
    for (int colX = 0; colX < X.numCols; colX++) {
        int index = colX;
        for (int i = 0; i < B.numRows; i++, index += X.numCols) b[i] = B.data[index];
        CommonOps_DSCC.permuteInv(pinv, b, x, X.numRows);
        TriangularSolver_DSCC.solveL(L, x);
        TriangularSolver_DSCC.solveU(U, x);
        double[] d;
        if (reduceFill) {
            CommonOps_DSCC.permuteInv(q, x, b, X.numRows);
            d = b;
        } else {
            d = x;
        }
        index = colX;
        for (int i = 0; i < X.numRows; i++, index += X.numCols) X.data[index] = d[i];
    }
}

[Buggy Hunk]
CommonOps_DSCC.permuteInv(q, x, b, X.numRows);

[Patch]
CommonOps_DSCC.permute(q, x, b, X.numRows);