+ * Adds one ore more [start, end] ranges to the results (unless already added
+ * to avoid duplicates). This method only increments the match count by 1.
+ * This is for the case where a match spans ignored hidden residues - it is
+ * formally two or more contiguous matches, but only counted as one match.
+ *
+ * @param seq
+ * @param positions
+ */
+ void addResult(SequenceI seq, int[] positions);
+
+
+ /**
+ * Adds the given start/end region to this search result. If sequence already
+ * has a search result and the range is adjacent to already highlighted
+ * positions, they will be merged
+ *
+ * @param sequence
+ * @param start
+ * @param end
+ * @return true if an existing range was updated with this one
+ */
+ boolean appendResult(SequenceI sequence, int start, int end);
+
+ /**