[Demonstration 1]

[Buggy Method]
public static void solveProb(String input) {
    Annotation document = new Annotation(input);
    pipeline.annotate(document);
    List<CoreMap> sentences = document.get(SentencesAnnotation.class);
    sentenceNo = 1;
    String type = "";
    for (CoreMap sentence : sentences) {
        System.out.println(sentence);
        processSentence(sentence, sentenceNo);
        sentenceNo++;
    }
    System.out.println(allWords);
    System.out.println(allTenses);
    int counter = 1;
    for (CoreMap sentence : sentences) {
        String verbTense = "";
        for (CoreLabel token : sentence.get(TokensAnnotation.class)) {
            String word = token.get(TextAnnotation.class);
            String lemma;
            lemma = token.get(LemmaAnnotation.class);
            String pos = token.get(PartOfSpeechAnnotation.class);
            System.out.println(word + "|" + pos + "|" + lemma + "|" + token.get(NamedEntityTagAnnotation.class));
            if (pos.contains("VB") || pos.contains("RB") || pos.contains("JJR")) {
                if (pos.contains("VB")) {
                    verbTense = pos;
                }
                if (verbCategory.containsKey(lemma)) {
                    type = verbCategory.get(lemma);
                    System.out.println("Trigger " + type);
                    if (!pos.contains("VB")) {
                        String deletedTense = "";
                        for (String tense : allTenses) {
                            if (tense.contains(counter + "")) {
                                deletedTense = tense;
                            }
                        }
                        allTenses.remove(deletedTense);
                        if (verbTense.contains("VBD") || verbTense.contains("VBN"))
                            allTenses.add("[" + counter + "] past [" + lemma + "]");
                        else
                            allTenses.add("[" + counter + "] present [" + lemma + "]");
                        instantiateSchema(type, lemma, counter, verbTense);
                    } else
                        instantiateSchema(type, lemma, counter, pos);
                    //completeSchema(sentenceNo,questionSentence);
                }
            }
        }
        counter++;
    }
}

[Buggy Hunk]
System.out.println("Trigger "+type);

[Patch]
System.out.println("Trigger "+type+"|"+pos);

[Demonstration 2]

[Buggy Method]
private Set<String> getUnion(Set<String> s1, Set<String> s2) {
    Set<String> toReturn = new HashSet<String>();
    toReturn.addAll(s1);
    toReturn.addAll(s2);
    return toReturn;
}

[Buggy Hunk]
private Set<String> getUnion(Set<String> s1, Set<String> s2)

[Patch]
public Set<String> getUnion(Set<String> s1, Set<String> s2)

[Demonstration 3]

[Buggy Method]
@Override
public Collection<AbstractBuild> aggregateBuildsWithChanges(AbstractBuild build) {
    Plugin parameterizedTrigger = Jenkins.getInstance().getPlugin("parameterized-trigger");
    if (parameterizedTrigger == null) {
        return ImmutableList.of();
    }
    AbstractProject project = build.getProject();
    Set<AbstractProject<?, ?>> subProjects = Sets.newHashSet();
    Set<AbstractBuild> builds = Sets.newHashSet();
    if (project instanceof FreeStyleProject) {
        subProjects.addAll(getSubProjects((FreeStyleProject) project));
        builds.addAll(getTriggeredBuilds(build, subProjects));
    }
    return builds;
}

[Buggy Hunk]
Plugin parameterizedTrigger = Jenkins.getInstance().getPlugin("parameterized-trigger");

[Patch]
Plugin parameterizedTrigger = Util.getInstance().getPlugin("parameterized-trigger");