[Demonstration 1]

[Buggy Method]
public void onClick(MouseEvent e) {
    //Grabs the cardholder they just clicked, can be in hand or on board
    Cardholder clickedHolder = this.cardholderContaining(this.hand, e);
    if (clickedHolder == null) {
        clickedHolder = this.cardholderContaining(this.cardholders, e);
    }
    //Grab the one they selected
    if (clickedHolder != null && clickedHolder.isSrcClickable()) {
        this.selectedCardholder = clickedHolder;
        System.out.println("Selected " + this.selectedCardholder);
    } else if (clickedHolder != null && clickedHolder.isDestClickable()) {
        clickedHolder.setCard(this.selectedCardholder.getCard());
        clickedHolder.setSrcClickable(true);
        clickedHolder.setDestClickable(false);
        this.selectedCardholder.clearCard();
        this.selectedCardholder.setSrcClickable(false);
        this.selectedCardholder = null;
    }
    // Cardholder cardholderClick = this.cardholderContaining(this.cardholders,e);
    // //They clicked on a cardholder
    // if(cardholderClick != null) {
    //    //Make sure its empty
    //    if(cardholderClick.getCard() == null && this.selectedCard != null) {
    //       //Set in cardholder
    //       cardholderClick.setCard(this.selectedCard);
    //       //Remove from hand
    //       for(int i = 0; i < this.hand.size(); i++) {
    //          if(this.hand.get(i).getCard() == this.selectedCard) {
    //             this.hand.get(i).clearCard();
    //          }
    //       }
    //       //Clear selectedCard
    //       this.selectedCard = null;
    //    }
    // }
}

[Buggy Hunk]
} else if(clickedHolder != null && clickedHolder.isDestClickable()) {

[Patch]
} else if(clickedHolder != null && clickedHolder.isDestClickable() && this.selectedCardholder != null) {

[Demonstration 2]

[Buggy Method]
@Override
public Object visitStAssg(SCalcParser.StAssgContext ctx) {
    // Check to see that the symbol is already defined
    Symbol var = curScope.resolve(ctx.getChild(0).getText());
    if (var == null)
        throw new IllegalArgumentException("Variable not defined (" + ctx.getChild(1).getText() + ")");
    int val = (int) visit(ctx.getChild(2));
    valueTable.replace(var, val);
    return null;
}

[Buggy Hunk]
ctx.getChild(1).getText() + ")");

[Patch]
ctx.getChild(0).getText() + ")");

[Demonstration 3]

[Buggy Method]
public List<Series> createSeries() {
    List<Series> series = new ArrayList<>();
    //#1 serie
    Series seriePresidentCandidate = new Series();
    seriePresidentCandidate.setName("Lula");
    Object[] dataPresident1 = { 5, 20, 36, 10, 10, 20, 30, 40, 50, 60, 70, 80 };
    seriePresidentCandidate.setData(dataPresident1);
    seriePresidentCandidate.setType(Type.LINE);
    //#2 serie
    Series seriePresidentCandidate2 = new Series();
    seriePresidentCandidate2.setName("Bolsonaro");
    Object[] dataPresident2 = { 15, 25, 38, 1, 17, 2, 60, 80, 15, 25, 17, 59 };
    seriePresidentCandidate2.setData(dataPresident2);
    seriePresidentCandidat2e.setType(Type.LINE);
    //#3 serie
    Series seriePresidentCandidate3 = new Series();
    seriePresidentCandidate3.setName("Aécio");
    Object[] dataPresident3 = { 52, 2, 3, 50, 12, 12, 17, 80, 90, 16, 76, 79 };
    seriePresidentCandidate3.setData(dataPresident3);
    seriePresidentCandidate3.setType(Type.LINE);
    //Filling the list
    series.add(seriePresidentCandidate);
    series.add(seriePresidentCandidate2);
    series.add(seriePresidentCandidate3);
    return series;
}

[Buggy Hunk]
seriePresidentCandidat2e.setType(Type.LINE);

[Patch]
seriePresidentCandidate2.setType(Type.LINE);