private void startMeasured(@NotNull CharSequence buffer, int startOffset, int endOffset, int initialState) {
    if (!LOG.isDebugEnabled()) {
      start(buffer, startOffset, endOffset, initialState);
      return;
    }
    long start = System.currentTimeMillis();
    start(buffer, startOffset, endOffset, initialState);
    long startDuration = System.currentTimeMillis() - start;
    if (startDuration > LEXER_START_THRESHOLD) {
      LOG.debug("Starting lexer took: ", startDuration,
                "; at ", startOffset, " - ", endOffset, "; state: ", initialState,
                "; text: ", StringUtil.shortenTextWithEllipsis(buffer.toString(), 1024, 500)
      );
    }
  }
private void startMeasured(@NotNull CharSequence buffer, int startOffset, int endOffset, int initialState)