[Demonstration 1]

[Buggy Method]
public void endGame(String playerName) {
    GUI.getUserButtonPressed(GameText.winnerText(playerName));
}

[Buggy Hunk]
GUI.getUserButtonPressed(GameText.winnerText(playerName));

[Patch]
GUI.getUserButtonPressed(GameText.winnerText(playerName),"X");

[Demonstration 2]

[Buggy Method]
@Override
public boolean equals(Object obj) {
    return (obj instanceof MVMaterial) && obj.equals((MVMaterial) obj);
}

[Buggy Hunk]
return (obj instanceof MVMaterial) && obj.equals( (MVMaterial)obj );

[Patch]
return (obj instanceof MVMaterial) && equalsMat( (MVMaterial)obj );

[Demonstration 3]

[Buggy Method]
@Override
public boolean equals(Object obj) {
    if (this == obj) {
        return true;
    }
    if (obj == null) {
        return false;
    }
    if (getClass() != obj.getClass()) {
        return false;
    }
    KeyChain other = (KeyChain) obj;
    if (keys == null) {
        if (other.keys != null) {
            return false;
        }
    } else {
        if (this.keys.size() != other.keys.size()) {
            return false;
        }
        for (int i = 0; i < this.keys.size(); i++) {
            if (this.keys.get(i) != other.keys.get(i)) {
                return false;
            }
        }
    }
    return true;
}

[Buggy Hunk]
if (this.keys.get(i) != other.keys.get(i)) {

[Patch]
if (!this.keys.get(i).equals(other.keys.get(i))) {