[Demonstration 1]

[Buggy Method]
public List<String> getLanguages() {
    return languages;
}

[Buggy Hunk]
return languages;

[Patch]
return languages != null ? languages : new ArrayList<String>();

[Demonstration 2]

[Buggy Method]
@Override
public void fetchLanguages(List<Language> languages) {
    LanguageAdapter adapter = new LanguageAdapter(languages, this);
    recyclerView.setLayoutManager(new LinearLayoutManager(this));
    recyclerView.setAdapter(adapter);
}

[Buggy Hunk]
LanguageAdapter adapter = new LanguageAdapter(languages, this);

[Patch]
LanguageAdapter adapter = new LanguageAdapter(languages, this, manager.readDescriptionFromPref());   // TODO: 31/07/17 Remove this sheet

[Demonstration 3]

[Buggy Method]
private static void printUserInformation() {
    user._printInventory(j, rootObjGrammar, rootObjWords);
    user._printLife(rootObjWords, j, 0, map.global_fin().y + 1);
    user._printMana(rootObjWords, j, 1, map.global_fin().y + 1);
    j.print(map.global_fin().y + 1, 2, JSONParsing.getTranslationWord("score", "N", rootObjWords) + ": " + Integer.toString(deepnessScore));
    j.print(map.global_fin().y + 1, 3, JSONParsing.getTranslationWord("level", "N", rootObjWords) + ": " + Integer.toString(user.getLevel()));
    j.print(map.global_fin().y + 1, 4, JSONParsing.getTranslationWord("experience", "N", rootObjWords) + ": " + Integer.toString(user.getExperience()) + "/" + user.getNextLevelExperience());
}

[Buggy Hunk]
j.print(map.global_fin().y + 1, 4, JSONParsing.getTranslationWord("experience", "N", rootObjWords) + ": " +

[Patch]
j.print(map.global_fin().y + 1, 4, "exp" + ": " +