Sped union by a factor of 3-4.
diff --git a/Lib/sets.py b/Lib/sets.py
index e88e845..10138fc 100644
--- a/Lib/sets.py
+++ b/Lib/sets.py
@@ -154,7 +154,8 @@
         """
         if not isinstance(other, BaseSet):
             return NotImplemented
-        result = self.__class__(self._data)
+        result = self.__class__()
+        result._data = self._data.copy()
         result._data.update(other._data)
         return result