class_docstr: An OrderedSet is a custom MutableSet that remembers its order, so that
  every entry has an index that can be looked up.
  
  Example:
      >>> OrderedSet([1, 1, 2, 3, 2])
      OrderedSet([1, 2, 3])
class_docstr_tok: ["An","OrderedSet","is","a","custom","MutableSet","that","remembers","its","order",",","so","that","every","entry","has","an","index","that","can","be","looked","up",".","Example",":",">",">",">","OrderedSet","(","[","1",",","1",",","2",",","3",",","2","]",")","OrderedSet","(","[","1",",","2",",","3","]",")"]
docstr: Returns elements in common between all sets. Order is defined only
  by the first set.
  
  Example:
      >>> oset = OrderedSet.intersection(OrderedSet([0, 1, 2, 3]), [1, 2, 3])
      >>> print(oset)
      OrderedSet([1, 2, 3])
      >>> oset.intersection([2, 4, 5], [1, 2, 3, 4])
      OrderedSet([2])
      >>> oset.intersection()
      OrderedSet([1, 2, 3])
docstr_tok: ["Returns","elements","in","common","between","all","sets",".","Order","is","defined","only","by","the","first","set",".","Example",":",">",">",">","oset","=","OrderedSet.intersection","(","OrderedSet","(","[","0",",","1",",","2",",","3","]",")",",","[","1",",","2",",","3","]",")",">",">",">","print","(","oset",")","OrderedSet","(","[","1",",","2",",","3","]",")",">",">",">","oset.intersection","(","[","2",",","4",",","5","]",",","[","1",",","2",",","3",",","4","]",")","OrderedSet","(","[","2","]",")",">",">",">","oset.intersection","(",")","OrderedSet","(","[","1",",","2",",","3","]",")"]
code: def intersection(self, *sets):
      """
      Returns elements in common between all sets. Order is defined only
      by the first set.
  
      Example:
          >>> oset = OrderedSet.intersection(OrderedSet([0, 1, 2, 3]), [1, 2, 3])
          >>> print(oset)
          OrderedSet([1, 2, 3])
          >>> oset.intersection([2, 4, 5], [1, 2, 3, 4])
          OrderedSet([2])
          >>> oset.intersection()
          OrderedSet([1, 2, 3])
      """
      cls = (
          self.__class__ if isinstance(self, OrderedSet) else OrderedSet
      )
      if sets:
          common = set.intersection(*map(set, sets))
          items = (item for item in self if item in common)
      else:
          items = self
      return cls(items)
  
imports: import itertools
  from collections import deque
label_desc: Use image node_id 20 for calling the OrderedSet obj's underlying member method code with example usage: obj.intersection() and returns: cls