Index: doc/user/user.tex
===================================================================
--- doc/user/user.tex	(revision d3950125f9b8e14c660f3f5da742e6ad404ee9a7)
+++ doc/user/user.tex	(revision 307a732f5fa4b97b19f405fc215fcd76f473e3a1)
@@ -11,6 +11,6 @@
 %% Created On       : Wed Apr  6 14:53:29 2016
 %% Last Modified By : Peter A. Buhr
-%% Last Modified On : Sat Jul  1 17:19:42 2017
-%% Update Count     : 2495
+%% Last Modified On : Sun Jul  2 09:49:56 2017
+%% Update Count     : 2503
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
@@ -2433,4 +2433,5 @@
 
 The goal of \CFA I/O is to simplify the common cases\index{I/O!common case}, while fully supporting polymorphism and user defined types in a consistent way.
+The approach combines ideas from \CC and Python.
 The \CFA header file for the I/O library is \Indexc{fstream}.
 
@@ -2458,14 +2459,14 @@
 \end{tabular}
 \end{quote2}
-The \CFA form has half as many characters as the \CC form, and is similar to \Index*{Python} I/O with respect to implicit separators.
-Similar simplification occurs for \Index{tuple} I/O, which prints all a tuple's values, each separated by ``\lstinline[showspaces=true]@, @''.
+The \CFA form has half the characters of the \CC form, and is similar to \Index*{Python} I/O with respect to implicit separators.
+Similar simplification occurs for \Index{tuple} I/O, which prints all tuple values separated by ``\lstinline[showspaces=true]@, @''.
 \begin{cfa}[mathescape=off,aboveskip=0pt,belowskip=0pt]
-[int, int] t1 = [1, 2], t2 = [3, 4];
+[int, [ int, int ] ] t1 = [ 1, [ 2, 3 ] ], t2 = [ 3, [ 4, 5 ] ];
 sout | t1 | t2 | endl;					§\C{// print tuples}§
 \end{cfa}
 \begin{cfa}[mathescape=off,showspaces=true,belowskip=0pt]
-1®, ®2®, ®3®, ®4
-\end{cfa}
-Finally, \CFA uses the logical-or operator for I/O because it is the lowest-priority overloadable operator, other than assignment.
+1®, ®2®, ®3 3®, ®4®, ®5
+\end{cfa}
+Finally, \CFA uses the logical-or operator for I/O as it is the lowest-priority overloadable operator, other than assignment.
 Therefore, fewer output expressions require parenthesis.
 \begin{quote2}
@@ -2660,6 +2661,6 @@
 	int x = 1, y = 2, z = 3;
 	sout | x | y | z | endl;
-	[int, int] t1 = [1, 2], t2 = [3, 4];
-	sout | t1 | t2 | endl;						// print tuple
+	[int, [ int, int ] ] t1 = [ 1, [ 2, 3 ] ], t2 = [ 3, [ 4, 5 ] ];
+	sout | t1 | t2 | endl;						// print tuples
 	sout | x * 3 | y + 1 | z << 2 | x == y | (x | y) | (x || y) | (x > z ? 1 : 2) | endl;
 	sout | 1 | 2 | 3 | endl;
