code: def difference(self, *sets):
          
          cls = self.__class__
          if sets:
              other = set.union(*map(set, sets))
              items = (item for item in self if item not in other)
          else:
              items = self
          return cls(items)
docs: Returns all elements that are in this set but not the others.
  
          Example:
              >>> OrderedSet([1, 2, 3]).difference(OrderedSet([2]))
              OrderedSet([1, 3])
              >>> OrderedSet([1, 2, 3]).difference(OrderedSet([2]), OrderedSet([3]))
              OrderedSet([1])
              >>> OrderedSet([1, 2, 3]) - OrderedSet([2])
              OrderedSet([1, 3])
              >>> OrderedSet([1, 2, 3]).difference()
              OrderedSet([1, 2, 3])