code: function intersection(...iterables) {
    if (_.isEmpty(iterables)) return OrderedSet()
    let result = OrderedSet(iterables[0])
  
    for (let iterable of iterables.slice(1)) {
      result = result.intersect(iterable)
    }
    return result.toSeq()
  }
docs: Returns a sequence of unique values that are included in all given iterables
  The order of result values is determined by the order they occur in the first iterable.
  
  @static
  @memberOf _
  @category Iterable
  @param {...Iterable} [iterables] The iterables to inspect.
  @returns {Iterable} Returns the new iterable of intersecting values.
  @example
  
  _.intersection([2, 1], [2, 3])
  // => Seq [2]