code: public void startInterval(int firstIndex) {
          Object value = getCurrentValue();
          if (isOpen)
              throw new IllegalStateException("PathDetailsBuilder is already in an open state with value: " + currentDetail.getValue()
                      + " trying to open a new one with value: " + value);
  
          currentDetail = new PathDetail(value);
          currentDetail.setFirst(firstIndex);
          isOpen = true;
      }
docs: It is only possible to open one interval at a time. Calling <code>startInterval</code> when
  the interval is already open results in an Exception.
  
  @param firstIndex the index the PathDetail starts