Revised the itertools quantifier recipes to match the performance of the
new builtins.
diff --git a/Doc/lib/libitertools.tex b/Doc/lib/libitertools.tex
index fbde69d..780ed55 100644
--- a/Doc/lib/libitertools.tex
+++ b/Doc/lib/libitertools.tex
@@ -461,26 +461,26 @@
     "Returns the nth item"
     return list(islice(iterable, n, n+1))
 
-def all(seq, pred=bool):
-    "Returns True if pred(x) is True for every element in the iterable"
+def all(seq, pred=None):
+    "Returns True if pred(x) is true for every element in the iterable"
     for elem in ifilterfalse(pred, seq):
         return False
     return True
 
-def any(seq, pred=bool):
-    "Returns True if pred(x) is True for at least one element in the iterable"
+def any(seq, pred=None):
+    "Returns True if pred(x) is true for at least one element in the iterable"
     for elem in ifilter(pred, seq):
         return True
     return False
 
-def no(seq, pred=bool):
-    "Returns True if pred(x) is False for every element in the iterable"
+def no(seq, pred=None):
+    "Returns True if pred(x) is false for every element in the iterable"
     for elem in ifilter(pred, seq):
         return False
     return True
 
-def quantify(seq, pred=bool):
-    "Count how many times the predicate is True in the sequence"
+def quantify(seq, pred=None):
+    "Count how many times the predicate is true in the sequence"
     return sum(imap(pred, seq))
 
 def padnone(seq):
diff --git a/Lib/test/test_itertools.py b/Lib/test/test_itertools.py
index becb3b2..577082b 100644
--- a/Lib/test/test_itertools.py
+++ b/Lib/test/test_itertools.py
@@ -799,26 +799,26 @@
 ...     "Returns the nth item"
 ...     return list(islice(iterable, n, n+1))
 
->>> def all(seq, pred=bool):
-...     "Returns True if pred(x) is True for every element in the iterable"
+>>> def all(seq, pred=None):
+...     "Returns True if pred(x) is true for every element in the iterable"
 ...     for elem in ifilterfalse(pred, seq):
 ...         return False
 ...     return True
 
->>> def any(seq, pred=bool):
-...     "Returns True if pred(x) is True for at least one element in the iterable"
+>>> def any(seq, pred=None):
+...     "Returns True if pred(x) is true for at least one element in the iterable"
 ...     for elem in ifilter(pred, seq):
 ...         return True
 ...     return False
 
->>> def no(seq, pred=bool):
-...     "Returns True if pred(x) is False for every element in the iterable"
+>>> def no(seq, pred=None):
+...     "Returns True if pred(x) is false for every element in the iterable"
 ...     for elem in ifilter(pred, seq):
 ...         return False
 ...     return True
 
->>> def quantify(seq, pred=bool):
-...     "Count how many times the predicate is True in the sequence"
+>>> def quantify(seq, pred=None):
+...     "Count how many times the predicate is true in the sequence"
 ...     return sum(imap(pred, seq))
 
 >>> def padnone(seq):