[Demonstration 1]

[Buggy Method]
private void readGenes(String geneFile) throws IOException {
    geneList = SequenceReader.readAll(geneFile, Alphabet.DNA());
    geneMap = new HashMap<String, Sequence>();
    for (Sequence gene : geneList) {
        geneMap.put(gene.getName(), gene);
    }
}

[Buggy Hunk]
private void readGenes(String geneFile) throws IOException{

[Patch]
public void readGenes(String geneFile) throws IOException{

[Demonstration 2]

[Buggy Method]
private void populateUsers(String dataFile) throws MetadataException, IOException {
    String line = null;
    int lineNum = 0;
    try {
        BufferedReader br = new BufferedReader(new FileReader(dataFile));
        while ((line = br.readLine()) != null) {
            lineNum++;
            LOGGER.debug("Line #" + lineNum + ": " + line);
            String[] cols = getColumns(line);
            if (cols == null)
                continue;
            Users users = new Users();
            users.setUsername(cols[0]);
            users.setPassword(cols[1]);
            if ("1".equals(cols[2]))
                cols[2] = "true";
            users.setEnabled(new Boolean(cols[2]));
            Object existing = session.get(users.getClass(), users.getUsername());
            if (existing == null) {
                session.save(users);
            }
        }
    } catch (MetadataException e) {
        LOGGER.error(inFile + dataFile + badLine + line);
        LOGGER.error(e.getMessage());
        throw new MetadataException(e);
    } catch (IOException e) {
        LOGGER.error(inFile + dataFile + badLine + line);
        LOGGER.error(e.getMessage());
        throw new IOException(e);
    }
}

[Buggy Hunk]
LOGGER.debug("Line #" + lineNum + ": " + line);

[Patch]
LOGGER.debug(lineH + lineNum + ": " + line);