printSpanTime(spanItem, mainItem, level) {
		const span = spanItem.span;
		const mainSpan = mainItem.span;
		const margin = 2 * 2;
		const w = (this.opts.width || 80) - margin;
		const gw = this.opts.gaugeWidth || 40;

		const time = span.duration == null ? "?" : humanize(span.duration);
		const indent = this.getSpanIndent(spanItem);
		const caption = this.getCaption(span);
		const info =
			kleur.grey(indent) +
			this.getAlignedTexts(caption, w - gw - 3 - time.length - 1 - indent.length) +
			" " +
			time;

		const startTime = span.startTime || mainSpan.startTime;
		const finishTime = span.finishTime || mainSpan.finishTime;

		let gstart =
			((startTime - mainSpan.startTime) / (mainSpan.finishTime - mainSpan.startTime)) * 100;
		let gstop =
			((finishTime - mainSpan.startTime) / (mainSpan.finishTime - mainSpan.startTime)) * 100;

		if (Number.isNaN(gstart) && Number.isNaN(gstop)) {
			gstart = 0;
			gstop = 100;
		}
		if (gstop > 100) gstop = 100;

		const c = this.getColor(span);
		this.drawLine(c(info + " " + this.drawGauge(gstart, gstop)));

		if (spanItem.children.length > 0)
			spanItem.children.forEach((spanID, idx) =>
				this.printSpanTime(this.spans[spanID], mainItem, level + 1, spanItem, {
					first: idx == 0,
					last: idx == spanItem.children.length - 1
				})
			);
	}
Print a span row

@param {Object} span
@param {Object} main