private final MultiText buildMultiText(final boolean first) {
		// set up a sequence where the next bunch of stuff is text.
		if (!first && newlineindent != null) {
			mtbuffer.append(newlineindent);
		}
		mtsourcesize = 0;
		do {
			if (mtsourcesize >= mtsource.length) {
				mtsource = ArrayCopy.copyOf(mtsource, mtsource.length * 2);
			}
			mtsource[mtsourcesize++] = pending;
			pending = content.hasNext() ? content.next() : null;
		} while (pending != null && isTextLike(pending));
		
		mtpostpad = pending != null;
		mtwasescape = fstack.getEscapeOutput();
		return holdingmt;
	}