code: @Override
    public Collection<Range<T>> rangesOverlapping(final Range<T> queryRange) {
      final ImmutableSet.Builder<Range<T>> ret = ImmutableSet.builder();
      for (final Range<T> range : ranges) {
        if (range.isConnected(queryRange) && !range.intersection(queryRange).isEmpty()) {
          ret.add(range);
        }
      }
      return ret.build();
    }
docs: Returns all {@link Range}s {@link Range#isConnected(Range)} to the {@code queryRange} for which
  {@link Range#isEmpty()} is false. Does not preserve multiplicity of {@link Range}s