[Demonstration 1]

[Buggy Method]
protected VPNode<T> getFartherNode() {
    return this.farther;
}

[Buggy Hunk]
protected VPNode<T> getFartherNode() {

[Patch]
public VPNode<T> getFartherNode() {

[Demonstration 2]

[Buggy Method]
@Override
public boolean canEnd(long time) {
    boolean itemCanEnd = super.canEnd(time);
    boolean containerCanEnd = items.size() == 0 || items.peekLast().getEnd() == -1 || items.peekLast().getEnd() < time;
    return itemCanEnd && containerCanEnd;
}

[Buggy Hunk]
boolean containerCanEnd = items.size() == 0 || items.peekLast().getEnd() == -1 ||items.peekLast().getEnd() < time;

[Patch]
boolean containerCanEnd = items.size() == 0 || items.peekLast().getEnd() == -1 ||items.peekLast().getEnd() <= time;

[Demonstration 3]

[Buggy Method]
private void testPatternGetOk(Pattern pattern, String mediaTypeOut) {
    System.out.println("testPatternGetOk");
    Response response = clientPattern.getPattern(pattern.getId(), mediaTypeOut);
    assertTrue(response.getStatus() == 200);
    try {
        Pattern patternNew = response.readEntity(new GenericType<Pattern>() {
        });
        assertNotNull(patternNew);
        assertTrue(pattern.compareWith(pattern));
    } catch (Exception e) {
        e.printStackTrace();
        fail("Cannot read for " + mediaTypeOut);
    }
}

[Buggy Hunk]
assertTrue(pattern.compareWith(pattern));

[Patch]
assertTrue(pattern.compareWith(patternNew));