[Demonstration 1]

[Buggy Method]
@Override
public void onServiceConnected(ComponentName componentName, IBinder iBinder) {
    PlayerService.MyBinder myBinder = (PlayerService.MyBinder) service;
    mBoundService = myBinder.getService();
    mServiceBound = true;
}

[Buggy Hunk]
PlayerService.MyBinder myBinder = (PlayerService.MyBinder) service;

[Patch]
PlayerService.MyBinder myBinder = (PlayerService.MyBinder) iBinder;

[Demonstration 2]

[Buggy Method]
@Nullable
private FriendInfo authorizeRequestFrom(@Nullable String requesterEmail) {
    FriendsLoader friendsLoader = new FriendsLoader(this);
    List<FriendInfo> friendInfos = friendsLoader.loadInBackground();
    FriendInfo friend = null;
    for (FriendInfo friendInfo : friendInfos) {
        // TODO check normalized
        if (friendInfo.emails.contains(requesterEmail)) {
            friend = friendInfo;
            break;
        }
    }
    return friend;
}

[Buggy Hunk]
FriendsLoader friendsLoader = new FriendsLoader(this);

[Patch]
FriendsLoader friendsLoader = new FriendsLoader(context);

[Demonstration 3]

[Buggy Method]
@Test
public void shouldCreateNonAlarmWhenUndefinedErrorWithNoMarkerIsUsed() {
    String message = givenLoggingMessageWhichMatchesType(null);
    whenMessageIsLogged(null, message, null);
    assertThat(lastEntry.isAlarm(), is(false));
}

[Buggy Hunk]
assertThat(lastEntry.isAlarm(), is(false));

[Patch]
assertNull(lastEntry);