code: def symmetric_difference_update(self, other):
          # type: (Iterable[Any]) -> _BaseSet
          
          intersect = self.intersection(other)
          self.remove(*intersect)
          for elem in set(other).difference(intersect):
              self.add(elem)
          return self
docs: Update the TerminalSet.
          Keep elements from self and other, but discard elements that are in both.
          :param other: Iterable object with elements to compare with.
          :return: Current instance with updated state.