@Override
    public boolean beginPath(final NestedTimerPath root, final TimerStatistics call) throws IOException {
        sb.append(getPre());
        if (call != null) {
            final boolean belowThreshold = call.getTotalNanos() < totalNanosThreshold;
            final boolean currentlySkippedLevelChanges = root.getLevel() != currentlySkippedLevel;
            if (isCurrentlySkipping() && (!belowThreshold || currentlySkippedLevelChanges)) {
                if (numCurrentlySkipped == 1 && lastRoot != null) {
                    renderCall(lastRoot, lastCall);
                } else {
                    renderCurrentlySkippedLine();
                }
            }
            if (belowThreshold) {
                if (currentlySkippedLevelChanges) {
                    // render something
                    numCurrentlySkipped = 1;
                } else {
                    numCurrentlySkipped += 1;
                }
                currentlySkippedLevel = root.getLevel();
                lastRoot = root;
                lastCall = call;
                return false; // skip rendering
            } else {
                numCurrentlySkipped = 0;
                currentlySkippedLevel = DEFAULT_CURRENTLY_SKIPPED_LEVEL;
            }

        }
        renderCall(root, call);
        lastRoot = root;
        lastCall = call;
        return true; // add content if applicable
    }