[Demonstration 1]

[Buggy Method]
public static void init() {
    if (initDone) {
        return;
    }
    com.mcmoddev.basemetals.util.Config.init();
    mapNameToClass(Names.ANVIL, BlockMMDAnvil.class);
    mapNameToClass(Names.BARS, BlockMMDBars.class);
    mapNameToClass(Names.BLOCK, BlockMMDBlock.class);
    mapNameToClass(Names.BOOKSHELF, BlockMMDBookshelf.class);
    mapNameToClass(Names.BUTTON, BlockMMDButton.class);
    mapNameToClass(Names.DOOR, BlockMMDDoor.class);
    mapNameToClass(Names.DOUBLE_SLAB, BlockMMDSlab.class);
    mapNameToClass(Names.FLOWER_POT, BlockMMDFlowerPot.class);
    mapNameToClass(Names.LADDER, BlockMMDLadder.class);
    mapNameToClass(Names.LEVER, BlockMMDLever.class);
    mapNameToClass(Names.PLATE, BlockMMDPlate.class);
    mapNameToClass(Names.PRESSURE_PLATE, BlockMMDPressurePlate.class);
    mapNameToClass(Names.SLAB, BlockMMDSlab.class);
    mapNameToClass(Names.STAIRS, BlockMMDStairs.class);
    mapNameToClass(Names.TRAPDOOR, BlockMMDTrapDoor.class);
    mapNameToClass(Names.TRIPWIRE_HOOK, BlockMMDTripWireHook.class);
    mapNameToClass(Names.WALL, BlockMMDWall.class);
    mapNameToClass(Names.FENCE, BlockMMDFence.class);
    mapNameToClass(Names.FENCE_GATE, BlockMMDFenceGate.class);
    mapNameToClass(Names.ENDORE, BlockMMDOre.class);
    mapNameToClass(Names.NETHERORE, BlockMMDNetherOre.class);
    mapNameToClass(Names.ENDORE, BlockMMDEndOre.class);
    mapNameToClass(Names.ORE, BlockMMDOre.class);
    mapNameToOredict(Names.ANVIL, null);
    mapNameToOredict(Names.BARS, Oredicts.BARS);
    mapNameToOredict(Names.BLOCK, Oredicts.BLOCK);
    mapNameToOredict(Names.BOOKSHELF, null);
    mapNameToOredict(Names.BUTTON, Oredicts.BUTTON);
    mapNameToOredict(Names.DOOR, null);
    mapNameToOredict(Names.DOUBLE_SLAB, null);
    mapNameToOredict(Names.FLOWER_POT, null);
    mapNameToOredict(Names.LADDER, null);
    mapNameToOredict(Names.LEVER, Oredicts.LEVER);
    mapNameToOredict(Names.PLATE, Oredicts.PLATE);
    mapNameToOredict(Names.PRESSURE_PLATE, null);
    mapNameToOredict(Names.SLAB, null);
    mapNameToOredict(Names.STAIRS, Oredicts.STAIRS);
    mapNameToOredict(Names.TRAPDOOR, Oredicts.TRAPDOOR);
    mapNameToOredict(Names.TRIPWIRE_HOOK, null);
    mapNameToOredict(Names.WALL, Oredicts.WALL);
    mapNameToOredict(Names.FENCE, null);
    mapNameToOredict(Names.FENCE_GATE, null);
    mapNameToOredict(Names.ORE, Oredicts.ORE);
    mapNameToOredict(Names.NETHERORE, Oredicts.ORE_NETHER);
    mapNameToOredict(Names.ENDORE, Oredicts.ORE_END);
    final String basics = "Basics";
    final String wall = "Wall";
    mapNameToEnabled(Names.ANVIL, Options.isThingEnabled("Anvil"));
    mapNameToEnabled(Names.BARS, Options.isThingEnabled("Bars"));
    mapNameToEnabled(Names.BLOCK, Options.isThingEnabled(basics));
    mapNameToEnabled(Names.BOOKSHELF, Options.isThingEnabled("Bookshelf"));
    mapNameToEnabled(Names.BUTTON, Options.isThingEnabled("Button"));
    mapNameToEnabled(Names.DOOR, Options.isThingEnabled("Door"));
    mapNameToEnabled(Names.DOUBLE_SLAB, Options.isThingEnabled("Slab"));
    mapNameToEnabled(Names.FLOWER_POT, Options.isThingEnabled("FlowerPot"));
    mapNameToEnabled(Names.LADDER, Options.isThingEnabled("Ladder"));
    mapNameToEnabled(Names.LEVER, Options.isThingEnabled("Lever"));
    mapNameToEnabled(Names.PLATE, Options.isThingEnabled("Plate"));
    mapNameToEnabled(Names.PRESSURE_PLATE, Options.isThingEnabled("PressurePlate"));
    mapNameToEnabled(Names.SLAB, Options.isThingEnabled("Slab"));
    mapNameToEnabled(Names.STAIRS, Options.isThingEnabled("Stairs"));
    mapNameToEnabled(Names.TRAPDOOR, Options.isThingEnabled("Trapdoor"));
    mapNameToEnabled(Names.TRIPWIRE_HOOK, Options.isThingEnabled("TripWire"));
    mapNameToEnabled(Names.WALL, Options.isThingEnabled(wall));
    mapNameToEnabled(Names.FENCE, Options.isThingEnabled(wall));
    mapNameToEnabled(Names.FENCE_GATE, Options.isThingEnabled(wall));
    mapNameToEnabled(Names.ORE, Options.isThingEnabled(basics));
    mapNameToEnabled(Names.NETHERORE, Options.isThingEnabled(basics));
    mapNameToEnabled(Names.ENDORE, Options.isThingEnabled(basics));
    Materials.init();
    ItemGroups.init();
    initDone = true;
}

[Buggy Hunk]
mapNameToClass(Names.DOUBLE_SLAB, BlockMMDSlab.class);

[Patch]
mapNameToClass(Names.DOUBLE_SLAB, BlockMMDDoubleSlab.class);

[Demonstration 2]

[Buggy Method]
public static ImmutableSet<PremiumListEntry> parentPremiumListEntriesOnRevision(Iterable<PremiumListEntry> entries, final Key<PremiumListRevision> revisionKey) {
    return FluentIterable.from(firstNonNull(entries, ImmutableSet.of())).transform(new Function<PremiumListEntry, PremiumListEntry>() {

        @Override
        public PremiumListEntry apply(PremiumListEntry entry) {
            return entry.asBuilder().setParent(revisionKey).build();
        }
    }).toSet();
}

[Buggy Hunk]
return FluentIterable.from(firstNonNull(entries, ImmutableSet.of()))

[Patch]
return FluentIterable.from(entries)

[Demonstration 3]

[Buggy Method]
protected ProbeTestClass getClassAnnotation(Description description) {
    return description.getMethod().getClass().getAnnotation(ProbeTestClass.class);
}

[Buggy Hunk]
return description.getMethod().getClass().getAnnotation(ProbeTestClass.class);

[Patch]
return description.getMethod().getDeclaringClass().getAnnotation(ProbeTestClass.class);