[Demonstration 1]

[Buggy Method]
@EventHandler
public void onInventoryClick(InventoryClickEvent event) {
    if (!(event.getWhoClicked() instanceof Player))
        return;
    Player player = (Player) event.getWhoClicked();
    Inventory inventory = event.getClickedInventory();
    ItemStack item = event.getCurrentItem();
    try {
        Settings settings = Settings.getSettings(this.player);
        if (!player.getUniqueId().equals(this.player))
            return;
        if (!inventory.equals(this.inventory))
            return;
        if (item == null || !item.hasItemMeta() || !item.getItemMeta().hasDisplayName())
            return;
        String name = item.getItemMeta().getDisplayName();
        if (name.startsWith("§8⫸ §7Player visibility")) {
            settings.setPlayers(!settings.getPlayers());
            PlayersManager.updatePlayers(player, settings);
        } else if (name.startsWith("§8⫸ §7Chat visibility")) {
            settings.setChat(!settings.getChat());
        } else if (name.startsWith("§8⫸ §7Mentions alert")) {
            settings.setMentions(!settings.getMentions());
        } else if (name.startsWith("§8⫸ §7Private messages")) {
            settings.setMessages(!settings.getMessages());
        } else
            return;
        player.playSound(player.getLocation(), Sound.ORB_PICKUP, 1, 1);
        update();
    } catch (SQLException exception) {
        return;
    }
}

[Buggy Hunk]
if (!inventory.equals(this.inventory)) return;

[Patch]
if (inventory == null || !inventory.equals(this.inventory)) return;

[Demonstration 2]

[Buggy Method]
@Test
public void testFindTempLessThan() {
    double[] temperatureSeries = { 1.0, -5.0, 1.0, 5.0, -20.5, 13.5, 2.0, 0.0, 0.5, 11.3, 10.0, -10.0, 15.0, 16.0, -17.0, 29.0, -88.0, -19.0, 13.5, 14.1, -11.0, -15.0, 29.0, -23.4, -2.7 };
    TemperatureSeriesAnalysis seriesAnalysis = new TemperatureSeriesAnalysis(temperatureSeries);
    double[] expResult = { 1.0, -5.0, 1.0, 5.0, -20.5, 13.5, 2.0, 0.0, 0.5, 11.3, 10.0, -10.0, -17.0, -88.0, -19.0, 13.5, 14.1, -11.0, -15.0, -23.4, -2.7 };
    double[] actualResult = seriesAnalysis.findTempsLessThen(14.3);
    assertEquals(expResult.length, actualResult.length);
    for (int i = 0; i < expResult.length; ++i) {
        assertEquals(expResult[i], actualResult[i], 0.00001);
    }
}

[Buggy Hunk]
double[] actualResult = seriesAnalysis.findTempsLessThen(14.3);

[Patch]
double[] actualResult = seriesAnalysis.findTempsLessThan(14.3);

[Demonstration 3]

[Buggy Method]
public void placeSettlement(VertexLocation vertLoc) {
    //if current state is set up then I can do this.
    try {
        //System.out.println("my current state is this "+ModelFacade.facadeCurrentGame.currentgame.getCurrentState().toString());
    } catch (Exception e) {
        e.printStackTrace();
    }
    boolean insert = false;
    if (ModelFacade.facadeCurrentGame.currentgame.getCurrentState().equals(State.SetUpState)) {
        insert = true;
    }
    int test;
    Index currentTurn = ModelFacade.facadeCurrentGame.currentgame.getModel().getTurntracker().getCurrentTurn();
    Index idOfCurrentPlayer = null;
    // I think this is returning their player index instead of their player ID.
    for (Player cur : ModelFacade.facadeCurrentGame.currentgame.getMyplayers().values()) {
        if (cur.getPlayerIndex().equals(currentTurn)) {
            idOfCurrentPlayer = cur.getPlayerID();
        }
    }
    if (idOfCurrentPlayer == null) {
        return;
    }
    // this might have fixed some huge things!!
    Player player = ModelFacade.facadeCurrentGame.currentgame.getMyplayers().get(idOfCurrentPlayer);
    test = player.getPlayerIndex().getNumber();
    //System.out.println("this is my PLayer Index  to try to test with "+test);
    ModelFacade.facadeCurrentGame.getServer().buildSettlement("buildSettlement", test, true, vertLoc);
}

[Buggy Hunk]
ModelFacade.facadeCurrentGame.getServer().buildSettlement("buildSettlement",test , true, vertLoc);

[Patch]
ModelFacade.facadeCurrentGame.getServer().buildSettlement("buildSettlement",test , insert, vertLoc);