function pipeline( iterator ) {
		var iter;
		if ( !isIteratorLike( iterator ) ) {
			throw new TypeError( format( 'invalid argument. Must provide an iterator. Value: `%s`.', iterator ) );
		}
		iter = iterator;
		for ( i = 0; i < nFuncs-1; i++ ) {
			iter = f[ i ]( iter );
			if ( !isIteratorLike( iter ) ) {
				throw new TypeError( format( 'invalid argument. Each iterator function, except the last iterator function, within an iterator pipeline must return an iterator. Value: `%s`.', iter ) );
			}
		}
		return f[ nFuncs-1 ]( iter );
	}
Pipeline function.

@private
@param {Iterator} iterator - source iterator
@throws {TypeError} must provide an iterator
@throws {TypeError} each iterator function, except the last iterator function, within an iterator pipeline must return an iterator
@returns {(Iterator|*)} an iterator or pipeline result