[Demonstration 1]

[Buggy Method]
public static void main(String[] args) {
    Set<Integer> x = new HashSet<Integer>();
    x.add(1);
    x.add(2);
    x.add(5);
    Selector<Integer> oddSelector = new Selector<Integer>() {

        public boolean select(Integer n) {
            return ((n % 2) != 0);
        }
    };
    Set<Integer> y = concurrentFilter(x, oddSelector);
    for (Integer n : y) {
        System.out.println(n + " ");
    }
}

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

[Patch]
System.out.println(n);

[Demonstration 2]

[Buggy Method]
@Test
public void testMergeEntitiesWithDelete() {
    Set<DummyEntity> entitiesToMerge = new HashSet<>(Arrays.asList(e1Merge, e2Merge, e3Merge));
    mergeTool.mergeEntitiesWithDelete(entitiesToMerge);
    assertEquals(new HashSet<>(Arrays.asList(e1, e2, e4, e1New, e2New)), entitiesToMerge);
    for (DummyEntity e : entitiesToMerge) {
        if (e1.equals(e)) {
            assertSame("e1Merge is not same as e", e, e1Merge);
        } else if (e2.equals(e)) {
            assertSame("e1Merge is not same as e", e, e2Merge);
        }
    }
}

[Buggy Hunk]
mergeTool.mergeEntitiesWithDelete(entitiesToMerge);

[Patch]
assertEquals(Collections.singleton(3L), mergeTool.mergeEntitiesWithDelete(entitiesToMerge));

[Demonstration 3]

[Buggy Method]
public Set<Integer> getProteins() {
    return proteins;
}

[Buggy Hunk]
public Set<Integer> getProteins() {

[Patch]
public Collection<Integer> getProteins() {