[Demonstration 1]

[Buggy Method]
private boolean checkElementSeparator(Collection<AbstractConfigNode> nodes) {
    if (flavor == ConfigSyntax.JSON) {
        Token t = nextTokenIgnoringWhitespace(nodes);
        if (t == Tokens.COMMA) {
            nodes.add(new ConfigNodeSingleToken(t));
            return true;
        } else {
            putBack(t);
            return false;
        }
    } else {
        boolean sawSeparatorOrNewline = false;
        Token t = nextToken();
        while (true) {
            if (Tokens.isIgnoredWhitespace(t) || isUnquotedWhitespace(t)) {
                //do nothing
            } else if (Tokens.isNewline(t)) {
                sawSeparatorOrNewline = true;
                // we want to continue to also eat
                // a comma if there is one.
            } else if (t == Tokens.COMMA) {
                nodes.add(new ConfigNodeSingleToken(t));
                return true;
            } else {
                // non-newline-or-comma
                putBack(t);
                return sawSeparatorOrNewline;
            }
            nodes.add(new ConfigNodeSingleToken(t));
            t = nextToken();
        }
    }
}

[Buggy Hunk]
if (Tokens.isIgnoredWhitespace(t) || isUnquotedWhitespace(t)) {

[Patch]
if (Tokens.isIgnoredWhitespace(t) || isUnquotedWhitespace(t) || Tokens.isComment(t)) {

[Demonstration 2]

[Buggy Method]
protected String readTextContent(HttpEntity entity) throws IOException {
    try (BufferedReader reader = new BufferedReader(new InputStreamReader(entity.getContent()))) {
        StringBuilder sb = new StringBuilder();
        String line = reader.readLine();
        while (line != null) {
            sb.append(line);
            sb.append("\n");
            line = reader.readLine();
        }
        return sb.toString();
    } catch (IOException e) {
        throw e;
    }
}

[Buggy Hunk]
try (BufferedReader reader = new BufferedReader(new InputStreamReader(entity.getContent())))

[Patch]
try (BufferedReader reader = new BufferedReader(new InputStreamReader(entity.getContent(), "UTF-8")))

[Demonstration 3]

[Buggy Method]
public static void main(String[] args) throws Exception {
    HashMap<String, NewNancyCodesMetaline> newMap = NewNancyCodesMetaline.getMetaMap();
    for (int x = 1; x < NewRDPParserFileLine.TAXA_ARRAY.length; x++) {
        String level = NewRDPParserFileLine.TAXA_ARRAY[x];
        BufferedReader reader = new BufferedReader(new FileReader(new File(ConfigReader.getRachSachReanalysisDir() + File.separator + "rdpAnalysis" + File.separator + "sparseThreeColumn_" + level + "_AsColumns.txt")));
        File filteredFile = new File(ConfigReader.getRachSachReanalysisDir() + File.separator + "NancyCoHouse" + File.separator + "cohousingRun_" + level + "_AsColumns.txt");
        File logfilteredFile = new File(ConfigReader.getRachSachReanalysisDir() + File.separator + "NancyCoHouse" + File.separator + "cohousingRun_" + level + "_AsColumnsLogNormalized.txt");
        BufferedWriter writer = new BufferedWriter(new FileWriter(filteredFile));
        writer.write(reader.readLine() + "\n");
        for (String s = reader.readLine(); s != null; s = reader.readLine()) {
            String[] splits = s.split("\t");
            if (newMap.containsKey(splits[0].replaceAll("\"", ""))) {
                writer.write(reader.readLine() + "\n");
            }
        }
        writer.flush();
        writer.close();
        OtuWrapper wrapper = new OtuWrapper(filteredFile);
        wrapper.writeLoggedDataWithTaxaAsColumns(logfilteredFile);
    }
}

[Buggy Hunk]
writer.write( reader.readLine() + "\n" );

[Patch]
writer.write( s + "\n" );