code: public static List<Range<Long>> mismatches(final AlignmentPair alignmentPair) {
          checkNotNull(alignmentPair);
          List<Range<Long>> mismatches = new ArrayList<Range<Long>>();
          int mismatchStart = -1;
          for (int i = 1, length = alignmentPair.length() + 1; i < length; i++) {
              if (isMismatchSymbol(alignmentPair.symbolAt(i))) {
                  if (mismatchStart < 0) {
                      mismatchStart = i;
                  }
              }
              else {
                  if (mismatchStart > 0) {
                      // biojava coordinates are 1-based
                      mismatches.add(Range.closedOpen(Long.valueOf(mismatchStart - 1L), Long.valueOf(i - 1L)));
                      mismatchStart = -1;
                  }
              }
          }
          if (mismatchStart > 0) {
              mismatches.add(Range.closedOpen(Long.valueOf(mismatchStart - 1L), Long.valueOf(alignmentPair.length())));
          }
          return mismatches;
      }
docs: Return the alignment mismatches in the specified alignment pair as 0-based [closed, open) ranges.
  
  @param alignmentPair alignment pair, must not be null
  @return the alignment mismatches in the alignment pair as 0-based [closed, open) ranges