diff --git a/Doc/lib/libdecimal.tex b/Doc/lib/libdecimal.tex
index 6f5dc2a..68748f6 100644
--- a/Doc/lib/libdecimal.tex
+++ b/Doc/lib/libdecimal.tex
@@ -443,37 +443,34 @@
 \end{funcdesc}  
 
 Beginning with Python 2.5, you can also use the \keyword{with} statement
-to temporarily change the active context.
+and the \function{localcontext()} function to temporarily change the
+active context.
 
 \begin{funcdesc}{localcontext}{\optional{c}}
   Return a context manager that will set the current context for
   the active thread to a copy of \var{c} on entry to the with statement
-  and restore the previous context when exiting the with statement.
+  and restore the previous context when exiting the with statement. If
+  no context is specified, a copy of the current context is used.
 
   For example the following code increases the current decimal precision
-  by 2 places, performs a calculation, and then automatically restores
+  by 42 places, performs a calculation, and then automatically restores
   the previous context:
 \begin{verbatim}
     from __future__ import with_statement
     import decimal
 
     with decimal.localcontext() as ctx:
-        ctx.prec += 2   # add 2 more digits of precision
+        ctx.prec = 42   # Perform a high precision calculation
         s = calculate_something()
     s = +s  # Round the final result back to the default precision
 \end{verbatim}
+
+  The context that is held by the context manager and made active in the
+  body of the \keyword{with} statement is a \emph{copy} of the context
+  you provide to this function, so modifying its attributes doesn't
+  affect anything except that temporary copy.
 \end{funcdesc}
 
-The context that's active in the body of the \keyword{with} statement is
-a \emph{copy} of the context you provided to the \keyword{with}
-statement, so modifying its attributes doesn't affect anything except
-that temporary copy.
-
-You can use any decimal context in a \keyword{with} statement, but if
-you just want to make a temporary change to some aspect of the current
-context, it's easiest to just use \function{getcontext()} as shown
-above.
-
 New contexts can also be created using the \class{Context} constructor
 described below. In addition, the module provides three pre-made
 contexts:
