diff --git a/Lib/collections.py b/Lib/collections.py
index fb9464f..9381f51 100644
--- a/Lib/collections.py
+++ b/Lib/collections.py
@@ -101,10 +101,9 @@
     def __reduce__(self):
         'Return state information for pickling'
         items = [[k, self[k]] for k in self]
-        tmp = self.__map, self.__root, self.__in_repr
-        del self.__map, self.__root, self.__in_repr
         inst_dict = vars(self).copy()
-        self.__map, self.__root, self.__in_repr = tmp
+        for k in vars(self.__class__()):
+            inst_dict.pop(k, None)
         if inst_dict:
             return (self.__class__, (items,), inst_dict)
         return self.__class__, (items,)
