Use get() instead of pop() for the optimized version of _replace().
diff --git a/Lib/collections.py b/Lib/collections.py
index c19821b..099cdd6 100644
--- a/Lib/collections.py
+++ b/Lib/collections.py
@@ -130,7 +130,7 @@
         'Point class with optimized _make() and _replace() without error-checking'
         _make = classmethod(tuple.__new__)
         def _replace(self, _map=map, **kwds):
-            return self._make(_map(kwds.pop, ('x', 'y'), self))
+            return self._make(_map(kwds.get, ('x', 'y'), self))
 
     print Point(11, 22)._replace(x=100)