@Override public boolean passesFilter(SAMRecord bsRead) { // passes filter if read is not mapped if (bsRead.getReadUnmappedFlag()) return true; // if valid mapping orientation not required // read passes filter if (this.getFilterValue() == false) return true; // else return true if read has valid BS mapping orientation return bsRead.getCharacterAttribute("BO") == 'V'; }