diff --git a/Makefile b/Makefile
index 80bd3de..d162ff1 100644
--- a/Makefile
+++ b/Makefile
@@ -16,7 +16,7 @@ LSP=${SPD}/lsp
 #GCLVERSION=gcl-2.6.7
 #GCLVERSION=gcl-2.6.8pre
 #GCLVERSION=gcl-2.6.8pre2
-GCLVERSION=gcl-2.6.8pre3
+GCLVERSION=gcl-2.6.8pre3 
 AWK=gawk
 GCLDIR=${LSP}/${GCLVERSION}
 SRC=${SPD}/src
@@ -24,6 +24,7 @@ INT=${SPD}/int
 OBJ=${SPD}/obj
 MNT=${SPD}/mnt
 ZIPS=${SPD}/zips
+BOOKS=${SPD}/books
 TMP=${OBJ}/tmp
 SPADBIN=${MNT}/${SYS}/bin
 INC=${SPD}/src/include
@@ -35,6 +36,7 @@ TANGLE=${SPADBIN}/lib/notangle
 WEAVE=${SPADBIN}/lib/noweave
 NOISE="-o ${TMP}/trace"
 PATCH=patch
+UNCOMPRESS=gunzip
 
 PART=	cprogs
 SUBPART= everything
@@ -45,7 +47,7 @@ ENV= SPAD=${SPAD} SYS=${SYS} SPD=${SPD} LSP=${LSP} GCLDIR=${GCLDIR} \
      SPADBIN=${SPADBIN} INC=${INC} CCLBASE=${CCLBASE} PART=${PART} \
      SUBPART=${SUBPART} NOISE=${NOISE} GCLVERSION=${GCLVERSION} \
      TANGLE=${TANGLE} VERSION=${VERSION} PATCH=${PATCH} DOCUMENT=${DOCUMENT} \
-     WEAVE=${WEAVE}
+     WEAVE=${WEAVE} UNCOMPRESS=${UNCOMPRESS} BOOKS=${BOOKS}
 
 all: noweb ${MNT}/${SYS}/bin/document
 	@ echo 1 making a ${SYS} system, PART=${PART} SUBPART=${SUBPART}
@@ -115,7 +117,7 @@ install:
 	@echo export AXIOM >>${COMMAND}
 	@echo PATH='$${AXIOM}/bin':'$${PATH}' >>${COMMAND}
 	@echo export PATH >>${COMMAND}
-	@cat ${SRC}/etc/axiom >>${COMMAND}
+	@cat ${INT}/sman/axiom >>${COMMAND}
 	@chmod +x ${COMMAND}
 	@echo 79 Axiom installation finished.
 	@echo
@@ -148,3 +150,4 @@ clean:
 	@ for i in `find src -name "Makefile"` ; do rm -f $$i ; done
 	@ for i in `find src -name "Makefile.dvi"` ; do rm -f $$i ; done
 	@ rm -f lastBuildDate
+
diff --git a/Makefile.pamphlet b/Makefile.pamphlet
index 5db418b..5319258 100644
--- a/Makefile.pamphlet
+++ b/Makefile.pamphlet
@@ -305,6 +305,7 @@ INT=${SPD}/int
 OBJ=${SPD}/obj
 MNT=${SPD}/mnt
 ZIPS=${SPD}/zips
+BOOKS=${SPD}/books
 TMP=${OBJ}/tmp
 SPADBIN=${MNT}/${SYS}/bin
 INC=${SPD}/src/include
@@ -325,7 +326,7 @@ ENV= SPAD=${SPAD} SYS=${SYS} SPD=${SPD} LSP=${LSP} GCLDIR=${GCLDIR} \
      SPADBIN=${SPADBIN} INC=${INC} CCLBASE=${CCLBASE} PART=${PART} \
      SUBPART=${SUBPART} NOISE=${NOISE} GCLVERSION=${GCLVERSION} \
      TANGLE=${TANGLE} VERSION=${VERSION} PATCH=${PATCH} DOCUMENT=${DOCUMENT} \
-     WEAVE=${WEAVE} UNCOMPRESS=${UNCOMPRESS}
+     WEAVE=${WEAVE} UNCOMPRESS=${UNCOMPRESS} BOOKS=${BOOKS}
 
 @
 \subsection{rootdirs}
diff --git a/books/bookvol7.pamphlet b/books/bookvol7.pamphlet
index ba008bc..6e2093e 100644
--- a/books/bookvol7.pamphlet
+++ b/books/bookvol7.pamphlet
@@ -337,9 +337,9 @@ Usage: htadd [-s|-l|-f db-directory] [-d|-n] filenames
   \axiomSyntax{()}
   \axiomType{AbelianMonoid}
   
-  \begin{array}{ccl} ... \end{array}
+  begin{array}{ccl} ... \end{array}
 
-  \begin{page}{AlgebraPage}{Abstract Algebra} 
+  begin{page}{AlgebraPage}{Abstract Algebra} 
      ... 
   \end{page}
 
@@ -349,35 +349,36 @@ Usage: htadd [-s|-l|-f db-directory] [-d|-n] filenames
   \baselineskip
   \beep
 
-  \begin{figXmpLines} ... \end{figXmpLines}
+  (Note: all begin and end items should be prefixed with a backslash)
+  begin{figXmpLines} ... end{figXmpLines}
 
-  \begin{figure}[htbp] ... \end{figure}
+  begin{figure}[htbp] ... end{figure}
 
   \beginImportant ... \endImportant
 
-  \begin{items}[how wide am I] ... \enditems
+  begin{items}[how wide am I] ... end{items}
 
-  \begin{paste}{AssociationListXmpPageFull1}{AssociationListXmpPageEmpty1}
+  begin{paste}{AssociationListXmpPageFull1}{AssociationListXmpPageEmpty1}
      ... 
-  \end{paste}
+  end{paste}
 
-  \begin{patch}{AssociationListXmpPagePatch1}  ... \end{patch}
+  begin{patch}{AssociationListXmpPagePatch1}  ... end{patch}
 
-  \begin{picture}(183,252)(-125,0) ... \end{picture}
+  begin{picture}(183,252)(-125,0) ... end{picture}
 
-  \begin{quotation} ... \end{quotation}
+  begin{quotation} ... end{quotation}
 
-  \begin{scroll} ... \end{scroll}
+  begin{scroll} ... end{scroll}
 
-  \begin{spadsrc} ... \end{spadsrc}
+  begin{spadsrc} ... end{spadsrc}
 
-  \begin{tabular}{ccc} ... \end{tabular}
+  begin{tabular}{ccc} ... end{tabular}
 
-  \begin{texonly} ... \end{texonly}
+  begin{texonly} ... end{texonly}
 
-  \begin{verbatim} ... \end {verbatim}
+  begin{verbatim} ... end {verbatim}
 
-  \begin{xmpLines} ... \end{xmpLines}
+  begin{xmpLines} ... end{xmpLines}
 
   \begingroup ... \endgroup
   \beginitems ... \enditems
diff --git a/books/tangle.lisp b/books/tangle.lisp
index 0f1f29b..d2d53f6 100644
--- a/books/tangle.lisp
+++ b/books/tangle.lisp
@@ -274,14 +274,13 @@
 
 (defun ischunk-latex (line)
  "Find chunks delimited by latex syntax"
- (let ((len (length line)) 
-       (mark (search "chunk" line))
+ (let ((mark (search "chunk" line))      ; is this a line we care about?
        (point 0)
-       name preline postline
-       (beginstring "\\begin{chunk}{")
+       name 
+       (beginstring "\\begin{chunk}{")   ; this is the define marker string
        beginlength
-       (endstring "\end{chunk}")
-       (referstring "\getchunk{")
+       (endstring "\end{chunk}")         ; this is the end marker string
+       (referstring "\getchunk{")        ; this is the refer string
        referlength)
   (setq beginlength (length beginstring))
   (setq referlength (length referstring))
diff --git a/changelog b/changelog
index 48ca34d..af426b5 100644
--- a/changelog
+++ b/changelog
@@ -1,3 +1,16 @@
+20090501 tpd src/axiom-website/patches.html 20090501.01.tpd.patch
+20090501 tpd src/input/*.input modified to use latex tangle
+20090501 tpd src/scripts/tex/axiom.sty add chunk environment
+20090501 tpd src/doc/axiom.sty add chunk environment
+20090501 tpd src/input/Makefile change input files to latex tangle
+20090501 tpd lsp/Makefile build tangle into the lisp image
+20090501 tpd books/bookvol7 fixup verbatim breakage
+20090501 tpd books/tangle.lisp remove unused variables
+20090501 tpd src/interp/sys-pkg.lisp import user::tangle to boot pkg
+20090501 tpd src/interp/Makefile gclweb removed
+20090501 tpd src/interp/gclweb.lisp removed
+20090501 tpd src/interp/debugsys.lisp remove gclweb
+20090501 tpd Makefile add BOOKS environment shell variable
 20090428 tpd src/axiom-website/patches.html 20090428.01.tpd.patch
 20090428 tpd src/interp/util.lisp remove autoload properites for apply
 20090428 tpd add src/interp/Makefile rewrite apply.boot to apply.lisp
diff --git a/lsp/Makefile.pamphlet b/lsp/Makefile.pamphlet
index 6bdbf8d..668e575 100644
--- a/lsp/Makefile.pamphlet
+++ b/lsp/Makefile.pamphlet
@@ -628,6 +628,13 @@ default this code into the image so it is always avaiable.
 The [[./configure]] command takes a few options for building GCL.
 These need to be changed for various systems so we make these into a
 variable and move them up to the top level Makefile.
+
+Here we use the newly build saved\_gcl lisp image to build our lisp image.
+Next we use this lisp image to compile our tangle function.
+Next we load the tangle function into a clean lisp image.
+Finally move the tangle lisp to the named lisp image.
+This means that all other lisp derived images will know how to tangle.
+
 <<gclConfigureMake>>=
 	@(cd ${GCLVERSION} ; \
 	./configure ${GCLOPTS} ; \
@@ -635,6 +642,15 @@ variable and move them up to the top level Makefile.
 	echo '(progn (load "cmpnew/gcl_collectfn.lsp")' \
          '(load "lsp/sys-proclaim.lisp") (compiler::emit-fn t)' \
          '(system::save-system "${OUT}/lisp"))' | unixport/saved_gcl )
+	@(cd ${GCLVERSION} ; \
+          cp ${BOOKS}/tangle.lisp . ; \
+	  echo '(compile-file "tangle.lisp")' | ${OUT}/lisp )
+	@(cd ${GCLVERSION} ; \
+	  echo '(progn (load "tangle.o")' \
+                 ' (system::save-system "${OUT}/tangle"))' | ${OUT}/lisp )
+	@mv ${OUT}/tangle ${OUT}/lisp 
+	@echo 9999 lisp tangle version created
+           
 @
 GCL 2.5.2 changes are due to David Mentre (david.mentre@wanadoo.fr).
 The key problem to solve is that 2.5.2 uses the common lisp 2.0 standard.
diff --git a/src/axiom-website/patches.html b/src/axiom-website/patches.html
index 5830890..3b389cd 100644
--- a/src/axiom-website/patches.html
+++ b/src/axiom-website/patches.html
@@ -1112,5 +1112,7 @@ parsing.lisp consolidate parsing, remove autoload <br/>
 tangle.lisp common lisp literate tangle function <br/>
 <a href="patches/20090428.01.tpd.patch">20090428.01.tpd.patch</a>
 apply.boot removed, rewritten into lisp, not autoloaded <br/>
+<a href="patches/20090501.01.tpd.patch">20090501.01.tpd.patch</a>
+*.input now uses latex tangle <br/>
  </body>
 </html>
diff --git a/src/doc/axiom.sty.pamphlet b/src/doc/axiom.sty.pamphlet
index a8ffdba..8ef14dc 100644
--- a/src/doc/axiom.sty.pamphlet
+++ b/src/doc/axiom.sty.pamphlet
@@ -1,4 +1,3 @@
-% -*- mode: Noweb; noweb-code-mode: tex-mode -*-
 \documentclass[twoside]{article}
 \usepackage{noweb}
 \pagestyle{noweb}
@@ -29,7 +28,6 @@ This file contains both plain {\TeX} and {\LaTeX} support:
 @
 \section{Latex Chunk support}
 This is the chunk environment that replaces the use of web-like tools
-The alltt standard package ships with latex
 
 \begin{verbatim}
 To use the command you would write
@@ -38,28 +36,72 @@ To use the command you would write
    \end{chunk}
 
  This version prints 
-   @<<some random string>>=
+                    --- some random string ---
    random code to be verbatim formatted
-   @
+                    --------------------------
 \end{verbatim}
 
+%%% The verbatim package quotes everything within its grasp and is used to
+%%% hide and quote the source code during latex formatting. The verbatim
+%%% environment is built in but the package form lets us use it in our
+%%% chunk environment and it lets us change the font.
+%%%
 <<axiom.sty>>=
+\usepackage{verbatim}
 
-\usepackage{alltt}
+@
+%%% 
+%%% Make the verbatim font smaller
+%%% Note that we have to temporarily change the '@' to be just a character
+%%% because the \verbatim@font name uses it as a character
+%%%
+<<axiom.sty>>=
+\chardef\atcode=\catcode`\@
+\catcode`\@=11
+\renewcommand{\verbatim@font}{\ttfamily\small}
+\catcode`\@=\atcode
 
+@
+%%% This declares a new environment named ``chunk'' which has one
+%%% argument that is the name of the chunk. All code needs to live
+%%% between the \begin{chunk}{name} and the \end{chunk}
+%%% The ``name'' is used to define the chunk.
+%%% Reuse of the same chunk name later concatenates the chunks
+
+%%% For those of you who can't read latex this says:
+%%% Make a new environment named chunk with one argument
+%%% The first block is the code for the \begin{chunk}{name}
+%%% The second block is the code for the \end{chunk}
+%%% The % is the latex comment character
+
+%%% We have two alternate markers, a lightweight one using dashes
+%%% and a heavyweight one using the \begin and \end syntax
+%%% You can choose either one by changing the comment char in column 1
+ 
+<<axiom.sty>>=
 \newenvironment{chunk}[1]{%   we need the chunkname as an argument
-\noindent%                    make sure we are in column 1
-{\small $@<<${#1}$>>=$}%       @<<some random string>>=
-\begin{alltt}%                use the verbatim
-\small}%                      with a small font
-{\end{alltt}%                 the end{chunk} ends the verbatim
-\par{}%                       we add a newline
-\noindent{}%                  start in column 1
-@%                            put an @
-\par%                         and a newline
-\normalsize}%                 and return to the rest of the document
+{\ }\newline\noindent%                    make sure we are in column 1
+%{\small $\backslash{}$begin\{chunk\}\{{\bf #1}\}}% alternate begin mark
+\hbox{\hskip 2.0cm}{\bf --- #1 ---}%      mark the beginning
+\verbatim}%                               say exactly what we see
+{\endverbatim%                            process \end{chunk}
+\par{}%                                   we add a newline
+\noindent{}%                              start in column 1
+\hbox{\hskip 2.0cm}{\bf ----------}%      mark the end
+%$\backslash{}$end\{chunk\}%              alternate end mark (commented)
+\par%                                     and a newline
+\normalsize\noindent}%                    and return to the document
 
 @
+%%% This declares the place where we want to expand a chunk
+
+<<axiom.sty>>=
+\providecommand{\getchunk}[1]{%
+\noindent%
+{\small $\backslash{}$begin\{chunk\}\{{\bf #1}\}}}% mark the reference
+
+@
+
 \section{Basic {\TeX} support for {\tt Axiom}}
 
 This basic code is used for both {\TeX} and {\LaTeX}.
diff --git a/src/input/Makefile.pamphlet b/src/input/Makefile.pamphlet
index 4a823b5..536385f 100644
--- a/src/input/Makefile.pamphlet
+++ b/src/input/Makefile.pamphlet
@@ -57,10 +57,13 @@ ${OUT}/%.input: ${MID}/%.input
 
 .PRECIOUS: ${MID}/%.input
 
+LISPTANGLE=${OBJ}/${SYS}/bin/lisp
+
 ${MID}/%.input: ${IN}/%.input.pamphlet
 	@ echo generic 11 making ${MID}/$*.input from ${IN}/$*.input.pamphlet
 	@(cd ${MID} ; \
-	  ${TANGLE} ${IN}/$*.input.pamphlet >$*.input )
+          echo '(tangle "${IN}/$*.input.pamphlet" "*" "$*.input")' | \
+          ${LISPTANGLE} )
 
 ${OUT}/%.as: ${MID}/%.as
 	@echo generic 12 making ${OUT}/$*.as from ${MID}/$*.as
@@ -71,15 +74,18 @@ ${MID}/%.as: ${IN}/%.as.pamphlet
 	@(cd ${MID} ; \
 	  ${TANGLE} ${IN}/$*.as.pamphlet >$*.as)
 
-${DOC}/%.input.dvi: ${IN}/%.input.pamphlet 
+${DOC}/axiom.sty:
+	@echo generic 14a making ${DOC}/axiom.sty from \
+            ${SRC}/scripts/tex/axiom.sty
+	@cp ${SRC}/scripts/tex/axiom.sty ${DOC}
+
+${DOC}/%.input.dvi: ${IN}/%.input.pamphlet ${DOC}/axiom.sty
 	@ echo generic 14 making ${DOC}/$*.input.dvi from \
                ${IN}/$*.input.pamphlet
 	@ (cd ${DOC} ; \
 	cp ${IN}/$*.input.pamphlet ${DOC} ; \
-	${DOCUMENT} ${NOISE} $*.input ; \
-	rm -f ${DOC}/$*.input.pamphlet ; \
-	rm -f ${DOC}/$*.input.tex ; \
-	rm -f ${DOC}/$*.input )
+	latex $*.input.pamphlet ; \
+	rm -f ${DOC}/$*.input.pamphlet )
 
 ${DOC}/%.as.dvi: ${IN}/%.as.pamphlet 
 	@ echo generic 15 making ${DOC}/$*.as.dvi from ${IN}/$*.as.pamphlet
@@ -386,6 +392,8 @@ IN=     ${SRC}/input
 MID=	${INT}/input
 TMPFN:=$(shell echo $$RANDOM)
 
+LISPTANGLE=${OBJ}/${SYS}/bin/lisp
+
 all: ${OUTS} ${REGRES} 
 	@ echo 0 starting algebra regression testing
 	@ (cd ${MID} ; \
@@ -397,7 +405,8 @@ all: ${OUTS} ${REGRES}
 %.input: ${IN}/%.input.pamphlet
 	@ echo generic 16 making ${MID}/$*.input from ${IN}/$*.input.pamphlet
 	@(cd ${MID} ; \
-	  ${TANGLE} ${IN}/$*.input.pamphlet >$*.input )
+         echo '(tangle "${IN}/$*.input.pamphlet" "*" "$*.input")' | \
+	  ${LISPTANGLE} )
 
 @
 The curious use of {\tt egrep} in the pipeline is to remove the
diff --git a/src/input/algaggr.input.pamphlet b/src/input/algaggr.input.pamphlet
index 85a9143..cd8fc87 100644
--- a/src/input/algaggr.input.pamphlet
+++ b/src/input/algaggr.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool algaggr.output
 )set message test on
@@ -246,7 +246,7 @@ union(sl,sm)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/algbrbf.input.pamphlet b/src/input/algbrbf.input.pamphlet
index 4924367..6a07c13 100644
--- a/src/input/algbrbf.input.pamphlet
+++ b/src/input/algbrbf.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool algbrbf.output
 )set message test on
@@ -134,7 +134,7 @@ numeric(%pi, 500)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/algfacob.input.pamphlet b/src/input/algfacob.input.pamphlet
index 6753bed..a7abf62 100644
--- a/src/input/algfacob.input.pamphlet
+++ b/src/input/algfacob.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool algfacob.output
 )set message test on
@@ -375,7 +375,7 @@ reduce(*,[nthFactor(f,i) :: (FR INT) for i in 1..numberOfFactors(f)])
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/alist.input.pamphlet b/src/input/alist.input.pamphlet
index 6af19e9..dfe6f54 100644
--- a/src/input/alist.input.pamphlet
+++ b/src/input/alist.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool alist.output
 )set message test on
@@ -114,7 +114,7 @@ delete!(al,1)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/allfact.input.pamphlet b/src/input/allfact.input.pamphlet
index 77c84a8..25befab 100644
--- a/src/input/allfact.input.pamphlet
+++ b/src/input/allfact.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool allfact.output
 )set message test on
@@ -239,7 +239,7 @@ factor(x**2+x+1,[a])
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/antoine.input.pamphlet b/src/input/antoine.input.pamphlet
index fc6fe5a..0d2734f 100644
--- a/src/input/antoine.input.pamphlet
+++ b/src/input/antoine.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
+\end{chunk}
 Draw Antoine's Necklace.
 Thanks to Matt Grayson (formerly at IBM's T.J Watson Research Center)
 for the idea.
 
 Bring DH matrices into the environment
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool antoine.output
 )set message test on
@@ -29,13 +29,13 @@ Bring DH matrices into the environment
 --R 
 --I   DenavitHartenbergMatrix is now explicitly exposed in frame frame0 
 --E 1
-@
+\end{chunk}
 Create Affine transformations (DH matrices) that transform
 a given triangle into another given triangle
 
 tri2tri(t1, t2) returns a DHMATRIX which transforms t1 to t2,
 where t1 and t2 are the vertices of two triangles in 3-space.
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 11
 tri2tri(t1: List Point DoubleFloat, t2: List Point DoubleFloat): DHMATRIX(DoubleFloat) ==
   n1 := triangleNormal(t1)
@@ -47,11 +47,11 @@ tri2tri(t1: List Point DoubleFloat, t2: List Point DoubleFloat): DHMATRIX(Double
 --R      added to workspace.
 --R                                                                   Type: Void
 --E 2
-@
+\end{chunk}
 
 tet2tet(t1, t2) returns a DHMATRIX which transforms t1 to t2,
 where t1 and t2 are the vertices of two tetrahedrons in 3-space.
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 11
 tet2tet(t1: List Point DoubleFloat, t2: List Point DoubleFloat): DHMATRIX(DoubleFloat) ==
   m1 := makeColumnMatrix t1
@@ -63,9 +63,9 @@ tet2tet(t1: List Point DoubleFloat, t2: List Point DoubleFloat): DHMATRIX(Double
 --R      added to workspace.
 --R                                                                   Type: Void
 --E 3
-@
+\end{chunk}
 put the vertices of a tetrahedron into matrix form
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 11
 makeColumnMatrix(t) ==
   m := new(4,4,0)$DHMATRIX(DoubleFloat)
@@ -77,10 +77,10 @@ makeColumnMatrix(t) ==
 --R 
 --R                                                                   Type: Void
 --E 4
-@
+\end{chunk}
 return a vector normal to the given triangle, whose length
 is the square root of the area of the triangle
-<<*>>=
+\begin{chunk}{*}
 --S 5 of 11
 triangleNormal(t) ==
   a := triangleArea t
@@ -94,9 +94,9 @@ triangleNormal(t) ==
 --R 
 --R                                                                   Type: Void
 --E 5
-@
+\end{chunk}
 compute the are of a triangle using Heron's formula
-<<*>>=
+\begin{chunk}{*}
 --S 6 of 11
 triangleArea t ==
   a := length(t.2 - t.1)
@@ -107,18 +107,18 @@ triangleArea t ==
 --R 
 --R                                                                   Type: Void
 --E 6
-@
+\end{chunk}
 The current transformation for drawing a sub-ring
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 11
 torusRot: DHMATRIX(DoubleFloat)
 --R 
 --R                                                                   Type: Void
 --E 7
-@
+\end{chunk}
 Draw Antoine's Rings with n levels of recursive subdivision.
 The number of subrings is $10^n$.
-<<*>>=
+\begin{chunk}{*}
 --S 8 of 11
 drawRings(n) ==
   s := create3Space()$ThreeSpace DoubleFloat
@@ -129,9 +129,9 @@ drawRings(n) ==
 --R 
 --R                                                                   Type: Void
 --E 8
-@
+\end{chunk}
 Recursively draw Antoine's Necklace.
-<<*>>=
+\begin{chunk}{*}
 --S 9 of 11
 drawRingsInner(s, n, dh) ==
   n = 0 =>
@@ -154,10 +154,10 @@ drawRingsInner(s, n, dh) ==
 --R 
 --R                                                                   Type: Void
 --E 9
-@
+\end{chunk}
 draw a single ring into the given subspace, transformed by the given
 DHMATRIX.
-<<*>>=
+\begin{chunk}{*}
 --S 10 of 11
 drawRing(s, dh) ==
   free torusRot
@@ -167,9 +167,9 @@ drawRing(s, dh) ==
 --R 
 --R                                                                   Type: Void
 --E 10
-@
+\end{chunk}
 Parameterization of a torus, transformed by the DHMATRIX in torusRot.
-<<*>>=
+\begin{chunk}{*}
 --S 11 of 11
 torus(u ,v) ==
   cu := cos(u)/6
@@ -179,7 +179,7 @@ torus(u ,v) ==
 --E 11
 )spool
 )lisp (bye)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/arith.input.pamphlet b/src/input/arith.input.pamphlet
index aee2ba6..86edd79 100644
--- a/src/input/arith.input.pamphlet
+++ b/src/input/arith.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool arith.output
 )set message test on
@@ -243,7 +243,7 @@ fac2 10
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/array1.input.pamphlet b/src/input/array1.input.pamphlet
index 2e00c18..dc3c5bf 100644
--- a/src/input/array1.input.pamphlet
+++ b/src/input/array1.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool array1.output
 )set message test on
@@ -94,7 +94,7 @@ copyInto!(a,b,1)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/array2.input.pamphlet b/src/input/array2.input.pamphlet
index 1794a90..a2b5037 100644
--- a/src/input/array2.input.pamphlet
+++ b/src/input/array2.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool array2.output
 )set message test on
@@ -246,7 +246,7 @@ count(0,arr)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/arrows.input.pamphlet b/src/input/arrows.input.pamphlet
index a098869..acbd61d 100644
--- a/src/input/arrows.input.pamphlet
+++ b/src/input/arrows.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool arrows.output
 )set message test on
@@ -55,7 +55,7 @@ makeArrow(p1,p2) ==
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/as-eg1.input.pamphlet b/src/input/as-eg1.input.pamphlet
index e3ab4ce..4527486 100644
--- a/src/input/as-eg1.input.pamphlet
+++ b/src/input/as-eg1.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )compile romnum.as
 a:RomanNumber:=3
 a+a
@@ -27,7 +27,7 @@ sin a
 simplify %
 matrix [[a,a+1],[a-1,a-2]]
 inverse %
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/as-eg2.input.pamphlet b/src/input/as-eg2.input.pamphlet
index 808154a..d1524c3 100644
--- a/src/input/as-eg2.input.pamphlet
+++ b/src/input/as-eg2.input.pamphlet
@@ -10,16 +10,16 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )co matops.as
 )sh MatrixOpSym
 matrix [[3,4],[5,6]]
 symmetricPart %
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/as-eg3.input.pamphlet b/src/input/as-eg3.input.pamphlet
index 239949a..06a8a47 100644
--- a/src/input/as-eg3.input.pamphlet
+++ b/src/input/as-eg3.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 
 )compile hilbert.as
 
@@ -41,7 +41,7 @@ idD:=[monomial[2,0,0,0],monomial[1,1,0,0],monomial[1,0,1,0],monomial[1,0,0,1],_
 #idD
 Hilbert idD
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/as-eg4.input.pamphlet b/src/input/as-eg4.input.pamphlet
index 87a1528..adc8a8b 100644
--- a/src/input/as-eg4.input.pamphlet
+++ b/src/input/as-eg4.input.pamphlet
@@ -10,17 +10,17 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )co ecfact.as
 n1:=nextPrime 1000000
 n2:=nextPrime n1
 n:=n1*n2
 LenstraEllipticMethod n
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/as-eg5.input.pamphlet b/src/input/as-eg5.input.pamphlet
index 15b51ba..3af5eca 100644
--- a/src/input/as-eg5.input.pamphlet
+++ b/src/input/as-eg5.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )co pdecomp0.as
 (u,v):UP(x,FRAC INT)
 u:=x**2+x+2
@@ -22,7 +22,7 @@ v:=x**3+2*x**2+x+1
 compose(u,v)
 decompose %
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/as-eg6.input.pamphlet b/src/input/as-eg6.input.pamphlet
index e700a33..55a23f7 100644
--- a/src/input/as-eg6.input.pamphlet
+++ b/src/input/as-eg6.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1995.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 
 )co aseg6.as
 
@@ -39,7 +39,7 @@ x+x
 
 -- should be 13
 foof(12)$D3
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/asec.input.pamphlet b/src/input/asec.input.pamphlet
index d28da30..9cf0a5a 100644
--- a/src/input/asec.input.pamphlet
+++ b/src/input/asec.input.pamphlet
@@ -102,7 +102,7 @@ $$
 
 As implemented within Axiom the {\tt asec} function is
 $$sec^{-1}(z) == cos^{-1}\left(\frac{1}{z}\right)$$
-<<*>>=
+\begin{chunk}{*}
 )spool asec.output
 )set message test off
 )set message auto off
@@ -194,7 +194,7 @@ asec(2.0)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} The Encyclopedia of Special Functions
diff --git a/src/input/asinatan.input.pamphlet b/src/input/asinatan.input.pamphlet
index 0e3ed67..d57150a 100644
--- a/src/input/asinatan.input.pamphlet
+++ b/src/input/asinatan.input.pamphlet
@@ -16,7 +16,7 @@ is the argument of asin(x), ranging from 0.01 to 1.00. The
 second column is the reference value of tan from the book
 Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
 Dover Publications, Inc. New York 1965. pp203-212
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool asinatan.output
 )set message test on
@@ -229,13 +229,13 @@ Dover Publications, Inc. New York 1965. pp203-212
 --R    [1.0,1.5707963267 95,1.5707963267 948966192,- 0.103381 E -12]]
 --R                                                        Type: List List Float
 --E 1
-@
+\end{chunk}
 In the following table there are 4 columns. The first column
 is the argument of atan(x), ranging from 0.01 to 1.00. The
 second column is the reference value of tan from the book
 Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
 Dover Publications, Inc. New York 1965. pp203-212
-<<*>>=
+\begin{chunk}{*}
 
 --S 2 of 2
 [[0.01,0.009999666687,atan(0.01),atan(0.01)-0.009999666687],_
@@ -447,7 +447,7 @@ Dover Publications, Inc. New York 1965. pp203-212
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
diff --git a/src/input/asinhatanh.input.pamphlet b/src/input/asinhatanh.input.pamphlet
index 3a032a2..8738962 100644
--- a/src/input/asinhatanh.input.pamphlet
+++ b/src/input/asinhatanh.input.pamphlet
@@ -16,7 +16,7 @@ second column is the reference value of asinh from the book
 Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
 Dover Publications, Inc. New York 1965. pp221
 
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool asinhatanh.output
 )set message test on
@@ -231,14 +231,14 @@ Dover Publications, Inc. New York 1965. pp221
 --R    [1.0,0.881373587,0.8813735870 1954302523,0.195430252 E -10]]
 --R                                                        Type: List List Float
 --E 1
-@
+\end{chunk}
 In the following table there are 4 columns. The first column
 is the argument of atanh, ranging from 0.01 to 0.99. The
 second column is the reference value of atanh from the book
 Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
 Dover Publications, Inc. New York 1965. pp221
 
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 2
 [[0.00,0.000000000,atanh(0.00),atanh(0.00)-0.000000000],_
 [0.01,0.010000333,atanh(0.01),atanh(0.01)-0.010000333],_
@@ -449,7 +449,7 @@ Dover Publications, Inc. New York 1965. pp221
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/assign.input.pamphlet b/src/input/assign.input.pamphlet
index a645570..98d1b2e 100644
--- a/src/input/assign.input.pamphlet
+++ b/src/input/assign.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool assign.output
 )set message test on
@@ -113,7 +113,7 @@ d              -- and so the ultimate value computed from d will change
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/atansqrt.input.pamphlet b/src/input/atansqrt.input.pamphlet
index 83b4827..9f5cd6f 100644
--- a/src/input/atansqrt.input.pamphlet
+++ b/src/input/atansqrt.input.pamphlet
@@ -10,18 +10,19 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )set break resume
 )spool atansqrt.output
 )set message test on
 )set message auto off
 )clear all
-@
+\end{chunk}
 given
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 3
 z:=atan sqrt ((1-cos x)/(1+cos x))
 --R 
@@ -32,9 +33,9 @@ z:=atan sqrt ((1-cos x)/(1+cos x))
 --R             \| cos(x) + 1
 --R                                                     Type: Expression Integer
 --E 1
-@
+\end{chunk}
 this should generate x/2
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 3
 integrate(differentiate(z,x),x)
 --R 
@@ -44,9 +45,9 @@ integrate(differentiate(z,x),x)
 --R        2
 --R                                          Type: Union(Expression Integer,...)
 --E 2
-@
+\end{chunk}
 so should this be x/2
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 3
 rootSimp(normalize(z))
 --R 
@@ -58,7 +59,7 @@ rootSimp(normalize(z))
 --E 3
 )spool
 )lisp (bye)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/axiom.input.pamphlet b/src/input/axiom.input.pamphlet
index 85ca1f1..fc8a413 100644
--- a/src/input/axiom.input.pamphlet
+++ b/src/input/axiom.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 
 -- This file is read on start-up by the AXIOM system.  It is
 -- most commonly used to customize the user's environment via the
@@ -38,7 +38,7 @@
 )lis (verbos 0) 
 -- read the user's synonym file for system commands, if it exists
 )read "mysyns.input"  )ifthere )quiet
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/bbtree.input.pamphlet b/src/input/bbtree.input.pamphlet
index 67d03cd..04d6106 100644
--- a/src/input/bbtree.input.pamphlet
+++ b/src/input/bbtree.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool bbtree.output
 )set message test on
@@ -102,7 +102,7 @@ chineseRemainder(%,lm)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/bern.input.pamphlet b/src/input/bern.input.pamphlet
index 78cca45..91bcf97 100644
--- a/src/input/bern.input.pamphlet
+++ b/src/input/bern.input.pamphlet
@@ -9,13 +9,13 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 f(t)==cos(t)/(1+sin(t)**2)
 g(t)==sin(t)*cos(t)/(1+sin(t)**2)
 c(t)==curve(f(t),g(t))
 d:=draw(c(t)),t = -%pi..%pi, [title "Lemniscate of Bernoulli"])
 close(d)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/bernpoly.input.pamphlet b/src/input/bernpoly.input.pamphlet
index f2db3a1..5afb7ee 100644
--- a/src/input/bernpoly.input.pamphlet
+++ b/src/input/bernpoly.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 -- the first 10 Bernoulli polynomials (Approximate Calculation of Integrals
 -- by V. Krylov Macmillan 1962 p13)
 draw(1,x=0..1)
@@ -28,7 +28,7 @@ draw(x**7-(7/2)*x**6+(7/2)*x**5-(7/6)*x**3+(1/6)*x,x=0..1)
 draw(x**8-4*x**7+(14/3)*x**6-(7/3)*x**4+(2/3)*x**2-(1/30),x=0..1)
 draw(x**9-(9/2)*x**8+6*x**7-(21/5)*x**5+2*x**3-(3/10)*x,x=0..1)
 draw(x**10-5*x**9+(15/2)*x**8-7*x**6+5*x**4-(3/2)*x**2+(5/66),x=0..1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/besselk.input.pamphlet b/src/input/besselk.input.pamphlet
index 721567c..eb497b7 100644
--- a/src/input/besselk.input.pamphlet
+++ b/src/input/besselk.input.pamphlet
@@ -14,7 +14,7 @@ is the argument of besselK, ranging from 0.01 to 10.0. The
 second column is the reference value of Gamma from the book
 Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
 Dover Publications, Inc. New York 1965. pp417-419
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool besselk.output
 )set message test on
@@ -162,7 +162,7 @@ stegun(x)== %e^x * besselK(1,x)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
diff --git a/src/input/binary.input.pamphlet b/src/input/binary.input.pamphlet
index 41e33a7..1a86afd 100644
--- a/src/input/binary.input.pamphlet
+++ b/src/input/binary.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool binary.output
 )set message test on
@@ -97,7 +97,7 @@ g := gcd(p, q)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/bini.input.pamphlet b/src/input/bini.input.pamphlet
index 2c8abb7..982e538 100644
--- a/src/input/bini.input.pamphlet
+++ b/src/input/bini.input.pamphlet
@@ -9,8 +9,7 @@ The POSSO multivariate polynomial test suite.
 \end{abstract}
 \eject
 \tableofcontents
-\eject
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool bini.output
 )set message test on
@@ -18,7 +17,7 @@ The POSSO multivariate polynomial test suite.
 )set message auto off
 )clear all
 
-@
+\end{chunk}
 Bini and Mourrain define a hierarchy of classes for polynomial solutions:
 \begin{verbatim}
   1 Complete_Intersection
@@ -114,7 +113,7 @@ Bini and Mourrain define a hierarchy of classes for polynomial solutions:
 
 \section{Bronstein2}
 Paramaters $a,b$ and variables  $x,y$)
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 1 of 276
@@ -143,10 +142,10 @@ t3:=4*x*y^2-2*b*y^2-2*a^2*x+2*a^2*b
 --R   (3)  (4x - 2b)y  - 2a x + 2a b
 --E 3
 
-@
+\end{chunk}
 \section{CzaporGeddes1}
 Variables $x,y,z$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 4 of 276
@@ -173,10 +172,10 @@ t3:=5*x^2+8*x*y+4*x*z+8*x+9*y^2-6*y*z+2*y-z^2-7*x+5
 --R   (3)  - z  + (- 6y + 4x)z + 9y  + (8x + 2)y + 5x  + x + 5
 --E 6
 
-@
+\end{chunk}
 \section{CzaporGeddes2} 
 Parameter $b$ and variables $c,d,p,q$
-<<*>>=
+\begin{chunk}{*}
 
 )clear all
 --S 7 of 276
@@ -240,10 +239,10 @@ t4:=b^2 + 4*(p-q^2) + 3*c^2*(q-1)^2 - 3*d^2*(p-q)^2 + 3*b^2*d^2*(p-1)^2_
 --R     b
 --E 10
 
-@
+\end{chunk}
 \section{CzaporGeddes3}
 Paramters $a,b,c,d,e,f,g,h,k$ and variables $x,y$
-<<*>>=
+\begin{chunk}{*}
 
 )clear all
 
@@ -263,10 +262,10 @@ t2:=b*x^2+4*d*x*y+2*e*x+g*y^2+h*y+k
 --R   (2)  g y  + (4d x + h)y + b x  + 2e x + k
 --E 12
 
-@
+\end{chunk}
 \section{CzaporGeddes4}
 Paramters $a,b,c,d,e,f,g,h,k$ and variables $x,y,z$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 13 of 276
@@ -293,10 +292,10 @@ t3:=z^2+c*x*y+f*z+k
 --R   (3)  z  + f z + c x y + k
 --E 15
 
-@
+\end{chunk}
 \section{Hawes1}
 Parameters $a,b$ and variables $x,A,B$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 16 of 276
@@ -352,10 +351,10 @@ t4:=24*x+6*(x^3+b*x-B-a)^2+72*x*(x^3+b*x-B-a)*(3*x^2+b)+6*(3*x^2+b)^3_
 --R     6b  + 6a  + 24B a + 18B
 --E 19
 
-@
+\end{chunk}
 \section{Hawes2}
 Parameters $a,b,c$ and variables $x,y[2],z[2]$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 20 of 276
@@ -398,10 +397,10 @@ t5:=3*z2^2+y2^2+b
 --R   (5)  3z2  + y2  + b
 --E 24
 
-@
+\end{chunk}
 \section{Hawes}
 Paramters $a,b,c$ and variables $x,y[3],z[3]$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 25 of 276
@@ -467,10 +466,10 @@ t6:=y3^2*z3+2*a*y3^3+4*y3^5+c*y3^2-z3^3-b*z3-y1^2*z1-2*a*y1^3_
 --R     - 2a y1  - c y1
 --E 30
 
-@
+\end{chunk}
 \section{Hawes}
 Paramters $a,b,c$ and variables $x,y[2],z[2]$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 31 of 276
@@ -581,10 +580,10 @@ t6:=(6*z1^2+18*a*z1*y1+6*y1-y1^3*z1+6*c*y1^2*z1-2*y1^2)_
 --R     (2y1  - 6y1)y2  + (- 2y1  + 2b y1)y2  + (- 2b y1  + 6b y1)y2
 --E 36
 
-@
+\end{chunk}
 \section{Reif}
 Variables $x[16]$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 37 of 276
@@ -685,10 +684,10 @@ t14:=x1*x10*x15 + x2*x11*x16 - x3*x12*(x15+x16)-1
 --R   (14)  (- x12 x16 - x12 x15)x3 + x11 x16 x2 + x1 x10 x15 - 1
 --E 50
 
-@
+\end{chunk}
 \section{Reimer4}
 Variables $x,y,z,t$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 51 of 276
@@ -723,10 +722,10 @@ t4:=2*x^5-2*y^5+2*z^5-2*t^5-1
 --R   (4)  2z  - 2y  + 2x  - 2t  - 1
 --E 54
 
-@
+\end{chunk}
 \section{Reimer4}
 Variables $x,y,z,t,u$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 55 of 276
@@ -769,7 +768,7 @@ t5:=2*x^6-2*y^6+2*z^6-2*t^6+2*u^6-1
 --R   (5)  2z  - 2y  + 2x  + 2u  - 2t  - 1
 --E 59
 
-@
+\end{chunk}
 \section{Reimer(n)}
 Given the variables $x[x]$ the general case of these 
 equations is given by:
@@ -777,7 +776,7 @@ equations is given by:
 
 \section{Gerdt}
 Variables $x,y,z,t,u,v,w$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 60 of 276
@@ -918,10 +917,10 @@ t13:=8*x*y*w-4*x*z*w+8*x*t*w
 --R   (13)  - 4w x z + 8w x y + 8t w x
 --E 72
 
-@
+\end{chunk}
 \section{Gerdt2}
 Variables $x,y,z,t,u$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 73 of 276
@@ -944,10 +943,10 @@ t2:=5*x*y^3-140*y^3*z-3*x^2*y+45*x*y*z-420*y*z^2+210*y^2*t_
 --R     - 25t x
 --E 74
 
-@
+\end{chunk}
 \section{Gerdt3}
 Variables $x,y,z,t$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 75 of 276
@@ -996,10 +995,10 @@ t4:=-x^2*y*t+3*x*y^2*t+10*y^3*t-15*y^2*z*t+3*y*z^2*t-3*x*y^2-10*y^3+x*y*z_
 --R   (3t - 5)y z  + ((- 15t + 15)y  + x y)z + (10t - 10)y  + (3t - 3)x y  - t x y
 --E 78
 
-@
+\end{chunk}
 \section{Gerdt4}
 Variables $x,y,z,t,u,v,w,a,b,c$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 79 of 276
@@ -1178,10 +1177,10 @@ t12:=-18*x^2*u*v^3*b-9*x*u*v^4*b-9*x^2*u*v^3*c+9*x*u*v^4*c-3*x^3*z*v*a_
 --R     (- 2c - 6b)t v
 --E 90
 
-@
+\end{chunk}
 \section{Gerdt5}
 Varables $x,y,z,t,u,v,a,A,B,C,D,E,F$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 91 of 276
@@ -1299,10 +1298,10 @@ t15:=3/7*u^3-2*y*u+7*x-F
 --R                       7
 --E 105
 
-@
+\end{chunk}
 \section{Gertd6}
 Variables $x,y,z,t$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 106 of 276
@@ -1354,10 +1353,10 @@ t1:=10*x^3*z-15*x^2*y*z+3*x*y^3*z+3*x^2*z*t-x*z*t^2-10*x^3+15*x^2*y_
 --R   (3x y  - 15x y + 10x  + 3t x  - t x)z - 5x y  + (15x  + t x)y - 10x  - 3t x
 --E 109
 
-@
+\end{chunk}
 \section{Hairer1}
 Variables $a,b,c,d,e,f,g,h$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 110 of 276
@@ -1408,10 +1407,10 @@ t6:=a*c*g-1/6
 --R                6
 --E 115
 
-@
+\end{chunk}
 \section{Hairer2}
 Variables $a,b,c,d,e,f,g,h,i,j,k,l,m$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 116 of 276
@@ -1505,10 +1504,10 @@ t11:=c-k-l-m
 --R   (11)  - m - l - k + c
 --E 126
 
-@
+\end{chunk}
 \section{Hairer3}
 Variables $a,b,c,d,e,f,g,h,i,j,k,l,m,n$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 127 of 276
@@ -1660,10 +1659,10 @@ t16:=a*h*i*k*n-1/120
 --R                     120
 --E 142
 
-@
+\end{chunk}
 \section{Hairer4}
 Variables $a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 143 of 276
@@ -1867,10 +1866,10 @@ t16:=t*a*j*k*o+t*a*j*l*p+t*b*j*m*p+a*i*k*m*p+a*j*k*m*s-1/20
 --R                                                                 20
 --E 158
 
-@
+\end{chunk}
 \section{Hietarinta1}
 Variables $a,c,j,l,m,n,p,v,g,h$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 159 of 276
@@ -2110,10 +2109,10 @@ t31:=j*l*m+l*n*v-c*n-n^2
 --R   (31)  l n v - n  - c n + j l m
 --E 189
 
-@
+\end{chunk}
 \section{Hietarinta2}
 Variables $a,b,c,j,k,l,m,n,p,v$
-<<*>>=
+\begin{chunk}{*}
 )clear all
  
 --S 190 of 276
@@ -2378,10 +2377,10 @@ t28:=a*k*l+2*k*l*m-a*b*p-b*m*p+m*n*p+k*l*v+n*p*v+b*k-l*m+k*n-l*v-b
 --R   (n p + (k - 1)l)v + (m n - b m - a b)p + k n + (2k - 1)l m + a k l + b k - b
 --E 217
 
-@
+\end{chunk}
 \section{Hietarinta3}
 Variables $x,y,z,t,u,v,w,a$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 218 of 276
@@ -2619,10 +2618,10 @@ t31:=-x*z+y*u+t*u-y*a
 --R   (31)  - x z + (u - a)y + t u
 --E 248
 
-@
+\end{chunk}
 \section{Hunecke}
 Variables $x,y,z,t,u$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 249 of 276
@@ -2694,10 +2693,10 @@ t8:=y^6*z+y*z^6+x^2*y^4*u-3*x*y^2*z^2*t*u+z^4*t^2*u-x^3*z*t*u^2_
 --R   (8)  y z  + t u z  - 3t u x y z  + (y  + u y - t u x )z + u x y  - t u x y
 --E 256
 
-@
+\end{chunk}
 \section{Laconcelli}
 Variables $a,b,c,d,e,f,g,h,k,l,m$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 257 of 276
@@ -2744,10 +2743,10 @@ t4:=a+c+e+g-m
 --R   (4)  - m + g + e + c + a
 --E 260
 
-@ 
+\end{chunk} 
 \section{Morgenstern: articulated system (3 rods)}
 Variables $x,y,z,t,u,v,w,a,b$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 261 of 276
@@ -2788,10 +2787,10 @@ t5:=z^2+t^2-2*z*u+u^2-2*t*v+v^2-b^2
 --R   (5)  z  - 2u z + v  - 2t v + u  + t  - b
 --E 265
 
-@
+\end{chunk}
 \section{Pavelle Macsyma}
 Variables $x,y,z,t,u,v,w,a$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 266 of 276
@@ -2826,10 +2825,10 @@ t4:=x*t+y*t+z*t-a^2
 --R   (4)  t z + t y + t x - a
 --E 269
 
-@ 
+\end{chunk} 
 \section{Raksanyi}
 Variables $x,y,z,t,u,v,w,a$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 270 of 276
@@ -2860,10 +2859,10 @@ t4:=x*z*t-u*w*a
 --R   (4)  t x z - a u w
 --E 273
 
-@
+\end{chunk}
 \section{Rose}
 Variables $x,y,z$
-<<*>>=
+\begin{chunk}{*}
 
 --S 274 of 276
 t1:=y^4-20/7*x^2
@@ -2914,7 +2913,7 @@ t3:=3/5*x^6*y^2*z + x^5*y^3 + 3/7*x^5*y^2*z + 7/5*x^4*y^3_
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} D. Bini and B. Mourrain. Polynomials test suite. 1996.
diff --git a/src/input/biquat.input.pamphlet b/src/input/biquat.input.pamphlet
index 185f877..659ef15 100644
--- a/src/input/biquat.input.pamphlet
+++ b/src/input/biquat.input.pamphlet
@@ -8,21 +8,20 @@
 \end{abstract}
 \eject
 \tableofcontents
-\eject
-@
-<<*>>=
+
+\begin{chunk}{*}
 )set break resume
 )spool biquat.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 \section{Hamiltonian Biquaternions}
 
 Define the type $Q$ of Hamiltonian biquaternions (not to be confused with
 Clifford biquaternions which are an entirely different object)
-<<*>>=
+\begin{chunk}{*}
 
 --S 1 of 43
 C:=Complex Expression Integer
@@ -48,10 +47,10 @@ q:Q:=quatern(q0,q1,q2,q3)
 --R                                  Type: Quaternion Complex Expression Integer
 --E 3
 
-@
+\end{chunk}
 Define a function that takes a complex list (parameter l) into a 
 quaternion
-<<*>>=
+\begin{chunk}{*}
 
 --S 4 of 43
 qlist(l:List C):Q==quatern(1.1,1.2,1.3,1.4)
@@ -62,9 +61,9 @@ qlist(l:List C):Q==quatern(1.1,1.2,1.3,1.4)
 --R                                                                   Type: Void
 --E 4
 
-@
+\end{chunk}
 Define a function that takes a quaternion into a list
-<<*>>=
+\begin{chunk}{*}
 
 --S 5 of 43
 listq(x:Q):List C == [real x, imagI x, imagJ x, imagK x]
@@ -74,9 +73,9 @@ listq(x:Q):List C == [real x, imagI x, imagJ x, imagK x]
 --R                                                                   Type: Void
 --E 5
 
-@
+\end{chunk}
 Define a function that takes a biquat into a matrix
-<<*>>=
+\begin{chunk}{*}
 
 --S 6 of 43
 matrixq(x:Q):Matrix C == matrix _
@@ -89,7 +88,7 @@ matrixq(x:Q):Matrix C == matrix _
 --R                                                                   Type: Void
 --E 6
 
-@
+\end{chunk}
 \section{The Pauli basis Biquaternions}
 
 The quaternion package in axiom is based upon the Hamiltonian basis,
@@ -102,7 +101,7 @@ formulations. To both follow these papers and obtain these visualization
 benefits, we will define and use the Pauli basis also.
 
 The Pauli basis in terms of the Hamiltonian quaternion basis
-<<*>>=
+\begin{chunk}{*}
 
 --S 7 of 43
 sig0:=quatern(1,0,0,0)::Q
@@ -136,7 +135,7 @@ sig3:=-%i*quatern(0,1,0,0)::Q
 --R                                  Type: Quaternion Complex Expression Integer
 --E 10
 
-@
+\end{chunk}
 For purposes of manipulation and display it would be best if we either
 \begin{enumerate}
 \item Copy the quaternion source code and edit it to use $\sigma_i$ as
@@ -160,7 +159,7 @@ results: a list of the four Pauli basis coefficients.
 
 Define a function that produces the Pauli basis representation of the
 biquaternion.
-<<*>>=
+\begin{chunk}{*}
 
 --S 11 of 43
 siglist(x:Q):List C == [real x, -imagK(x)*%i, -imagJ(x)*%i, %i*imagI(x)]
@@ -170,11 +169,11 @@ siglist(x:Q):List C == [real x, -imagK(x)*%i, -imagJ(x)*%i, %i*imagI(x)]
 --R                                                                   Type: Void
 --E 11
 
-@
+\end{chunk}
 \section{Biquaternion Calculus}
 
 Define the quaternion derivative (Morgan, 2001, Eq. 2)
-<<*>>=
+\begin{chunk}{*}
 
 --S 12 of 43
 D(q:Q,x:Symbol,y:Symbol,z:Symbol):Q==sig1*D(q,x)+sig2*D(q,y)+sig3*D(q,z)
@@ -185,9 +184,9 @@ D(q:Q,x:Symbol,y:Symbol,z:Symbol):Q==sig1*D(q,x)+sig2*D(q,y)+sig3*D(q,z)
 --R                                                                   Type: Void
 --E 12
 
-@
+\end{chunk}
 For testing the derivative we define this set of operators
-<<*>>=
+\begin{chunk}{*}
 
 --S 13 of 43
 Ft:=operator 'Ft
@@ -221,9 +220,9 @@ Fz:=operator 'Fz
 --R                                                          Type: BasicOperator
 --E 16
 
-@
+\end{chunk}
 Now form a general quaternion which is a function of x, y, z
-<<*>>=
+\begin{chunk}{*}
 
 --S 17 of 43
 F:Q:=Ft(x,y,z)*sig0+Fx(x,y,z)*sig1+Fy(x,y,z)*sig2+Fz(x,y,z)*sig3
@@ -233,13 +232,13 @@ F:Q:=Ft(x,y,z)*sig0+Fx(x,y,z)*sig1+Fy(x,y,z)*sig2+Fz(x,y,z)*sig3
 --R                                  Type: Quaternion Complex Expression Integer
 --E 17
 
-@
+\end{chunk}
 In the Pauli basis the derivative of this biquat should produce
 (Morgan 2001, eq 1):
 \begin{verbatim}
   D(Ft+F.sigma)=div(F)+(grad(Ft)+%i*curl(F)).sigma
 \end{verbatim}
-<<*>>=
+\begin{chunk}{*}
 
 --S 18 of 43
 siglist(D(F,x,y,z))
@@ -262,7 +261,7 @@ siglist(D(F,x,y,z))
 --R                                        Type: List Complex Expression Integer
 --E 18
 
-@
+\end{chunk}
 \section{Biquaternion Exponential}
 
 Define a function that evaluates the Biquat exponential by beginning
@@ -296,7 +295,7 @@ of quaternion for which we will have to evaluate the exponential.
 Define a biquaternion rotation operator that takes a biquat through a
 rotation of $\theta$ radians about the axis defined by the unit $q$ biquat
 (Morgan 2001, Eq 3).
-<<*>>=
+\begin{chunk}{*}
 
 --S 19 of 43
 rot(theta:Expression Integer,q:Q):Q==cos(theta/2)-%i::Q*q*sin(theta/2)
@@ -307,14 +306,14 @@ rot(theta:Expression Integer,q:Q):Q==cos(theta/2)-%i::Q*q*sin(theta/2)
 --R                                                                   Type: Void
 --E 19
 
-@
+\end{chunk}
 The rotation is a basis for defining the general exponential, since we
 can always extract the unit vector corresponding to a given biquaternion,
 all we need is the biquaternion abs operation, not provided by axiom
 (note, many texts and papers label the abs which is a complex valued
 $norm^2$ by the name ``norm'' -- very bad form -- I've adopted abs as
 the name to avoid this confusion.
-<<*>>=
+\begin{chunk}{*}
 
 --S 20 of 43
 ((x:Q)/(y:Q)):Q == x*inv(y)
@@ -345,11 +344,11 @@ exp(q:Q):Q == (_
 --R                                                                   Type: Void
 --E 22
 
-@
+\end{chunk}
 If I've defined these correctly, then the rotation about the x axis
 defined by qx below by 2 radians should give the same answer as
 exponentiation of \%i*qx (not a very complete test).
-<<*>>=
+\begin{chunk}{*}
 
 --S 23 of 43
 qx:=sig1
@@ -443,7 +442,7 @@ nn:=siglist(exp(-%i::Q*qx))
 --R                                                                Type: Boolean
 --E 26
 
-@
+\end{chunk}
 To express a proof of equality such as:
 \begin{verbatim}
   rot(theta,q) = exp((-theta/2)*%i*q)
@@ -455,7 +454,7 @@ vector. One way to represent this is to create a quaternion called $qnv$,
 representing a general normalized (unit length) vector part only biquat with
 two independent variables $q1$ and $q2$ representing its only degrees of
 freedom.
-<<*>>=
+\begin{chunk}{*}
 
 --S 27 of 43
 qnv:=q1*sig1+q2*sig2+sqrt(1-q1^2-q2^2)*sig3
@@ -467,7 +466,7 @@ qnv:=q1*sig1+q2*sig2+sqrt(1-q1^2-q2^2)*sig3
 --R                                  Type: Quaternion Complex Expression Integer
 --E 27
 
-@
+\end{chunk}
 \section{Assumptions about Variables}
 
 Now, in the equations that will result, we will obtain subexpressions of the
@@ -485,7 +484,7 @@ support variables with properties in the sense that Maple does (the
 Returning to the case at hand, let's expand a test of equality to the
 four biquat components and seek a way to prove that each component 
 is zero.
-<<*>>=
+\begin{chunk}{*}
 
 --S 28 of 43
 theta:=_\theta
@@ -537,7 +536,7 @@ testqeq:=map(simplify,siglist(rot(theta,qnv)-exp((-theta/2)*%i*qnv)))_
 --R                                        Type: List Expression Complex Integer
 --E 29
 
-@
+\end{chunk}
 As is quite obvious from this result, the two equations would have been
 shown to be equal if positivity of the theta variable was enforced. This
 raises two questions
@@ -558,7 +557,7 @@ Let's try another way to answer question 1 by using symbolic pattern
 matching ``rules''. Define a rule that recognizes the specific case of
 the variable theta appearing in a construct that should be simplified
 given its positivity.
-<<*>>=
+\begin{chunk}{*}
 
 --S 30 of 43
 posthetaRule:=rule sqrt(theta^2)==theta
@@ -570,14 +569,14 @@ posthetaRule:=rule sqrt(theta^2)==theta
 --R                        Type: RewriteRule(Integer,Integer,Expression Integer)
 --E 30
 
-@
+\end{chunk}
 But, now we encounter two new problems. First, apparently ``map'' does
 not work with rules, so I can't apply this rule in a simple fashion to
 the entire List generated by our test case above for any x.
 
 The ``map'' function only maps functions but we can easily turn a rule 
 into an anonymous function.
-<<*>>=
+\begin{chunk}{*}
 
 --S 31 of 43
 map(x+->posthetaRule(x), [0,sqrt(theta^2),0,sqrt(theta^2)])
@@ -587,10 +586,10 @@ map(x+->posthetaRule(x), [0,sqrt(theta^2),0,sqrt(theta^2)])
 --R                                                Type: List Expression Integer
 --E 31
 
-@
+\end{chunk}
 But even if we were to split our list above, and try to apply this rule
 to a component, we get this disappointing result:
-<<*>>=
+\begin{chunk}{*}
 
 --S 32 of 43
 posthetaRule testqeq.1
@@ -610,11 +609,11 @@ posthetaRule testqeq.1
 --R      or "$" to specify which version of the function you need.
 --E 32
 
-@
+\end{chunk}
 Apparently rules have builtin assumptions about the construction of
 the expression. If I override this for a real element of the list
 we are testing I can successfully get one answer.
-<<*>>=
+\begin{chunk}{*}
 
 --S 33 of 43
 [posthetaRule (testqeq.i::Expression Integer) for i in 1..1]
@@ -624,9 +623,9 @@ we are testing I can successfully get one answer.
 --R                                                Type: List Expression Integer
 --E 33
 
-@
+\end{chunk}
 But this doesn't extend to the remainder of the list.
-<<*>>=
+\begin{chunk}{*}
 
 --S 34 of 43
 [posthetaRule (testqeq.i::Expression Integer) for i in 1..4]
@@ -645,7 +644,7 @@ But this doesn't extend to the remainder of the list.
 --R
 --E 34
 
-@
+\end{chunk}
 because obviously we can't coerce an actually complex value into the
 Expression Integer type that the rule seems to want.
 
@@ -653,7 +652,7 @@ Here is one way to create the necessary rule. Like everything else in
 Axiom rules are objects in some domain. We need to specify a domain
 for the rule that is compatible with the domain we wish to manipulate.
 So let's find out more about this domain:
-<<*>>=
+\begin{chunk}{*}
 
 --S 35 of 43
 )show RewriteRule
@@ -677,9 +676,9 @@ So let's find out more about this domain:
 --R
 --E 35
 
-@
+\end{chunk}
 We can provide satisfactory parameters of this domain constructor as follows:
-<<*>>=
+\begin{chunk}{*}
 
 --S 36 of 43
 Complex Integer has PatternMatchable Integer
@@ -705,9 +704,9 @@ Expression Complex Integer has PatternMatchable Integer
 --R                                                                Type: Boolean
 --E 38
 
-@
+\end{chunk}
 So the following simplification works as hoped:
-<<*>>=
+\begin{chunk}{*}
 
 --S 39 of 43
 posxRule:=(rule sqrt('theta^2)==theta)$RewriteRule(Integer,Complex Integer,_
@@ -728,7 +727,7 @@ map(x+->posxRule x, testqeq)
 --R                                        Type: List Expression Complex Integer
 --E 40
 
-@
+\end{chunk}
 \section{Algebraic Domain of Computation}
 
 Recall that Axiom does things in a fundamentally {\sl algebraic} rather
@@ -742,7 +741,7 @@ Is there some ``axiomatic'', i.e. algebraic way to express the fact that
 $\theta$ is a positive real? well, what we really need is that
 $$\sqrt{\theta^2} = \theta$$
 be satisfied. Now consider that by definition $\sqrt{}$:
-<<*>>=
+\begin{chunk}{*}
 
 --S 41 of 43
 test (sqrt(x)^2=x)
@@ -752,9 +751,9 @@ test (sqrt(x)^2=x)
 --R                                                                Type: Boolean
 --E 41
 
-@
+\end{chunk}
 and so
-<<*>>=
+\begin{chunk}{*}
 
 --S 42 of 43
 test (sqrt(sqrt(x)^2)=sqrt(x))
@@ -764,13 +763,13 @@ test (sqrt(sqrt(x)^2)=sqrt(x))
 --R                                                                Type: Boolean
 --E 42
 
-@
+\end{chunk}
 for any $x$. So the expression $\sqrt{(x)}$ is one such thing that has
 the desired property in the Expression domain. {\sl With exactly the
 appropriate loss of generality}, let us just suppose that $\theta$ is
 $\sqrt{(\beta)}$ for some $\beta$. Then if necessary we can also
 perform a change of variable back to $\theta$.
-<<*>>=
+\begin{chunk}{*}
 
 --S 43 of 43
 eval(eval(testqeq,theta=sqrt(beta)),sqrt(beta)=theta)
@@ -783,7 +782,7 @@ eval(eval(testqeq,theta=sqrt(beta)),sqrt(beta)=theta)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/bop.input.pamphlet b/src/input/bop.input.pamphlet
index 97e8476..725a4a2 100644
--- a/src/input/bop.input.pamphlet
+++ b/src/input/bop.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool bop.output
 )set message test on
@@ -160,7 +160,7 @@ properties y
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/bouquet.input.pamphlet b/src/input/bouquet.input.pamphlet
index 3d5b3c4..297f681 100644
--- a/src/input/bouquet.input.pamphlet
+++ b/src/input/bouquet.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
+\end{chunk}
 relative size of the arrow head compared to the length of the arrow
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool bouquet.output
 )set message test on
@@ -28,9 +28,9 @@ arrowScale := 0.2@DFLOAT
 --R   (1)  0.20000000000000001
 --R                                                            Type: DoubleFloat
 --E 1
-@ 
+\end{chunk} 
 angle of the arrow head
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 4
 arrowAngle := %pi-%pi/10.0@DFLOAT
 --R 
@@ -38,11 +38,11 @@ arrowAngle := %pi-%pi/10.0@DFLOAT
 --R   (2)  2.8274333882308138
 --R                                                            Type: DoubleFloat
 --E 2
-@ 
+\end{chunk} 
 Add an arrow head to a line segment, which starts at 'p1', ends at 'p2',
 has length 'len', and and angle 'arg'.  We pass 'len' and 'arg' as
 arguments since they were already computed by the calling program
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 4
 makeArrow(p1, p2) ==
   delta := p2 - p1
@@ -76,7 +76,7 @@ drawBouquet(n,title) ==
 --E 4
 )spool
 )lisp (bye)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/bstree.input.pamphlet b/src/input/bstree.input.pamphlet
index 0bff6c5..6e5192b 100644
--- a/src/input/bstree.input.pamphlet
+++ b/src/input/bstree.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool bstree.output
 )set message test on
@@ -118,7 +118,7 @@ rt := buildFromRoot reverse lv
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/bug100.input.pamphlet b/src/input/bug100.input.pamphlet
index 3c2828a..a97a975 100644
--- a/src/input/bug100.input.pamphlet
+++ b/src/input/bug100.input.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-@
+
 This code used to cause an infinite loop that eventually killed Axiom.
 The bug exists in the {\tt intef.spad}, in ElementaryIntegration (INTEF),
 in the routines {\tt lfextendedint} and {\tt lflimitedint}.
@@ -43,7 +43,7 @@ We keep coming back to process this term, which ends up
 putting the same term back on the list and we loop.
 Waldek's solution is to remove the union call. 
 
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool bug100.output
 )set message test on
@@ -59,7 +59,7 @@ integrate((z^a+1)^b,z)
 --R        ++
 --R                                          Type: Union(Expression Integer,...)
 --E 1
-@
+\end{chunk}
 If we substitute z for %I we get:
 \begin{verbatim}
            z
@@ -69,11 +69,11 @@ If we substitute z for %I we get:
 
 \end{verbatim}
 which is the original input integral.
-<<*>>=
+\begin{chunk}{*}
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/bug10069.input.pamphlet b/src/input/bug10069.input.pamphlet
index 4290024..f46eafd 100644
--- a/src/input/bug10069.input.pamphlet
+++ b/src/input/bug10069.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool bug10069.output
 )set message test on
@@ -120,7 +120,7 @@ acoth(0.0)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/bug101.input.pamphlet b/src/input/bug101.input.pamphlet
index 42d0ba2..43ffea1 100644
--- a/src/input/bug101.input.pamphlet
+++ b/src/input/bug101.input.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-@
+
 The call 
 \begin{verbatim}
 laplace(log(z),z,w)
@@ -25,7 +25,7 @@ A more reasonable return value, not supported by Axiom, would be:
        w
 \end{verbatim}
 
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool bug101.output
 )set message test on
@@ -47,12 +47,12 @@ laplace(log(z),w,z)
 --R           z
 --R                                                     Type: Expression Integer
 --E 2
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/bug103.input.pamphlet b/src/input/bug103.input.pamphlet
index 5cce18b..f3d7a64 100644
--- a/src/input/bug103.input.pamphlet
+++ b/src/input/bug103.input.pamphlet
@@ -9,13 +9,13 @@
 \eject
 \tableofcontents
 \eject
-@
+
 The call
 \begin{verbatim}
   solve(z=z,z)
 \end{verbatim}
 fails with:
- \begin{verbatim}
+\begin{verbatim}
    >> Error detected within library code:
    (1 . failed) cannot be coerced to mode (Polynomial (Integer))
 \end{verbatim}
@@ -47,7 +47,7 @@ succeeds with:
   [0= 0]
                 Type: List Equation Fraction Polynomial Integer
 \end{verbatim}
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool bug103.output
 )set message test on
@@ -61,7 +61,7 @@ solve(z=z,z)
 --R   (1)  [0= 0]
 --R                              Type: List Equation Fraction Polynomial Integer
 --E 1
-@
+\end{chunk}
 If we substitute z for %I we get:
 \begin{verbatim}
            z
@@ -71,11 +71,11 @@ If we substitute z for %I we get:
 
 \end{verbatim}
 which is the original input integral.
-<<*>>=
+\begin{chunk}{*}
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/bug10312.input.pamphlet b/src/input/bug10312.input.pamphlet
index b8bdf2c..78832a5 100644
--- a/src/input/bug10312.input.pamphlet
+++ b/src/input/bug10312.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool bug10312.output
 )set message test on
@@ -46,7 +46,7 @@ p:=(1/2+n)::UTS(FRAC INT, 'n, 0)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/bug6357.input.pamphlet b/src/input/bug6357.input.pamphlet
index 794584d..821e4cc 100644
--- a/src/input/bug6357.input.pamphlet
+++ b/src/input/bug6357.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool bug6357.output
 )set message test on
@@ -51,7 +51,7 @@ sqrt(-1/abs(x))-1/sqrt(-abs(x))
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/bug9057.input.pamphlet b/src/input/bug9057.input.pamphlet
index 065d52a..8e5397e 100644
--- a/src/input/bug9057.input.pamphlet
+++ b/src/input/bug9057.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool bug9057.output
 )set message test on
@@ -113,7 +113,7 @@ f(1)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/bugs.input.pamphlet b/src/input/bugs.input.pamphlet
index 1ac2c27..49b11c9 100644
--- a/src/input/bugs.input.pamphlet
+++ b/src/input/bugs.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool bugs.output
 )set message test on
@@ -551,7 +551,7 @@ f5 n == if n=0 or n=1 then 1 else f5(n-1)+f5(n-2)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/c02aff.input.pamphlet b/src/input/c02aff.input.pamphlet
index e1368da..7c52645 100644
--- a/src/input/c02aff.input.pamphlet
+++ b/src/input/c02aff.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -25,7 +25,7 @@ a:Matrix SF:=
 n:=ncols(a)-1
 scale:=true
 result:=c02aff(a,n,scale,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/c02agf.input.pamphlet b/src/input/c02agf.input.pamphlet
index 9f3111c..c24d269 100644
--- a/src/input/c02agf.input.pamphlet
+++ b/src/input/c02agf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -24,7 +24,7 @@ a:Matrix SF:=
 n:=ncols(a)-1
 scale:=true
 result:=c02agf(a,n,scale,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/c05adf.input.pamphlet b/src/input/c05adf.input.pamphlet
index 143b661..5938fe7 100644
--- a/src/input/c05adf.input.pamphlet
+++ b/src/input/c05adf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -25,7 +25,7 @@ b:SF:=1.0
 eps:SF:=1.0e-5
 eta:SF:=0.0
 result:= c05adf(a,b,eps,eta,-1,f)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/c05nbf.input.pamphlet b/src/input/c05nbf.input.pamphlet
index d0a2ad6..e2042da 100644
--- a/src/input/c05nbf.input.pamphlet
+++ b/src/input/c05nbf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -35,7 +35,7 @@ fi:ASP6(FCN):=retract vector[_
 x:Matrix SF:=
  [[-1.0 ,-1.0 ,-1.0 ,-1.0 ,-1.0 ,-1.0 ,-1.0 ,-1.0 ,-1.0 ]]
 result:=c05nbf(n,lwa,x,xtol,-1,fi)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/c05pbf.input.pamphlet b/src/input/c05pbf.input.pamphlet
index 44a3365..f0bb1e9 100644
--- a/src/input/c05pbf.input.pamphlet
+++ b/src/input/c05pbf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -36,7 +36,7 @@ fcn:ASP35(FCN):=retract vector[_
 -X[7] + 3*X[8] - 2*X[8]**2 - 2*X[9] + 1,_
 -X[8] + 3*X[9] - 2*X[9]**2 + 1]
 result:=c05pbf(n,ldfjac,lwa,x,xtol,-1,fcn)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/c06eaf.input.pamphlet b/src/input/c06eaf.input.pamphlet
index 8aa6d37..a38b451 100644
--- a/src/input/c06eaf.input.pamphlet
+++ b/src/input/c06eaf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -23,7 +23,7 @@ x:Matrix SF:=
  [[0.34907 ,0.54890 ,0.74776 ,0.94459 ,1.13850 ,1.32850 ,1.51370 ]]
 n:=ncols x
 result:=c06eaf(n,x,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/c06ebf.input.pamphlet b/src/input/c06ebf.input.pamphlet
index 8d13150..0e9cd1f 100644
--- a/src/input/c06ebf.input.pamphlet
+++ b/src/input/c06ebf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -23,7 +23,7 @@ x:Matrix SF:=
  [[0.34907 ,0.54890 ,0.74776 ,0.94459 ,1.13850 ,1.32850 ,1.51370 ]]
 n:=ncols x
 result:=c06ebf(n,x,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/c06ecf.input.pamphlet b/src/input/c06ecf.input.pamphlet
index 0995342..d08ecec 100644
--- a/src/input/c06ecf.input.pamphlet
+++ b/src/input/c06ecf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -25,7 +25,7 @@ y:Matrix SF:=
  [[-0.37168 ,-0.35669 ,-0.31175 ,-0.23702 ,-0.13274 ,0.00074 ,0.16298 ]]
 n:=ncols x
 result:=c06ecf(n,x,y,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/c06ekf.input.pamphlet b/src/input/c06ekf.input.pamphlet
index ad89d54..fa71e04 100644
--- a/src/input/c06ekf.input.pamphlet
+++ b/src/input/c06ekf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -28,7 +28,7 @@ job:=1
 c06ekf(job,n,x,y,-1)
 job:=2
 result:=c06ekf(job,n,x,y,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/c06fpf.input.pamphlet b/src/input/c06fpf.input.pamphlet
index e4633c8..d30ba9e 100644
--- a/src/input/c06fpf.input.pamphlet
+++ b/src/input/c06fpf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -28,7 +28,7 @@ n:=ncols x
 trig:Matrix SF:=new(1,2*n,0.0@SF)
 init:="i"
 result:=c06fpf(m,n,init,x,trig,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/c06fqf.input.pamphlet b/src/input/c06fqf.input.pamphlet
index 920d6ca..0d8e305 100644
--- a/src/input/c06fqf.input.pamphlet
+++ b/src/input/c06fqf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -28,7 +28,7 @@ n:=ncols x
 trig:Matrix SF:=new(1,2*n,0.0@SF)
 init:="i"
 result:=c06fqf(m,n,init,x,trig,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/c06frf.input.pamphlet b/src/input/c06frf.input.pamphlet
index 3fb0462..d16a275 100644
--- a/src/input/c06frf.input.pamphlet
+++ b/src/input/c06frf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -32,7 +32,7 @@ n:=ncols x
 trig:Matrix SF:=new(1,2*n,0.0@SF)
 init:="i"
 result:=c06frf(m,n,init,x,y,trig,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/c06fuf.input.pamphlet b/src/input/c06fuf.input.pamphlet
index c3bca82..0418c06 100644
--- a/src/input/c06fuf.input.pamphlet
+++ b/src/input/c06fuf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -33,7 +33,7 @@ trigm:Matrix SF:=new(1,2*m,0.0@SF)
 trign:Matrix SF:=new(1,2*n,0.0@SF)
 init:="i"
 result:=c06fuf(m,n,init,x,y,trigm,trign,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/c06gbf.input.pamphlet b/src/input/c06gbf.input.pamphlet
index 98d4225..b0492a1 100644
--- a/src/input/c06gbf.input.pamphlet
+++ b/src/input/c06gbf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -23,7 +23,7 @@ x:Matrix SF:=
  [[0.34907 ,0.54890 ,0.74776 ,0.94459 ,1.13850 ,1.32850 ,1.51370 ]]
 n:=ncols x
 result:=c06gbf(n,x,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/c06gcf.input.pamphlet b/src/input/c06gcf.input.pamphlet
index 96b1dfb..cfdb337 100644
--- a/src/input/c06gcf.input.pamphlet
+++ b/src/input/c06gcf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -23,7 +23,7 @@ y:Matrix SF:=
  [[-0.37168 ,-0.35669 ,-0.31175 ,-0.23702 ,0.00074 ,0.16298 ,1.51370 ]]
 n:=ncols y
 result:=c06gcf(n,y,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/c06gqf.input.pamphlet b/src/input/c06gqf.input.pamphlet
index e1516b5..270edda 100644
--- a/src/input/c06gqf.input.pamphlet
+++ b/src/input/c06gqf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -26,7 +26,7 @@ x:Matrix SF:=
 m:=nrows x
 n:=ncols x
 result:=c06gqf(m,n,x,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/c06gsf.input.pamphlet b/src/input/c06gsf.input.pamphlet
index 8649441..983655e 100644
--- a/src/input/c06gsf.input.pamphlet
+++ b/src/input/c06gsf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -26,7 +26,7 @@ x:Matrix SF:=
 m:=nrows x
 n:=ncols x
 result:=c06gsf(m,n,x,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/calcprob.input.pamphlet b/src/input/calcprob.input.pamphlet
index 1087643..6bcce4f 100644
--- a/src/input/calcprob.input.pamphlet
+++ b/src/input/calcprob.input.pamphlet
@@ -10,7 +10,7 @@ Cover a range of calculus problems
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool calcprob.output
 )set message test on
@@ -115,7 +115,7 @@ y=m*x+b
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/calculus.input.pamphlet b/src/input/calculus.input.pamphlet
index f919e35..b9cc9e1 100644
--- a/src/input/calculus.input.pamphlet
+++ b/src/input/calculus.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool calculus.output
 )set message test on
@@ -285,7 +285,7 @@ differentiate(g, [y, y, x, x])
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/calculus2.input.pamphlet b/src/input/calculus2.input.pamphlet
index be27eb1..7188646 100644
--- a/src/input/calculus2.input.pamphlet
+++ b/src/input/calculus2.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool calculus2.output
 )set message test on
@@ -1381,7 +1381,7 @@ sum4
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/card.input.pamphlet b/src/input/card.input.pamphlet
index af4daed..3cb5489 100644
--- a/src/input/card.input.pamphlet
+++ b/src/input/card.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool card.output
 )set message test on
@@ -182,7 +182,7 @@ f := 2**c
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/cardinal.input.pamphlet b/src/input/cardinal.input.pamphlet
index f751f65..2204d71 100644
--- a/src/input/cardinal.input.pamphlet
+++ b/src/input/cardinal.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool cardinal.output
 )set message test on
@@ -148,7 +148,7 @@ generalizedContinuumHypothesisAssumed true
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/carten.input.pamphlet b/src/input/carten.input.pamphlet
index e553efb..7b563c8 100644
--- a/src/input/carten.input.pamphlet
+++ b/src/input/carten.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool carten.output
 )set message test on
@@ -486,7 +486,7 @@ contract(epsilon*Tm*epsilon, 1,2) = 2 * determinant m
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/cclass.input.pamphlet b/src/input/cclass.input.pamphlet
index a4ce8e0..0a1fd64 100644
--- a/src/input/cclass.input.pamphlet
+++ b/src/input/cclass.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool cclass.output
 )set message test on
@@ -152,7 +152,7 @@ remove!(char "b", cl2)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/cdraw.input.pamphlet b/src/input/cdraw.input.pamphlet
index 8d07d8a..47ca740 100644
--- a/src/input/cdraw.input.pamphlet
+++ b/src/input/cdraw.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 
 -- complex surface and vector field drawing by SCM
 -- complex surface vector field drawing
@@ -156,7 +156,7 @@ setClipValue clip ==
 clipFun(x:DoubleFloat):DoubleFloat == 
   min(max(x, -clipValue), clipValue)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/ch.input.pamphlet b/src/input/ch.input.pamphlet
index a7a93f8..6b0c20e 100644
--- a/src/input/ch.input.pamphlet
+++ b/src/input/ch.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool ch.output
 )set message test on
@@ -178,7 +178,7 @@ gb := groebnerFactorize [fxn,fyn,fzn]
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/char.input.pamphlet b/src/input/char.input.pamphlet
index 030135c..dfa2beb 100644
--- a/src/input/char.input.pamphlet
+++ b/src/input/char.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool char.output
 )set message test on
@@ -128,7 +128,7 @@ escape()
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/chtheorem.input.pamphlet b/src/input/chtheorem.input.pamphlet
index a756a18..de19938 100644
--- a/src/input/chtheorem.input.pamphlet
+++ b/src/input/chtheorem.input.pamphlet
@@ -10,7 +10,7 @@ the real or complex field satisfies its own characteristic equation.
 \end{abstract}
 \eject
 \tableofcontents
-\eject
+
 \section{Definition}
 The Cayley-Hamilton theorem states that every square matrix over
 the real or complex field satisfies its own characteristic equation.
@@ -58,7 +58,8 @@ So to compute other powers of A:
 $$A^3=(5A+2I_2)A = 5A^2+2A = 5(5A+2I_2)+2A = 27A+10I_2$$
 $$A^4=A^3A=(27A+10I_2)A = 27A^2+10A = 27(5A+2I_2)+10A$$
 $$A^4=145A+54I_2$$
-<<*>>=
+
+\begin{chunk}{*}
 )set break resume
 )spool chtheorem.output
 )set message test on
@@ -156,8 +157,8 @@ eval(sp,y=sm)
 )spool 
 )lisp (bye)
  
-@
-\eject
+\end{chunk}
+
 \begin{thebibliography}{99}
 \bibitem{1} http://en.wikipedia.org/wiki/Cayley-Hamilton\_theorem
 \end{thebibliography}
diff --git a/src/input/classtalk.input.pamphlet b/src/input/classtalk.input.pamphlet
index e216a34..64028da 100644
--- a/src/input/classtalk.input.pamphlet
+++ b/src/input/classtalk.input.pamphlet
@@ -10,16 +10,16 @@ These are examples from the talk ``Axiom in an Educational Setting''.
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 )spool classtalk.output
 )set message test on
 )set message auto off
 )set break resume
 )clear all
 
-@
+\end{chunk}
 \section{Numbers}
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 72
 1
 --R
@@ -100,9 +100,9 @@ eval(q,[x=5,y=6])
 --R                                                     Type: Polynomial Integer
 --E 11
 
-@
+\end{chunk}
 \section{Trigonometry}
-<<*>>=
+\begin{chunk}{*}
 --S 12 of 72
 b:=[log a, exp a, asin a, acos a, atan a, acot a, sinh a]
 --R
@@ -149,9 +149,9 @@ simplify(sin(x)**2+cos(x)**2)
 --R                                                     Type: Expression Integer
 --E 17
 
-@
+\end{chunk}
 \section{Polynomial Manipulations}
-<<*>>=
+\begin{chunk}{*}
 )clear all
 --S 18 of 72
 eq1:=A*x^2 + B*x*y + C*y^2 + D*x + E*y + F
@@ -190,9 +190,9 @@ eval(eq1,[x=rotatex, y=rotatey])
 --R                                                     Type: Expression Integer
 --E 21
 
-@
+\end{chunk}
 \section{Polynomials over Simple Algebraic Extension Fields}
-<<*>>=
+\begin{chunk}{*}
 )clear all
 --S 22 of 72
 a:=rootOf(a^2+a+1)
@@ -234,9 +234,9 @@ zerosOf(b^2+b+1,b)
 --R                                                Type: List Expression Integer
 --E 26
 
-@
+\end{chunk}
 \section{Derivatives}
-<<*>>=
+\begin{chunk}{*}
 --S 27 of 72
 differentiate(sin(x),x)
 --R
@@ -290,9 +290,9 @@ solve(deqx,y,x)
 --RType: Union(Record(particular: Expression Integer,basis: List Expression Integer),...)
 --E 32
 
-@
+\end{chunk}
 \section{Limits}
-<<*>>=
+\begin{chunk}{*}
 )clear all
 --S 33 of 72
 limit((x^2-3*x+2)/(x^2-1),x=1)
@@ -336,9 +336,9 @@ complexLimit((2+z)/(1-z),z=%infinity)
 --R                         Type: OnePointCompletion Fraction Polynomial Integer
 --E 37
 
-@
+\end{chunk}
 \section{Indefinite Integration}
-<<*>>=
+\begin{chunk}{*}
 )clear all
 --S 38 of 72
 integrate(1+sqrt(x)/x,x)
@@ -355,10 +355,10 @@ integrate(sin(x)/x,x)
 --R                                          Type: Union(Expression Integer,...)
 --E 39
 
-@
+\end{chunk}
 This used to give the answer:
 $$\frac{\sqrt{x}\sqrt{\pi} erf(x\sqrt{a})}{2a}$$
-<<*>>=
+\begin{chunk}{*}
 --S 40 of 72
 integrate(exp(-a*x^2),x)
 --R
@@ -380,9 +380,9 @@ integrate(sin(x)/x^2,x)
 --R                                          Type: Union(Expression Integer,...)
 --E 41
 
-@
+\end{chunk}
 \section{Definite Integration}
-<<*>>=
+\begin{chunk}{*}
 )clear all
 --S 42 of 72
 integrate(exp(-x)/sqrt(x),x=0..%plusInfinity)
@@ -407,10 +407,10 @@ integrate(1/x^2,x=-1..1)
 
 )clear all
 
-@
+\end{chunk}
 This used to return
 $$\frac{4\log{(4)}-8\log{(2)}+3\pi}{12}$$
-<<*>>=
+\begin{chunk}{*}
 --S 44 of 72
 integrate(sin(x)^3/(sin(x)^3+cos(x)^3),x=0..%pi/2,"noPole")
 --R
@@ -431,9 +431,9 @@ integrate(exp(-x^2)*log(x)^2,x=0..%plusInfinity)
 --R                    Type: Union(f1: OrderedCompletion Expression Integer,...)
 --E 45
 
-@
+\end{chunk}
 \section{Laplace Transformations}
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 46 of 72
@@ -473,11 +473,11 @@ laplace(exp(a*t+b)*Ei(c*t),t,s)
 --R                                                     Type: Expression Integer
 --E 49
 
-@
+\end{chunk}
 \section{Clifford Algebras}
 {\tt CliffordAlgebra(n,K,Q)} defines a vector space of dimension $2^n$
 over $K$, given a quadratic form $Q$ on $K^n$ (e.q. quaternions).
-<<*>>=
+\begin{chunk}{*}
 )clear all
 --S 50 of 72
 K:=Fraction Polynomial Integer
@@ -555,9 +555,9 @@ x*y
 --R                  Type: CliffordAlgebra(2,Fraction Polynomial Integer,MATRIX)
 --E 58
 
-@
+\end{chunk}
 \section{Taylor Series}
-<<*>>=
+\begin{chunk}{*}
 )clear all
 --S 59 of 72
 taylor(sin(x),x=0)
@@ -568,9 +568,9 @@ taylor(sin(x),x=0)
 --R                         Type: UnivariateTaylorSeries(Expression Integer,x,0)
 --E 59
 
-@
+\end{chunk}
 \section{Laurent Series}
-<<*>>=
+\begin{chunk}{*}
 --S 60 of 72
 laurent(x/log(x),x=1)
 --R
@@ -589,9 +589,9 @@ laurent(x/log(x),x=1)
 --R                        Type: UnivariateLaurentSeries(Expression Integer,x,1)
 --E 60
 
-@
+\end{chunk}
 \section{Puiseux Series}
-<<*>>=
+\begin{chunk}{*}
 --S 61 of 72
 puiseux(sqrt(sec(x)),x=3*%pi/2)
 --R 
@@ -604,9 +604,9 @@ puiseux(sqrt(sec(x)),x=3*%pi/2)
 --R                 Type: UnivariatePuiseuxSeries(Expression Integer,x,(3*pi)/2)
 --E 61
 
-@
+\end{chunk}
 \section{General Series}
-<<*>>=
+\begin{chunk}{*}
 --S 62 of 72
 series(x^x,x=0)
 --R
@@ -623,9 +623,9 @@ series(x^x,x=0)
 --R                   Type: GeneralUnivariatePowerSeries(Expression Integer,x,0)
 --E 62
 
-@
+\end{chunk}
 \section{Matrices}
-<<*>>=
+\begin{chunk}{*}
 )clear all
 --S 63 of 72
 m:=matrix [[1,2],[3,4]]
@@ -691,9 +691,9 @@ inverse(hilb)
 --R                                     Type: Union(Matrix Fraction Integer,...)
 --E 68
 
-@
+\end{chunk}
 \section{Systems of Equations}
-<<*>>=
+\begin{chunk}{*}
 )clear all
 --S 69 of 72
 solve([x+y+z=8,3*x-2*y+z=0,x+2*y+2*z=17],[x,y,z])
@@ -725,7 +725,7 @@ solve([[1,2,3],[2,3,4],[3,4,5]],[2,2,2])
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/clif.input.pamphlet b/src/input/clif.input.pamphlet
index f97e491..d39c038 100644
--- a/src/input/clif.input.pamphlet
+++ b/src/input/clif.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool clif.output
 )set message test on
@@ -359,7 +359,7 @@ rhs := 2*(gam s * gam m*gam n*gam r + gam r*gam n*gam m*gam s)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/clifford.input.pamphlet b/src/input/clifford.input.pamphlet
index ed87a03..03cbe72 100644
--- a/src/input/clifford.input.pamphlet
+++ b/src/input/clifford.input.pamphlet
@@ -27,10 +27,10 @@ gaussians, quaternions, exterior algebras and spin algebras.
 Choose rational functions as the ground field.
 
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool clifford.output
 )set message test on
@@ -316,13 +316,13 @@ x * y + y * x
 --R                  Type: CliffordAlgebra(3,Fraction Polynomial Integer,MATRIX)
 --E 29
 
-@
+\end{chunk}
 In n space, a grade p form has a dual n-p form.
 In particular, in 3 space the dual of a grade 2 element identifies
 \begin{verbatim}
    e1*e2->e3, e2*e3->e1, e3*e1->e2.
 \end{verbatim}
-<<*>>=
+\begin{chunk}{*}
 --S 30 of 39
 dual2 a ==
     coefficient(a,[2,3])$Ext * i + _
@@ -332,9 +332,9 @@ dual2 a ==
 --R                                                                   Type: Void
 --E 30
 
-@
+\end{chunk}
 The vector cross product is then given by
-<<*>>=
+\begin{chunk}{*}
 --S 31 of 39
 dual2(x*y)
 --R 
@@ -347,9 +347,9 @@ dual2(x*y)
 --R                  Type: CliffordAlgebra(3,Fraction Polynomial Integer,MATRIX)
 --E 31
 
-@ 
+\end{chunk} 
 The Dirac Algebra used in Quantum Field Theory.
-<<*>>=
+\begin{chunk}{*}
 )clear p qf
  
 --S 32 of 39
@@ -396,9 +396,9 @@ D := CLIF(4,K,qf)
 --R                                                                 Type: Domain
 --E 35
 
-@ 
+\end{chunk} 
 The usual notation is $\gamma^i$.
-<<*>>=
+\begin{chunk}{*}
 --S 36 of 39
 gam := [e(i)$D for i in 1..4]
 --R 
@@ -408,14 +408,14 @@ gam := [e(i)$D for i in 1..4]
 --R                        Type: List CliffordAlgebra(4,Fraction Integer,MATRIX)
 --E 36
  
-@
+\end{chunk}
 There are various contraction identities of the form:
 \begin{verbatim}
  g(l,t)*gam(l)*gam(m)*gam(n)*gam(r)*gam(s)*gam(t) =
      2*(gam(s)gam(m)gam(n)gam(r) + gam(r)*gam(n)*gam(m)*gam(s))
 \end{verbatim}
 where the sum over l and t is implied.
-<<*>>=
+\begin{chunk}{*}
 
 -- Verify this identity for m=1,n=2,r=3,s=4
 --S 37 of 39
@@ -446,7 +446,7 @@ rhs := 2*(gam s * gam m*gam n*gam r + gam r*gam n*gam m*gam s)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/cmds.input.pamphlet b/src/input/cmds.input.pamphlet
index 001cd25..fec54d4 100644
--- a/src/input/cmds.input.pamphlet
+++ b/src/input/cmds.input.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool cmds.output
 )set message test on
@@ -836,9 +836,9 @@
 --R ZDSOLVE  ZeroDimensionalSolvePackage  ZLINDEP  IntegerLinearDependence
 --E 15
 
-@
+\end{chunk}
 This exercises setOutputLibrary, setInputLibrary, and setAsharpArgs
-<<*>>=
+\begin{chunk}{*}
 --S 16 of 23
 )set compiler
 --R 
@@ -852,9 +852,9 @@ This exercises setOutputLibrary, setInputLibrary, and setAsharpArgs
 --R
 --E 16
 
-@
+\end{chunk}
 This exercises setInputLibrary, describeInputLibraryArgs
-<<*>>=
+\begin{chunk}{*}
 --S 17 of 23
 )set compiler input
 --R 
@@ -881,9 +881,9 @@ This exercises setInputLibrary, describeInputLibraryArgs
 )set compiler input add foo
 --E 19
 
-@
+\end{chunk}
 This exercises setOutputLibrary
-<<*>>=
+\begin{chunk}{*}
 --S 20 of 23
 )set compiler output
 --R---------------------------- The output Option ----------------------------
@@ -895,9 +895,9 @@ This exercises setOutputLibrary
 --Rin a file called user.lib in the current directory.
 --E 20
 
-@
+\end{chunk}
 This exercises setAsharpArgs
-<<*>>=
+\begin{chunk}{*}
 --S 21 of 23
 )set compiler args
 --R----------------------------- The args Option -----------------------------
@@ -912,9 +912,9 @@ This exercises setAsharpArgs
 --R "-O -Fasy -Fao -Flsp -laxiom -Mno-AXL_W_WillObsolete -DAxiom -Y $AXIOM/algebra" 
 --E 21
 
-@
+\end{chunk}
 This exercises setAsharpArgs
-<<*>>=
+\begin{chunk}{*}
 --S 22 of 23
 )set compiler args "-TPD"
 --E 22
@@ -936,7 +936,7 @@ This exercises setAsharpArgs
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/coercels.input.pamphlet b/src/input/coercels.input.pamphlet
index cbdc7e9..d06538f 100644
--- a/src/input/coercels.input.pamphlet
+++ b/src/input/coercels.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool coercels.output
 )set message test on
@@ -88,7 +88,7 @@ basis  := [p,q,p*p,p*q, q*p,q*q, p*q*q, p*q*p, q*p*q,q*q*p,q*p*q*q,q*q*p*q]
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/collect.input.pamphlet b/src/input/collect.input.pamphlet
index d8e0e09..68f961b 100644
--- a/src/input/collect.input.pamphlet
+++ b/src/input/collect.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool collect.output
 )set message test on
@@ -527,7 +527,7 @@ u(16)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/color.input.pamphlet b/src/input/color.input.pamphlet
index 131467c..4bbf5ed 100644
--- a/src/input/color.input.pamphlet
+++ b/src/input/color.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 -- test input of Color domain
 numberOfHues()
 red()
@@ -33,7 +33,7 @@ g := color 13
 draw(x**2,x=-1..1,curveColor == g + 2*blue())
 
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/complex.input.pamphlet b/src/input/complex.input.pamphlet
index 565175d..8973be9 100644
--- a/src/input/complex.input.pamphlet
+++ b/src/input/complex.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool complex.output
 )set message test on
@@ -173,7 +173,7 @@ factor complex(2,0)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/cone.input.pamphlet b/src/input/cone.input.pamphlet
index 9c45e1d..808a424 100644
--- a/src/input/cone.input.pamphlet
+++ b/src/input/cone.input.pamphlet
@@ -9,10 +9,10 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 -- graph of a cone
 draw(surface(u*cos(v),u*sin(v),u),u = -3..3,v = 0..2*%pi,[title "Cone"])
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/conformal.input.pamphlet b/src/input/conformal.input.pamphlet
index 0a4a878..7d67101 100644
--- a/src/input/conformal.input.pamphlet
+++ b/src/input/conformal.input.pamphlet
@@ -10,16 +10,16 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
+\end{chunk}
 Drawing conformal maps.
 
 The functions in this file draw conformal maps both on the
 complex plane and on the Riemann sphere.
 
 Compile, don't interpret functions.
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )set fun comp on
 )spool conformal.output
@@ -50,7 +50,7 @@ R3 := POINT DoubleFloat                         -- points in 3-space
 --R   (3)  Point DoubleFloat
 --R                                                                 Type: Domain
 --E 3
-@
+\end{chunk}
 The conformalDraw(f, rRange, tRange, rSteps, tSteps, coord) function
 draws the image of the coordinate grid under f in the complex plane.
 The grid may be given in either polar or cartesian coordinates.
@@ -62,7 +62,7 @@ parameter descriptions:
 \item tSteps, rSteps: the number of intervals in each direction
 \item coord: the coordinate system to use.  Either ``polar'' or ``cartesian''
 \end{itemize}
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 18
 conformalDraw: (C -> C, S, S, PI, PI, String) -> VIEW3D
 --R 
@@ -81,7 +81,7 @@ conformalDraw(f, rRange, tRange, rSteps, tSteps, coord) ==
 --R 
 --R                                                                   Type: Void
 --E 5
-@
+\end{chunk}
 The riemannConformalDraw(f, rRange, tRange, rSteps, tSteps, coord) function
 draws the image of the coordinate grid under f on the Riemann sphere.
 The grid may given in either polar or cartesian coordinates.
@@ -93,7 +93,7 @@ parameter descriptions:
 \item tSteps, rSteps: the number of intervals in each direction
 \item coord: the coordinate system to use. either ``polar'' or ``cartesian''
 \end{itemize}
-<<*>>=
+\begin{chunk}{*}
 --S 6 of 18
 riemannConformalDraw: (C -> C, S, S, PI, PI, String) -> VIEW3D
 --R 
@@ -114,10 +114,10 @@ riemannConformalDraw(f, rRange, tRange, rSteps, tSteps, coord) ==
 --R 
 --R                                                                   Type: Void
 --E 7
-@
+\end{chunk}
 Plot the coordinate grid using adaptive plotting for the coordinate
 lines, and drawing tubes around the lines.
-<<*>>=
+\begin{chunk}{*}
 --S 8 of 18
 adaptGrid(sp, f, uRange, vRange,  uSteps, vSteps) ==
   delU := (hi(uRange) - lo(uRange))/uSteps
@@ -147,9 +147,9 @@ adaptGrid(sp, f, uRange, vRange,  uSteps, vSteps) ==
 --R 
 --R                                                                   Type: Void
 --E 8
-@
+\end{chunk}
 map a point in the complex plane to the Riemann sphere.
-<<*>>=
+\begin{chunk}{*}
 --S 9 of 18
 riemannTransform(z) ==
   r := sqrt norm z
@@ -162,9 +162,9 @@ riemannTransform(z) ==
 --R 
 --R                                                                   Type: Void
 --E 9
-@
+\end{chunk}
 convert cartesian coordinates to cartesian form complex
-<<*>>=
+\begin{chunk}{*}
 --S 10 of 18
 cartesian2Complex(r:DoubleFloat, i:DoubleFloat):C == complex(r, i)
 --R 
@@ -172,9 +172,9 @@ cartesian2Complex(r:DoubleFloat, i:DoubleFloat):C == complex(r, i)
 --R       -> Complex DoubleFloat has been added to workspace.
 --R                                                                   Type: Void
 --E 10
-@
+\end{chunk}
 convert polar coordinates to cartesian form complex
-<<*>>=
+\begin{chunk}{*}
 --S 11 of 18
 polar2Complex(r:DoubleFloat, th:DoubleFloat):C == complex(r*cos(th), r*sin(th))
 --R 
@@ -182,11 +182,11 @@ polar2Complex(r:DoubleFloat, th:DoubleFloat):C == complex(r*cos(th), r*sin(th))
 --R      Complex DoubleFloat has been added to workspace.
 --R                                                                   Type: Void
 --E 11
-@
+\end{chunk}
 convert a complex function into a mapping from\\ 
 (DoubleFloat,DoubleFloat) to R3 in the
 complex plane.
-<<*>>=
+\begin{chunk}{*}
 --S 12 of 18
 makeConformalMap(f, transformC) ==
   (u:DoubleFloat,v:DoubleFloat):R3 +->
@@ -195,20 +195,20 @@ makeConformalMap(f, transformC) ==
 --R 
 --R                                                                   Type: Void
 --E 12
-@
+\end{chunk}
 convert a complex function into a mapping from\\
 (DoubleFloat,DoubleFloat) to R3 on the
 Riemann sphere.
-<<*>>=
+\begin{chunk}{*}
 --S 13 of 18
 makeRiemannConformalMap(f, transformC) ==
   (u:DoubleFloat, v:DoubleFloat):R3 +-> riemannTransform f transformC(u, v)
 --R 
 --R                                                                   Type: Void
 --E 13
-@
+\end{chunk}
 draw a picture of the mapping of the complex plane to the Riemann sphere.
-<<*>>=
+\begin{chunk}{*}
 --S 14 of 18
 riemannSphereDraw: (S, S, PI, PI, String) -> VIEW3D
 --R 
@@ -234,10 +234,10 @@ riemannSphereDraw(rRange, tRange, rSteps, tSteps, coord) ==
 --R 
 --R                                                                   Type: Void
 --E 15
-@
+\end{chunk}
 draw the lines which connect the points in the complex plane to
 the north pole of the Riemann sphere.
-<<*>>=
+\begin{chunk}{*}
 --S 16 of 18
 connectingLines(sp, f, uRange, vRange, uSteps, vSteps) ==
   delU := (hi(uRange) - lo(uRange))/uSteps
@@ -269,10 +269,10 @@ riemannSphere(u,v) ==
 --R 
 --R                                                                   Type: Void
 --E 17
-@
+\end{chunk}
 create a line functions which goeas from p1 to p2 as its paramter
 goes from 0 to 1.
-<<*>>=
+\begin{chunk}{*}
 --S 18 of 18
 lineFromTo(p1, p2) ==
   d := p2 - p1
@@ -282,7 +282,7 @@ lineFromTo(p1, p2) ==
 --E 18
 )spool
 )lisp (bye)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/constant.input.pamphlet b/src/input/constant.input.pamphlet
index e517232..19f03c9 100644
--- a/src/input/constant.input.pamphlet
+++ b/src/input/constant.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool constant.output
 )set message test on
@@ -219,12 +219,12 @@ numeric(%e**2)
 --R                                                                  Type: Float
 --E 25
 
-@
+\end{chunk}
 This we don't have. It is the difference of the harmonic series and
 the natural log (e.g. limit 1+1/2+...1/m-log(m))
 This converges slowly, essentially giving 1 more decimal place per
 power of 10 in the sum.
-<<*>>=
+\begin{chunk}{*}
 --S 26 of 37
 gamma:=numeric(sum(1/x,x=1..10000)-log(10000))
 --R 
@@ -241,10 +241,10 @@ numeric(log(%pi))
 --R                                                                  Type: Float
 --E 27
 
-@
+\end{chunk}
 
 This we don't have. it is the golden ratio (1 + sqrt(5))/2
-<<*>>=
+\begin{chunk}{*}
 --S 28 of 37
 phi:=(1+sqrt(5))/2
 --R 
@@ -264,9 +264,9 @@ numeric(phi)
 --R                                                                  Type: Float
 --E 29
 
-@
+\end{chunk}
 Gamma isn't the right to any reasonable precision above so we reset it.
-<<*>>=
+\begin{chunk}{*}
 --S 30 of 37
 gamma:=0.5772156649015328606065120900824024310422
 --R 
@@ -307,12 +307,12 @@ numeric(cos(1))
 --R                                                                  Type: Float
 --E 34
 
-@
+\end{chunk}
 This we don't have. it is the zeta function
 \begin{verbatim}
 numeric(zeta(3))
 \end{verbatim}
-<<*>>=
+\begin{chunk}{*}
 --S 35 of 37
 numeric(log(phi))
 --R 
@@ -339,7 +339,7 @@ numeric(-log(log(2)))
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/contfrac.input.pamphlet b/src/input/contfrac.input.pamphlet
index c982a22..ca7ce02 100644
--- a/src/input/contfrac.input.pamphlet
+++ b/src/input/contfrac.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool contfrac.output
 )set message test on
@@ -442,7 +442,7 @@ q/differentiate q
 
 )set streams calculate 7
 
-@
+\end{chunk}
 This file illustrates continued fractions.
 
 Use the notation 
@@ -451,7 +451,7 @@ for continued fractions
 $$a1/(b1 + (a2/b2 + ... (an/bn) ...))$$
  
 $1/(e-1)$ may be written  $\phi(i/i, i = 1..)$
-<<*>>=
+\begin{chunk}{*}
 --S 35 of 40
 s := continuedFraction(0, expand [1..], expand [1..])
 --R 
@@ -462,9 +462,9 @@ s := continuedFraction(0, expand [1..], expand [1..])
 --R                                              Type: ContinuedFraction Integer
 --E 35
 
-@
+\end{chunk}
 Euler discovered the relation $$(e-1)/(e+1) = \phi(1/(4i-2), i = 1..)$$
-<<*>>=
+\begin{chunk}{*}
 --S 36 of 40
 t := reducedContinuedFraction(0, [4*i-2 for i in 1..])
 --R 
@@ -475,11 +475,11 @@ t := reducedContinuedFraction(0, [4*i-2 for i in 1..])
 --R                                              Type: ContinuedFraction Integer
 --E 36
 
-@
+\end{chunk}
 Arithmetic on infinite continued fractions is supported.  The results
 are given in reduced form.  We illustrate by using the values 
 $s = 1/(e-1)$ and $t = (e-1)/(e+1)$ to recover the expansion for $e$.
-<<*>>=
+\begin{chunk}{*}
 --S 37 of 40
 e := 1/(s*t) - 1
 --R 
@@ -532,7 +532,7 @@ for i in 1..15 repeat
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/contfrc.input.pamphlet b/src/input/contfrc.input.pamphlet
index d519ee7..500ad70 100644
--- a/src/input/contfrc.input.pamphlet
+++ b/src/input/contfrc.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool contfrc.output
 )set message test on
@@ -258,7 +258,7 @@ continuedFraction r
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/coordsys.input.pamphlet b/src/input/coordsys.input.pamphlet
index af2f312..a45d16c 100644
--- a/src/input/coordsys.input.pamphlet
+++ b/src/input/coordsys.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 -- test input for CoordinateSystems package
 draw(sin(x),x=0.5..%pi,coordinates == bipolar(1$DFLOAT))
 m(u:DFLOAT,v:DFLOAT):DFLOAT == 1
@@ -71,7 +71,7 @@ draw(m,0..2*%pi,0..%pi,coordinates == spherical)
 draw(surface(u*cos(v),u*sin(v),u),u=1..4,v=1..4*%pi,coordinates == toroidal(1$DFLOAT))
 
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/curl.input.pamphlet b/src/input/curl.input.pamphlet
index 7366aa8..7f64ae9 100644
--- a/src/input/curl.input.pamphlet
+++ b/src/input/curl.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool curl.output
 )set message test on
@@ -34,7 +34,7 @@ draw(curve(sin(t)*sin(2*t)*sin(3*t),sin(4*t)*sin(5*t)*sin(6*t)),t = 0..2*%pi)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/cwmmt.input.pamphlet b/src/input/cwmmt.input.pamphlet
index c8c8a69..5b899f9 100644
--- a/src/input/cwmmt.input.pamphlet
+++ b/src/input/cwmmt.input.pamphlet
@@ -8,11 +8,11 @@
 \end{abstract}
 \eject
 \tableofcontents
-\eject
+
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
+\end{chunk}
 \begin{chunk}{cwmmt.spad}
 
 --Note that the chunk enviroment allows math mode \(x^2+y^2=z^2\)
@@ -96,7 +96,7 @@ CompWithMappingModeTest() : Exports == Implementation where
                  and test10(1)
 
 \end{chunk}
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool cwmmt.output
 )sys cp $AXIOM/../../src/input/cwmmt.input.pamphlet .
@@ -115,7 +115,7 @@ runTests()
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/cycles.input.pamphlet b/src/input/cycles.input.pamphlet
index 0940275..dce7bb4 100644
--- a/src/input/cycles.input.pamphlet
+++ b/src/input/cycles.input.pamphlet
@@ -10,17 +10,17 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool cycles.output
 )set message test on
 )set message auto off
 )clear all
 
-@ 
+\end{chunk} 
 Examples of Polya-Redfield enumeration methods.
 
 This file is based upon the paper
@@ -46,7 +46,7 @@ of its permutations divided by the number of permutations.
 
 The cycle indices of certain groups are provided.
 complete $n$ is the cycle index of the symmetric group of order $n$
-<<*>>=
+\begin{chunk}{*}
 
 )clear all
 
@@ -99,9 +99,9 @@ complete 7
 --R                                   Type: SymmetricPolynomial Fraction Integer
 --E 4
 
-@
+\end{chunk}
 The function {\tt elementary n} is the nth elementary symmetric function.
-<<*>>=
+\begin{chunk}{*}
 --S 5 of 46
 elementary 7
 --R 
@@ -121,10 +121,10 @@ elementary 7
 --R                                   Type: SymmetricPolynomial Fraction Integer
 --E 5
 
-@
+\end{chunk}
 The function {\tt alternating n} is the cycle index of the alternating group
 having an even number of even parts in each cycle partition.
-<<*>>=
+\begin{chunk}{*}
 --S 6 of 46
 alternating 7
 --R 
@@ -140,9 +140,9 @@ alternating 7
 --R                                   Type: SymmetricPolynomial Fraction Integer
 --E 6
 
-@
+\end{chunk}
 The function {\tt cyclic n} is the cycle index of the cyclic group
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 46
 cyclic 7
 --R 
@@ -153,9 +153,9 @@ cyclic 7
 --R                                   Type: SymmetricPolynomial Fraction Integer
 --E 7
 
-@
+\end{chunk}
 The function {\tt dihedral n} is the cycle index of the dihedral group
-<<*>>=
+\begin{chunk}{*}
 --S 8 of 46
 dihedral 7
 --R 
@@ -166,11 +166,11 @@ dihedral 7
 --R                                   Type: SymmetricPolynomial Fraction Integer
 --E 8
 
-@
+\end{chunk}
 The function {\tt graphs n} is the cycle index of the group of 
 permutations on the edges of the complete graph with n nodes induced 
 by applying the symmetric group to the nodes.
-<<*>>=
+\begin{chunk}{*}
 --S 9 of 46
 graphs 5
 --R 
@@ -182,7 +182,7 @@ graphs 5
 --R                                   Type: SymmetricPolynomial Fraction Integer
 --E 9
 
-@
+\end{chunk}
 The cycle index of a direct product of two groups is the product of the
 cycle indices of the groups.
 Redfield provided two operations on two cycle indices which
@@ -204,7 +204,7 @@ is the number of different sets of four pairs.
   a a b b     a a b b    a a b b   a a b b
   c c d e     c d c e    c e c d   d e c c
 \end{verbatim}
-<<*>>=
+\begin{chunk}{*}
 --S 10 of 46
 cap(complete 2**2,complete 2*complete 1**2)
 --R 
@@ -213,14 +213,14 @@ cap(complete 2**2,complete 2*complete 1**2)
 --R                                                       Type: Fraction Integer
 --E 10
 
-@
+\end{chunk}
 The integer {\tt cap(elementary 2**2,complete 2*complete 1**2)}
 is the number of different sets of four pairs no two pairs being equal.
 \begin{verbatim}
     a a b b    a a b b
     c d c e    c e c d
 \end{verbatim}
-<<*>>=
+\begin{chunk}{*}
 --S 11 of 46
 cap(elementary 2**2,complete 2*complete 1**2)
 --R 
@@ -229,12 +229,12 @@ cap(elementary 2**2,complete 2*complete 1**2)
 --R                                                       Type: Fraction Integer
 --E 11
 
-@
+\end{chunk}
 In this case the configurations enumerated are easily constructed,
 however the theory merely enumerates them providing little help in
 actually constructing them. Similarly the number of 6-pairs, 
 first from {\tt a a a b b c}, second from {\tt d d e e f g}.
-<<*>>=
+\begin{chunk}{*}
 --S 12 of 46
 cap(complete 3*complete 2*complete 1,complete 2**2*complete 1**2)
 --R 
@@ -243,9 +243,9 @@ cap(complete 3*complete 2*complete 1,complete 2**2*complete 1**2)
 --R                                                       Type: Fraction Integer
 --E 12
 
-@
+\end{chunk}
 Same again, but with no equal pairs
-<<*>>=
+\begin{chunk}{*}
 --S 13 of 46
 cap(elementary 3*elementary 2*elementary 1,complete 2**2*complete 1**2)
 --R 
@@ -262,10 +262,10 @@ cap(complete 3*complete 2*complete 1,elementary 2**2*elementary 1**2)
 --R                                                       Type: Fraction Integer
 --E 14
 
-@
+\end{chunk}
 The number of 6-triples, first from {\tt a a a b b c}, second from
 {\tt d d e e f g}, third from {\tt h h i i j j}
-<<*>>=
+\begin{chunk}{*}
 --S 15 of 46
 eval(cup(complete 3*complete 2*complete 1, cup(complete 2**2*complete 1**2,complete 2**3)))
 --R 
@@ -274,9 +274,9 @@ eval(cup(complete 3*complete 2*complete 1, cup(complete 2**2*complete 1**2,compl
 --R                                                       Type: Fraction Integer
 --E 15
 
-@
+\end{chunk}
 The cycle index of vertices of a square is {\tt dihedral 4}
-<<*>>=
+\begin{chunk}{*}
 --S 16 of 46
 square:=dihedral 4
 --R 
@@ -287,9 +287,9 @@ square:=dihedral 4
 --R                                   Type: SymmetricPolynomial Fraction Integer
 --E 16
 
-@
+\end{chunk}
 The number of different squares with 2 red vertices and 2 blue vertices
-<<*>>=
+\begin{chunk}{*}
 --S 17 of 46
 cap(complete 2**2,square)
 --R 
@@ -298,9 +298,9 @@ cap(complete 2**2,square)
 --R                                                       Type: Fraction Integer
 --E 17
 
-@
+\end{chunk}
 The number of necklaces with 3 red beads,2 blue beads and 2 green beads
-<<*>>=
+\begin{chunk}{*}
 --S 18 of 46
 cap(complete 3*complete 2**2,dihedral 7)
 --R 
@@ -309,9 +309,9 @@ cap(complete 3*complete 2**2,dihedral 7)
 --R                                                       Type: Fraction Integer
 --E 18
 
-@
+\end{chunk}
 The number of graphs with 5 nodes and 7 edges
-<<*>>=
+\begin{chunk}{*}
 --S 19 of 46
 cap(graphs 5,complete 7*complete 3)
 --R 
@@ -320,9 +320,9 @@ cap(graphs 5,complete 7*complete 3)
 --R                                                       Type: Fraction Integer
 --E 19
 
-@
+\end{chunk}
 The cycle index of rotations of vertices of a cube
-<<*>>=
+\begin{chunk}{*}
 --S 20 of 46
 macro s == powerSum
 --R 
@@ -339,9 +339,9 @@ cube:=(1/24)*(s 1**8+9*s 2**4 + 8*s 3**2*s 1**2+6*s 4**2)
 --R                                   Type: SymmetricPolynomial Fraction Integer
 --E 21
 
-@
+\end{chunk}
 The number of cubes with 4 red vertices and 4 blue vertices
-<<*>>=
+\begin{chunk}{*}
 --S 22 of 46
 cap(complete 4**2,cube)
 --R 
@@ -350,10 +350,10 @@ cap(complete 4**2,cube)
 --R                                                       Type: Fraction Integer
 --E 22
 
-@
+\end{chunk}
 The number of labeled graphs with degree sequence 2 2 2 1 1
 with no loops or multiple edges
-<<*>>=
+\begin{chunk}{*}
 --S 23 of 46
 cap(complete 2**3*complete 1**2,wreath(elementary 4,elementary 2))
 --R 
@@ -362,9 +362,9 @@ cap(complete 2**3*complete 1**2,wreath(elementary 4,elementary 2))
 --R                                                       Type: Fraction Integer
 --E 23
 
-@
+\end{chunk}
 with loops allowed but not multiple edges
-<<*>>=
+\begin{chunk}{*}
 --S 24 of 46
 cap(complete 2**3*complete 1**2,wreath(elementary 4,complete 2))
 --R 
@@ -373,9 +373,9 @@ cap(complete 2**3*complete 1**2,wreath(elementary 4,complete 2))
 --R                                                       Type: Fraction Integer
 --E 24
 
-@
+\end{chunk}
 with multiple edges allowed, but not loops
-<<*>>=
+\begin{chunk}{*}
 --S 25 of 46
 cap(complete 2**3*complete 1**2,wreath(complete 4,elementary 2))
 --R 
@@ -384,9 +384,9 @@ cap(complete 2**3*complete 1**2,wreath(complete 4,elementary 2))
 --R                                                       Type: Fraction Integer
 --E 25
 
-@
+\end{chunk}
 with both multiple edges and loops allowed
-<<*>>=
+\begin{chunk}{*}
 --S 26 of 46
 cap(complete 2**3*complete 1**2,wreath(complete 4,complete 2))
 --R 
@@ -395,13 +395,13 @@ cap(complete 2**3*complete 1**2,wreath(complete 4,complete 2))
 --R                                                       Type: Fraction Integer
 --E 26
 
-@
+\end{chunk}
 Having constructed a cycle index for a configuration
 we are at liberty to evaluate the $s_i$ components any way we please.
 For example we can produce enumerating generating functions.
 This is done by providing a function $f$ from an integer $i$ to the
 value required of $s_i$, and then evaluating {\tt eval(f,cycleindex)}
-<<*>>=
+\begin{chunk}{*}
 --S 27 of 46
 x:ULS(FRAC INT,'x,0):=x
 --R 
@@ -422,9 +422,9 @@ Integers:INT->ULS(FRAC INT,'x,0)
 --R                                                                   Type: Void
 --E 29
 
-@
+\end{chunk}
 For the integers 0 1 , or two colors
-<<*>>=
+\begin{chunk}{*}
 --S 30 of 46
 ZeroOrOne n == 1+x**n
 --R 
@@ -442,9 +442,9 @@ ZeroOrOne 5
 --R                          Type: UnivariateLaurentSeries(Fraction Integer,x,0)
 --E 31
 
-@
+\end{chunk}
 For the integers 0,1,2,...
-<<*>>=
+\begin{chunk}{*}
 --S 32 of 46
 Integers n == 1/(1-x**n)
 --R 
@@ -462,10 +462,10 @@ Integers 5
 --R                          Type: UnivariateLaurentSeries(Fraction Integer,x,0)
 --E 33
 
-@
+\end{chunk}
 The coefficient of $x^n$ below is the number of graphs with 5 nodes
 and n edges.
-<<*>>=
+\begin{chunk}{*}
 --S 34 of 46
 eval(ZeroOrOne,graphs 5)
 --R 
@@ -475,10 +475,10 @@ eval(ZeroOrOne,graphs 5)
 --R                          Type: UnivariateLaurentSeries(Fraction Integer,x,0)
 --E 34
 
-@
+\end{chunk}
 The coefficient of $x^n$ is the number of necklaces with
 n red beads and n-8 green beads.
-<<*>>=
+\begin{chunk}{*}
 --S 35 of 46
 eval(ZeroOrOne,dihedral 8)
 --R 
@@ -488,10 +488,10 @@ eval(ZeroOrOne,dihedral 8)
 --R                          Type: UnivariateLaurentSeries(Fraction Integer,x,0)
 --E 35
 
-@
+\end{chunk}
 The coefficient of $x^n$ is the number of partitions of n
 into 4 or fewer parts
-<<*>>=
+\begin{chunk}{*}
 --S 36 of 46
 eval(Integers,complete 4)
 --R 
@@ -502,10 +502,10 @@ eval(Integers,complete 4)
 --R                          Type: UnivariateLaurentSeries(Fraction Integer,x,0)
 --E 36
 
-@
+\end{chunk}
 The coefficient of $x^n$ is the number of partitions of n into 4
 boxes containing ordered distinct parts.
-<<*>>=
+\begin{chunk}{*}
 --S 37 of 46
 eval(Integers,elementary 4)
 --R 
@@ -519,13 +519,13 @@ eval(Integers,elementary 4)
 --R                          Type: UnivariateLaurentSeries(Fraction Integer,x,0)
 --E 37
 
-@
+\end{chunk}
 The coefficient of $x^n$ is the number of partitions of n
 into exactly 4 parts.
 
 The coefficient of $x^n$ is the number of different cubes with n
 red vertices and 8-n green ones.
-<<*>>=
+\begin{chunk}{*}
 --S 38 of 46
 eval(ZeroOrOne,cube)
 --R 
@@ -535,10 +535,10 @@ eval(ZeroOrOne,cube)
 --R                          Type: UnivariateLaurentSeries(Fraction Integer,x,0)
 --E 38
 
-@
+\end{chunk}
 The  coefficient of $x^n$ is the number of different cubes with integers
 on the vertices whose sum is n.
-<<*>>=
+\begin{chunk}{*}
 --S 39 of 46
 eval(Integers,cube)
 --R 
@@ -552,12 +552,12 @@ eval(Integers,cube)
 --R                          Type: UnivariateLaurentSeries(Fraction Integer,x,0)
 --E 39
 
-@
+\end{chunk}
 The coefficient of $x^n$ is the number of graphs with 5 nodes and
 with integers on the edges whose sum is n.
 In other words the enumeration is of multigraphs with 5 nodes and n
 edges.
-<<*>>=
+\begin{chunk}{*}
 --S 40 of 46
 eval(Integers,graphs 5)
 --R 
@@ -571,9 +571,9 @@ eval(Integers,graphs 5)
 --R                          Type: UnivariateLaurentSeries(Fraction Integer,x,0)
 --E 40
 
-@
+\end{chunk}
 Graphs with 15 nodes enumerated with respect to number of edges
-<<*>>=
+\begin{chunk}{*}
 --S 41 of 46
 eval(ZeroOrOne ,graphs 15)
 --R 
@@ -587,10 +587,10 @@ eval(ZeroOrOne ,graphs 15)
 --R                          Type: UnivariateLaurentSeries(Fraction Integer,x,0)
 --E 41
 
-@
+\end{chunk}
 Necklaces with 7 green beads, 8 white beads, 5 yellow beads and 10
 red beads.
-<<*>>=
+\begin{chunk}{*}
 --S 42 of 46
 cap(dihedral 30,complete 7*complete 8*complete 5*complete 10)
 --R 
@@ -599,11 +599,11 @@ cap(dihedral 30,complete 7*complete 8*complete 5*complete 10)
 --R                                                       Type: Fraction Integer
 --E 42
 
-@
+\end{chunk}
 The function {\tt SFunction} is the S-function of a partition written
 as a descending list of integers expressed in terms of power sum
 symmetric functions.
-<<*>>=
+\begin{chunk}{*}
 --S 43 of 46
 sf3221:= SFunction [3,2,2,1]
 --R 
@@ -623,14 +623,14 @@ sf3221:= SFunction [3,2,2,1]
 --R                                   Type: SymmetricPolynomial Fraction Integer
 --E 43
 
-@
+\end{chunk}
 It counts the number of different tableaux of shape 3,2,2,1 filled
 with objects with an ascending order in the columns and a
 non-descending order in the rows.
 
 {\tt cap(sf3221,complete 4**2)} is the number filled
 with {\tt a a b b c c d d.}
-<<*>>=
+\begin{chunk}{*}
 --S 44 of 46
 cap(sf3221,complete 2**4)
 --R 
@@ -639,7 +639,7 @@ cap(sf3221,complete 2**4)
 --R                                                       Type: Fraction Integer
 --E 44
 
-@
+\end{chunk}
 The configurations enumerated are
 \begin{verbatim}
   a a b    a a c    a a d
@@ -648,7 +648,7 @@ The configurations enumerated are
   d        d        d
 \end{verbatim}
 {\tt cap(sf3221,powerSum 1**8)} is the number of tableaux filled with 1..8.
-<<*>>=
+\begin{chunk}{*}
 --S 45 of 46
 cap(sf3221,powerSum 1**8)
 --R 
@@ -657,7 +657,7 @@ cap(sf3221,powerSum 1**8)
 --R                                                       Type: Fraction Integer
 --E 45
 
-@
+\end{chunk}
 The coefficient of $x^n$ below is the number of column strict
 reverse plane partitions of n of shape 3 2 2 1.
 The smallest is
@@ -667,7 +667,7 @@ The smallest is
   2 2
   3
 \end{verbatim}
-<<*>>=
+\begin{chunk}{*}
 --S 46 of 46
 eval(Integers,sf3221)
 --R 
@@ -683,7 +683,7 @@ eval(Integers,sf3221)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/cycles1.input.pamphlet b/src/input/cycles1.input.pamphlet
index e13b113..ed1df22 100644
--- a/src/input/cycles1.input.pamphlet
+++ b/src/input/cycles1.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool cycles1.output
 )set message test on
@@ -477,7 +477,7 @@ eval(Integers, sf3221)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/cycloid.input.pamphlet b/src/input/cycloid.input.pamphlet
index e6e899e..17b1e19 100644
--- a/src/input/cycloid.input.pamphlet
+++ b/src/input/cycloid.input.pamphlet
@@ -9,10 +9,9 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
--- @(#)cycloid1.input	1.1    89/09/07  20:54:46
+\begin{chunk}{*}
 draw(curve(t - sin t,1 - cos t),t = -5..5)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/cycloid2.input.pamphlet b/src/input/cycloid2.input.pamphlet
index ec6dd4c..d7f33ea 100644
--- a/src/input/cycloid2.input.pamphlet
+++ b/src/input/cycloid2.input.pamphlet
@@ -9,10 +9,9 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
--- @(#)cycloid2.input	1.1    89/09/07  20:54:48
+\begin{chunk}{*}
 draw(curve(2*t - sin t,2 - cos t),t = -5..5)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/cycloid3.input.pamphlet b/src/input/cycloid3.input.pamphlet
index 0d80f0a..75909f8 100644
--- a/src/input/cycloid3.input.pamphlet
+++ b/src/input/cycloid3.input.pamphlet
@@ -9,10 +9,9 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
--- @(#)cycloid3.input	1.1    89/09/07  20:54:50
+\begin{chunk}{*}
 draw(curve(t - 2*sin t,1 - 2*cos t),t = -5..5)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/cyfactor.input.pamphlet b/src/input/cyfactor.input.pamphlet
index 17e8ae5..eead920 100644
--- a/src/input/cyfactor.input.pamphlet
+++ b/src/input/cyfactor.input.pamphlet
@@ -10,20 +10,20 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool cyfactor.output
 )set message test on
 )set message auto off
 )clear all
 
-@
+\end{chunk}
 Special case tests of factoring code for cyclotomic polynomials
 $\pm x^n-1 (n even)$
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 10
 factor(x**84 - 1)
 --R 
@@ -78,9 +78,9 @@ factor(-(x**68 -1))
 --R                                            Type: Factored Polynomial Integer
 --E 2
 
-@
+\end{chunk}
 $\pm x^n + 1$ (n odd)
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 10
 factor(x**99 + 1)
 --R 
@@ -128,9 +128,9 @@ factor(-(x**77 +1))
 --R                                            Type: Factored Polynomial Integer
 --E 4
 
-@
+\end{chunk}
 $\pm x^(2^k) + 1$
-<<*>>=
+\begin{chunk}{*}
 --S 5 of 10
 ind := 2**6
 --R 
@@ -165,10 +165,10 @@ factor(-(x**ind + 1))
 --R                                            Type: Factored Polynomial Integer
 --E 8
 
-@
+\end{chunk}
 This takes a lot longer than it should. It will improve when the 
 cyclotomic code improves.
-<<*>>=
+\begin{chunk}{*}
 --S 9 of 10
 factor(x**84 + 1)
 --R 
@@ -192,7 +192,7 @@ D
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/d01ajf.input.pamphlet b/src/input/d01ajf.input.pamphlet
index 34b71d3..6a674cd 100644
--- a/src/input/d01ajf.input.pamphlet
+++ b/src/input/d01ajf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -28,7 +28,7 @@ epsrel:SF:=1.0e-4
 liw:=200
 lw:=4*liw
 result:=d01ajf(a,b,epsabs,epsrel,lw,liw,-1,f)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/d01akf.input.pamphlet b/src/input/d01akf.input.pamphlet
index ca9d600..06f29f5 100644
--- a/src/input/d01akf.input.pamphlet
+++ b/src/input/d01akf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -28,7 +28,7 @@ epsrel:SF:=1.0e-4
 liw:=200
 lw:=4*liw
 result:=d01akf(a,b,epsabs,epsrel,lw,liw,-1,f)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/d01alf.input.pamphlet b/src/input/d01alf.input.pamphlet
index e9cb84a..ebd7331 100644
--- a/src/input/d01alf.input.pamphlet
+++ b/src/input/d01alf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -30,7 +30,7 @@ epsrel:SF:=1.0e-4
 liw:=max(npts+4,400)
 lw:=max(2*npts+8,2*liw)
 result:=d01alf(a,b,npts,points,epsabs,epsrel,lw,liw,-1,f)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/d01amf.input.pamphlet b/src/input/d01amf.input.pamphlet
index c36281c..0a12956 100644
--- a/src/input/d01amf.input.pamphlet
+++ b/src/input/d01amf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -27,7 +27,7 @@ epsrel:SF:=1.0e-4
 liw:=200
 lw:=4*liw
 result:=d01amf(a,1,epsabs,epsrel,lw,liw,-1,f)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/d01anf.input.pamphlet b/src/input/d01anf.input.pamphlet
index 2858346..6ac2a2b 100644
--- a/src/input/d01anf.input.pamphlet
+++ b/src/input/d01anf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -29,7 +29,7 @@ omega:SF:=10*%pi
 liw:=max(400,2)
 lw:=max(2*liw,4)
 result:=d01anf(a,b,omega,2,epsabs,epsrel,lw,liw,-1,f)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/d01apf.input.pamphlet b/src/input/d01apf.input.pamphlet
index 75b6760..2502f42 100644
--- a/src/input/d01apf.input.pamphlet
+++ b/src/input/d01apf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -31,7 +31,7 @@ key:=1
 liw:=200
 lw:=4*liw
 result:=d01apf(a,b,alpha,beta,key,epsabs,epsrel,lw,liw,-1,f)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/d01aqf.input.pamphlet b/src/input/d01aqf.input.pamphlet
index 2e2e05e..4aaff81 100644
--- a/src/input/d01aqf.input.pamphlet
+++ b/src/input/d01aqf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -29,7 +29,7 @@ epsrel:SF:=1.0e-4
 liw:=200
 lw:=4*200
 result:=d01aqf(a,b,c,epsabs,epsrel,lw,liw,-1,f)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/d01asf.input.pamphlet b/src/input/d01asf.input.pamphlet
index d00389e..7434c1b 100644
--- a/src/input/d01asf.input.pamphlet
+++ b/src/input/d01asf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -29,7 +29,7 @@ limlst:=50
 liw:=400
 lw:=2*liw
 result:=d01asf(a,omega,key,epsabs,limlst,lw,liw,-1,f)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/d01bbf.input.pamphlet b/src/input/d01bbf.input.pamphlet
index 098ffc7..bf863dc 100644
--- a/src/input/d01bbf.input.pamphlet
+++ b/src/input/d01bbf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -25,7 +25,7 @@ itype:=1
 n:=6
 kind:=0
 result:=d01bbf(a,b,itype,n,kind,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/d01fcf.input.pamphlet b/src/input/d01fcf.input.pamphlet
index 7038506..a8c4761 100644
--- a/src/input/d01fcf.input.pamphlet
+++ b/src/input/d01fcf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -30,7 +30,7 @@ maxpts:=5700
 eps:=0.0001
 lenwrk:=606
 result:=d01fcf(ndim,a,b,maxpts,eps,lenwrk,minpts,-1,f)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/d01gaf.input.pamphlet b/src/input/d01gaf.input.pamphlet
index a04ac38..db29528 100644
--- a/src/input/d01gaf.input.pamphlet
+++ b/src/input/d01gaf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -29,7 +29,7 @@ y:Matrix SF:=
    3.4943 ,3.4719 ,3.4002 ,3.3264 ,3.3014 ,2.9412 ,2.7352 ,_
    2.6344 ,2.6094 ,2.3684 ,2.3222 ,2.2543 ,2.2099 ,2.0000 ]]
 result:=d01gaf(x,y,n,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/d01gbf.input.pamphlet b/src/input/d01gbf.input.pamphlet
index fbcb5db..60127da 100644
--- a/src/input/d01gbf.input.pamphlet
+++ b/src/input/d01gbf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -30,7 +30,7 @@ lenwrk:=500
 wrk:Matrix SF:=new(1,lenwrk,0.0);
 mincls:=1000
 result:=d01gbf(ndim,a,b,maxcls,eps,lenwrk,mincls,wrk,-1,f)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/d02bbf.input.pamphlet b/src/input/d02bbf.input.pamphlet
index a0871f3..c7b09cf 100644
--- a/src/input/d02bbf.input.pamphlet
+++ b/src/input/d02bbf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )cl all
 showArrayValues true
 showScalarValues true
@@ -33,7 +33,7 @@ vm:Vector MachineFloat:=
  [1,2,3,4,5,6,7,8]
 output:Asp8(OUTPUT):= coerce vm
 result:=d02bbf(xend,# vm,n,irelab,x,y,tol,-1,fcn,output)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/d02bhf.input.pamphlet b/src/input/d02bhf.input.pamphlet
index c7de235..b80c1b7 100644
--- a/src/input/d02bhf.input.pamphlet
+++ b/src/input/d02bhf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -33,7 +33,7 @@ vef:Vector Expression Float:=
  [tan(Y[3]) ,-0.032*tan(Y[3])/Y[2] -0.02*Y[2]/cos(Y[3]) ,-0.032/(Y[2]**2) ]
 fcn:Asp7(FCN):= retract vef
 result:=d02bhf(xend,n,irelab,hmax,x,y,tol,-1,g,fcn)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/d02cjf.input.pamphlet b/src/input/d02cjf.input.pamphlet
index 920e4a6..89a6bcd 100644
--- a/src/input/d02cjf.input.pamphlet
+++ b/src/input/d02cjf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -34,7 +34,7 @@ vm:Vector MachineFloat:=
  [2,4,6,8]
 output:Asp8(OUTPUT):=coerce vm
 result:=d02cjf(xend,# vm,n,tol,relabs,x,y,-1,g,fcn,output)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/d02ejf.input.pamphlet b/src/input/d02ejf.input.pamphlet
index dc3e99b..0653d7f 100644
--- a/src/input/d02ejf.input.pamphlet
+++ b/src/input/d02ejf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -38,7 +38,7 @@ pederv:Asp31(PEDERV):=retract vef
 vm:Vector MachineFloat:=[2,4,6,8]
 output:Asp8(OUTPUT):=coerce vm 
 result:=d02ejf(xend,# vm,n,relabs,iw,x,y,tol,-1,g,fcn,pederv,output)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/d02gaf.input.pamphlet b/src/input/d02gaf.input.pamphlet
index 8936af6..d9c4084 100644
--- a/src/input/d02gaf.input.pamphlet
+++ b/src/input/d02gaf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -43,7 +43,7 @@ vef:Vector Expression Float:=
  [Y[2] ,Y[3] ,-Y[1]*Y[3]-0.2*(1-Y[2]*Y[2]) ]
 fcn:Asp7(FCN):=retract vef
 result:=d02gaf(u,v,n,a,b,tol,mnp,lw,liw,x,np,-1,fcn)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/d02gbf.input.pamphlet b/src/input/d02gbf.input.pamphlet
index a2ef4c2..a8543fb 100644
--- a/src/input/d02gbf.input.pamphlet
+++ b/src/input/d02gbf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -50,7 +50,7 @@ vef:Vector Expression Float :=
  [0 ,0 ]
 fcng:Asp78(FCNG):=retract vef
 result:=d02gbf(a,b,n,tol,mnp,lw,liw,c,d,gam,x,np,ifail,fcnf,fcng)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/d02kef.input.pamphlet b/src/input/d02kef.input.pamphlet
index 5b200dd..469d03f 100644
--- a/src/input/d02kef.input.pamphlet
+++ b/src/input/d02kef.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -42,7 +42,7 @@ result:=d02kef(xpoint,m,k,tol,maxfun,match,elam,delam,hmax,maxit,-1,coeffn,bdyva
 -- the following are the default Asps used.
 outputAsFortran()$Asp12(MONIT)
 outputAsFortran()$Asp33(REPORT)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/d02raf.input.pamphlet b/src/input/d02raf.input.pamphlet
index be82a48..53a2721 100644
--- a/src/input/d02raf.input.pamphlet
+++ b/src/input/d02raf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -45,7 +45,7 @@ vei:Vector Expression Integer:=
  [YA[1] ,YA[2] ,YB[2] -1 ]
 g:Asp42(G,JACOBG,JACGEP):=retract vei
 result:=d02raf(n,mnp,numbeg,nummix,tol,init,iy,ijac,lwork,liwork,np,x,y,deleps,ifail,fcn,g)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/d03edf.input.pamphlet b/src/input/d03edf.input.pamphlet
index e31739b..e2238b7 100644
--- a/src/input/d03edf.input.pamphlet
+++ b/src/input/d03edf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )cl all
 showArrayValues true
 showScalarValues true
@@ -79,7 +79,7 @@ maxit := 15
 acc := 1.0e-4
 iout := 0
 result:=d03edf(ngx,ngy,lda,maxit,acc,iout,a,rhs,ub,ifail)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/d03eef.input.pamphlet b/src/input/d03eef.input.pamphlet
index d1fcd0b..99140a7 100644
--- a/src/input/d03eef.input.pamphlet
+++ b/src/input/d03eef.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )cl all
 showArrayValues true
 showScalarValues true
@@ -32,7 +32,7 @@ lda := 133
 scheme := "c"
 ifail := -1
 result:=d03eef(xmin,xmax,ymin,ymax,ngx,ngy,lda,scheme,ifail,d03eea::ASP73('PDEF),d03eeb::ASP74('BNDY))
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/d03faf.input.pamphlet b/src/input/d03faf.input.pamphlet
index 94b4ad3..b85eb56 100644
--- a/src/input/d03faf.input.pamphlet
+++ b/src/input/d03faf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )cl all
 showArrayValues true
 showScalarValues true
@@ -71,7 +71,7 @@ foo()==
 foo()
 result:=d03faf(xs,xf,l,lbdcnd,bdxs,bdxf,ys,yf,m,mbdcnd,bdys,bdyf,_
 zs,zf,n,nbdcnd,bdzs,bdzf,lambda,ldimf,mdimf,lwrk,f,ifail)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/damped.input.pamphlet b/src/input/damped.input.pamphlet
index 4e0e531..ebcb2df 100644
--- a/src/input/damped.input.pamphlet
+++ b/src/input/damped.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 -- Input file to solve linear second order differential equations
 -- with driving force A*cos(wt).
 
@@ -44,7 +44,7 @@ rule1 := rule sin(-x) == - sin(x)
 rule2 := rule cos(-x) ==   cos(x)
 rule2 rule1 %% (-3)
 draw(%,x=0..15,title=="Underdamped")
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/danzwill.input.pamphlet b/src/input/danzwill.input.pamphlet
index 267d2a4..f8a4e07 100644
--- a/src/input/danzwill.input.pamphlet
+++ b/src/input/danzwill.input.pamphlet
@@ -31,10 +31,10 @@ Home of: Handbook of Integration
 
 \end{verbatim}
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )spool danzwill.output
 )set message test on
 )set message auto off
@@ -224,7 +224,7 @@ d8:= integrate( exp(-x)*x**2/(1-exp(-2*x)),x=0..%plusInfinity)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/danzwill2.input.pamphlet b/src/input/danzwill2.input.pamphlet
index 97935b7..e44443d 100644
--- a/src/input/danzwill2.input.pamphlet
+++ b/src/input/danzwill2.input.pamphlet
@@ -10,7 +10,7 @@ Problems from the MIT Integration Bee
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 )spool danzwill2.output
 )set message test on
 )set message auto off
@@ -594,7 +594,7 @@ i50:= integrate(x*sec(x)*(x*tan(x)+2),x)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} Zwillinger, Daniel, ``Handbook of Integration'', 
diff --git a/src/input/de2re.input.pamphlet b/src/input/de2re.input.pamphlet
index 024bc4a..36c3161 100644
--- a/src/input/de2re.input.pamphlet
+++ b/src/input/de2re.input.pamphlet
@@ -11,7 +11,7 @@
 \eject
 \section{bugs}
 The function |LinearOrdinaryDifferentialOperator| is undefined
-<<bug1>>=
+\begin{chunk}{bug1}
 dn := D()$L
 -- 4 well known differential operators
 exp:= dn - 1
@@ -29,8 +29,8 @@ hermite := dn**2 - 2*n*dn + 1
 -- a non-trivial example from the GFUN tech. rep (Salvy & Zimmermann)
 op := (335 * n**2 + 1290) * dn**2 + 1540 * n * dn + 468720
 --recurrence(op, 0)
-@
-<<bugs>>=
+\end{chunk}
+\begin{chunk}{bugs}
 ---------------------------------- de2re.input -----------------------------
 )cl all
 
@@ -38,15 +38,15 @@ P := UP(n, INT)
 n := n::P
 
 L := LODO1 P
-<<bug1>>
+\getchunk{bug1}
 
-@
+\end{chunk}
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 ---------------------------------- de2re.input -----------------------------
 )cl all
 
@@ -54,7 +54,7 @@ P := UP(n, INT)
 n := n::P
 
 L := LODO1 P
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/decimal.input.pamphlet b/src/input/decimal.input.pamphlet
index 2f239b0..b6fabcc 100644
--- a/src/input/decimal.input.pamphlet
+++ b/src/input/decimal.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool decimal.output
 )set message test on
@@ -95,7 +95,7 @@ g := gcd(p, q)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/defintef.input.pamphlet b/src/input/defintef.input.pamphlet
index 61dea1d..8d63cc4 100644
--- a/src/input/defintef.input.pamphlet
+++ b/src/input/defintef.input.pamphlet
@@ -10,17 +10,17 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool defintef.output
 )set message test on
 )set message auto off
 )clear all
 
-@
+\end{chunk}
 Evans and Johnson, in their ``Uses of technology in the mathematics
 curriculum'' workbook list a number of
 ``integrals that your computer can't do''.
@@ -28,7 +28,7 @@ curriculum'' workbook list a number of
 int(sin(x)^3/(sin(x)^3+cos(x)^3),x=0..Pi/2)
 \end{verbatim}
 is one of them.
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 8
 sin(x)**3/(sin(x)**3+cos(x)**3)
 --R 
@@ -116,7 +116,7 @@ integrate(%, x=0..1)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/defintrf.input.pamphlet b/src/input/defintrf.input.pamphlet
index fd02023..073f693 100644
--- a/src/input/defintrf.input.pamphlet
+++ b/src/input/defintrf.input.pamphlet
@@ -10,21 +10,21 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool defintrf.output
 )set message test on
 )set message auto off
 )clear all
 
-@
+\end{chunk}
 This is a difficult example from Kahan.
 Most symbolic indefinite integrals for $f$ will have a pole between 1 and 2.
 Note that $f$ is positive on $[1..2]$ so we expect the integral to be positive
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 3
 f := (x**4 - 3*x**2 + 6)/(x**6-5*x**4+5*x**2+4)
 --R 
@@ -59,7 +59,7 @@ numeric %
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/defs.input.pamphlet b/src/input/defs.input.pamphlet
index 85b35ef..fcbc8ed 100644
--- a/src/input/defs.input.pamphlet
+++ b/src/input/defs.input.pamphlet
@@ -9,9 +9,9 @@
 \eject
 \tableofcontents
 \eject
-The [[otherwise]] clause is not recognized either in the NAG version
+The otherwise clause is not recognized either in the NAG version
 or the Axiom version.
-<<fib>>=
+\begin{chunk}{fib}
 )clear all
 
 fib(0) == 1
@@ -21,10 +21,10 @@ fib(10)
 fib(100)
 [fib(2**i) for i in 1..]
 
-@
-The [[when]] clause is not recognized either in the NAG version or
+\end{chunk}
+The when clause is not recognized either in the NAG version or
 the Axiom version.
-<<chebyshev>>=
+\begin{chunk}{chebyshev}
 chebyshev1: Integer -> UnivariatePolynomial(x,Fraction Integer)
 chebyshev1(0) == 1
 chebyshev1(1) == x
@@ -40,8 +40,8 @@ chebyshev2(1)
 chebyshev2(4)
 chebyshev2(11)
 
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 
 -- Input for page DefinitionsVsMappings
 )clear all
@@ -100,9 +100,9 @@ p := q + 1; rule q == r + 1; r := 7; [p, q, r]
 r := 1; [p, q, r]
 
 -- Input for page RecurrenceRelations
-<<fib>>
-<<chebyshev>>
-@
+\getchunk{fib}
+\getchunk{chebyshev}
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/derham.input.pamphlet b/src/input/derham.input.pamphlet
index 3aa17e0..d26ffe5 100644
--- a/src/input/derham.input.pamphlet
+++ b/src/input/derham.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool derham.output
 )set message test on
@@ -320,7 +320,7 @@ coefficient(g1,one)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/dfloat.input.pamphlet b/src/input/dfloat.input.pamphlet
index 1ea68a1..a7b0f14 100644
--- a/src/input/dfloat.input.pamphlet
+++ b/src/input/dfloat.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool dfloat.output
 )set message test on
@@ -101,7 +101,7 @@ cos(3.1415926 :: DoubleFloat)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/dhmatrix.input.pamphlet b/src/input/dhmatrix.input.pamphlet
index 70a2b13..c0b55b9 100644
--- a/src/input/dhmatrix.input.pamphlet
+++ b/src/input/dhmatrix.input.pamphlet
@@ -9,16 +9,16 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool dhmatrix.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 We create a target domain
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 16
 t1:=DHMATRIX(DoubleFloat)
 --R
@@ -26,9 +26,9 @@ t1:=DHMATRIX(DoubleFloat)
 --R                                                                 Type: Domain
 --E 1
 
-@
+\end{chunk}
 This creates an identity element from the target domain.
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 16
 t2:=identity()$t1
 --R
@@ -42,9 +42,9 @@ t2:=identity()$t1
 --R                                    Type: DenavitHartenbergMatrix DoubleFloat
 --E 2
 
-@
+\end{chunk}
 This is the rotation matrix around the X axis for 30 degrees
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 16
 t3:=rotatex(30)
 --R
@@ -64,9 +64,9 @@ t3:=rotatex(30)
 --R                             Type: DenavitHartenbergMatrix Expression Integer
 --E 3
 
-@
+\end{chunk}
 This is the rotation matrix around the Y axis for 30 degrees
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 16
 t4:=rotatey(30)
 --R
@@ -86,9 +86,9 @@ t4:=rotatey(30)
 --R                             Type: DenavitHartenbergMatrix Expression Integer
 --E 4
 
-@
+\end{chunk}
 This is the rotation matrix around the Z axis for 30 degrees
-<<*>>=
+\begin{chunk}{*}
 --S 5 of 16
 t5:=rotatez(30)
 --R
@@ -108,9 +108,9 @@ t5:=rotatez(30)
 --R                             Type: DenavitHartenbergMatrix Expression Integer
 --E 5
 
-@
+\end{chunk}
 This scales along X, Y, and Z by 1/2
-<<*>>=
+\begin{chunk}{*}
 --S 6 of 16
 t6:=scale(0.5,0.5,0.5)
 --R
@@ -124,9 +124,9 @@ t6:=scale(0.5,0.5,0.5)
 --R                                          Type: DenavitHartenbergMatrix Float
 --E 6
 
-@
+\end{chunk}
 This translates along the X, Y, and Z axis by 2 units
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 16
 t7:=translate(2.0,2.0,2.0)
 --R
@@ -140,9 +140,9 @@ t7:=translate(2.0,2.0,2.0)
 --R                                          Type: DenavitHartenbergMatrix Float
 --E 7
 
-@
+\end{chunk}
 This is a point on the X axis  can move around the plane
-<<*>>=
+\begin{chunk}{*}
 --S 8 of 16
 t8:Point(DoubleFloat):=[4.0,0.0,0.0]$List(DoubleFloat)
 --R
@@ -150,9 +150,9 @@ t8:Point(DoubleFloat):=[4.0,0.0,0.0]$List(DoubleFloat)
 --R                                                      Type: Point DoubleFloat
 --E 8
 
-@
+\end{chunk}
 First, we construct a translation along the X axis by 3 units
-<<*>>=
+\begin{chunk}{*}
 --S 9 of 16
 t9:=translate(4.0,0.0,0.0)
 --R
@@ -166,9 +166,9 @@ t9:=translate(4.0,0.0,0.0)
 --R                                          Type: DenavitHartenbergMatrix Float
 --E 9
 
-@
+\end{chunk}
 and we apply the transformation so t8 is now moved
-<<*>>=
+\begin{chunk}{*}
 --S 10 of 16
 t10:=t9*t8
 --R
@@ -176,10 +176,10 @@ t10:=t9*t8
 --R                                                      Type: Point DoubleFloat
 --E 10
 
-@
+\end{chunk}
 Now we rotate the point 90 degrees around the Z axis
 which will move the point from the X axis to the Y axis.
-<<*>>=
+\begin{chunk}{*}
 --S 11 of 16
 t11:=rotatez(90)*t10
 --R
@@ -187,9 +187,9 @@ t11:=rotatez(90)*t10
 --R                                           Type: Point Expression DoubleFloat
 --E 11
 
-@
+\end{chunk}
 and we can scale the point by 1/2 to shorten along the Y axis
-<<*>>=
+\begin{chunk}{*}
 --S 12 of 16
 t12:=scale(0.0,0.5,0.0)*t11
 --R
@@ -197,10 +197,10 @@ t12:=scale(0.0,0.5,0.0)*t11
 --R                                           Type: Point Expression DoubleFloat
 --E 12
 
-@
+\end{chunk}
 Now we rotate the point 90 degrees around the X axis
 which will move the point from the Y axis to the Z axis.
-<<*>>=
+\begin{chunk}{*}
 --S 13 of 16
 t13:=rotatex(90)*t12
 --R
@@ -208,11 +208,11 @@ t13:=rotatex(90)*t12
 --R                                           Type: Point Expression DoubleFloat
 --E 13
 
-@
+\end{chunk}
 Now we rotate the point 90 degrees around the Y axis
 which will move the point from the Z axis to the X axis.
 We are now back to the original point
-<<*>>=
+\begin{chunk}{*}
 --S 14 of 16
 t14:=rotatey(90)*t13
 --R
@@ -220,10 +220,10 @@ t14:=rotatey(90)*t13
 --R                                           Type: Point Expression DoubleFloat
 --E 14
 
-@
+\end{chunk}
 We can do all of the translations, rotations, and scaling and
 create a single matrix that will apply them all at once.
-<<*>>=
+\begin{chunk}{*}
 --S 15 of 16
 t15:=rotatey(90)*rotatex(90)*scale(0.0,0.5,0.0)*_
      rotatez(90)*translate(4.0,0.0,0.0)
@@ -238,11 +238,11 @@ t15:=rotatey(90)*rotatex(90)*scale(0.0,0.5,0.0)*_
 --R                               Type: DenavitHartenbergMatrix Expression Float
 --E 15
 
-@
+\end{chunk}
 We can do all of the translations, rotations, and scaling and
 create a single matrix that will apply them all at once. The
 original point is moved around the space back to its original point.
-<<*>>=
+\begin{chunk}{*}
 --S 16 of 16
 t16:=t15*t8
 --R
@@ -253,7 +253,7 @@ t16:=t15*t8
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/dhtri.input.pamphlet b/src/input/dhtri.input.pamphlet
index 37a0c7d..92b85b5 100644
--- a/src/input/dhtri.input.pamphlet
+++ b/src/input/dhtri.input.pamphlet
@@ -10,24 +10,24 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool dhtri.output
 )set message test on
 )set message auto off
 )clear all
 
-@
+\end{chunk}
 Create Affine transformations (DH matrices) that transform
 a given triangle into another given triangle
 
 {\tt tri2tri(t1, t2)} returns a DHMATRIX which transforms {\tt t1}
 to {\tt t2}, where {\tt t1}  and {\tt t2} are the vertices of two 
 triangles in 3-space.
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 5
 tri2tri(t1: List Point DoubleFloat, t2: List Point DoubleFloat): DHMATRIX(DoubleFloat) ==
   n1 := triangleNormal(t1)
@@ -40,11 +40,11 @@ tri2tri(t1: List Point DoubleFloat, t2: List Point DoubleFloat): DHMATRIX(Double
 --R                                                                   Type: Void
 --E 1
 
-@
+\end{chunk}
 {\tt tet2tet(t1, t2)} returns a DHMATRIX which transforms {\tt t1}
 to {\tt t2}, where {\tt t1} and {\tt t2} are the vertices of two 
 tetrahedrons in 3-space.
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 5
 tet2tet(t1: List Point DoubleFloat, t2: List Point DoubleFloat): DHMATRIX(DoubleFloat) ==
   m1 := makeColumnMatrix t1
@@ -57,9 +57,9 @@ tet2tet(t1: List Point DoubleFloat, t2: List Point DoubleFloat): DHMATRIX(Double
 --R                                                                   Type: Void
 --E 2
 
-@
+\end{chunk}
 Put the vertices of a tetrahedron into matrix form
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 5
 makeColumnMatrix(t) ==
   m := new(4,4,0)$DHMATRIX(DoubleFloat)
@@ -72,10 +72,10 @@ makeColumnMatrix(t) ==
 --R                                                                   Type: Void
 --E 3
 
-@
+\end{chunk}
 This returns a vector normal to the given triangle, whose length
 is the square root of the area of the triangle
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 5
 triangleNormal(t) ==
   a := triangleArea t
@@ -90,9 +90,9 @@ triangleNormal(t) ==
 --R                                                                   Type: Void
 --E 4
 
-@
+\end{chunk}
 This computes the are of a triangle using Heron's formula
-<<*>>=
+\begin{chunk}{*}
 --S 5 of 5
 triangleArea t ==
   a := length(t.2 - t.1)
@@ -106,7 +106,7 @@ triangleArea t ==
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/directproduct.input.pamphlet b/src/input/directproduct.input.pamphlet
index 0d313a2..d56de07 100644
--- a/src/input/directproduct.input.pamphlet
+++ b/src/input/directproduct.input.pamphlet
@@ -17,7 +17,7 @@ product between elements of D is not, and the domain is not declared
 as a monoid. On the other hand, if R is a ring, then the direct
 product is a ring. (Bug report 117). This is fixed by patch
 20080620.01.wxh.patch.
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool directproduct.output
 )set message auto off
@@ -123,7 +123,7 @@ d*a
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/divisor.input.pamphlet b/src/input/divisor.input.pamphlet
index 8c105b9..33e5099 100644
--- a/src/input/divisor.input.pamphlet
+++ b/src/input/divisor.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool divisor.output
 )set message test on
@@ -37,9 +37,9 @@ P1 := UP(y, FRAC P0)
 --R                                                                 Type: Domain
 --E 2
 
-@
+\end{chunk}
 This is the curve given by $y^2 = x^8 + 1$ (genus = 3)
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 18
 R := RADFF(FRAC INT, P0, P1, 1 + x**8, 2)
 --R 
@@ -72,11 +72,11 @@ fd := FDIV(FRAC INT, P0, P1, R)
 --R                                                                 Type: Domain
 --E 5
 
-@
+\end{chunk}
 let P be the place (x = 0, y = 1), 
 Q be the place (x = 0, y = -1),
 and d be the divisor P - Q
-<<*>>=
+\begin{chunk}{*}
 --S 6 of 18
 d1 := divisor(0, 1)$fd
 --R 
@@ -113,9 +113,9 @@ d  := reduce d
 --RType: FiniteDivisor(Fraction Integer,UnivariatePolynomial(x,Fraction Integer),UnivariatePolynomial(y,Fraction UnivariatePolynomial(x,Fraction Integer)),RadicalFunctionField(Fraction Integer,UnivariatePolynomial(x,Fraction Integer),UnivariatePolynomial(y,Fraction UnivariatePolynomial(x,Fraction Integer)),x**8+1,2))
 --E 9
 
-@
+\end{chunk}
 It turns out that d has order 4:
-<<*>>=
+\begin{chunk}{*}
 --S 10 of 18
 generator d
 --R 
@@ -151,9 +151,9 @@ generator reduce(4 * d)
 --RType: Union(RadicalFunctionField(Fraction Integer,UnivariatePolynomial(x,Fraction Integer),UnivariatePolynomial(y,Fraction UnivariatePolynomial(x,Fraction Integer)),x**8+1,2),...)
 --E 13
 
-@
+\end{chunk}
 Let's verify the RiemannRoch theorem:
-<<*>>=
+\begin{chunk}{*}
 --S 14 of 18
 lSpaceBasis d1
 --R 
@@ -202,7 +202,7 @@ lSpaceBasis(5 * d1)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/dmp.input.pamphlet b/src/input/dmp.input.pamphlet
index 70b8475..c876665 100644
--- a/src/input/dmp.input.pamphlet
+++ b/src/input/dmp.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool dmp.output
 )set message test on
@@ -106,7 +106,7 @@ groebner [n1,n2,n3]
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/dop.input.pamphlet b/src/input/dop.input.pamphlet
index 1b2158b..4c7ee9a 100644
--- a/src/input/dop.input.pamphlet
+++ b/src/input/dop.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool dop.output
 )set message test on
@@ -6156,7 +6156,7 @@
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/dpol.input.pamphlet b/src/input/dpol.input.pamphlet
index 7e0b8f7..91e2b4e 100644
--- a/src/input/dpol.input.pamphlet
+++ b/src/input/dpol.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool dpol.output
 )set message test on
@@ -28,10 +28,10 @@ odvar:=ODVAR Symbol
 --R                                                                 Type: Domain
 --E 1
 
-@
+\end{chunk}
 Here are the first 5 derivatives of $w$, 
 the $i$-th derivative of $w$ is printed as $w_5$
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 18
 [makeVariable('w,i)$odvar for i in 5..0 by -1]
 --R 
@@ -41,10 +41,10 @@ the $i$-th derivative of $w$ is printed as $w_5$
 --R                                Type: List OrderlyDifferentialVariable Symbol
 --E 2
 
-@
+\end{chunk}
 These are now algebraic indeterminates, ranked in an orderly way
 in increasing order:
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 18
 sort %
 --R 
@@ -54,10 +54,10 @@ sort %
 --R                                Type: List OrderlyDifferentialVariable Symbol
 --E 3
 
-@
+\end{chunk}
 We now make a general differential polynomial ring
 instead of ODVAR, one can also use SDVAR for sequential ordering
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 18
 dpol:=DSMP (FRAC INT, Symbol, odvar)
 --R 
@@ -68,11 +68,11 @@ dpol:=DSMP (FRAC INT, Symbol, odvar)
 --R                                                                 Type: Domain
 --E 4
 
-@
+\end{chunk}
 Instead of using makeVariable, it is easier to
 think of a differential variable $w$ as a map, where
 $w.n$ is $n$-th derivative of $w$ as an algebraic indeterminate
-<<*>>=
+\begin{chunk}{*}
 --S 5 of 18
 w := makeVariable('w)$dpol
 --R 
@@ -81,10 +81,10 @@ w := makeVariable('w)$dpol
 --RType: (NonNegativeInteger -> DifferentialSparseMultivariatePolynomial(Fraction Integer,Symbol,OrderlyDifferentialVariable Symbol))
 --E 5
 
-@
+\end{chunk}
 Create another one called $z$, which is higher in rank than $w$
 since we are ordering by Symbol
-<<*>>=
+\begin{chunk}{*}
 --S 6 of 18
 z := makeVariable('z)$dpol
 --R 
@@ -93,9 +93,9 @@ z := makeVariable('z)$dpol
 --RType: (NonNegativeInteger -> DifferentialSparseMultivariatePolynomial(Fraction Integer,Symbol,OrderlyDifferentialVariable Symbol))
 --E 6
 
-@
+\end{chunk}
 Now define some differential polynomial
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 18
 (f,b):dpol
 --R 
@@ -122,9 +122,9 @@ b:=(z.1::dpol)**3 * (z.2)**2 - w.2
 --RType: DifferentialSparseMultivariatePolynomial(Fraction Integer,Symbol,OrderlyDifferentialVariable Symbol)
 --E 9
 
-@
+\end{chunk}
 Compute the leading derivative appearing in $b$
-<<*>>=
+\begin{chunk}{*}
 --S 10 of 18
 lb:=leader b
 --R 
@@ -134,9 +134,9 @@ lb:=leader b
 --R                                     Type: OrderlyDifferentialVariable Symbol
 --E 10
 
-@
+\end{chunk}
 The separant is the partial derivative of $b$ with respect to its leader
-<<*>>=
+\begin{chunk}{*}
 --S 11 of 18
 sb:=separant b
 --R 
@@ -147,11 +147,11 @@ sb:=separant b
 --RType: DifferentialSparseMultivariatePolynomial(Fraction Integer,Symbol,OrderlyDifferentialVariable Symbol)
 --E 11
 
-@
+\end{chunk}
 Of course you can differentiate these differential polynomials
 and try to reduce $f$ modulo the differential ideal generated by $b$
 first eliminate $z.3$ using the derivative of $b$
-<<*>>=
+\begin{chunk}{*}
 --S 12 of 18
 bprime:= differentiate b
 --R 
@@ -162,9 +162,9 @@ bprime:= differentiate b
 --RType: DifferentialSparseMultivariatePolynomial(Fraction Integer,Symbol,OrderlyDifferentialVariable Symbol)
 --E 12
 
-@
+\end{chunk}
 Find its leader
-<<*>>=
+\begin{chunk}{*}
 --S 13 of 18
 lbprime:= leader bprime
 --R 
@@ -174,9 +174,9 @@ lbprime:= leader bprime
 --R                                     Type: OrderlyDifferentialVariable Symbol
 --E 13
 
-@
+\end{chunk}
 Differentiate $f$ partially with respect to $lbprime$
-<<*>>=
+\begin{chunk}{*}
 --S 14 of 18
 pbf:=differentiate (f, lbprime)
 --R 
@@ -187,9 +187,9 @@ pbf:=differentiate (f, lbprime)
 --RType: DifferentialSparseMultivariatePolynomial(Fraction Integer,Symbol,OrderlyDifferentialVariable Symbol)
 --E 14
 
-@
+\end{chunk}
 To obtain the partial remainder of $f$ with respect to $b$
-<<*>>=
+\begin{chunk}{*}
 --S 15 of 18
 ftilde:=sb * f- pbf * bprime
 --R 
@@ -200,11 +200,11 @@ ftilde:=sb * f- pbf * bprime
 --RType: DifferentialSparseMultivariatePolynomial(Fraction Integer,Symbol,OrderlyDifferentialVariable Symbol)
 --E 15
 
-@
+\end{chunk}
 Note high powers of $lb$ still appears in $ftilde$.
 The initial is the leading coefficient when $b$ is written
 as a univariate polynomial in its leader
-<<*>>=
+\begin{chunk}{*}
 --S 16 of 18
 ib:=initial b
 --R 
@@ -215,10 +215,10 @@ ib:=initial b
 --RType: DifferentialSparseMultivariatePolynomial(Fraction Integer,Symbol,OrderlyDifferentialVariable Symbol)
 --E 16
 
-@
+\end{chunk}
 Compute the leading coefficient of $ftilde$
 as a polynomial in its leader
-<<*>>=
+\begin{chunk}{*}
 --S 17 of 18
 lcef:=leadingCoefficient univariate(ftilde, lb)
 --R 
@@ -229,10 +229,10 @@ lcef:=leadingCoefficient univariate(ftilde, lb)
 --RType: DifferentialSparseMultivariatePolynomial(Fraction Integer,Symbol,OrderlyDifferentialVariable Symbol)
 --E 17
 
-@
+\end{chunk}
 Now to continue eliminating the high powers of $lb$ appearing in $ftilde$:
 to obtain the remainder of $f$ modulo $b$ and its derivatives
-<<*>>=
+\begin{chunk}{*}
 --S 18 of 18
 f0:=ib * ftilde - lcef * b * lb
 --R 
@@ -245,7 +245,7 @@ f0:=ib * ftilde - lcef * b * lb
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/draw.input.pamphlet b/src/input/draw.input.pamphlet
index f95e232..2173514 100644
--- a/src/input/draw.input.pamphlet
+++ b/src/input/draw.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 
  
@@ -71,7 +71,7 @@ draw(1,u = -%pi/2..%pi/2,v = 0..2*%pi,coordinates == oblateSpheroidal(1$DFLOAT),
 
 draw(surface(5*sin(u)*cos(v),4*sin(u)*sin(v),3*cos(u)),u = 0..%pi,v = 0..2*%pi,_
            title == "Which came first?")
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/draw2dsf.input.pamphlet b/src/input/draw2dsf.input.pamphlet
index 5d1d1bf..c2016a9 100644
--- a/src/input/draw2dsf.input.pamphlet
+++ b/src/input/draw2dsf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 
 --open a file for input
@@ -44,7 +44,7 @@ drawList(pts)
 
 
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/drawalg.input.pamphlet b/src/input/drawalg.input.pamphlet
index 02ef11a..5714a0d 100644
--- a/src/input/drawalg.input.pamphlet
+++ b/src/input/drawalg.input.pamphlet
@@ -10,17 +10,17 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 -- TopLevelDrawFunctionsForAlgebraicCurves example
 
 --Plotting Plane Algebraic Curve
 draw(y**2 + y - (x**3 - x) = 0, x, y, range == [-2..2,-2..1])
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/drawcfn.input.pamphlet b/src/input/drawcfn.input.pamphlet
index 98a682e..0e2eb56 100644
--- a/src/input/drawcfn.input.pamphlet
+++ b/src/input/drawcfn.input.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
  
 -- Two dimensional function plots
 
@@ -85,7 +85,7 @@ n1(u:SF,v:SF):SF == 5*sin(u)*cos(v)
 n2(u:SF,v:SF):SF == 4*sin(u)*sin(v)
 n3(u:SF,v:SF):SF == 3*cos(u)
 draw(surface(n1,n2,n3),0..%pi,0..2*%pi,title == "Which came first?")
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/drawcfun.input.pamphlet b/src/input/drawcfun.input.pamphlet
index 2ee9df3..218332e 100644
--- a/src/input/drawcfun.input.pamphlet
+++ b/src/input/drawcfun.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 
 -- Two dimensional function plots
@@ -91,7 +91,7 @@ n1(u:DFLOAT,v:DFLOAT):DFLOAT == 5*sin(u)*cos(v)
 n2(u:DFLOAT,v:DFLOAT):DFLOAT == 4*sin(u)*sin(v)
 n3(u:DFLOAT,v:DFLOAT):DFLOAT == 3*cos(u)
 draw(surface(n1,n2,n3),0..%pi,0..2*%pi,title == "Which came first?")
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/drawcurv.input.pamphlet b/src/input/drawcurv.input.pamphlet
index b1a03a9..c1ae65d 100644
--- a/src/input/drawcurv.input.pamphlet
+++ b/src/input/drawcurv.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 
 )clear all
 -- a circle
@@ -79,7 +79,7 @@ range8 : LIST SEG FRAC INT := [seg8a,seg7b]
 
 eq2 := (x**2 + y**2 + 7**2)**2 - (6**4 + 4*7**2*x**2) = 0
 draw(eq2,x,y,range == range8,title == "Cassinian oval with two loops")
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/drawcx.input.pamphlet b/src/input/drawcx.input.pamphlet
index 726cb33..20d3f2d 100644
--- a/src/input/drawcx.input.pamphlet
+++ b/src/input/drawcx.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 
 --Plotting Two Dimensional Compiled Functions of One Variable
@@ -49,7 +49,7 @@ draw(surface(n1,n2,n3),-4..4,0..2*%pi)
 colorFxn(x:DFLOAT,y:DFLOAT):DFLOAT == 1/(x**2 + y**2 + 1)
 draw(surface(n1,n2,n3),-4..4,0..2*%pi, colorFunction == colorFxn)
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/drawex.input.pamphlet b/src/input/drawex.input.pamphlet
index a9df545..c7dfd59 100644
--- a/src/input/drawex.input.pamphlet
+++ b/src/input/drawex.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 
 )clear all
 -- examples of the draw function
@@ -72,7 +72,7 @@ draw(curve(t - 2*sin t,1 - 2*cos t),t = -5..5)
 
 draw(curve(cos(t)/(1+sin(t)**2),sin(t)*cos(t)/(1+sin(t)**2)),t = -%pi..%pi, title == "Lemniscate of Bernoulli")
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/drawpoly.input.pamphlet b/src/input/drawpoly.input.pamphlet
index 9181a1c..8bd19e0 100644
--- a/src/input/drawpoly.input.pamphlet
+++ b/src/input/drawpoly.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1996.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 a1**18   - 83.30408576104702*a1**17   + 4016.670203940073*a1**16 + _
      - 167241.63892168205*a1**15   + 5649108.7097550742*a1**14 + _
      - 1.4927698938773671E8*a1**13   + 3.2737267549354239E9*a1**12 + _
@@ -25,7 +25,7 @@ a1**18   - 83.30408576104702*a1**17   + 4016.670203940073*a1**16 + _
      3.5962416171315931E14*a1**3  - 8.254469833838275E14*a1**2 + _
      - 4.3259667313869412E14*a1 - 1.2086386259492219E13
 draw(%,a1=-0.028..-0.027)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/drawx.input.pamphlet b/src/input/drawx.input.pamphlet
index 7d8f2e0..e210edd 100644
--- a/src/input/drawx.input.pamphlet
+++ b/src/input/drawx.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 
 )clear all
 
@@ -42,7 +42,7 @@ l(x:DoubleFloat,y:DoubleFloat):DoubleFloat == cos(x*y)
 colorFxn(x:DoubleFloat,y:DoubleFloat):DoubleFloat == 1/(x**2 + y**2 + 1)
 draw(cos(x*y),x = -3..3, y = -3..3, colorFunction == colorFxn)
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/dropt.input.pamphlet b/src/input/dropt.input.pamphlet
index 3f3e3c8..2c84cc5 100644
--- a/src/input/dropt.input.pamphlet
+++ b/src/input/dropt.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 
 )clear all
 
@@ -84,7 +84,7 @@ draw(curve(sin(t),cos(t),0),t=0..2*%pi,tubeRadius == .25, tubePoints == 3)
 draw(cos(x*y),x=-3..3,y=-3..3,var1Steps == 3, var2Steps == 3)
 draw(cos(x*y),x=-3..3,y=-3..3,var1Steps == 9, var2Steps == 9)
 draw(cos(x*y),x=-3..3,y=-3..3)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e01baf.input.pamphlet b/src/input/e01baf.input.pamphlet
index dfc653e..f63f8e9 100644
--- a/src/input/e01baf.input.pamphlet
+++ b/src/input/e01baf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -27,7 +27,7 @@ y:Matrix SF:=
 lck:=11
 lwrk:=58
 result:=e01baf(m,x,y,lck,lwrk,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e01bef.input.pamphlet b/src/input/e01bef.input.pamphlet
index 5b683cc..c0b42c6 100644
--- a/src/input/e01bef.input.pamphlet
+++ b/src/input/e01bef.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -26,7 +26,7 @@ f:Matrix SF:=
  [[0.00000e+0 ,0.27643e-4 ,0.43750e-1 ,0.16918 ,_
    0.46943 ,0.94374 ,0.99864 ,0.99992 ,0.99999 ]]
 result:=e01bef(n,x,f,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e01bff.input.pamphlet b/src/input/e01bff.input.pamphlet
index aeb674a..27cdcba 100644
--- a/src/input/e01bff.input.pamphlet
+++ b/src/input/e01bff.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -32,7 +32,7 @@ m:=11
 px:Matrix SF:=
  [[7.9900000000000002 + (i-1) *1.2010000000000001 for i in 1..11]]
 result:=e01bff(n,x,f,d,m,px,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e01bgf.input.pamphlet b/src/input/e01bgf.input.pamphlet
index df6868d..3b6eb1a 100644
--- a/src/input/e01bgf.input.pamphlet
+++ b/src/input/e01bgf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -32,7 +32,7 @@ m:=11
 px:Matrix SF:=
  [[7.9900000000000002 + (i-1) *1.2010000000000001 for i in 1..11]]
 result:=e01bgf(n,x,f,d,m,px,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e01bhf.input.pamphlet b/src/input/e01bhf.input.pamphlet
index 22fea4c..51ed74f 100644
--- a/src/input/e01bhf.input.pamphlet
+++ b/src/input/e01bhf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -31,7 +31,7 @@ d:Matrix SF:=
 a:=7.99
 b:=20.0
 result:=e01bhf(n,x,f,d,a,b,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e01daf.input.pamphlet b/src/input/e01daf.input.pamphlet
index 5580686..b7f23f5 100644
--- a/src/input/e01daf.input.pamphlet
+++ b/src/input/e01daf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -42,7 +42,7 @@ f:Matrix SF:=
     3.24, 3.34, 3.64, 3.94, 4.14, 4.24, _
     4.00, 4.10, 4.40, 4.70, 4.90, 5.00]]
 result:=e01daf(mx,my,x,y,f, -1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e01saf.input.pamphlet b/src/input/e01saf.input.pamphlet
index d4d6fca..700d71d 100644
--- a/src/input/e01saf.input.pamphlet
+++ b/src/input/e01saf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -40,7 +40,7 @@ px:=7.71
 py:=3.45
 resb:=e01sbf(m,x,y,f,resa."triang",resa."grads",px,py,-1)
 resb."pf"
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e01sbf.input.pamphlet b/src/input/e01sbf.input.pamphlet
index c8e3b03..bb97705 100644
--- a/src/input/e01sbf.input.pamphlet
+++ b/src/input/e01sbf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -40,7 +40,7 @@ px:=7.71
 py:=3.45
 result:=resb:=e01sbf(m,x,y,f,resa."triang",resa."grads",px,py,-1)
 resb."pf"
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e01sef.input.pamphlet b/src/input/e01sef.input.pamphlet
index 2c175a6..cabfbcd 100644
--- a/src/input/e01sef.input.pamphlet
+++ b/src/input/e01sef.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -43,7 +43,7 @@ nq:=0
 rnw:=0.0
 rnq:=0.0
 result:=e01sef(m,x,y,f,nw,nq,rnw,rnq, -1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e01sff.input.pamphlet b/src/input/e01sff.input.pamphlet
index 54faaf3..77bfadf 100644
--- a/src/input/e01sff.input.pamphlet
+++ b/src/input/e01sff.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -46,7 +46,7 @@ resa:=e01sef(m,x,y,f,nw,nq,rnw,rnq, -1)
 px:=3.0
 py:=2.0
 result:=e01sff(m,x,y,f,resa."rnw",resa."fnodes",px ,py,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e02adf.input.pamphlet b/src/input/e02adf.input.pamphlet
index 6a519ad..ff0c58d 100644
--- a/src/input/e02adf.input.pamphlet
+++ b/src/input/e02adf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -32,7 +32,7 @@ w:Matrix SF:=
  [[1.00 ,1.00 ,1.00 ,1.00 ,1.00 ,0.80 ,_
    0.80 ,0.70 ,0.50 ,0.30 ,0.20 ]]
 result:=e02adf(m,kplus1,nrows,x,y,w,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e02aef.input.pamphlet b/src/input/e02aef.input.pamphlet
index 05ee778..e422b50 100644
--- a/src/input/e02aef.input.pamphlet
+++ b/src/input/e02aef.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -24,7 +24,7 @@ a:Matrix SF:=
  [[2.0000 ,0.5000 ,0.2500 ,0.1250 ,0.0625 ]]
 xcap:=-1.0
 result:=e02aef(nplus1,a,xcap, -1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e02agf.input.pamphlet b/src/input/e02agf.input.pamphlet
index b75d7bd..c0e9736 100644
--- a/src/input/e02agf.input.pamphlet
+++ b/src/input/e02agf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1996.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -43,7 +43,7 @@ ip:Matrix Integer:=
 lwrk:=200
 liwrk:=12
 result:=e02agf(m,kplus1,nrows,xmin,xmax,x,y,w,mf,xf,yf,lyf,ip,lwrk,liwrk, -1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e02ahf.input.pamphlet b/src/input/e02ahf.input.pamphlet
index 3b3936c..b9e9a64 100644
--- a/src/input/e02ahf.input.pamphlet
+++ b/src/input/e02ahf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -30,7 +30,7 @@ la:=7
 iadif1:=1
 ladif:=7
 result:=e02ahf(np1,xmin,xmax,a,ia1,la,iadif1,ladif, -1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e02ajf.input.pamphlet b/src/input/e02ajf.input.pamphlet
index 6e029ab..43dd9ab 100644
--- a/src/input/e02ajf.input.pamphlet
+++ b/src/input/e02ajf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -30,7 +30,7 @@ qatm1:=0.0
 iaint1:=1
 laint:=8
 result:=e02ajf(np1,xmin,xmax,a,ia1,la,qatm1,iaint1,laint, -1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e02akf.input.pamphlet b/src/input/e02akf.input.pamphlet
index e7f75d5..5f98891 100644
--- a/src/input/e02akf.input.pamphlet
+++ b/src/input/e02akf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -28,7 +28,7 @@ ia1:=1
 la:=7
 x:=-0.5
 result:=e02akf(np1,xmin,xmax,a,ia1,la,x, -1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e02baf.input.pamphlet b/src/input/e02baf.input.pamphlet
index b71682e..8b120fa 100644
--- a/src/input/e02baf.input.pamphlet
+++ b/src/input/e02baf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -34,7 +34,7 @@ lamda:Matrix SF:=
  [[0.0 ,0.0 ,0.0 ,0.0 ,1.50 ,2.60 ,_
    4.00 ,8.00 ,0.0 ,0.0 ,0.0 ,0.0 ]]
 result:=e02baf(m,ncap7,x,y,w,lamda, -1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e02bbf.input.pamphlet b/src/input/e02bbf.input.pamphlet
index f36041a..531f75c 100644
--- a/src/input/e02bbf.input.pamphlet
+++ b/src/input/e02bbf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -28,7 +28,7 @@ c:Matrix SF:=
    3.00 ,0.00 ,0.00 ,0.00 ,0.00 ]]
 x:=2.0
 result:=e02bbf(ncap7,lamda,c,x,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e02bcf.input.pamphlet b/src/input/e02bcf.input.pamphlet
index 2f00d06..509c79c 100644
--- a/src/input/e02bcf.input.pamphlet
+++ b/src/input/e02bcf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -29,7 +29,7 @@ c:Matrix SF:=
 x:=2.0
 left:=1
 result:=e02bcf(ncap7,lamda,c,x,left, -1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e02bdf.input.pamphlet b/src/input/e02bdf.input.pamphlet
index b6b7da1..264e39a 100644
--- a/src/input/e02bdf.input.pamphlet
+++ b/src/input/e02bdf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -27,7 +27,7 @@ c:Matrix SF:=
  [[10.00 ,12.00 ,13.00 ,15.00 ,22.00 ,26.00 ,_
    24.00 ,18.00 ,14.00 ,12.00 ,0.00 ,0.00 ,0.00 ,0.00 ]]
 result:=e02bdf(ncap7,lamda,c, -1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e02bef.input.pamphlet b/src/input/e02bef.input.pamphlet
index 96fe8c0..18a2d59 100644
--- a/src/input/e02bef.input.pamphlet
+++ b/src/input/e02bef.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -39,7 +39,7 @@ ifail:=-1
 wrk:=new(1,1105,0.0)$Matrix DoubleFloat
 iwrk:=new(1,54,0)$Matrix Integer
 result:=e02bef(start,m,x,y,w,s,nest,lwrk,n,lamda,ifail,wrk,iwrk)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e02daf.input.pamphlet b/src/input/e02daf.input.pamphlet
index 10ecb6d..6799dba 100644
--- a/src/input/e02daf.input.pamphlet
+++ b/src/input/e02daf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -52,7 +52,7 @@ eps:=0.000001
 lamda:Matrix SF:=
  [[0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ]]
 result:=e02daf(m,px,py,x,y,f,w,mu,point,npoint,nc,nws,eps,lamda,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e02dcf.input.pamphlet b/src/input/e02dcf.input.pamphlet
index 0d56dd1..c16516e 100644
--- a/src/input/e02dcf.input.pamphlet
+++ b/src/input/e02dcf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -54,7 +54,7 @@ mu:Matrix SF:=new(1,13,0.0)$Matrix SF
 wrk:Matrix SF:=new(1,592,0.0)$Matrix SF
 iwrk:Matrix Integer:=new(1,51,0)$Matrix Integer
 result:=e02dcf(start,mx,x,my,y,f,s,nxest,nyest,lwrk,liwrk,nx,lamda,ny,mu,wrk,iwrk,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e02ddf.input.pamphlet b/src/input/e02ddf.input.pamphlet
index 4c95a93..a6ac242 100644
--- a/src/input/e02ddf.input.pamphlet
+++ b/src/input/e02ddf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -47,7 +47,7 @@ ny:=0
 mu:=new(1,14,0.0)$Matrix SF
 wrk:=new(1,11016,0.0)$Matrix SF;
 result:=e02ddf(start,m,x,y,f,w,s,nxest,nyest,lwrk,liwrk,nx,lamda,ny,mu,wrk,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e02def.input.pamphlet b/src/input/e02def.input.pamphlet
index 7c50de9..73d5c52 100644
--- a/src/input/e02def.input.pamphlet
+++ b/src/input/e02def.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -37,7 +37,7 @@ c:Matrix SF:=
    3 ,3.2333 ,3.5667 ,3.7667 ,3.8667 ,3.4667 ,3.6 ,3.8333 ,_
    4.1667 ,4.3667 ,4.4667 ,4 ,4.1333 ,4.3667 ,4.7 ,4.9 ,5 ]]
 result:=e02def(m,px,py,x,y,lamda,mu,c,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e02dff.input.pamphlet b/src/input/e02dff.input.pamphlet
index acd0bdf..bfe3ad9 100644
--- a/src/input/e02dff.input.pamphlet
+++ b/src/input/e02dff.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -40,7 +40,7 @@ c:Matrix SF:=
 lwrk:=36
 liwrk:=108
 result:=e02dff(mx,my,px,py,x,y,lamda,mu,c,lwrk,liwrk,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e02gaf.input.pamphlet b/src/input/e02gaf.input.pamphlet
index c932b53..d98e7b8 100644
--- a/src/input/e02gaf.input.pamphlet
+++ b/src/input/e02gaf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -34,7 +34,7 @@ a:Matrix SF:=
 b:Matrix SF:=
  [[4.501 ,4.36 ,4.333 ,4.418 ,4.625 ]]
 result:=e02gaf(m,la,nplus2,toler,a,b, -1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e02zaf.input.pamphlet b/src/input/e02zaf.input.pamphlet
index ebde02a..69d3d98 100644
--- a/src/input/e02zaf.input.pamphlet
+++ b/src/input/e02zaf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -33,7 +33,7 @@ y:Matrix SF:=
 npoint:=45
 nadres:=6
 result:=e02zaf(px,py,lamda,mu,m,x,y,npoint,nadres, -1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e04dgf.input.pamphlet b/src/input/e04dgf.input.pamphlet
index 8cbbb27..83ca234 100644
--- a/src/input/e04dgf.input.pamphlet
+++ b/src/input/e04dgf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -36,7 +36,7 @@ x:Matrix SF:=
 ef:Expression Float:=(exp(X[1])*(4*X[1]**2+2*X[2]**2+4*X[1]*X[2]+2*X[2]+1))::EXPR FLOAT
 objfun:ASP49(OBJFUN):= retract ef
 result:=e04dgf(n,es,fu,it,lin,list,ma,op,pr,sta,sto,ve,x,-1,objfun)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e04fdf.input.pamphlet b/src/input/e04fdf.input.pamphlet
index 838b188..939a7d2 100644
--- a/src/input/e04fdf.input.pamphlet
+++ b/src/input/e04fdf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -43,7 +43,7 @@ vef:Vector Expression Float:= vector
   15*(XC[3]+XC[2])**(-1)+XC[1]-4.39 ]
 lsfun1:ASP50(LSFUN1):= retract vef
 result:=e04fdf(m,n,liw,lw,x,-1,lsfun1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e04gcf.input.pamphlet b/src/input/e04gcf.input.pamphlet
index 2bfb59f..0885b92 100644
--- a/src/input/e04gcf.input.pamphlet
+++ b/src/input/e04gcf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -43,7 +43,7 @@ vef:Vector Expression Float:=vector
    15*(XC[3]+XC[2])**(-1)+XC[1]-4.39 ]
 lsfun2:Asp19(LSFUN2):= retract vef
 result:=e04gcf(m,n,liw,lw,x,-1,lsfun2)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e04jaf.input.pamphlet b/src/input/e04jaf.input.pamphlet
index 41f77ac..6d1522c 100644
--- a/src/input/e04jaf.input.pamphlet
+++ b/src/input/e04jaf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -33,7 +33,7 @@ ef:Expression Float:=
  ((XC[1]+10*XC[2])**2+5*(XC[3]-XC[4])**2+(XC[2]-2*XC[3])**4+10*(XC[1]-XC[4])**4)::EXPR FLOAT
 funct1:Asp24(FUNCT1):=retract ef
 result:=e04jaf(n,ibound,liw,lw,bl,bu,x,-1,funct1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e04mbf.input.pamphlet b/src/input/e04mbf.input.pamphlet
index ce578e0..9553ff4 100644
--- a/src/input/e04mbf.input.pamphlet
+++ b/src/input/e04mbf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -48,7 +48,7 @@ lwork:=182
 x:Matrix SF:=
  [[-0.01 ,-0.03 ,0.0 ,-0.01 ,-0.1 ,0.02 ,0.01 ]]
 result:=e04mbf(itmax,msglvl,n,nclin,nctotl,nrowa,a,bl,bu,cvec,linobj,liwork,lwork,x,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e04naf.input.pamphlet b/src/input/e04naf.input.pamphlet
index f47a7c3..8b35227 100644
--- a/src/input/e04naf.input.pamphlet
+++ b/src/input/e04naf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -76,7 +76,7 @@ mei:Matrix Expression Integer:=
 qphess:Asp20(QPHESS):= retract mei
 result:=e04naf(itmax,msglvl,n,nclin,nctotl,nrowa,nrowh,ncolh,bigbnd,a,bl,bu,cvec,featol,_
 hess,cold,lpp,orthog,liwork,lwork,x,istate,-1,qphess)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e04ucf.input.pamphlet b/src/input/e04ucf.input.pamphlet
index 087b365..d42f529 100644
--- a/src/input/e04ucf.input.pamphlet
+++ b/src/input/e04ucf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -93,7 +93,7 @@ result:=e04ucf(n,nclin,ncnln,nrowa,nrowj,nrowr,a,bl,bu,liwork,lwork,_
 sta,cra,der,fea,fun,hes,infb,infs,linf,lint,list,maji,majp,_
 mini,minp,mon,nonf,opt,ste,stao,stac,stoo,stoc,ve,istate,_
 cjac,clamda,r,x,-1,confun,objfun)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e04ycf.input.pamphlet b/src/input/e04ycf.input.pamphlet
index e28bb8d..9402826 100644
--- a/src/input/e04ycf.input.pamphlet
+++ b/src/input/e04ycf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -31,7 +31,7 @@ v:Matrix SF:=
    0.35295122094583287, 0.64323460044494585, 0.67946647041872243,_
    - 0.021445968175122822, - 0.72045115819433947, 0.69317400348358882]]
 result:=e04ycf(job,m,n,fsumsq,s,lv,v,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/e1.input.pamphlet b/src/input/e1.input.pamphlet
index 4df75da..d573de7 100644
--- a/src/input/e1.input.pamphlet
+++ b/src/input/e1.input.pamphlet
@@ -10,23 +10,23 @@ This is a regression test for E1(x)
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool e1.output
 )set message test on
 )set message auto off
 )clear all
 
-@
+\end{chunk}
 Here we enter the value of Gamma
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 7
 G:DFLOAT:=0.577215664901532860606512::DFLOAT
 --R
 --R   (1)  0.57721566490153287
 --R                                                            Type: DoubleFloat
 --E 1
-@
+\end{chunk}
 
 Since the E1 function varies over a couple hundred orders
 of magnitude it is necessary to scale the computations to
@@ -34,12 +34,12 @@ put the results into a reasonable range. We use the function
 listed in 
 Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
 Dover Publications, Inc. New York 1965. pp238
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 7
 f(x)==x^-1 * (E1(x)::DFLOAT + log(x) + G)
 --R                                                                   Type: Void
 --E 2
-@
+\end{chunk}
 
 This table computes the Exponential Integral $E1(x)$ for $x$
 in 0.01 to 0.50. Column 1 is the point of evaluation, column 2
@@ -47,7 +47,7 @@ is the reference value of $E1(x)$ from the book
 Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
 Dover Publications, Inc. New York 1965. pp238
 
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 7
 [[0.01,0.9975055452, f(0.01), f(0.01)-0.9975055452],_
 [0.02,0.9950221392, f(0.02), f(0.02)-0.9950221392],_
@@ -263,14 +263,14 @@ Dover Publications, Inc. New York 1965. pp238
 --R    [0.5,0.88768415840000003,0.88768415823549685,- 1.6450318884864146E-10]]
 --R                                                  Type: List List DoubleFloat
 --E 3
-@
+\end{chunk}
 
 This table computes the Exponential Integral $E1(x)$ for $x$
 in 0.50 to 2.00. Column 1 is the point of evaluation, column 2
 is the reference value of $E1(x)$ from the book
 Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
 Dover Publications, Inc. New York 1965. pp239-241
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 7
 [[0.50, 0.559773595, E1(0.50), E1(0.50)-0.559773595],_
 [0.51, 0.547822352, E1(0.51), E1(0.51)-0.547822352],_
@@ -832,20 +832,20 @@ Dover Publications, Inc. New York 1965. pp239-241
 --R    [2.,4.8900511000000001E-2,4.8900510708061007E-2,- 2.9193899381274591E-10]]
 --R                                                  Type: List List DoubleFloat
 --E 4
-@
+\end{chunk}
 
 Now that we move into larger numbers we need a new scaling function.
-<<*>>=
+\begin{chunk}{*}
 --S 5 of 7
 g(x)==x * %e^x * E1(x)::DFLOAT
 --R                                                                   Type: Void
 --E 5
-@
+\end{chunk}
 
 And we compute the scaled value of E1(x) in the range 2.0 to 10.0
 from Abramowitz and Stegun,``Handbook of Mathematical Functions'',
 Dover Publications, Inc. New York 1965. pp242-243
-<<*>>=
+\begin{chunk}{*}
 --S 6 of 7
 [[2.0,0.722657234,g(2.0),g(2.0)-0.722657234],_
 [2.1,0.730791502,g(2.1),g(2.1)-0.730791502],_
@@ -1214,7 +1214,7 @@ E1(0.0)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} Abramowitz and Stegun,``Handbook of Mathematical Functions'',
diff --git a/src/input/easter.input.pamphlet b/src/input/easter.input.pamphlet
index 64c9c44..123e51d 100644
--- a/src/input/easter.input.pamphlet
+++ b/src/input/easter.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )spool easter.output
 )set message test on
 )set message auto off
@@ -24,10 +24,10 @@
 )set quit unprotected
 )set streams calculate 7
  
-@
+\end{chunk}
 \section{Numbers}
 Let's begin by playing with numbers: infinite precision integers
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 200
 factorial(50)
 --R 
@@ -45,9 +45,9 @@ factor(%)
 --R                                                       Type: Factored Integer
 --E 2
 
-@
+\end{chunk}
 Infinite precision rational numbers
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 200
 1/2 + 1/3 + 1/4 + 1/5 + 1/6 + 1/7 + 1/8 + 1/9 + 1/10
 --R 
@@ -58,9 +58,9 @@ Infinite precision rational numbers
 --R                                                       Type: Fraction Integer
 --E 3
 
-@
+\end{chunk}
 Arbitrary precision floating point numbers
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 200
 digits(50);
 --R 
@@ -68,9 +68,9 @@ digits(50);
 --R                                                        Type: PositiveInteger
 --E 4
 
-@
+\end{chunk}
 This number is nearly an integer
-<<*>>=
+\begin{chunk}{*}
 --S 5 of 200
 exp(sqrt(163.)*%pi)
 --R 
@@ -86,9 +86,9 @@ digits(20);
 --R                                                        Type: PositiveInteger
 --E 6
 
-@
+\end{chunk}
 Special functions
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 200
 besselJ(2, 1 + %i)
 --R 
@@ -97,9 +97,9 @@ besselJ(2, 1 + %i)
 --R                                                    Type: Complex DoubleFloat
 --E 7
 
-@
+\end{chunk}
 Complete decimal expansion of a rational number
-<<*>>=
+\begin{chunk}{*}
 --S 8 of 200
 decimal(1/7)
 --R 
@@ -109,9 +109,9 @@ decimal(1/7)
 --R                                                       Type: DecimalExpansion
 --E 8
 
-@
+\end{chunk}
 Continued fractions
-<<*>>=
+\begin{chunk}{*}
 --S 9 of 200
 continuedFraction(3.1415926535)
 --R 
@@ -122,9 +122,9 @@ continuedFraction(3.1415926535)
 --R                                              Type: ContinuedFraction Integer
 --E 9
 
-@
+\end{chunk}
 Simplify an expression with nested square roots
-<<*>>=
+\begin{chunk}{*}
 --S 10 of 200
 sqrt(2*sqrt(3) + 4)
 --R 
@@ -145,9 +145,9 @@ simplify(%)
 --R                                                     Type: Expression Integer
 --E 11
 
-@
+\end{chunk}
 Try a more complicated example (from the Putnam exam)
-<<*>>=
+\begin{chunk}{*}
 --S 12 of 200
 sqrt(14 + 3*sqrt(3 + 2*sqrt(5 - 12*sqrt(3 - 2*sqrt(2)))))
 --R 
@@ -174,9 +174,9 @@ simplify(%)
 --R                                                     Type: Expression Integer
 --E 13
 
-@
+\end{chunk}
 Cardinal numbers
-<<*>>=
+\begin{chunk}{*}
 --S 14 of 200
 2*Aleph(0) - 3
 --R 
@@ -185,11 +185,11 @@ Cardinal numbers
 --R                                              Type: Union(CardinalNumber,...)
 --E 14
 
-@
+\end{chunk}
 \section{Algebra}
 Numbers are nice, but symbols allow for variability---try some high school
 algebra: rational simplification
-<<*>>=
+\begin{chunk}{*}
 --S 15 of 200
 (x**2 - 4)/(x**2 + 4*x + 4)
 --R 
@@ -200,9 +200,9 @@ algebra: rational simplification
 --R                                            Type: Fraction Polynomial Integer
 --E 15
 
-@
+\end{chunk}
 This example requires more sophistication
-<<*>>=
+\begin{chunk}{*}
 --S 16 of 200
 (%e**x - 1)/(%e**(x/2) + 1)
 --R 
@@ -228,9 +228,9 @@ normalize(%)
 --R                                                     Type: Expression Integer
 --E 17
 
-@
+\end{chunk}
 Expand and factor polynomials
-<<*>>=
+\begin{chunk}{*}
 --S 18 of 200
 (x + 1)**20
 --R 
@@ -297,9 +297,9 @@ factor(%)
 --R                                            Type: Factored Polynomial Integer
 --E 22
 
-@
+\end{chunk}
 Factor polynomials over finite fields and field extensions
-<<*>>=
+\begin{chunk}{*}
 --S 23 of 200
 p:= x**4 - 3*x**2 + 1
 --R 
@@ -351,9 +351,9 @@ expand(%)
 --R                                                Type: Polynomial PrimeField 5
 --E 28
 
-@
+\end{chunk}
 Partial fraction decomposition
-<<*>>=
+\begin{chunk}{*}
 --S 29 of 200
 (x**2 + 2*x + 3)/(x**3 + 4*x**2 + 5*x + 2)
 --R 
@@ -380,10 +380,10 @@ padicFraction(
 --R               Type: PartialFraction UnivariatePolynomial(x,Fraction Integer)
 --E 30
 
-@
+\end{chunk}
 \section{Trigonometry}
 Trigonometric manipulations---these are typically difficult for students
-<<*>>=
+\begin{chunk}{*}
 --S 31 of 200
 r:= cos(3*x)/cos(x)
 --R 
@@ -411,9 +411,9 @@ real(normalize(simplify(complexNormalize(r))))
 --R                                                     Type: Expression Integer
 --E 33
 
-@
+\end{chunk}
 Use rewrite rules
-<<*>>=
+\begin{chunk}{*}
 --S 34 of 200
 sincosAngles:= rule _
   (cos((n | integer?(n)) * x) == _
@@ -444,10 +444,10 @@ r:= 'r;
 --R                                                             Type: Variable r
 --E 36
 
-@
+\end{chunk}
 \section{Determining Zero Equivalence}
 The following expressions are all equal to zero
-<<*>>=
+\begin{chunk}{*}
 --S 37 of 200
 sqrt(997) - (997**3)**(1/6)
 --R 
@@ -482,9 +482,9 @@ simplify(%)
 --R                                                     Type: Expression Integer
 --E 40
 
-@
+\end{chunk}
 This expression is zero for $x, y > 0$ and $n$ not equal to zero
-<<*>>=
+\begin{chunk}{*}
 --S 41 of 200
 x**(1/n)*y**(1/n) - (x*y)**(1/n)
 --R 
@@ -504,10 +504,10 @@ normalize(%)
 --R                                                     Type: Expression Integer
 --E 42
 
-@
+\end{chunk}
 See Joel Moses, ``Algebraic Simplification: A Guide for the Perplexed'',
 CACM, Volume 14, Number 8, August 1971
-<<*>>=
+\begin{chunk}{*}
 --S 43 of 200
 expr:= log(tan(1/2*x + %pi/4)) - asinh(tan(x))
 --R 
@@ -570,9 +570,9 @@ complexNormalize(%)
 --R                                                     Type: Expression Integer
 --E 44
 
-@
+\end{chunk}
 Use a roundabout method---show that expr is a constant equal to zero
-<<*>>=
+\begin{chunk}{*}
 --S 45 of 200
 D(expr, x)
 --R 
@@ -667,10 +667,10 @@ normalize(%)
 --R                                                     Type: Expression Integer
 --E 51
 
-@
+\end{chunk}
 \section{The Complex Domain}
  Complex functions---separate into their real and imaginary parts
-<<*>>=
+\begin{chunk}{*}
 --S 52 of 200
 rectform(z) == real(z) + %i*imag(z)
 --R 
@@ -703,13 +703,13 @@ simplify(rectform(tan(x + %i*y)))
 --R                                             Type: Expression Complex Integer
 --E 54
 
-@
+\end{chunk}
 Check for branch abuse.  See David R. Stoutemyer, ``Crimes and Misdemeanors
 in the Computer Algebra Trade'', Notices of the AMS, Volume 38, Number 7,
 September 1991.  This first expression can simplify to 
 $\sqrt{(x y)}/\sqrt{(x)}$,
 but no further in general (consider what happens when x, y = -1).
-<<*>>=
+\begin{chunk}{*}
 --S 55 of 200
 sqrt(x*y*abs(z)**2) / (sqrt(x)*abs(z))
 --R 
@@ -723,9 +723,9 @@ sqrt(x*y*abs(z)**2) / (sqrt(x)*abs(z))
 --R                                                     Type: Expression Integer
 --E 55
 
-@
+\end{chunk}
 If $z = -1$, $\sqrt(1/z)$ is not equal to $1/\sqrt(z)$
-<<*>>=
+\begin{chunk}{*}
 --S 56 of 200
 sqrt(1/z) - 1/sqrt(z)
 --R 
@@ -740,9 +740,9 @@ sqrt(1/z) - 1/sqrt(z)
 --R                                                     Type: Expression Integer
 --E 56
 
-@
+\end{chunk}
 If $z = 3 \pi i$, $\log(\exp(z))$ is not equal to $z$
-<<*>>=
+\begin{chunk}{*}
 --S 57 of 200
 log(%e**z)
 --R 
@@ -759,9 +759,9 @@ normalize(%)
 --R                                                     Type: Expression Integer
 --E 58
 
-@
+\end{chunk}
 The principal value of this expression is $(10 - 4 \pi) i$
-<<*>>=
+\begin{chunk}{*}
 --S 59 of 200
 log(%e**(10*%i))
 --R 
@@ -780,9 +780,9 @@ normalize(%)
 --R                                             Type: Expression Complex Integer
 --E 60
 
-@
+\end{chunk}
 If $z = \pi$, $\arctan(\tan(z))$ is not equal to $z$
-<<*>>=
+\begin{chunk}{*}
 --S 61 of 200
 atan(tan(z))
 --R 
@@ -791,9 +791,9 @@ atan(tan(z))
 --R                                                     Type: Expression Integer
 --E 61
 
-@
+\end{chunk}
 If $z = 2 \pi i$, $\sqrt(\exp(z))$ is not equal to $\exp(z/2)$
-<<*>>=
+\begin{chunk}{*}
 --S 62 of 200
 sqrt(%e**z) - %e**(z/2)
 --R 
@@ -805,10 +805,10 @@ sqrt(%e**z) - %e**(z/2)
 --R                                                     Type: Expression Integer
 --E 62
 
-@
+\end{chunk}
 \section{Equations}
 Manipulate an equation using a natural syntax
-<<*>>=
+\begin{chunk}{*}
 --S 63 of 200
 (x = 0)/2 + 1
 --R 
@@ -819,9 +819,9 @@ Manipulate an equation using a natural syntax
 --R                                   Type: Equation Fraction Polynomial Integer
 --E 63
 
-@
+\end{chunk}
 Solve various nonlinear equations---this cubic polynomial has all real roots
-<<*>>=
+\begin{chunk}{*}
 --S 64 of 200
 radicalSolve(3*x**3 - 18*x**2 + 33*x - 19 = 0, x)
 --R 
@@ -921,9 +921,9 @@ map(e +-> lhs(e) = rectform(rhs(e)), %)
 --R                               Type: List Equation Expression Complex Integer
 --E 65
 
-@
+\end{chunk}
 Some simple seeming problems can have messy answers
-<<*>>=
+\begin{chunk}{*}
 --S 66 of 200
 eqn:= x**4 + x**3 + x**2 + x + 1 = 0
 --R 
@@ -1281,9 +1281,9 @@ radicalSolve(eqn, x)
 --R                                       Type: List Equation Expression Integer
 --E 67
 
-@
+\end{chunk}
 Check one of the answers
-<<*>>=
+\begin{chunk}{*}
 --S 68 of 200
 eval(eqn, %.1)
 --R 
@@ -1391,9 +1391,9 @@ solve(%, x)
 --R                                       Type: List Equation Expression Integer
 --E 70
 
-@
+\end{chunk}
 This equation is already factored and so {\sl should} be easy to solve
-<<*>>=
+\begin{chunk}{*}
 --S 71 of 200
 (x + 1) * (sin(x)**2 + 1)**2 * cos(3*x)**3 = 0
 --R 
@@ -1413,10 +1413,10 @@ solve(%, x)
 --R                                       Type: List Equation Expression Integer
 --E 72
 
-@
+\end{chunk}
 The following equations have an infinite number of solutions (let $n$ be an
 arbitrary integer): $z = 0 [+ n 2 \pi i]$
-<<*>>=
+\begin{chunk}{*}
 --S 73 of 200
 solve(%e**z = 1, z)
 --R 
@@ -1425,9 +1425,9 @@ solve(%e**z = 1, z)
 --R                                       Type: List Equation Expression Integer
 --E 73
 
-@
+\end{chunk}
 $x = \pi/4 [+ n \pi]$
-<<*>>=
+\begin{chunk}{*}
 --S 74 of 200
 solve(sin(x) = cos(x), x)
 --R 
@@ -1448,9 +1448,9 @@ solve(tan(x) = 1, x)
 --R                                       Type: List Equation Expression Integer
 --E 75
 
-@
+\end{chunk}
 $x = 0$, $0 [+ n \pi, + n 2 \pi]$
-<<*>>=
+\begin{chunk}{*}
 --S 76 of 200
 solve(sin(x) = tan(x), x)
 --R 
@@ -1459,9 +1459,9 @@ solve(sin(x) = tan(x), x)
 --R                                       Type: List Equation Expression Integer
 --E 76
 
-@
+\end{chunk}
 This equation has no solutions
-<<*>>=
+\begin{chunk}{*}
 --S 77 of 200
 solve(sqrt(x**2 + 1) = x - 2, x)
 --R 
@@ -1470,9 +1470,9 @@ solve(sqrt(x**2 + 1) = x - 2, x)
 --R                                       Type: List Equation Expression Integer
 --E 77
 
-@
+\end{chunk}
 Solve a system of linear equations
-<<*>>=
+\begin{chunk}{*}
 --S 78 of 200
 eq1:=   x +   y +   z =  6
 --R 
@@ -1497,9 +1497,9 @@ eq3:=   x + 3*y +   z = 10
 --R                                            Type: Equation Polynomial Integer
 --E 80
 
-@
+\end{chunk}
 Note that the solution is parametric
-<<*>>=
+\begin{chunk}{*}
 --S 81 of 200
 solve([eq1, eq2, eq3], [x, y, z])
 --R 
@@ -1507,9 +1507,9 @@ solve([eq1, eq2, eq3], [x, y, z])
 --I   (81)  [[x= - %BU + 4,y= 2,z= %BU]]
 --R                         Type: List List Equation Fraction Polynomial Integer
 --E 81
-@
+\end{chunk}
 Solve a system of nonlinear equations
-<<*>>=
+\begin{chunk}{*}
 --S 82 of 200
 eq1:= x**2*y + 3*y*z - 4 = 0
 --R 
@@ -1537,9 +1537,9 @@ eq3:= 2*y*z**2 - z**2 - 1 = 0
 --R                                            Type: Equation Polynomial Integer
 --E 84
 
-@
+\end{chunk}
 Solving this by hand would be a nightmare
-<<*>>=
+\begin{chunk}{*}
 --S 85 of 200
 solve([eq1, eq2, eq3], [x, y, z])
 --R 
@@ -1559,9 +1559,9 @@ solve([eq1, eq2, eq3], [x, y, z])
 --R                         Type: List List Equation Fraction Polynomial Integer
 --E 85
 
-@
+\end{chunk}
 \section{Matrix Algebra}
-<<*>>=
+\begin{chunk}{*}
 --S 86 of 200
 m:= matrix([[a, b], [1, a*b]])
 --R 
@@ -1572,9 +1572,9 @@ m:= matrix([[a, b], [1, a*b]])
 --R                                              Type: Matrix Polynomial Integer
 --E 86
 
-@
+\end{chunk}
 Invert the matrix
-<<*>>=
+\begin{chunk}{*}
 --S 87 of 200
 minv:= inverse(m)
 --R 
@@ -1601,9 +1601,9 @@ m * minv
 --R                                     Type: Matrix Fraction Polynomial Integer
 --E 88
 
-@
+\end{chunk}
 Define a Vandermonde matrix (useful for doing polynomial interpolations)
-<<*>>=
+\begin{chunk}{*}
 --S 89 of 200
 matrix([[1,    1,    1,    1   ], _
         [w,    x,    y,    z   ], _
@@ -1642,9 +1642,9 @@ determinant(%)
 --R                                                     Type: Polynomial Integer
 --E 90
 
-@
+\end{chunk}
 The following formula implies a general result
-<<*>>=
+\begin{chunk}{*}
 --S 91 of 200
 factor(%)
 --R 
@@ -1653,9 +1653,9 @@ factor(%)
 --R                                            Type: Factored Polynomial Integer
 --E 91
 
-@
+\end{chunk}
 Compute the eigenvalues of a matrix from its characteristic polynomial
-<<*>>=
+\begin{chunk}{*}
 --S 92 of 200
 m:= matrix([[ 5, -3, -7], _
             [-2,  1,  2], _
@@ -1694,10 +1694,10 @@ m:= 'm;
 --R                                                             Type: Variable m
 --E 95
 
-@
+\end{chunk}
 \section{Sums and Products}
 \subsection{Sums: finite and infinite}
-<<*>>=
+\begin{chunk}{*}
 --S 96 of 200
 summation(k**3, k = 1..n)
 --R 
@@ -1728,9 +1728,9 @@ limit(sum(1/k**2 + 1/k**3, k = 1..n), n = %plusInfinity)
 --R   (98)  "failed"
 --R                                                    Type: Union("failed",...)
 --E 98
-@
+\end{chunk}
 \subsection{Products}
-<<*>>=
+\begin{chunk}{*}
 --S 99 of 200
 product(k, k = 1..n)
 --R 
@@ -1743,10 +1743,10 @@ product(k, k = 1..n)
 --R                                                     Type: Expression Integer
 --E 99
 
-@
+\end{chunk}
 \section{Calculus}
 \subsection{Limits --- start with a famous example}
-<<*>>=
+\begin{chunk}{*}
 --S 100 of 200
 limit((1 + 1/n)**n, n = %plusInfinity)
 --R 
@@ -1765,10 +1765,10 @@ limit((1 - cos(x))/x**2, x = 0)
 --R                        Type: Union(OrderedCompletion Expression Integer,...)
 --E 101
 
-@
+\end{chunk}
 Apply the chain rule---this is important for PDEs and many other
 applications
-<<*>>=
+\begin{chunk}{*}
 --S 102 of 200
 y:= operator('y);
 --R 
@@ -1795,9 +1795,9 @@ D(y(x(t)), t, 2)
 
 )clear properties x y
 
-@
+\end{chunk}
 \subsection{Indefinite Integrals}
-<<*>>=
+\begin{chunk}{*}
 --S 105 of 200
 1/(x**3 + 2)
 --R 
@@ -1809,9 +1809,9 @@ D(y(x(t)), t, 2)
 --R                                            Type: Fraction Polynomial Integer
 --E 105
 
-@
+\end{chunk}
 This would be very difficult to do by hand
-<<*>>=
+\begin{chunk}{*}
 --S 106 of 200
 integrate(%, x)
 --R 
@@ -1841,9 +1841,9 @@ D(%, x)
 --R                                                     Type: Expression Integer
 --E 107
 
-@
+\end{chunk}
 This example involves several symbolic parameters
-<<*>>=
+\begin{chunk}{*}
 --S 108 of 200
 integrate(1/(a + b*cos(x)), x)
 --R 
@@ -1880,9 +1880,9 @@ map(simplify, map(f +-> D(f, x), %))
 --R                                                Type: List Expression Integer
 --E 109
 
-@
+\end{chunk}
 Calculus on a non-smooth (but well defined) function
-<<*>>=
+\begin{chunk}{*}
 --S 110 of 200
 D(abs(x), x)
 --R 
@@ -1904,9 +1904,9 @@ integrate(abs(x), x)
 --R                                          Type: Union(Expression Integer,...)
 --E 111
 
-@
+\end{chunk}
 Calculus on a piecewise defined function
-<<*>>=
+\begin{chunk}{*}
 --S 112 of 200
 a(x) == if x < 0 then -x else x
 --R 
@@ -1934,10 +1934,10 @@ integrate(a(x), x)
 
 )clear properties a
  
-@
+\end{chunk}
 The following two integrals should be equivalent.  The correct solution is
 $[(1 + x)^(3/2) + (1 - x)^(3/2)] / 3$
-<<*>>=
+\begin{chunk}{*}
 --S 115 of 200
 integrate(x/(sqrt(1 + x) + sqrt(1 - x)), x)
 --R 
@@ -1960,10 +1960,10 @@ integrate((sqrt(1 + x) - sqrt(1 - x))/2, x)
 --R                                          Type: Union(Expression Integer,...)
 --E 116
 
-@
+\end{chunk}
 \subsection{Definite Integrals}
 The following two functions have a pole at zero
-<<*>>=
+\begin{chunk}{*}
 --S 117 of 200
 integrate(1/x, x = -1..1)
 --R 
@@ -1988,11 +1988,11 @@ integrate(1/x**2, x = -1..1)
 --R
 --E 118
 
-@
+\end{chunk}
 Different branches of the square root need to be chosen in the intervals
 [0, 1] and [1, 2].  The correct results are $4/3$, $[4 - \sqrt{(8)}]/3$,
 $[8 - \sqrt{(8)}]/3$, respectively.
-<<*>>=
+\begin{chunk}{*}
 --S 119 of 200
 integrate(sqrt(x + 1/x - 2), x = 0..1)
 --R 
@@ -2049,9 +2049,9 @@ integrate(sqrt(x + 1/x - 2), x = 0..2, "noPole")
 --R                    Type: Union(f1: OrderedCompletion Expression Integer,...)
 --E 124
 
-@
+\end{chunk}
 \subsection{Contour integrals}
-<<*>>=
+\begin{chunk}{*}
 --S 125 of 200
 integrate(cos(x)/(x**2 + a**2), x = %minusInfinity..%plusInfinity)
 --R 
@@ -2068,9 +2068,9 @@ integrate(cos(x)/(x**2 + a**2), x = %minusInfinity..%plusInfinity, "noPole")
 --R                                                Type: Union(fail: failed,...)
 --E 126
 
-@
+\end{chunk}
 \subsection{Integrand with a branch point}
-<<*>>=
+\begin{chunk}{*}
 --S 127 of 200
 integrate(t**(a - 1)/(1 + t), t = 0..%plusInfinity)
 --R 
@@ -2087,9 +2087,9 @@ integrate(t**(a - 1)/(1 + t), t = 0..%plusInfinity, "noPole")
 --R                                                Type: Union(fail: failed,...)
 --E 128
 
-@
+\end{chunk}
 Multiple integrals: volume of a tetrahedron
-<<*>>=
+\begin{chunk}{*}
 --S 129 of 200
 integrate(integrate(integrate(1, z = 0..c*(1 - x/a - y/b)), _
                     y = 0..b*(1 - x/a)), _
@@ -2102,10 +2102,10 @@ integrate(integrate(integrate(1, z = 0..c*(1 - x/a - y/b)), _
 --R                    Type: Union(f1: OrderedCompletion Expression Integer,...)
 --E 129
 
-@
+\end{chunk}
 \subsection{Series}
 Taylor series---this first example comes from special relativity
-<<*>>=
+\begin{chunk}{*}
 --S 130 of 200
 1/sqrt(1 - (v/c)**2)
 --R 
@@ -2163,9 +2163,9 @@ tcos:= series(cos(x), x = 0)
 --R                        Type: UnivariatePuiseuxSeries(Expression Integer,x,0)
 --E 134
 
-@
+\end{chunk}
 Note that additional terms will be computed as needed
-<<*>>=
+\begin{chunk}{*}
 --S 135 of 200
 tsin/tcos
 --R 
@@ -2186,9 +2186,9 @@ series(tan(x), x = 0)
 --R                        Type: UnivariatePuiseuxSeries(Expression Integer,x,0)
 --E 136
 
-@
+\end{chunk}
 Look at the Taylor series around $x = 1$
-<<*>>=
+\begin{chunk}{*}
 
 )set streams calculate 1
 
@@ -2215,9 +2215,9 @@ series(%, x = 1)
 
 )set streams calculate 7
 
-@ 
+\end{chunk} 
 Compare the Taylor series of two different formulations of a function
-<<*>>=
+\begin{chunk}{*}
 --S 139 of 200
 taylor(log(sinh(z)) + log(cosh(z + w)), z = 0)
 --R 
@@ -2242,10 +2242,10 @@ taylor(log(sinh(z)) + log(cosh(z + w)), z = 0)
 --R
 --E 140
 
-@
+\end{chunk}
 \subsection{Power series}
 Compute the general formula
-<<*>>=
+\begin{chunk}{*}
 --S 141 of 200
 log(sin(x)/x)
 --R 
@@ -2285,10 +2285,10 @@ series(%, x = 0)
 --R                        Type: UnivariatePuiseuxSeries(Expression Integer,x,0)
 --E 144
 
-@
+\end{chunk}
 Derive an explicit Taylor series solution of y as a function of x from the
 following implicit relation
-<<*>>=
+\begin{chunk}{*}
 --S 145 of 200
 y:= operator('y);
 --R 
@@ -2318,9 +2318,9 @@ seriesSolve(%, y, x = 1, 0)
 
 )clear properties y
 
-@ 
+\end{chunk} 
 \subsection{Pade (rational function) approximation}
-<<*>>=
+\begin{chunk}{*}
 --S 148 of 200
 pade(1, 1, taylor(exp(-x), x = 0))
 --R 
@@ -2331,10 +2331,10 @@ pade(1, 1, taylor(exp(-x), x = 0))
 --R         Type: Union(Fraction UnivariatePolynomial(x,Expression Integer),...)
 --E 148
 
-@
+\end{chunk}
 \section{Transforms}
 \subsection{Laplace and inverse Laplace transforms}
-<<*>>=
+\begin{chunk}{*}
 --S 149 of 200
 laplace(cos((w - 1)*t), t, s)
 --R 
@@ -2356,10 +2356,10 @@ inverseLaplace(%, s, t)
 --R                                          Type: Union(Expression Integer,...)
 --E 150
 
-@
+\end{chunk}
 \section{Difference and Differential Equations}
 \subsection{Second order linear recurrence equation}
-<<*>>=
+\begin{chunk}{*}
 --S 151 of 200
 r:= operator('r);
 --R 
@@ -2385,10 +2385,10 @@ r(n + 2) - 2 * r(n + 1) + r(n) = 2
 
 )clear properties r
  
-@
+\end{chunk}
 \subsection{Second order ODE with initial conditions}
 solve first using Laplace transforms
-<<*>>=
+\begin{chunk}{*}
 --S 154 of 200
 f:= operator('f);
 --R 
@@ -2417,9 +2417,9 @@ map(e +-> laplace(e, t, s), %)
 --R                                            Type: Equation Expression Integer
 --E 156
 
-@
+\end{chunk}
 Now, solve the ODE directly
-<<*>>=
+\begin{chunk}{*}
 --S 157 of 200
 solve(ode, f, t = 0, [0, 0])
 --R 
@@ -2430,9 +2430,9 @@ solve(ode, f, t = 0, [0, 0])
 --R                                          Type: Union(Expression Integer,...)
 --E 157
 
-@
+\end{chunk}
 \subsection{First order linear ODE}
-<<*>>=
+\begin{chunk}{*}
 --S 158 of 200
 y:= operator('y);
 --R 
@@ -2461,9 +2461,9 @@ solve(%, y, x)
 --RType: Union(Record(particular: Expression Integer,basis: List Expression Integer),...)
 --E 160
 
-@
+\end{chunk}
 \subsection{Nonlinear ODE}
-<<*>>=
+\begin{chunk}{*}
 --S 161 of 200
 D(y(x), x, 2) + y(x)*D(y(x), x)**3 = 0
 --R 
@@ -2486,9 +2486,9 @@ solve(%, y, x)
 --R
 --E 162
 
-@
+\end{chunk}
 A simple parametric ODE
-<<*>>=
+\begin{chunk}{*}
 --S 163 of 200
 D(y(x, a), x) = a*y(x, a)
 --R 
@@ -2510,11 +2510,11 @@ solve(%, y, x);
 --R
 --E 164
 
-@
+\end{chunk}
 \subsection{ODE with boundary conditions}  
 This problem has nontrivial solutions
 $y(x) = A \sin([\pi/2 + n \pi] x)$ for $n$ an arbitrary integer.
-<<*>>=
+\begin{chunk}{*}
 --S 165 of 200
 solve(D(y(x), x, 2) + k**2*y(x) = 0, y, x)
 --R 
@@ -2525,9 +2525,9 @@ solve(D(y(x), x, 2) + k**2*y(x) = 0, y, x)
 
 -- bc(%, x = 0, y = 0, x = 1, D(y(x), x) = 0)
 
-@
+\end{chunk}
 \subsection{System of two linear, constant coefficient ODEs}
-<<*>>=
+\begin{chunk}{*}
 --S 166 of 200
 x:= operator('x);
 --R 
@@ -2545,9 +2545,9 @@ system:= [D(x(t), t) = x(t) - y(t), D(y(t), t) = x(t) + y(t)]
 --R                                       Type: List Equation Expression Integer
 --E 167
 
-@
+\end{chunk}
 Check the answer. Triangular system of two ODEs
-<<*>>=
+\begin{chunk}{*}
 --S 168 of 200
 system:= [D(x(t), t) = x(t) * (1 + cos(t)/(2 + sin(t))), _
           D(y(t), t) = x(t) - y(t)]
@@ -2559,9 +2559,9 @@ system:= [D(x(t), t) = x(t) * (1 + cos(t)/(2 + sin(t))), _
 --R                                       Type: List Equation Expression Integer
 --E 168
 
-@
+\end{chunk}
 Try solving this system one equation at a time
-<<*>>=
+\begin{chunk}{*}
 --S 169 of 200
 s:=solve(system.1, x, t)
 --R 
@@ -2614,10 +2614,10 @@ map(e +-> rightZero eval(e, [eq1, D(eq1,t), eq2 , D(eq2,t)]), system)
 --E 173
 )clear properties x y
  
-@
+\end{chunk}
 \section{Operators}
 \subsection{Linear differential operator}
-<<*>>=
+\begin{chunk}{*}
 --S 174 of 200
 DD:= operator("D") :: Operator(Expression Integer)
 --R 
@@ -2680,9 +2680,9 @@ subst(L(subst(A * sin(z**2), z = x)), x = z)
 --R                                                     Type: Expression Integer
 --E 180
 
-@
+\end{chunk}
 \subsection{Truncated Taylor series operator}
-<<*>>=
+\begin{chunk}{*}
 --S 181 of 200
 T:= (f, xx, a) +-> subst((DD**0)(f(x)), x = a)/factorial(0) * (xx - a)**0 + _
                    subst((DD**1)(f(x)), x = a)/factorial(1) * (xx - a)**1 + _
@@ -2755,10 +2755,10 @@ T(Sin, z, c)
 --R                                                     Type: Expression Integer
 --E 186
 
-@
+\end{chunk}
 \section{Programming}
 Write a simple program to compute Legendre polynomials
-<<*>>=
+\begin{chunk}{*}
 --S 187 of 200
 p(n, x) == 1/(2**n*factorial(n)) * D((x**2 - 1)**n, x, n)
 --R 
@@ -2804,9 +2804,9 @@ eval(p(4, x), x = 1)
 --R                                            Type: Polynomial Fraction Integer
 --E 189
 
-@
+\end{chunk}
 Now, perform the same computation using a recursive definition
-<<*>>=
+\begin{chunk}{*}
 --S 190 of 200
 pp(0, x) == 1
 --R 
@@ -2856,11 +2856,11 @@ for i in 0..4 repeat {   output("");   output(concat(["pp(", string(i), ", x) =
 
 )clear properties p pp
 
-@
+\end{chunk}
 \section{Translation}
 \subsection{Horner's rule}
 This is important for numerical algorithms
-<<*>>=
+\begin{chunk}{*}
 --S 194 of 200
 a:= operator('a)
 --R 
@@ -2887,9 +2887,9 @@ p:= factor(%)
 --R                                            Type: Factored Expression Integer
 --E 196
 
-@
+\end{chunk}
 Convert the result into FORTRAN syntax
-<<*>>=
+\begin{chunk}{*}
 
 )set fortran ints2floats off
 
@@ -2900,10 +2900,10 @@ outputAsFortran('p = p)
 --R                                                                   Type: Void
 --E 197
 
-@
+\end{chunk}
 \section{Boolean Logic}
 \subsection{Simplify logical expressions}
-<<*>>=
+\begin{chunk}{*}
 --S 198 of 200
 true and false
 --R 
@@ -2930,7 +2930,7 @@ x or y or (x and y)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/efi.input.pamphlet b/src/input/efi.input.pamphlet
index 5cc6dba..465389c 100644
--- a/src/input/efi.input.pamphlet
+++ b/src/input/efi.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool efi.output
 )set message test on
@@ -52,13 +52,13 @@ br:LIST EFI->EFI
 --R                                                                   Type: Void
 --E 4
 
-@
+\end{chunk}
 \begin{verbatim}
  br(x|(x.1)~=0)==(x.1)/(exp((x.1))-1)
  br has a removable singularity at the origin
  br(x|(x.1)=0)== limit(br([y]),y=0)
 \end{verbatim}
-<<*>>=
+\begin{chunk}{*}
 
 --S 5 of 15
 br(x) == 
@@ -158,7 +158,7 @@ fJ(ss)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/egg.input.pamphlet b/src/input/egg.input.pamphlet
index 85c9689..ad1190a 100644
--- a/src/input/egg.input.pamphlet
+++ b/src/input/egg.input.pamphlet
@@ -9,9 +9,9 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 draw(surface(5*sin(u)*cos(v),4*sin(u)*sin(v),3*cos(u)),u=0..%pi,v=0..2*%pi)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/ei.input.pamphlet b/src/input/ei.input.pamphlet
index e870a5e..04bed32 100644
--- a/src/input/ei.input.pamphlet
+++ b/src/input/ei.input.pamphlet
@@ -15,7 +15,7 @@ here but kept here for reference purposes.
 
 The values generated are compared against the values in
 Abramowitz and Stegun\cite{2}.
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool ei.output
 )set message test on
@@ -31,13 +31,13 @@ gamma:=0.577215664901532860606512090082
 --R                                                                  Type: Float
 --E 1
 
-@
+\end{chunk}
 These are the Chebyshev coefficients used by Axiom in the range
 $(-\infty < x \le -10)$ in the polynomial
 $$\sum_{k=0}^{40}\ ^{'}{A_kT_k(t)}$$
 with the scaling factor $t=(-20/x)-1$
 
-<<*>>=
+\begin{chunk}{*}
 
 --S 2 of 20
 aChebyshev:=_
@@ -128,14 +128,14 @@ aChebyshev:=_
 --R                                                             Type: List Float
 --E 2
 
-@
+\end{chunk}
 In the following table there are 4 columns. The first column
 is the argument of Ei(x) shown in Table 4 in \cite{1}. The second
 column is the exact value shown in the table. Column 3 is the
 value returned by Axiom and column 4 is the difference.
 See special.spad.dvi for details.
 
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 20
 [[-160.,0.993826695674061273878797850088,_
  Ei1(-160.0),Ei1(-160.0)-0.993826695674061273878797850088],_
@@ -206,13 +206,13 @@ See special.spad.dvi for details.
 --R                               Type: List List OnePointCompletion DoubleFloat
 --E 3
 
-@
+\end{chunk}
 These are the Chebyshev coefficients used by Axiom in the range
 $(-10 \le x \le -4)$ in the polynomial
 $$\sum_{k=0}^{43}\ ^{'}{A_kT_k(t)}$$
 with the scaling factor $t=(x+7)/3$
 
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 20
 bChebyshev:=[_
  0.175755649606129373848762834691E1,_
@@ -308,14 +308,14 @@ bChebyshev:=[_
 --R                                                             Type: List Float
 --E 4
 
-@
+\end{chunk}
 In the following table there are 4 columns. The first column
 is the argument of Ei(x) shown in Table 4 in \cite{1}. The second
 column is the exact value shown in the table. Column 3 is the
 value returned by Axiom and column 4 is the difference.
 See special.spad.dvi for details.
 
-<<*>>=
+\begin{chunk}{*}
 --S 5 of 20
 [[-10.000,0.915633339397880818760698157661,_
   Ei2(-10.000),Ei2(-10.000)-0.915633339397880818760698157661],_
@@ -374,13 +374,13 @@ See special.spad.dvi for details.
 --R                               Type: List List OnePointCompletion DoubleFloat
 --E 5
 
-@
+\end{chunk}
 These are the Chebyshev coefficients used by Axiom in the range
 $(-4 \le x \le 4)$ in the polynomial
 $$\sum_{k=0}^{33}\ ^{'}{A_kT_k(t)}$$
 with the scaling factor $t=x/4$
 
-<<*>>=
+\begin{chunk}{*}
 --S 6 of 20
 cChebyshev:=[_
 0.329370010376739129393905231421E1,_
@@ -454,14 +454,14 @@ cChebyshev:=[_
 --R                                                             Type: List Float
 --E 6
 
-@
+\end{chunk}
 In the following table there are 4 columns. The first column
 is the argument of Ei(x) shown in Table 4 in \cite{1}. The second
 column is the exact value shown in the table. Column 3 is the
 value returned by Axiom and column 4 is the difference.
 See special.spad.dvi for details.
 
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 20
 [[-4.0,0.491822344607818096479962798267,_
   Ei3(-4.0),Ei3(-4.0)-0.491822344607818096479962798267],_
@@ -520,13 +520,13 @@ See special.spad.dvi for details.
 --R                               Type: List List OnePointCompletion DoubleFloat
 --E 7
 
-@
+\end{chunk}
 These are the Chebyshev coefficients used by Axiom in the range
 $(4 \le x \le 12)$ in the polynomial
 $$\sum_{k=0}^{49}\ ^{'}{A_kT_k(t)}$$
 with the scaling factor $t=(x-8)/4$
 
-<<*>>=
+\begin{chunk}{*}
 --S 8 of 20
 dChebyshev:=[_
  0.245513353878129528673420457043E1,_
@@ -634,14 +634,14 @@ dChebyshev:=[_
 --R                                                             Type: List Float
 --E 8
 
-@
+\end{chunk}
 In the following table there are 4 columns. The first column
 is the argument of Ei(x) shown in Table 4 in \cite{1}. The second
 column is the exact value shown in the table. Column 3 is the
 value returned by Axiom and column 4 is the difference.
 See special.spad.dvi for details.
 
-<<*>>=
+\begin{chunk}{*}
 --S 9 of 20
 [[4.0,1.43820803145448278470968670330,_
   Ei4(4.0),Ei4(4.0)-1.43820803145448278470968670330],_
@@ -700,13 +700,13 @@ See special.spad.dvi for details.
 --R                               Type: List List OnePointCompletion DoubleFloat
 --E 9
 
-@
+\end{chunk}
 These are the Chebyshev coefficients used by Axiom in the range
 $(12 \le x \le 32)$ in the polynomial
 $$\sum_{k=0}^{47}\ ^{'}{A_kT_k(t)}$$
 with the scaling factor $t=(x-22)/10$
 
-<<*>>=
+\begin{chunk}{*}
 --S 10 of 20
 eChebyshev:=[_
  0.211702864043698668329789991614E1,_
@@ -810,14 +810,14 @@ eChebyshev:=[_
 --R                                                             Type: List Float
 --E 10
 
-@
+\end{chunk}
 In the following table there are 4 columns. The first column
 is the argument of Ei(x) shown in Table 4 in \cite{1}. The second
 column is the exact value shown in the table. Column 3 is the
 value returned by Axiom and column 4 is the difference.
 See special.spad.dvi for details.
 
-<<*>>=
+\begin{chunk}{*}
 --S 11 of 20
 [[12.00,1.10297454490675907267241234952,_
   Ei5(12.00),Ei5(12.00)-1.10297454490675907267241234952],_
@@ -876,13 +876,13 @@ See special.spad.dvi for details.
 --R                               Type: List List OnePointCompletion DoubleFloat
 --E 11
 
-@
+\end{chunk}
 These are the Chebyshev coefficients used by Axiom in the range
 $(32 \le x < \infty)$ in the polynomial
 $$\sum_{k=0}^{46}\ ^{'}{A_kT_k(t)}$$
 with the scaling factor $t=(64/X)-1$
 
-<<*>>=
+\begin{chunk}{*}
 
 --S 12 of 20
 fChebyshev:=[_
@@ -985,14 +985,14 @@ fChebyshev:=[_
 --R                                                             Type: List Float
 --E 12
 
-@
+\end{chunk}
 In the following table there are 4 columns. The first column
 is the argument of Ei(x) shown in Table 4 in \cite{1}. The second
 column is the exact value shown in the table. Column 3 is the
 value returned by Axiom and column 4 is the difference.
 See special.spad.dvi for details.
 
-<<*>>=
+\begin{chunk}{*}
 --S 13 of 20
 [[32,1.03341356421624104943493552567,_
   Ei6(32.0),Ei6(32.0)-1.03341356421624104943493552567],_
@@ -1091,13 +1091,13 @@ See special.spad.dvi for details.
 --R                                                          Type: List List Any
 --E 13
 
-@
+\end{chunk}
 In the following table we show values returned by 
 $(Ei(x)-\log x-\gamma)/x$ where gamma is as shown above.
 Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
 Dover Publications, Inc. New York 1965. p 238
 
-<<*>>=
+\begin{chunk}{*}
 --S 14 of 20
 h(x:DFLOAT):DFLOAT==
   x=0.0::DFLOAT => 1.0 
@@ -1304,12 +1304,12 @@ h(x:DFLOAT):DFLOAT==
 --R                                                  Type: List List DoubleFloat
 --E 15
 
-@
+\end{chunk}
 In the following table we show values returned by Ei(x).
 Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
 Dover Publications, Inc. New York 1965. pp 239-241
 
-<<*>>=
+\begin{chunk}{*}
 --S 16 of 20
 [[0.50,0.454219905,Ei(0.50),Ei(0.50)-0.454219905],_
  [0.51,0.487032167,Ei(0.51),Ei(0.51)-0.487032167],_
@@ -1880,13 +1880,13 @@ Dover Publications, Inc. New York 1965. pp 239-241
 --R                               Type: List List OnePointCompletion DoubleFloat
 --E 16
 
-@
+\end{chunk}
 In the following table we show values returned by
 $xe^{-x}Ei(x)$, chosen to keep the values in a reasonable range.
 Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
 Dover Publications, Inc. New York 1965. pp 242-243
 
-<<*>>=
+\begin{chunk}{*}
 --S 17 of 20
 f(x)==x/10.0*exp(-x/10.0)*Ei(x/10.0)
 --R 
@@ -2196,13 +2196,13 @@ f(x)==x/10.0*exp(-x/10.0)*Ei(x/10.0)
 --R                               Type: List List OnePointCompletion DoubleFloat
 --E 18
 
-@
+\end{chunk}
 In the following table we show the values returned for large
 arguments to the Ei function. See 
 Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
 Dover Publications, Inc. New York 1965. p 243
 
-<<*>>=
+\begin{chunk}{*}
 --S 19 of 20
 g(y)==(y=0 => 1 ; (x:DFLOAT:=y^-1) ; x*exp(-x)*Ei(x))
 --R 
@@ -2299,7 +2299,7 @@ g(y)==(y=0 => 1 ; (x:DFLOAT:=y^-1) ; x*exp(-x)*Ei(x))
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} Lee, K.L.,``High-precision Chebyshev series approximation
diff --git a/src/input/eigen.input.pamphlet b/src/input/eigen.input.pamphlet
index b9e1976..be7917b 100644
--- a/src/input/eigen.input.pamphlet
+++ b/src/input/eigen.input.pamphlet
@@ -10,20 +10,20 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool eigen.output
 )set message test on
 )set message auto off
 )clear all
 
-@
+\end{chunk}
 \section{Computation of characteristic polynomial}
 \subsection{For matrix of integers}
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 36
 m:=matrix([[1,2,1],[2,1,-2],[1,-2,4]])
 --R 
@@ -54,9 +54,9 @@ characteristicPolynomial(m,x)
 --R                                                     Type: Polynomial Integer
 --E 3
 
-@ 
+\end{chunk} 
 \subsection{For matrix of polynomials}
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 36
 p:=matrix([[x+1,2-x*y,x**2+1],[2-x,y+2*x,x**2-2],[y**2,x-2,4-x*y]])
 --R 
@@ -104,9 +104,9 @@ characteristicPolynomial(p,t)
 --R                                                     Type: Polynomial Integer
 --E 6
 
-@ 
+\end{chunk} 
 \subsection{For general matrix of FRAC POLY INT}
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 36
 n:=matrix([[a,b,c],[d,e,f],[g,h,k]])
 --R 
@@ -132,10 +132,10 @@ characteristicPolynomial n
 --R                                                     Type: Polynomial Integer
 --E 8
 
-@
+\end{chunk}
 There are many functions for the computation of  eigenvalues and
 eigenvectors. The function eigenvalues returns the eigenvalues :
-<<*>>=
+\begin{chunk}{*}
 --S 9 of 36
 leig := eigenvalues m
 --R 
@@ -153,10 +153,10 @@ alpha:=leig.1
 --R                                 Type: Union(Fraction Polynomial Integer,...)
 --E 10
 
-@
+\end{chunk}
 {\tt alpha} is a rational eigenvalue; the corresponding eigenvector can be 
 computed with the function {\tt eigenvector}:
-<<*>>=
+\begin{chunk}{*}
 --S 11 of 36
 eigenvector(alpha,m)
 --R 
@@ -180,11 +180,11 @@ beta:=leig.2
 --R                         Type: Union(SuchThat(Symbol,Polynomial Integer),...)
 --E 12
 
-@
+\end{chunk}
 {\tt beta} is a "symbolic" eigenvalue, i.e. it is a root (symbolically expressed)
 of an irreducible factor of the characteristic polynomial. In this case
 too we can compute the associate eigenvectors.
-<<*>>=
+\begin{chunk}{*}
 --S 13 of 36
 eigenvector(beta,m)$EP(INT)
 --R 
@@ -199,10 +199,10 @@ eigenvector(beta,m)$EP(INT)
 
 -- eigenvector(beta,m)  not accepted by the interpreter
 
-@
+\end{chunk}
 Eigenvalues and eigenvectors can be computed simultaneously
 with the function {\tt eigenvectors}
-<<*>>=
+\begin{chunk}{*}
 --S 14 of 36
 eigenvectors m
 --R 
@@ -292,10 +292,10 @@ ll := eigenvectors p
 --RType: List Record(eigval: Union(Fraction Polynomial Integer,SuchThat(Symbol,Polynomial Integer)),eigmult: NonNegativeInteger,eigvec: List Matrix Fraction Polynomial Integer)
 --E 18
 
-@
+\end{chunk}
 In this case the algebraic multiplicity (the field eigmult) is different
 from the geometric multiplicity (the length of the field eigvec).
-<<*>>=
+\begin{chunk}{*}
 
 --S 19 of 36
 generalizedEigenvectors p
@@ -336,7 +336,7 @@ generalizedEigenvector(ll.1,p)$EP(INT)
 
 -- generalizedEigenvector(ll.1,p) the interpreter can not handle this
 
-@ 
+\end{chunk} 
 These functions return respectively the complete set of 
 generalized eigenvectors
 or the generalized eigenvectors associated to a particular eigenvalue alpha,
@@ -345,7 +345,7 @@ multiplicity of alpha.
 
 In the case of symbolic eigenvalues it is possible to convert the symbolic
 eigenvalue and the corresponding eigenvectors in a more explicit form.
-<<*>>=
+\begin{chunk}{*}
 --S 21 of 36
 m
 --R 
@@ -370,10 +370,10 @@ mm:=matrix([[30,4,24],[-17,8,-7],[-31,-54,-5]])
 --R                                                         Type: Matrix Integer
 --E 22
 
-@
+\end{chunk}
 The function radicalEigenvalues expresses, when possible, the eigenvalues 
 in terms of radicals.
-<<*>>=
+\begin{chunk}{*}
 --S 23 of 36
 le1:=radicalEigenvalues m
 --R 
@@ -394,10 +394,10 @@ le2:=radicalEigenvalues mm
 --R                                                Type: List Expression Integer
 --E 24
 
-@
+\end{chunk}
 The function radicalEigenvector computes the eigenvectors associated to
 a given eigenvalue, expressed in terms of radicals
-<<*>>=
+\begin{chunk}{*}
 --S 25 of 36
 radicalEigenvector(le1.2, m)
 --R 
@@ -433,11 +433,11 @@ radicalEigenvector(le2.2,mm)
 --R                                         Type: List Matrix Expression Integer
 --E 26
 
-@
+\end{chunk}
 The function radicalEigenvectors computes simultaneously all the
 eigenvalues and the associated eigenvectors  and expresses, when
 it is possible, in terms of radical.
-<<*>>=
+\begin{chunk}{*}
 --S 27 of 36
 radicalEigenvectors m
 --R 
@@ -504,14 +504,14 @@ radicalEigenvectors mm
 --RType: List Record(radval: Expression Integer,radmult: Integer,radvect: List Matrix Expression Integer)
 --E 28
 
-@
+\end{chunk}
 There exist analogous functions for the computation of real and complex
 eigenvalues and eigenvectors.
 
 In order to compute respectively the eigenvalues or the
 eigenvalues and the associared eigevectors of a matrix m and express them
 as rational numbers (Gaussian rational) up to precision 1/1000000 use
-<<*>>=
+\begin{chunk}{*}
 --S 29 of 36
 realEigenvalues(m,1/1000000)
 --R 
@@ -590,10 +590,10 @@ complexEigenvectors(mm,1/1000000)
 --RType: List Record(outval: Complex Fraction Integer,outmult: Integer,outvect: List Matrix Complex Fraction Integer)
 --E 32
 
-@
+\end{chunk}
 To have the eigenvalues expressed as real float (complex float) use
 {\tt realEigenvalues}
-<<*>>=
+\begin{chunk}{*}
 --S 33 of 36
 realEigenvalues(m,.000001)
 --R 
@@ -670,7 +670,7 @@ complexEigenvectors(mm,.000001)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/elemfun.input.pamphlet b/src/input/elemfun.input.pamphlet
index 4b71ea2..9f510f9 100644
--- a/src/input/elemfun.input.pamphlet
+++ b/src/input/elemfun.input.pamphlet
@@ -10,19 +10,19 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool elemfun.output
 )set message test on
 )set message auto off
 )clear all
 
-@
+\end{chunk}
 Some values of trig functions will simplify on application
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 28
 cos 0
 --R 
@@ -71,9 +71,9 @@ simplify %
 --R                                                     Type: Expression Integer
 --E 6
 
-@ 
+\end{chunk} 
 The same goes with the usual relations
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 28
 sin(3)**2 + cos(3)**2
 --R 
@@ -117,9 +117,9 @@ simplify t
 --R                                                     Type: Expression Integer
 --E 11
 
-@ 
+\end{chunk} 
 We can remove selected operations
-<<*>>=
+\begin{chunk}{*}
 --S 12 of 28
 cot2tan t
 --R 
@@ -160,10 +160,10 @@ cos2sec t
 --R                                                     Type: Expression Integer
 --E 16
  
-@
+\end{chunk}
 Given such a trig expression not involving any variables,
 we can get a numeric approximation
-<<*>>=
+\begin{chunk}{*}
 --S 17 of 28
 t := sin(7)**2 - sec(7)/(1 - cot(7) + csc(7)**3)
 --R 
@@ -200,9 +200,9 @@ numeric %
 --R                                                                  Type: Float
 --E 19
 
-@ 
+\end{chunk} 
 We really didn't need to have simplified
-<<*>>=
+\begin{chunk}{*}
 --S 20 of 28
 numeric t
 --R 
@@ -211,9 +211,9 @@ numeric t
 --R                                                                  Type: Float
 --E 20
 
-@ 
+\end{chunk} 
 We can get more digits by giving a precision
-<<*>>=
+\begin{chunk}{*}
 --S 21 of 28
 numeric(t, 100)
 --R 
@@ -224,10 +224,10 @@ numeric(t, 100)
 --R                                                                  Type: Float
 --E 21
  
-@
+\end{chunk}
 If we do have an expression involving variables, we can use eval
 to give them values
-<<*>>=
+\begin{chunk}{*}
 --S 22 of 28
 u := exp(sin(x-1)**2 - cos(x-1)/sec(x-1))
 --R 
@@ -250,9 +250,9 @@ eval(u,x=1)
 --R                                                     Type: Expression Integer
 --E 23
  
-@
+\end{chunk}
 Here is another technique using rewrite rules
-<<*>>=
+\begin{chunk}{*}
 --S 24 of 28
 v(x) == exp(sin(x-1)**2 - cos(x-1)/sec(x-1))
 --R 
@@ -310,7 +310,7 @@ numeric %
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/elemnum.input.pamphlet b/src/input/elemnum.input.pamphlet
index 137b32d..c41a8cb 100644
--- a/src/input/elemnum.input.pamphlet
+++ b/src/input/elemnum.input.pamphlet
@@ -10,19 +10,19 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )spool elemnum.output
 )set message test on
 )set message auto off
 )clear all
 )set break resume
 
-@
+\end{chunk}
 Test numeric evaluation of elementary functions.  SMW June 26, 1991.
-<<*>>=
+\begin{chunk}{*}
 --S 1  of 50
 x := 0.7::Float
 --R 
@@ -572,7 +572,7 @@ qerr %
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/elfuts.input.pamphlet b/src/input/elfuts.input.pamphlet
index b5d0daa..62df513 100644
--- a/src/input/elfuts.input.pamphlet
+++ b/src/input/elfuts.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool elfuts.output
 )set message test on
@@ -21,9 +21,9 @@
 )clear all
 )set streams calculate 10
 
-@
+\end{chunk}
 Demo of Jacobian elliptic functions expanded as power series
-<<*>>=
+\begin{chunk}{*}
  
 )expose ELFUTS
 
@@ -354,14 +354,14 @@ snn
 --RType: UnivariateTaylorSeries(Fraction UnivariatePolynomial(k,Fraction Integer),y,0)
 --E 22
  
-@
+\end{chunk}
 Theta-functions expanded as power series
-<<*>>= 
+\begin{chunk}{*}
 q0=*/[1-q**2*n for n in 1..]
 q1=*/[1+q**2*n for n in 1..]
 q2=*/[1+q**(2*n-1) for n in 1..]
 q3=*/[1-q**(2*n-1) for n in 1..]
-<<*>>=
+\begin{chunk}{*}
 --S 23 of 40
 eprod x==exp evenlambert log x
 --R 
@@ -504,9 +504,9 @@ a:=a::FRAC UP(a,RN)
 --R                      Type: Fraction UnivariatePolynomial(a,Fraction Integer)
 --E 38
 
-@ 
+\end{chunk} 
 Jacobi's triple product
-<<*>>=
+\begin{chunk}{*}
 --S 39 of 40
 eprod(1-qqq)*oprod(1-a*qqq)*oprod(1-qqq/a)
 --R 
@@ -548,7 +548,7 @@ sq:=ksquared*snn**2
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/elt.input.pamphlet b/src/input/elt.input.pamphlet
index f0c3333..e671a3e 100644
--- a/src/input/elt.input.pamphlet
+++ b/src/input/elt.input.pamphlet
@@ -10,19 +10,19 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool elt.output
 )set message test on
 )set message auto off
 )clear all
 
-@
+\end{chunk}
 This file tests elts and setelts
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 4
 u : Bits := new(10,true)
 --R 
@@ -61,7 +61,7 @@ u.1
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/en.input.pamphlet b/src/input/en.input.pamphlet
index 4bb63b2..3bfe66c 100644
--- a/src/input/en.input.pamphlet
+++ b/src/input/en.input.pamphlet
@@ -17,18 +17,18 @@ second column is the reference value of function from the book
 Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
 Dover Publications, Inc. New York 1965. pp245-248
 
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool en.output
 )set message test on
 )set message auto off
 )clear all
 
-@
+\end{chunk}
 This table expresses the value of 
 $E_2$ with an argument range of 0.01 to 0.50.
 The handbook tabulates these values using this function.
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 7
 f(x)==En(2,x)-x*log(x)
 --E 1
@@ -241,10 +241,10 @@ f(x)==En(2,x)-x*log(x)
 --R                               Type: List List OnePointCompletion DoubleFloat
 --E 2
 
-@
+\end{chunk}
 This table expresses the value of 
 $E_2$ with an argument range of 0.50 to 2.00.
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 7
 [[0.50,0.3266439,En(2,0.50),En(2,0.50)-0.3266439],_
 [0.51,0.3211062,En(2,0.51),En(2,0.51)-0.3211062],_
@@ -782,10 +782,10 @@ $E_2$ with an argument range of 0.50 to 2.00.
 --R                               Type: List List OnePointCompletion DoubleFloat
 --E 3
 
-@
+\end{chunk}
 This table expresses the value of 
 $E_3$ with an argument range of 0.01 to 2.00.
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 7
 [[0.01,0.4902766,En(3,0.01),En(3,0.01)-0.4902766],_
 [0.02,0.4809683,En(3,0.02),En(3,0.02)-0.4809683],_
@@ -1517,10 +1517,10 @@ $E_3$ with an argument range of 0.01 to 2.00.
 --R                               Type: List List OnePointCompletion DoubleFloat
 --E 4
 
-@
+\end{chunk}
 This table expresses the value of 
 $E_4$ with an argument range of 0.01 to 2.00.
-<<*>>=
+\begin{chunk}{*}
 --S 5 of 7
 [[0.01,0.3283824,En(4,0.01),En(4,0.01)-0.3283824],_
 [0.02,0.3235264,En(4,0.02),En(4,0.02)-0.3235264],_
@@ -2250,10 +2250,10 @@ $E_4$ with an argument range of 0.01 to 2.00.
 --R                               Type: List List OnePointCompletion DoubleFloat
 --E 5
 
-@
+\end{chunk}
 This table expresses the value of 
 $E_10$ with an argument range of 0.01 to 2.00.
-<<*>>=
+\begin{chunk}{*}
 --S 6 of 7
 [[0.01,0.1098682,En(10,0.01),En(10,0.01)-0.1098682],_
 [0.02,0.1086395,En(10,0.02),En(10,0.02)-0.1086395],_
@@ -3010,10 +3010,10 @@ $E_10$ with an argument range of 0.01 to 2.00.
 --R                               Type: List List OnePointCompletion DoubleFloat
 --E 6
 
-@
+\end{chunk}
 This table expresses the value of 
 $E_20$ with an argument range of 0.01 to 2.00.
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 7
 [[0.01,0.0520790,En(20,0.01),En(20,0.01)-0.0520790],_
 [0.02,0.0515321,En(20,0.02),En(20,0.02)-0.0515321],_
@@ -3796,7 +3796,7 @@ $E_20$ with an argument range of 0.01 to 2.00.
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} Abramowitz and Stegun,``Handbook of Mathematical Functions'',
diff --git a/src/input/eq.input.pamphlet b/src/input/eq.input.pamphlet
index 7c4fff2..4b7cb43 100644
--- a/src/input/eq.input.pamphlet
+++ b/src/input/eq.input.pamphlet
@@ -10,19 +10,19 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool eq.output
 )set message test on
 )set message auto off
 )clear all
 
-@
+\end{chunk}
 Input generated from EquationXmpPage
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 12
 eq1 := 3*x + 4*y = 5
 --R 
@@ -123,7 +123,7 @@ eqpol::Boolean
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/eqtbl.input.pamphlet b/src/input/eqtbl.input.pamphlet
index 2045488..5ef9e48 100644
--- a/src/input/eqtbl.input.pamphlet
+++ b/src/input/eqtbl.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool eqtbl.output
 )set message test on
@@ -70,7 +70,7 @@ e.l1
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/equation.input.pamphlet b/src/input/equation.input.pamphlet
index e927fc5..23898e3 100644
--- a/src/input/equation.input.pamphlet
+++ b/src/input/equation.input.pamphlet
@@ -10,17 +10,17 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool equation.output
 )set message test on
 )set message auto off
 )clear all
 
-@
+\end{chunk}
 To ease the use of equation (more user friendly applications)
 I have enhanced the datatype Equation to have more
 mathematical richness.
@@ -47,7 +47,7 @@ Furthermore, we have function to put 0 or 1 on one side
 and factor the left hand side, after the right hand side
 is 0 and we have an IntegralDomain.
 
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 12
 eq1 := (-6*x**3+13*x**2+4)=(-x**4+12*x)
 --R 
@@ -162,7 +162,7 @@ inv (eq :: EQ FRAC POLY INT)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/equation2.input.pamphlet b/src/input/equation2.input.pamphlet
index 0bd29b6..1ca4c28 100644
--- a/src/input/equation2.input.pamphlet
+++ b/src/input/equation2.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool equation2.output
 )set message test on
@@ -415,7 +415,7 @@ solve([[1,2,3],[2,3,4],[3,4,5]])
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/errortrap.input.pamphlet b/src/input/errortrap.input.pamphlet
index 0a5416c..d585f3a 100644
--- a/src/input/errortrap.input.pamphlet
+++ b/src/input/errortrap.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1996.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 -- examples that test the error traps when graphing functions
 
@@ -38,7 +38,7 @@ draw(f, -2..2, -2..2)
 draw(surface(u*acsc(v), u*asec(v), v*acsc(u)), u=-2..2, v=-2..2)
 
 draw(curve(acsc(x), asec(x), x), x = -2..2, tubeRadius == .3)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/eval.input.pamphlet b/src/input/eval.input.pamphlet
index a5dd20c..cb586b2 100644
--- a/src/input/eval.input.pamphlet
+++ b/src/input/eval.input.pamphlet
@@ -10,22 +10,22 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool eval.output
 )set message test on
 )set message auto off
 )clear all
 
-@
+\end{chunk}
 This file demonstrate the various eval's available on EXPR, and the
 handling of formal derivatives.
 Lines starting with --** are comments indicating that the final syntax
 will be different.
-<<*>>= 
+\begin{chunk}{*}
 --** This line will be optional interactively, since the a := f(x**2)
 --** will prompt you if you don't declare f this way.
 --S 1 of 23
@@ -55,10 +55,10 @@ b := differentiate(a,x,2) + f 5
 --R                                                     Type: Expression Integer
 --E 3
 
-@
+\end{chunk}
 This is the 'variable' evaluation, similar to what's available on
 polynomials:
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 23
 eval(b, x = x + y)
 --R 
@@ -69,10 +69,10 @@ eval(b, x = x + y)
 --R                                                     Type: Expression Integer
 --E 4
 
-@
+\end{chunk}
 This is the 'kernel' evaluation, allowing you to specify special
 values. Only the specified value f 5 is affected, not the others:
-<<*>>=
+\begin{chunk}{*}
 --S 5 of 23
 eval(b, f 5 = 1)
 --R 
@@ -83,10 +83,10 @@ eval(b, f 5 = 1)
 --R                                                     Type: Expression Integer
 --E 5
 
-@
+\end{chunk}
 This is the 'operator' evaluation, allowing you to specify an actual
 function for a formal one. ALL the values of f are affected.
-<<*>>=
+\begin{chunk}{*}
 --** will eventually use the +-> notation in the eval statement
 --S 6 of 23
 foo(u:EXPR INT):EXPR INT == exp u
@@ -96,10 +96,10 @@ foo(u:EXPR INT):EXPR INT == exp u
 --R                                                                   Type: Void
 --E 6
 
-@
+\end{chunk}
 So what is b if f were the exponential function?
 Notice that the formal derivatives will be computed properly now.
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 23
 c := eval(b, 'f, foo)
 --R 
@@ -112,10 +112,10 @@ c := eval(b, 'f, foo)
 --R                                                     Type: Expression Integer
 --E 7
 
-@
+\end{chunk}
 We can also use that evaluation on 'system' operators, which allows
 us to replace an actual function by a formal one.
-<<*>>=
+\begin{chunk}{*}
 
 --S 8 of 23
 oof(u:EXPR INT):EXPR INT == f u
@@ -136,10 +136,10 @@ eval(c, 'exp, oof)
 --R                                                     Type: Expression Integer
 --E 9
 
-@
+\end{chunk}
 It is also possible to give f a derivative without replacing it by
 a 'concrete' function.
-<<*>>=
+\begin{chunk}{*}
 --S 10 of 23
 f'(u:EXPR INT):EXPR INT == f u
 --R 
@@ -148,9 +148,9 @@ f'(u:EXPR INT):EXPR INT == f u
 --R                                                                   Type: Void
 --E 10
 
-@
+\end{chunk}
 This will make f differentiate like an exponential:
-<<*>>=
+\begin{chunk}{*}
 --S 11 of 23
 derivative(f,f')
 --R 
@@ -193,12 +193,12 @@ differentiate(%, x)
 --R                                                     Type: Expression Integer
 --E 14
 
-@
+\end{chunk}
 This is the 'operator/power' evaluation: suppose that we know that
 f squared is the exponential, but we do not want to replace f(u) by
 sqrt(exp u). It is still possible to eliminate higher powers of f
 in the following way:
-<<*>>=
+\begin{chunk}{*}
 --S 15 of 23
 a3 := a * a * a
 --R 
@@ -226,9 +226,9 @@ eval(a3,'f,2,foo)
 --R                                                     Type: Expression Integer
 --E 17
 
-@
+\end{chunk}
 Several 'operator' evaluations can be carried out simultaneously:
-<<*>>=
+\begin{chunk}{*}
 --S 18 of 23
 g := operator 'g
 --R 
@@ -275,9 +275,9 @@ a3 + g a
 --R                                                     Type: Expression Integer
 --E 22
 
-@
+\end{chunk}
 The grand finale: by now the effect of the following should be clear:
-<<*>>=
+\begin{chunk}{*}
 --S 23 of 23
 eval(%,['f,'g],[2,1],[foo,bar])
 --R 
@@ -290,7 +290,7 @@ eval(%,['f,'g],[2,1],[foo,bar])
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/evalex.input.pamphlet b/src/input/evalex.input.pamphlet
index 6f5a3b2..3520f6f 100644
--- a/src/input/evalex.input.pamphlet
+++ b/src/input/evalex.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool evalex.output
 )set message test on
@@ -53,7 +53,7 @@ cos(2)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/exdiff.input.pamphlet b/src/input/exdiff.input.pamphlet
index b0690a9..b884474 100644
--- a/src/input/exdiff.input.pamphlet
+++ b/src/input/exdiff.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool exdiff.output
 )set message test on
@@ -150,7 +150,7 @@ differentiate(f * t**2,t)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/exint.input.pamphlet b/src/input/exint.input.pamphlet
index 3e32686..6ecafbb 100644
--- a/src/input/exint.input.pamphlet
+++ b/src/input/exint.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool exint.output
 )set message test on
@@ -168,7 +168,7 @@ integrate((sinh(1+sqrt(x+b))+2*sqrt(x+b))/(sqrt(x+b)*(x+cosh(1+sqrt(x+b)))),x)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/exit.input.pamphlet b/src/input/exit.input.pamphlet
index cfe73b5..9c8b908 100644
--- a/src/input/exit.input.pamphlet
+++ b/src/input/exit.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool exit.output
 )set message test on
@@ -75,7 +75,7 @@ n
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/exlap.input.pamphlet b/src/input/exlap.input.pamphlet
index 2c6293a..673cda6 100644
--- a/src/input/exlap.input.pamphlet
+++ b/src/input/exlap.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool exlap.output
 )set message test on
@@ -94,7 +94,7 @@ laplace(t**4 * exp(-a*t) / factorial(4), t, s)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/exlimit.input.pamphlet b/src/input/exlimit.input.pamphlet
index 362aa7d..ea59c36 100644
--- a/src/input/exlimit.input.pamphlet
+++ b/src/input/exlimit.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool exlimit.output
 )set message test on
@@ -151,7 +151,7 @@ complexLimit(z * sin(1/z),z = 0)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/exp.input.pamphlet b/src/input/exp.input.pamphlet
index 3cc5602..0379673 100644
--- a/src/input/exp.input.pamphlet
+++ b/src/input/exp.input.pamphlet
@@ -17,7 +17,7 @@ second column is the reference value of exp from the book
 Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
 Dover Publications, Inc. New York 1965. pp136-137
 
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool exp.output
 )set message test on
@@ -233,14 +233,14 @@ Dover Publications, Inc. New York 1965. pp136-137
 --R                                                        Type: List List Float
 --E 1
 
-@ 
+\end{chunk} 
 In the following table there are 4 columns. The first column
 is the argument of exp(-x), ranging from 0.0 to 10.0. The
 second column is the reference value of exp from the book
 Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
 Dover Publications, Inc. New York 1965. pp136-137
 
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 2
 [[0.1,0.90483741803595957316,exp(-0.1),exp(-0.1)-0.90483741803595957316],_
  [0.2,0.81873075307798185867,exp(-0.2),exp(-0.2)-0.81873075307798185867],_
@@ -451,7 +451,7 @@ Dover Publications, Inc. New York 1965. pp136-137
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
diff --git a/src/input/expexpan.input.pamphlet b/src/input/expexpan.input.pamphlet
index 67525e9..c65f958 100644
--- a/src/input/expexpan.input.pamphlet
+++ b/src/input/expexpan.input.pamphlet
@@ -10,20 +10,20 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool expexpan.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 \section{Exponential Expansion}
 We compute exponential expansions and right hand limits.
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 18
 xxp f == exprToXXP(f,true)$FS2EXPXP(INT,EXPR INT,x,0)
 --R 
@@ -243,7 +243,7 @@ limitPlus x5   -- %plusInfinity
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/explim.input.pamphlet b/src/input/explim.input.pamphlet
index f16c32d..807c23c 100644
--- a/src/input/explim.input.pamphlet
+++ b/src/input/explim.input.pamphlet
@@ -10,20 +10,20 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool explim.output
 )set message test on
 )set message auto off
 )clear all
-@ 
+\end{chunk} 
 \section{Limits involving essential singularities of the exponential function}
  Some of these limits were taken from bug reports submitted before additions
 and changes were made to limit and related series packages.
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 1 of 12
@@ -128,7 +128,7 @@ limit((x + 1)**(x + 1)/x**x - x**x/(x - 1)**(x - 1),x = %plusInfinity)  -- %e
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/explot2d.input.pamphlet b/src/input/explot2d.input.pamphlet
index 5681e6d..935b840 100644
--- a/src/input/explot2d.input.pamphlet
+++ b/src/input/explot2d.input.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 
 -- Input for page ExPlot2DPolar
 )clear all
@@ -30,7 +30,7 @@ draw(sin(tan(x)) - tan(sin(x)),x = 0..6)
 )clear all
 
 draw(curve(9 * sin(3*t/4),8 * sin(t)),t = -4*%pi..4*%pi)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/explot3d.input.pamphlet b/src/input/explot3d.input.pamphlet
index 7f27d82..8dae500 100644
--- a/src/input/explot3d.input.pamphlet
+++ b/src/input/explot3d.input.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 
 -- Input for page ExPlot3DParametricCurve
 )clear all
@@ -27,7 +27,7 @@ draw(surface(u*cos(v),u*sin(v),u),u=0..4,v=0..2*%pi)
 )clear all
 
 draw(cos(x*y),x = -3..3,y = -3..3)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/expr.input.pamphlet b/src/input/expr.input.pamphlet
index c0311d5..83d43dd 100644
--- a/src/input/expr.input.pamphlet
+++ b/src/input/expr.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool expr.output
 )set message test on
@@ -53,9 +53,9 @@ eval(g, x = x**2 + 1)
 --R                                                     Type: Expression Integer
 --E 4
 
-@
+\end{chunk}
 The chain rule can be applied formally
-<<*>>=
+\begin{chunk}{*}
 --S 5 of 29
 differentiate(%, x)
 --R 
@@ -66,9 +66,9 @@ differentiate(%, x)
 --R                                                     Type: Expression Integer
 --E 5
 
-@
+\end{chunk}
 The multivariate case
-<<*>>=
+\begin{chunk}{*}
 --S 6 of 29
 f := bar(x, y)
 --R 
@@ -77,9 +77,9 @@ f := bar(x, y)
 --R                                                     Type: Expression Integer
 --E 6
 
-@
+\end{chunk}
 Parallel substitution is possible
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 29
 eval(f, [x = y, y = x])
 --R 
@@ -97,9 +97,9 @@ eval(f, [x = y, y = x])
 --R                                                Type: List Expression Integer
 --E 8
 
-@
+\end{chunk}
 The multivariate chain rule
-<<*>>=
+\begin{chunk}{*}
 --S 9 of 29
 ff := eval(f, [x = x**2 * foo y, y = x + y])
 --R 
@@ -129,10 +129,10 @@ differentiate(ff, y)
 --R                                                     Type: Expression Integer
 --E 11
 
-@
+\end{chunk}
 Let's create one with commuting partial derivatives
 Let's change the way bar is printed on the screen, make it \#1 \@ \#2
-<<*>>=
+\begin{chunk}{*}
 --S 12 of 29
 pbar(l:List OUTFORM):OUTFORM == infix(" @ "::SYMBOL::OUTFORM, l)
 --R 
@@ -150,9 +150,9 @@ display(bar, pbar)
 --R                                                          Type: BasicOperator
 --E 13
 
-@
+\end{chunk}
 Let's see the result
-<<*>>=
+\begin{chunk}{*}
 --S 14 of 29
 f
 --R 
@@ -170,9 +170,9 @@ ff
 --R                                                     Type: Expression Integer
 --E 15
 
-@
+\end{chunk}
 Back to normal
-<<*>>=
+\begin{chunk}{*}
 --S 16 of 29
 deleteProperty(bar, "%display")
 --R 
@@ -200,9 +200,9 @@ f
 --R                                                     Type: Expression Integer
 --E 17
 
-@
+\end{chunk}
 Let's give bar some partial derivatives, say $bar(u, v) = u * v$
-<<*>>=
+\begin{chunk}{*}
 --S 18 of 29
 bar1 l == last l
 --R 
@@ -245,9 +245,9 @@ derivative(bar, [bar1, bar2]$(LIST(LIST(EXPR INT) -> EXPR INT)))
 --R                                                Type: List Expression Integer
 --E 22
 
-@
+\end{chunk}
 Some structural testing
-<<*>>=
+\begin{chunk}{*}
 --S 23 of 29
 h := inv(x + f + g**2)
 --R 
@@ -318,7 +318,7 @@ isExpt(inv(g**2), "bar")
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/expr1.input.pamphlet b/src/input/expr1.input.pamphlet
index fe1ca00..63aac77 100644
--- a/src/input/expr1.input.pamphlet
+++ b/src/input/expr1.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool expr1.output
 )set message test on
@@ -250,7 +250,7 @@ simplify %
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/exprode.input.pamphlet b/src/input/exprode.input.pamphlet
index 9a5cf78..257b79a 100644
--- a/src/input/exprode.input.pamphlet
+++ b/src/input/exprode.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool exprode.output
 )set message test on
@@ -21,11 +21,11 @@
 )clear all
 )set streams calculate 7
 
-@
+\end{chunk}
 \section{The problem}
 We will solve  $y^{'''} = \sin(y^{''}) * \exp(y) + \cos(x)$
 subject to $y(0) = 1$, $y^{'}(0) = 0$, $y^{''}(0) = 0$
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 13
 y := operator 'y
 --R 
@@ -63,9 +63,9 @@ seriesSolve(eq, y, x = 0, [1, 0, 0])
 --R                         Type: UnivariateTaylorSeries(Expression Integer,x,0)
 --E 3
  
-@
+\end{chunk}
 Airy, isn't it?
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 13
 airy := differentiate(y x, x, 2) - x * y x
 --R 
@@ -89,9 +89,9 @@ seriesSolve(airy, y, x = 0, [a0, a1])
 --R                         Type: UnivariateTaylorSeries(Expression Integer,x,0)
 --E 5
 
-@ 
+\end{chunk} 
 We can solve around other points than $x = 0$
-<<*>>=
+\begin{chunk}{*}
 --S 6 of 13
 seriesSolve(airy, y, x = 1, [a0, a1])
 --R 
@@ -110,9 +110,9 @@ seriesSolve(airy, y, x = 1, [a0, a1])
 --R                         Type: UnivariateTaylorSeries(Expression Integer,x,1)
 --E 6
 
-@
+\end{chunk}
 System of equations for tan(t) and sec(t)
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 13
 x := operator 'x
 --R 
@@ -160,9 +160,9 @@ seriesSolve([eq2, eq1], [x, y], t = 0, [y 0 = 1, x 0 = 0])
 --R                    Type: List UnivariateTaylorSeries(Expression Integer,t,0)
 --E 10
 
-@
+\end{chunk}
 System of equations for a damped pendulum of mass and length 1:
-<<*>>=
+\begin{chunk}{*}
 --S 11 of 13
 eq1 := differentiate(x t, t) = y t
 --R 
@@ -340,7 +340,7 @@ seriesSolve([eq1, eq2], [x, y], t = 0, [y 0 = a, x 0 = b])
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/exprpoly.input.pamphlet b/src/input/exprpoly.input.pamphlet
index 0dfb630..71acdc7 100644
--- a/src/input/exprpoly.input.pamphlet
+++ b/src/input/exprpoly.input.pamphlet
@@ -10,23 +10,23 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool exprpoly.output
 )set message test on
 )set message auto off
 )clear all
 
-@ 
+\end{chunk} 
 \section{Expression Coercion}
 This file test coercing objects of type Expression to various
 polynomial types and back.
 
 Start with a simple expression involving variables
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 20
 a := sin(i)*x**2 - y*x*sin(j)
 --R 
@@ -36,9 +36,9 @@ a := sin(i)*x**2 - y*x*sin(j)
 --R                                                     Type: Expression Integer
 --E 1
 
-@
+\end{chunk}
 Coerce it to various multivariate polynomial types
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 20
 a :: DMP([x,y], EXPR INT)
 --R 
@@ -83,9 +83,9 @@ a :: MPOLY([y,x], EXPR INT)
 --R                       Type: MultivariatePolynomial([y,x],Expression Integer)
 --E 6
 
-@
+\end{chunk}
 Coerce it back to type Expression
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 20
 % :: EXPR INT
 --R 
@@ -103,9 +103,9 @@ a - %
 --R                                                     Type: Expression Integer
 --E 8
 
-@
+\end{chunk}
 Coerce the expression to various univariate polynomial types
-<<*>>=
+\begin{chunk}{*}
 --S 9 of 20
 a :: UP(x, EXPR INT)
 --R 
@@ -133,9 +133,9 @@ a :: UP(y, UP(x, EXPR INT))
 --R     Type: UnivariatePolynomial(y,UnivariatePolynomial(x,Expression Integer))
 --E 11
 
-@
+\end{chunk}
 Coerce it back to type Expression
-<<*>>=
+\begin{chunk}{*}
 --S 12 of 20
 % :: EXPR INT
 --R 
@@ -153,10 +153,10 @@ a - %
 --R                                                     Type: Expression Integer
 --E 13
 
-@
+\end{chunk}
 We needn't have had such a complicated expression. The following is
 really just a multivariate polynomial.
-<<*>>=
+\begin{chunk}{*}
 --S 14 of 20
 b : EXPR INT := (x - 2*y + 3*z)**3
 --R 
@@ -225,7 +225,7 @@ b - (% :: EXPR INT)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/exseries.input.pamphlet b/src/input/exseries.input.pamphlet
index ef60679..73d0353 100644
--- a/src/input/exseries.input.pamphlet
+++ b/src/input/exseries.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool exseries.output
 )set message test on
@@ -153,7 +153,7 @@ f ** 2
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/exsum.input.pamphlet b/src/input/exsum.input.pamphlet
index 0756a47..f074612 100644
--- a/src/input/exsum.input.pamphlet
+++ b/src/input/exsum.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool exsum.output
 )set message test on
@@ -163,7 +163,7 @@ sum(k,k = 1..n) ** 2
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f01brf.input.pamphlet b/src/input/f01brf.input.pamphlet
index 99ee204..966516a 100644
--- a/src/input/f01brf.input.pamphlet
+++ b/src/input/f01brf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )cl all
 showArrayValues true
 showScalarValues true
@@ -56,7 +56,7 @@ icn:Matrix Integer:=
   ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ]]
 ifail:= 110
 result:=f01brf(n,nz,licn,lirn,pivot,lblock,grow,abort,a,irn,icn,ifail)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f01bsf.input.pamphlet b/src/input/f01bsf.input.pamphlet
index a4401b4..efc7148 100644
--- a/src/input/f01bsf.input.pamphlet
+++ b/src/input/f01bsf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -51,7 +51,7 @@ ta2:=[10.,12.,-3.,-1.,15.,-2.,10.,-1.,-1.,-5.,1.,-1.,-1.,-2.,6.];
 a:= matrix [concat (ta2,ta1)]
 result:=f01bsf(n,nz,licn,matrix [tr2],matrix [tc2],cn,keep,grow,eta,abort,_
 matrix [[disp(1,1),disp(1,2)]],a,ifail)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f01maf.input.pamphlet b/src/input/f01maf.input.pamphlet
index 7dcc465..099028d 100644
--- a/src/input/f01maf.input.pamphlet
+++ b/src/input/f01maf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )cl all
 showArrayValues true
 showScalarValues true
@@ -48,7 +48,7 @@ droptl:= 0.1
 densw:= 0.8
 ifail:=111
 result:=f01maf(n,nz,licn,lirn,abort,avals,irn,icn,droptl,densw,ifail)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f01mcf.input.pamphlet b/src/input/f01mcf.input.pamphlet
index 46b65cf..e8a773f 100644
--- a/src/input/f01mcf.input.pamphlet
+++ b/src/input/f01mcf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )cl all
 showArrayValues true
 showScalarValues true
@@ -26,7 +26,7 @@ avals:Matrix SF:=
 lal:= 14
 nrow:Matrix Integer:= [[1 ,2 ,2 ,1 ,5 ,3 ]]
 result:=f01mcf(n,avals,lal,nrow,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f01qcf.input.pamphlet b/src/input/f01qcf.input.pamphlet
index 2550384..e0729d8 100644
--- a/src/input/f01qcf.input.pamphlet
+++ b/src/input/f01qcf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )cl all
 showArrayValues true
 showScalarValues true
@@ -29,7 +29,7 @@ a:Matrix SF:=
   [2.0 ,-0.5 ,0.5 ],_
   [1.2 ,-0.3 ,-2.9 ]]
 result:=f01qcf(m,n,lda,a,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f01qdf.input.pamphlet b/src/input/f01qdf.input.pamphlet
index f85cc77..f649dba 100644
--- a/src/input/f01qdf.input.pamphlet
+++ b/src/input/f01qdf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )cl all
 showArrayValues true
 showScalarValues true
@@ -41,7 +41,7 @@ b:Matrix SF:=
   [0.0 ,1.1 ],_
   [-0.8 ,-0.26 ]]
 result:=f01qdf(trans,wheret,m,n,a,lda,zeta,ncolb,ldb,b,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f01qef.input.pamphlet b/src/input/f01qef.input.pamphlet
index 79798c4..9d77b2a 100644
--- a/src/input/f01qef.input.pamphlet
+++ b/src/input/f01qef.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )cl all
 showArrayValues true
 showScalarValues true
@@ -33,7 +33,7 @@ a:Matrix SF:=
   [0.4082 ,-0.5774 ,0.0 ,0.0 ,0.0 ],_
   [0.2449 ,-0.3464 ,-0.6326 ,0.0 ,0.0 ]]
 result:=f01qef(wheret,m,n,ncolq,lda,zeta,a,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f01rcf.input.pamphlet b/src/input/f01rcf.input.pamphlet
index 01144b3..c780c7d 100644
--- a/src/input/f01rcf.input.pamphlet
+++ b/src/input/f01rcf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )cl all
 showArrayValues true
 showScalarValues true
@@ -29,7 +29,7 @@ a:Matrix Complex SF:=
   [complex(0.3,-0.4),complex(0.1,0.7),complex(0,0)],_
   [complex(0,-0.3),complex(0.3,0.3),complex(0,2.4) ]]
 result:=f01rcf(m,n,lda,a,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f01rdf.input.pamphlet b/src/input/f01rdf.input.pamphlet
index d418771..44537bc 100644
--- a/src/input/f01rdf.input.pamphlet
+++ b/src/input/f01rdf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )cl all
 showArrayValues true
 showScalarValues true
@@ -41,7 +41,7 @@ b:Matrix Complex SF :=
   [ 0.39 + 0.23*%i ,-0.39 - 0.23*%i ],_
   [ 1.13 + 0.83*%i ,-1.13 + 0.77*%i ]]
 result:=f01rdf(trans,wheret,m,n,a,lda,theta,ncolb,ldb,b,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f01ref.input.pamphlet b/src/input/f01ref.input.pamphlet
index 5a66fd5..9524e64 100644
--- a/src/input/f01ref.input.pamphlet
+++ b/src/input/f01ref.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )cl all
 showArrayValues true
 showScalarValues true
@@ -33,7 +33,7 @@ a:Matrix Complex SF :=
   [-0.4  + 0.2*%i ,         0.5477*%i , 0.0        ],_
   [-0.12 + 0.24*%i, 0.1972 +0.2629*%i , 0.6325     ]]
 result:=f01ref(wheret,m,n,ncolq,lda,theta,a,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f02aaf.input.pamphlet b/src/input/f02aaf.input.pamphlet
index 3f7d1e5..1eb1214 100644
--- a/src/input/f02aaf.input.pamphlet
+++ b/src/input/f02aaf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -27,7 +27,7 @@ a:Matrix SF:=
   [ 2.3 ,-1.4 , 0.5 , 0.0 ],_
   [-2.6 ,-0.7 , 0.0 , 0.5 ]]
 result:=f02aaf(ia,n,a,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f02abf.input.pamphlet b/src/input/f02abf.input.pamphlet
index e71bec6..0b76b51 100644
--- a/src/input/f02abf.input.pamphlet
+++ b/src/input/f02abf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -28,7 +28,7 @@ ia:=4
 n:=4
 iv:=4
 result:=f02abf(a,ia,n,iv,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f02adf.input.pamphlet b/src/input/f02adf.input.pamphlet
index ce8c789..a830918 100644
--- a/src/input/f02adf.input.pamphlet
+++ b/src/input/f02adf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -33,7 +33,7 @@ b:Matrix SF:=
   [4 ,16 ,24 ,18 ],_
   [1 ,11 ,18 ,27 ]]
 result:=f02adf(ia,ib,n,a,b,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f02aef.input.pamphlet b/src/input/f02aef.input.pamphlet
index f7abb23..2ef0b82 100644
--- a/src/input/f02aef.input.pamphlet
+++ b/src/input/f02aef.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -34,7 +34,7 @@ b:Matrix SF:=
   [4 ,16 ,24 ,18 ],_
   [1 ,11 ,18 ,27 ]]
 result:=f02aef(ia,ib,n,iv,a,b,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f02aff.input.pamphlet b/src/input/f02aff.input.pamphlet
index ca9407a..e3844a6 100644
--- a/src/input/f02aff.input.pamphlet
+++ b/src/input/f02aff.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -27,7 +27,7 @@ a:Matrix SF:=
   [ -2.5 ,0.3 , 4.5 ,-2.5 ],_
   [ -2.5 ,0.1 , 4.5 , 2.5 ]]
 result:=f02aff(ia,n,a,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f02agf.input.pamphlet b/src/input/f02agf.input.pamphlet
index e8b40b4..c44d751 100644
--- a/src/input/f02agf.input.pamphlet
+++ b/src/input/f02agf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -29,7 +29,7 @@ a:Matrix SF:=
   [ -2.5 ,0.3 , 4.5 ,-2.5 ],_
   [ -2.5 ,0.1 , 4.5 , 2.5 ]]
 result:=f02agf(ia,n,ivr,ivi,a,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f02ajf.input.pamphlet b/src/input/f02ajf.input.pamphlet
index 899edd2..df33abb 100644
--- a/src/input/f02ajf.input.pamphlet
+++ b/src/input/f02ajf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -33,7 +33,7 @@ ai:Matrix SF:=
   [ 1.5 , 2.24 ,-5.0 , 2.0 ],_
   [-2.5 , 0.0 ,  3.6 ,-5.0 ]]
 result:=f02ajf(iar,iai,n,ar,ai,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f02akf.input.pamphlet b/src/input/f02akf.input.pamphlet
index 9fa3e03..bf75325 100644
--- a/src/input/f02akf.input.pamphlet
+++ b/src/input/f02akf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -35,7 +35,7 @@ ai:Matrix SF:=
   [ 1.5 , 2.24 ,-5.0 , 2.0 ],_
   [-2.5 , 0.0 ,  3.6 ,-5.0 ]]
 result:=f02akf(iar,iai,n,ivr,ivi,ar,ai,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f02awf.input.pamphlet b/src/input/f02awf.input.pamphlet
index d5dc21f..3f65a8b 100644
--- a/src/input/f02awf.input.pamphlet
+++ b/src/input/f02awf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -33,7 +33,7 @@ ai:Matrix SF:=
   [-1.38 ,-0.84 ,0.0 ,  0.0 ],_
   [ 1.56 ,-0.42 ,0.0 ,  0.0 ]]
 result:=f02awf(iar,iai,n,ar,ai,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f02axf.input.pamphlet b/src/input/f02axf.input.pamphlet
index 7945d74..f488105 100644
--- a/src/input/f02axf.input.pamphlet
+++ b/src/input/f02axf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -35,7 +35,7 @@ n:=4
 ivr:=4
 ivi:=4
 result:=f02axf(ar,iar,ai,iai,n,ivr,ivi,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f02bbf.input.pamphlet b/src/input/f02bbf.input.pamphlet
index 4324255..edbb014 100644
--- a/src/input/f02bbf.input.pamphlet
+++ b/src/input/f02bbf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -31,7 +31,7 @@ a:Matrix SF:=
   [2.3 ,-1.4 ,0.5 ,0.0 ],_
   [-2.6 ,-0.7 ,0.0 ,0.5 ]]
 result:=f02bbf(ia,n,alb,ub,m,iv,a,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f02bjf.input.pamphlet b/src/input/f02bjf.input.pamphlet
index a2b2672..410343e 100644
--- a/src/input/f02bjf.input.pamphlet
+++ b/src/input/f02bjf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -36,7 +36,7 @@ b:Matrix SF:=
   [1 ,3 ,-4 ,3 ],_
   [1 ,3 ,-4 ,4 ]]
 result:=f02bjf(n,ia,ib,eps1,matv,iv,a,b,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f02fjf.input.pamphlet b/src/input/f02fjf.input.pamphlet
index 39adade..e072313 100644
--- a/src/input/f02fjf.input.pamphlet
+++ b/src/input/f02fjf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )cl all
 showArrayValues true
 showScalarValues true
@@ -66,7 +66,7 @@ b(16,16) := 1
 c : Matrix MachineFloat := (inverse (a))*b;
 bb  := b :: Matrix MachineFloat
 result:=f02fjf(n,k,tol,novecs,nrx,lwork,lrwork,liwork,m,noits,x,ifail,bb :: ASP27('DOT),c :: ASP28('IMAGE))
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f02wef.input.pamphlet b/src/input/f02wef.input.pamphlet
index 766de15..c6d056c 100644
--- a/src/input/f02wef.input.pamphlet
+++ b/src/input/f02wef.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )cl all
 showArrayValues true
 showScalarValues true
@@ -38,7 +38,7 @@ ldq := 1
 ldpt := n
 ifail := -1
 result:=f02wef(m,n,lda,ncolb,ldb,wantq,ldq,wantp,ldpt,a,b,ifail)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f02xef.input.pamphlet b/src/input/f02xef.input.pamphlet
index da92652..43da7a1 100644
--- a/src/input/f02xef.input.pamphlet
+++ b/src/input/f02xef.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -41,7 +41,7 @@ b:Matrix Complex SF:=
   [0.39+0.23*%i ],_
   [1.13+0.83*%i ]] 
 result:=f02xef(m,n,lda,ncolb,ldb,wantq,ldq,wantp,ldph,a,b,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f04adf.input.pamphlet b/src/input/f04adf.input.pamphlet
index 13a702c..95cff3f 100644
--- a/src/input/f04adf.input.pamphlet
+++ b/src/input/f04adf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )cl all
 showArrayValues true
 showScalarValues true
@@ -31,7 +31,7 @@ a:Matrix Complex SF:=
   [1 + %i,3*%i,-5 + 14*%i],_
   [1 + %i,5*%i,-8 + 20*%i]]
 result:=f04adf(ia,b,ib,n,m,ic,a,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f04arf.input.pamphlet b/src/input/f04arf.input.pamphlet
index 527fa4f..9a1a159 100644
--- a/src/input/f04arf.input.pamphlet
+++ b/src/input/f04arf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )cle all
 showArrayValues true
 showScalarValues true
@@ -33,7 +33,7 @@ a:Matrix SF:=
   [0,0,0],_
   [0,0,0]]
 result:=f04arf(ia,b,n,a,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f04asf.input.pamphlet b/src/input/f04asf.input.pamphlet
index 4057966..ed4cd88 100644
--- a/src/input/f04asf.input.pamphlet
+++ b/src/input/f04asf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )cl all
 showArrayValues true
 showScalarValues true
@@ -33,7 +33,7 @@ a:Matrix SF:=
   [0,0,0,0],_
   [0,0,0,0]]
 result:=f04asf(ia,b,n,a,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f04atf.input.pamphlet b/src/input/f04atf.input.pamphlet
index 226eb2f..d9b4b36 100644
--- a/src/input/f04atf.input.pamphlet
+++ b/src/input/f04atf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )cl all
 showArrayValues true
 showScalarValues true
@@ -34,7 +34,7 @@ b:Matrix SF:=
 n:=3
 iaa:=8
 result:=f04atf(a,ia,b,n,iaa,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f04axf.input.pamphlet b/src/input/f04axf.input.pamphlet
index 71c9781..593eb7f 100644
--- a/src/input/f04axf.input.pamphlet
+++ b/src/input/f04axf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )cl all
 showArrayValues true
 showScalarValues true
@@ -49,7 +49,7 @@ rhs := [[15,12,18,3,-6,0]]
 idisp := (res1)."idisp"
 mtype := 1
 result:=f04axf(n,a,licn,icn,ikeep,mtype,[[idisp(1,1),idisp(1,2)]],rhs)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f04faf.input.pamphlet b/src/input/f04faf.input.pamphlet
index fff47f2..1f2ef46 100644
--- a/src/input/f04faf.input.pamphlet
+++ b/src/input/f04faf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )cle all
 showArrayValues true
 showScalarValues true
@@ -28,7 +28,7 @@ e:Matrix SF:=
 b:Matrix SF:=
  [[6 ,9 ,2 ,14 ,7 ]]
 result:=f04faf(job,n,d,e,b,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f04jgf.input.pamphlet b/src/input/f04jgf.input.pamphlet
index 9b10c52..9d37a59 100644
--- a/src/input/f04jgf.input.pamphlet
+++ b/src/input/f04jgf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )cl all
 showArrayValues true
 showScalarValues true
@@ -36,7 +36,7 @@ a:Matrix SF:=
 b:Matrix SF:=
   [[1 ,2 ,3 ,4 ,5 ,6 ]]
 result:=f04jgf(m,n,nra,tol,lwork,a,b,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f04maf.input.pamphlet b/src/input/f04maf.input.pamphlet
index b5e02a3..b137059 100644
--- a/src/input/f04maf.input.pamphlet
+++ b/src/input/f04maf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )cl all -- first run f01maf
 showArrayValues true
 showScalarValues true
@@ -61,7 +61,7 @@ wkeep := res1."wkeep"
 ikeep := res1."ikeep"
 inform := res1."inform"
 result:=f04maf(nn,nz,a,licn,irn,lirn,icn,wkeep,ikeep,inform,b,acc,noits,ifail)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f04mbf.input.pamphlet b/src/input/f04mbf.input.pamphlet
index 59c2ab1..5fbe312 100644
--- a/src/input/f04mbf.input.pamphlet
+++ b/src/input/f04mbf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )cl all
 showArrayValues true
 showScalarValues true
@@ -49,7 +49,7 @@ m :Matrix MFLOAT:= [[2,1,0,0,0,0,0,0,0,0],[1,2,1,0,0,0,0,0,0,0],_
 [0,0,0,0,1,2,1,0,0,0],[0,0,0,0,0,1,2,1,0,0],[0,0,0,0,0,0,1,2,1,0],_
 [0,0,0,0,0,0,0,1,2,1],[0,0,0,0,0,0,0,0,1,2]]
 result:=f04mbf(n,b,precon,shft,itnlim,msglvl,lrwork,liwork,rtol,ifail,z::ASP28(APROD),(m::ASP34(MSOLVE)))
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f04mcf.input.pamphlet b/src/input/f04mcf.input.pamphlet
index f11ee1c..61549de 100644
--- a/src/input/f04mcf.input.pamphlet
+++ b/src/input/f04mcf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )cl all
 showArrayValues true
 showScalarValues true
@@ -39,7 +39,7 @@ nrb:=6
 iselct:=1
 nrx:=6
 result:=f04mcf(n,al,lal,d,nrow,ir,b,nrb,iselct,nrx,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f04qaf.input.pamphlet b/src/input/f04qaf.input.pamphlet
index ab4013f..40e1961 100644
--- a/src/input/f04qaf.input.pamphlet
+++ b/src/input/f04qaf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )cl all
 showArrayValues true
 showScalarValues true
@@ -47,7 +47,7 @@ liwork := 1
 lrwork := 1
 ifail :=1
 result:=f04qaf(m,n,damp,atol,btol,conlim,itnlim,msglvl,lrwork,liwork,b,ifail,a::ASP30(APROD))
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f07adf.input.pamphlet b/src/input/f07adf.input.pamphlet
index 1961c7f..ecd83a4 100644
--- a/src/input/f07adf.input.pamphlet
+++ b/src/input/f07adf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -28,7 +28,7 @@ a:Matrix SF:=
   [1.58 ,-2.69 ,-2.9 ,-1.04 ],_
   [-1.11 ,-0.66 ,-0.59 ,0.8 ]]
 result:=f07adf(m,n,lda,a)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f07aef.input.pamphlet b/src/input/f07aef.input.pamphlet
index e662e00..d8b1527 100644
--- a/src/input/f07aef.input.pamphlet
+++ b/src/input/f07aef.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -37,7 +37,7 @@ b:Matrix SF:=
    [0.77 ,-13.3 ],_
    [-6.22 ,-6.21 ]]
 result:=f07aef(trans,n,nrhs,a,lda,ipiv,ldb,b)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f07fdf.input.pamphlet b/src/input/f07fdf.input.pamphlet
index a386123..687c91b 100644
--- a/src/input/f07fdf.input.pamphlet
+++ b/src/input/f07fdf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -28,7 +28,7 @@ a:Matrix SF:=
   [0.56 ,-0.83 ,0.76 ,0.0 ],_
   [-0.1 ,1.18 ,0.34 ,1.18 ]]
 result:=f07fdf(uplo,n,lda,a)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/f07fef.input.pamphlet b/src/input/f07fef.input.pamphlet
index 0636014..3542c40 100644
--- a/src/input/f07fef.input.pamphlet
+++ b/src/input/f07fef.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 showArrayValues true
 showScalarValues true
@@ -35,7 +35,7 @@ b:Matrix SF:=
   [1.89 ,1.61 ],_
   [-4.14 ,5 ]]
 result:=f07fef(uplo,n,nrhs,a,lda,ldb,b)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/farray.input.pamphlet b/src/input/farray.input.pamphlet
index 44a38f5..5fb07aa 100644
--- a/src/input/farray.input.pamphlet
+++ b/src/input/farray.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool farray.output
 )set message test on
@@ -150,7 +150,7 @@ shrinkable(false)$FlexibleArray(Integer)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/ffdemo.input.pamphlet b/src/input/ffdemo.input.pamphlet
index 2df7bfe..9c4af63 100644
--- a/src/input/ffdemo.input.pamphlet
+++ b/src/input/ffdemo.input.pamphlet
@@ -10,21 +10,21 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool ffdemo.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 \section{finite field demonstrations}
 \subsection{prime field}
 Get a prime
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 350
 p:=4817
 --R 
@@ -33,9 +33,9 @@ p:=4817
 --R                                                        Type: PositiveInteger
 --E 1
 
-@
+\end{chunk}
 Construct a field
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 350
 F:=PrimeField p
 --R 
@@ -44,11 +44,11 @@ F:=PrimeField p
 --R                                                                 Type: Domain
 --E 2
 
-@
+\end{chunk}
 Demonstration of common finite field functions.
 The finite field domain is in variable F.
 We take some random elements
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 350
 size()$F
 --R 
@@ -73,9 +73,9 @@ b:=index(size()$F quo 7)$F
 --R                                                        Type: PrimeField 4817
 --E 5
 
-@
+\end{chunk}
 \subsection{Simple arithmetic}
-<<*>>=
+\begin{chunk}{*}
 --S 6 of 350
 a+b
 --R 
@@ -140,9 +140,9 @@ g := generator()$F
 --R                                                        Type: PrimeField 4817
 --E 13
 
-@
+\end{chunk}
 \subsection{functions concerning the multiplicative cyclic group}
-<<*>>=
+\begin{chunk}{*}
 --S 14 of 350
 order(a)
 --R 
@@ -167,9 +167,9 @@ discreteLog(a)
 --R                                                        Type: PositiveInteger
 --E 16
 
-@
+\end{chunk}
 The next one should equal 0
-<<*>>=
+\begin{chunk}{*}
 --S 17 of 350
 g**% - a
 --R 
@@ -178,9 +178,9 @@ g**% - a
 --R                                                        Type: PrimeField 4817
 --E 17
 
-@
+\end{chunk}
 The next may fail
-<<*>>=
+\begin{chunk}{*}
 --S 18 of 350
 discreteLog(b,a)
 --R 
@@ -190,9 +190,9 @@ discreteLog(b,a)
 --R                                                    Type: Union("failed",...)
 --E 18
 
-@
+\end{chunk}
 \subsection{special finite field functions}
-<<*>>=
+\begin{chunk}{*}
 --S 19 of 350
 extensionDegree()$F
 --R 
@@ -265,11 +265,11 @@ for d in divisors extensionDegree()$F repeat
 --R                                                                   Type: Void
 --E 27
 
-@
+\end{chunk}
 End of common finite field demonstration
 \subsection{finite field with polynomail basis}
 Get a small prime
-<<*>>=
+\begin{chunk}{*}
 --S 28 of 350
 p:=7
 --R 
@@ -286,9 +286,9 @@ P:=PrimeField p
 --R                                                                 Type: Domain
 --E 29
 
-@
+\end{chunk}
 Get a small extension degree
-<<*>>=
+\begin{chunk}{*}
 --S 30 of 350
 d:=6
 --R 
@@ -297,9 +297,9 @@ d:=6
 --R                                                        Type: PositiveInteger
 --E 30
 
-@
+\end{chunk}
 Get a irreducible polynomial
-<<*>>=
+\begin{chunk}{*}
 --S 31 of 350
 f:=createIrreduciblePoly(d)$FFPOLY(P)
 --R 
@@ -309,9 +309,9 @@ f:=createIrreduciblePoly(d)$FFPOLY(P)
 --R                                Type: SparseUnivariatePolynomial PrimeField 7
 --E 31
 
-@
+\end{chunk}
 Construct the field
-<<*>>=
+\begin{chunk}{*}
 --S 32 of 350
 F:=FFP(P,f)
 --R 
@@ -320,12 +320,12 @@ F:=FFP(P,f)
 --R                                                                 Type: Domain
 --E 32
 
-@
+\end{chunk}
 This field is the same as constructed by F:=FFX(P,d) or F:=FF(p,d)
 \subsection{demonstration of common finite field functions}
 The finite field domain is in variable F.
 Take some random elements
-<<*>>=
+\begin{chunk}{*}
 --S 33 of 350
 size()$F
 --R 
@@ -352,9 +352,9 @@ b:=index(size()$F quo 7)$F
 --R                  Type: FiniteFieldExtensionByPolynomial(PrimeField 7,?**6+2)
 --E 35
 
-@
+\end{chunk}
 Simple arithmetic
-<<*>>=
+\begin{chunk}{*}
 --S 36 of 350
 a+b
 --R 
@@ -424,9 +424,9 @@ g := generator()$F
 --R                  Type: FiniteFieldExtensionByPolynomial(PrimeField 7,?**6+2)
 --E 43
 
-@
+\end{chunk}
 \subsection{functions concerning the multiplicative cyclic group}
-<<*>>=
+\begin{chunk}{*}
 --S 44 of 350
 order(a)
 --R 
@@ -451,9 +451,9 @@ discreteLog(a)
 --R                                                        Type: PositiveInteger
 --E 46
 
-@
+\end{chunk}
 The next one should equal 0
-<<*>>=
+\begin{chunk}{*}
 --S 47 of 350
 g**% - a
 --R 
@@ -462,9 +462,9 @@ g**% - a
 --R                  Type: FiniteFieldExtensionByPolynomial(PrimeField 7,?**6+2)
 --E 47
 
-@
+\end{chunk}
 The next may fail
-<<*>>=
+\begin{chunk}{*}
 --S 48 of 350
 discreteLog(b,a)
 --R 
@@ -474,9 +474,9 @@ discreteLog(b,a)
 --R                                                    Type: Union("failed",...)
 --E 48
 
-@
+\end{chunk}
 \subsection{special finite field functions}
-<<*>>=
+\begin{chunk}{*}
 --S 49 of 350
 extensionDegree()$F
 --R 
@@ -571,11 +571,11 @@ for d in divisors extensionDegree()$F repeat
 --R                                                                   Type: Void
 --E 57
 
-@
+\end{chunk}
 End of common finite field demonstration
 \subsection{finite field with normal basis}
 Get a normal Polynomial
-<<*>>=
+\begin{chunk}{*}
 --S 58 of 350
 f:=createNormalPoly(d)$FFPOLY(P)
 --R 
@@ -585,9 +585,9 @@ f:=createNormalPoly(d)$FFPOLY(P)
 --R                                Type: SparseUnivariatePolynomial PrimeField 7
 --E 58
 
-@
+\end{chunk}
 Build the field
-<<*>>=
+\begin{chunk}{*}
 --S 59 of 350
 F:=FFNBP(P,f)
 --R 
@@ -597,12 +597,12 @@ F:=FFNBP(P,f)
 --R                                                                 Type: Domain
 --E 59
 
-@
+\end{chunk}
 This field is the same as constructed by F:=FFNBX(P,d) or F:=FFNB(p,d)
 \subsection{demonstration of common finite field functions}
 The finite field domain is in variable F.
 Take some random elements.
-<<*>>=
+\begin{chunk}{*}
 --S 60 of 350
 size()$F
 --R 
@@ -631,9 +631,9 @@ b:=index(size()$F quo 7)$F
 --RType: FiniteFieldNormalBasisExtensionByPolynomial(PrimeField 7,?**6+6*?**5+2*?+4)
 --E 62
 
-@
+\end{chunk}
 Simple arithmetic
-<<*>>=
+\begin{chunk}{*}
 --S 63 of 350
 a+b
 --R 
@@ -710,9 +710,9 @@ g := generator()$F
 --RType: FiniteFieldNormalBasisExtensionByPolynomial(PrimeField 7,?**6+6*?**5+2*?+4)
 --E 70
 
-@
+\end{chunk}
 \subsection{functions concerning the multiplicative cyclic group}
-<<*>>=
+\begin{chunk}{*}
 --S 71 of 350
 order(a)
 --R 
@@ -739,9 +739,9 @@ discreteLog(a)
 --R                                                        Type: PositiveInteger
 --E 73
 
-@
+\end{chunk}
 The next one should equal 0
-<<*>>=
+\begin{chunk}{*}
 --S 74 of 350
 g**% - a
 --R 
@@ -750,9 +750,9 @@ g**% - a
 --RType: FiniteFieldNormalBasisExtensionByPolynomial(PrimeField 7,?**6+6*?**5+2*?+4)
 --E 74
 
-@
+\end{chunk}
 The next may fail
-<<*>>=
+\begin{chunk}{*}
 --S 75 of 350
 discreteLog(b,a)
 --R 
@@ -761,9 +761,9 @@ discreteLog(b,a)
 --R                                          Type: Union(NonNegativeInteger,...)
 --E 75
 
-@
+\end{chunk}
 \subsection{special finite field functions}
-<<*>>=
+\begin{chunk}{*}
 --S 76 of 350
 extensionDegree()$F
 --R 
@@ -864,14 +864,14 @@ for d in divisors extensionDegree()$F repeat
 --R                                                                   Type: Void
 --E 84
 
-@
+\end{chunk}
 End of common finite field demonstration
 \subsection{finite field represented as cyclic group}
 Because a Zech logarithm table of half the field size is kept in
 memory during the computations, the size of the field should not be
 too big.
 Get a small prime
-<<*>>=
+\begin{chunk}{*}
 --S 85 of 350
 p:=5
 --R 
@@ -888,9 +888,9 @@ P:=PrimeField p
 --R                                                                 Type: Domain
 --E 86
 
-@
+\end{chunk}
 Get a small extension degree
-<<*>>=
+\begin{chunk}{*}
 --S 87 of 350
 d:=4
 --R 
@@ -899,9 +899,9 @@ d:=4
 --R                                                        Type: PositiveInteger
 --E 87
 
-@
+\end{chunk}
 Get a primitive polynomial
-<<*>>=
+\begin{chunk}{*}
 --S 88 of 350
 f:=createPrimitivePoly(d)$FFPOLY(P)
 --R 
@@ -911,9 +911,9 @@ f:=createPrimitivePoly(d)$FFPOLY(P)
 --R                                Type: SparseUnivariatePolynomial PrimeField 5
 --E 88
 
-@
+\end{chunk}
 Construct the field
-<<*>>=
+\begin{chunk}{*}
 --S 89 of 350
 F:=FFCGP(P,f)
 --R 
@@ -923,12 +923,12 @@ F:=FFCGP(P,f)
 --R                                                                 Type: Domain
 --E 89
 
-@
+\end{chunk}
 This field is the same as constructed by F:=FFCGX(P,d) or F:=FFCG(p,d)
 \subsection{demonstration of common finite field functions}
 The finite field domain is in variable F.
 Take some random elements
-<<*>>=
+\begin{chunk}{*}
 --S 90 of 350
 size()$F
 --R 
@@ -955,9 +955,9 @@ b:=index(size()$F quo 7)$F
 --RType: FiniteFieldCyclicGroupExtensionByPolynomial(PrimeField 5,?**4+?*?+2*?+2)
 --E 92
 
-@
+\end{chunk}
 Simple arithmetic
-<<*>>=
+\begin{chunk}{*}
 --S 93 of 350
 a+b
 --R 
@@ -1029,9 +1029,9 @@ g := generator()$F
 --RType: FiniteFieldCyclicGroupExtensionByPolynomial(PrimeField 5,?**4+?*?+2*?+2)
 --E 100
 
-@
+\end{chunk}
 \subsection{functions concerning the multiplicative cyclic group}
-<<*>>=
+\begin{chunk}{*}
 --S 101 of 350
 order(a)
 --R 
@@ -1057,9 +1057,9 @@ discreteLog(a)
 --R                                                        Type: PositiveInteger
 --E 103
 
-@
+\end{chunk}
 The next one should equal 0
-<<*>>=
+\begin{chunk}{*}
 --S 104 of 350
 g**% - a
 --R 
@@ -1068,9 +1068,9 @@ g**% - a
 --RType: FiniteFieldCyclicGroupExtensionByPolynomial(PrimeField 5,?**4+?*?+2*?+2)
 --E 104
 
-@
+\end{chunk}
 The next may fail
-<<*>>=
+\begin{chunk}{*}
 --S 105 of 350
 discreteLog(b,a)
 --R 
@@ -1079,9 +1079,9 @@ discreteLog(b,a)
 --R                                                    Type: Union("failed",...)
 --E 105
 
-@
+\end{chunk}
 Special finite field functions
-<<*>>=
+\begin{chunk}{*}
 --S 106 of 350
 extensionDegree()$F
 --R 
@@ -1172,11 +1172,11 @@ for d in divisors extensionDegree()$F repeat
 --R                                                                   Type: Void
 --E 114
 
-@
+\end{chunk}
 End of common finite field demonstration
 \subsection{polynomial extension of a polynomial extension}
 Get a small prime, choose 2 or 3
-<<*>>=
+\begin{chunk}{*}
 --S 115 of 350
 p:=3
 --R 
@@ -1193,9 +1193,9 @@ P:=PrimeField p
 --R                                                                 Type: Domain
 --E 116
 
-@
+\end{chunk}
 Get two small extension degrees
-<<*>>=
+\begin{chunk}{*}
 --S 117 of 350
 d1:=2
 --R 
@@ -1212,9 +1212,9 @@ d2:=3
 --R                                                        Type: PositiveInteger
 --E 118
 
-@
+\end{chunk}
 Get irreducible polynomial of degree d1 over P
-<<*>>=
+\begin{chunk}{*}
 --S 119 of 350
 f1:=createIrreduciblePoly(d1)$FFPOLY(P)
 --R 
@@ -1232,9 +1232,9 @@ F1:=FFP(P,f1)
 --R                                                                 Type: Domain
 --E 120
 
-@
+\end{chunk}
 Get irreducible polynomial of degree d2 over F1
-<<*>>=
+\begin{chunk}{*}
 --S 121 of 350
 f2:=createIrreduciblePoly(d2)$FFPOLY(F1)
 --R 
@@ -1244,9 +1244,9 @@ f2:=createIrreduciblePoly(d2)$FFPOLY(F1)
 --RType: SparseUnivariatePolynomial FiniteFieldExtensionByPolynomial(PrimeField 3,?*?+1)
 --E 121
 
-@
+\end{chunk}
 Construct the field
-<<*>>=
+\begin{chunk}{*}
 --S 122 of 350
 F:=FFP(F1,f2)
 --R 
@@ -1257,12 +1257,12 @@ F:=FFP(F1,f2)
 --R                                                                 Type: Domain
 --E 122
 
-@
+\end{chunk}
 This field is the same as constructed by F:=FFX(F1,d2)
 \subsection{demonstration of common finite field functions}
 The finite field domain is in variable F.
 Take some random elements
-<<*>>=
+\begin{chunk}{*}
 --S 123 of 350
 size()$F
 --R 
@@ -1289,9 +1289,9 @@ b:=index(size()$F quo 7)$F
 --RType: FiniteFieldExtensionByPolynomial(FiniteFieldExtensionByPolynomial(PrimeField 3,?*?+1),?**3+?+D)
 --E 125
 
-@
+\end{chunk}
 Simple arithmetic
-<<*>>=
+\begin{chunk}{*}
 --S 126 of 350
 a+b
 --R 
@@ -1362,9 +1362,9 @@ g := generator()$F
 --RType: FiniteFieldExtensionByPolynomial(FiniteFieldExtensionByPolynomial(PrimeField 3,?*?+1),?**3+?+D)
 --E 133
 
-@
+\end{chunk}
 \subsection{functions concerning the multiplicative cyclic group}
-<<*>>=
+\begin{chunk}{*}
 --S 134 of 350
 order(a)
 --R 
@@ -1389,9 +1389,9 @@ discreteLog(a)
 --R                                                        Type: PositiveInteger
 --E 136
 
-@
+\end{chunk}
 The next one should equal 0
-<<*>>=
+\begin{chunk}{*}
 --S 137 of 350
 g**% - a
 --R 
@@ -1400,9 +1400,9 @@ g**% - a
 --RType: FiniteFieldExtensionByPolynomial(FiniteFieldExtensionByPolynomial(PrimeField 3,?*?+1),?**3+?+D)
 --E 137
 
-@
+\end{chunk}
 The next may fail
-<<*>>=
+\begin{chunk}{*}
 --S 138 of 350
 discreteLog(b,a)
 --R 
@@ -1411,9 +1411,9 @@ discreteLog(b,a)
 --R                                          Type: Union(NonNegativeInteger,...)
 --E 138
 
-@
+\end{chunk}
 Special finite field functions
-<<*>>=
+\begin{chunk}{*}
 --S 139 of 350
 extensionDegree()$F
 --R 
@@ -1498,12 +1498,12 @@ for d in divisors extensionDegree()$F repeat
 --R                                                                   Type: Void
 --E 147
 
-@
+\end{chunk}
 End of common finite field demonstration
 
 \section{polynomial extension of a normal extension}
 Get normal polynomial of degree d1 over P
-<<*>>=
+\begin{chunk}{*}
 --S 148 of 350
 f1:=createNormalPoly(d1)$FFPOLY(P)
 --R 
@@ -1521,9 +1521,9 @@ F1:=FFNBP(P,f1)
 --R                                                                 Type: Domain
 --E 149
 
-@
+\end{chunk}
 Get irreducible polynomial of degree d2 over F1
-<<*>>=
+\begin{chunk}{*}
 --S 150 of 350
 f2:=createIrreduciblePoly(d2)$FFPOLY(F1)
 --R 
@@ -1533,9 +1533,9 @@ f2:=createIrreduciblePoly(d2)$FFPOLY(F1)
 --RType: SparseUnivariatePolynomial FiniteFieldNormalBasisExtensionByPolynomial(PrimeField 3,?*?+2*?+2)
 --E 150
 
-@
+\end{chunk}
 Construct the field
-<<*>>=
+\begin{chunk}{*}
 --S 151 of 350
 F:=FFP(F1,f2)
 --R 
@@ -1546,12 +1546,12 @@ F:=FFP(F1,f2)
 --R                                                                 Type: Domain
 --E 151 of 350
 
-@
+\end{chunk}
 This field is the same as constructed by F:=FFX(F1,d2)
 \subsection{demonstration of common finite field functions}
 The finite field domain is in variable F.
 Take some random elements
-<<*>>=
+\begin{chunk}{*}
 --S 152 of 250
 size()$F
 --R 
@@ -1578,9 +1578,9 @@ b:=index(size()$F quo 7)$F
 --RType: FiniteFieldExtensionByPolynomial(FiniteFieldNormalBasisExtensionByPolynomial(PrimeField 3,?*?+2*?+2),?**3+?+F)
 --E 154
 
-@
+\end{chunk}
 Simple arithmetic
-<<*>>=
+\begin{chunk}{*}
 --S 155 of 350
 a+b
 --R 
@@ -1651,9 +1651,9 @@ g := generator()$F
 --RType: FiniteFieldExtensionByPolynomial(FiniteFieldNormalBasisExtensionByPolynomial(PrimeField 3,?*?+2*?+2),?**3+?+F)
 --E 162
 
-@
+\end{chunk}
 \subsection{functions concerning the multiplicative cyclic group}
-<<*>>=
+\begin{chunk}{*}
 --S 163 of 350
 order(a)
 --R 
@@ -1678,9 +1678,9 @@ discreteLog(a)
 --R                                                        Type: PositiveInteger
 --E 165
 
-@
+\end{chunk}
 The next one should equal 0
-<<*>>=
+\begin{chunk}{*}
 --S 166 of 350
 g**% - a
 --R 
@@ -1689,9 +1689,9 @@ g**% - a
 --RType: FiniteFieldExtensionByPolynomial(FiniteFieldNormalBasisExtensionByPolynomial(PrimeField 3,?*?+2*?+2),?**3+?+F)
 --E 166
 
-@
+\end{chunk}
 The next may fail
-<<*>>=
+\begin{chunk}{*}
 --S 167 of 350
 discreteLog(b,a)
 --R 
@@ -1701,9 +1701,9 @@ discreteLog(b,a)
 --R                                                    Type: Union("failed",...)
 --E 167
 
-@
+\end{chunk}
 \subsection{special finite field functions}
-<<*>>=
+\begin{chunk}{*}
 --S 168 of 350
 extensionDegree()$F
 --R 
@@ -1790,12 +1790,12 @@ for d in divisors extensionDegree()$F repeat
 --R                                                                   Type: Void
 --E 176
 
-@
+\end{chunk}
 End of common finite field demonstration
 
 \subsection{polynomial extension of a cyclic extension}
 Get primitive polynomial of degree d1 over P
-<<*>>=
+\begin{chunk}{*}
 --S 177 of 350
 f1:=createPrimitivePoly(d1)$FFPOLY(P)
 --R 
@@ -1813,9 +1813,9 @@ F1:=FFCGP(P,f1)
 --R                                                                 Type: Domain
 --E 178
 
-@
+\end{chunk}
 Get irreducible polynomial of degree d2 over F1
-<<*>>=
+\begin{chunk}{*}
 --S 179 of 350
 f2:=createIrreduciblePoly(d2)$FFPOLY(F1)
 --R 
@@ -1825,9 +1825,9 @@ f2:=createIrreduciblePoly(d2)$FFPOLY(F1)
 --RType: SparseUnivariatePolynomial FiniteFieldCyclicGroupExtensionByPolynomial(PrimeField 3,?*?+?+2)
 --E 179
 
-@
+\end{chunk}
 Construct the field
-<<*>>=
+\begin{chunk}{*}
 --S 180 of 350
 F:=FFP(F1,f2)
 --R 
@@ -1838,12 +1838,12 @@ F:=FFP(F1,f2)
 --R                                                                 Type: Domain
 --E 180
 
-@
+\end{chunk}
 This field is the same as constructed by F:=FFX(F1,d2)
 \subsection{demonstration of common finite field functions}
 The finite field domain is in variable F.
 Take some random elements
-<<*>>=
+\begin{chunk}{*}
 --S 181 of 350
 size()$F
 --R 
@@ -1870,9 +1870,9 @@ b:=index(size()$F quo 7)$F
 --RType: FiniteFieldExtensionByPolynomial(FiniteFieldCyclicGroupExtensionByPolynomial(PrimeField 3,?*?+?+2),?**3+?+H**1)
 --E 183
 
-@
+\end{chunk}
 Simple arithmetic
-<<*>>=
+\begin{chunk}{*}
 --S 184 of 350
 a+b
 --R 
@@ -1943,9 +1943,9 @@ g := generator()$F
 --RType: FiniteFieldExtensionByPolynomial(FiniteFieldCyclicGroupExtensionByPolynomial(PrimeField 3,?*?+?+2),?**3+?+H**1)
 --E 191
 
-@
+\end{chunk}
 \subsection{functions concerning the multiplicative cyclic group}
-<<*>>=
+\begin{chunk}{*}
 --S 192 of 350
 order(a)
 --R 
@@ -1970,9 +1970,9 @@ discreteLog(a)
 --R                                                        Type: PositiveInteger
 --E 194
 
-@
+\end{chunk}
 The next one should equal 0
-<<*>>=
+\begin{chunk}{*}
 --S 195 of 350
 g**% - a
 --R 
@@ -1981,9 +1981,9 @@ g**% - a
 --RType: FiniteFieldExtensionByPolynomial(FiniteFieldCyclicGroupExtensionByPolynomial(PrimeField 3,?*?+?+2),?**3+?+H**1)
 --E 195
 
-@
+\end{chunk}
 The next may fail
-<<*>>=
+\begin{chunk}{*}
 --S 196 of 350
 discreteLog(b,a)
 --R 
@@ -1992,9 +1992,9 @@ discreteLog(b,a)
 --R                                          Type: Union(NonNegativeInteger,...)
 --E 196
 
-@
+\end{chunk}
 Special finite field functions
-<<*>>=
+\begin{chunk}{*}
 --S 197 of 350
 extensionDegree()$F
 --R 
@@ -2080,12 +2080,12 @@ for d in divisors extensionDegree()$F repeat
 --R                                                                   Type: Void
 --E 205
 
-@
+\end{chunk}
 End of common finite field demonstration
 \subsection{normal extension of a polynomial extension}
 Get a small prime.
 Get a irreducible polynomial of degree d1 over P
-<<*>>=
+\begin{chunk}{*}
 --S 206 of 350
 f1:=createIrreduciblePoly(d1)$FFPOLY(P)
 --R 
@@ -2103,9 +2103,9 @@ F1:=FFP(P,f1)
 --R                                                                 Type: Domain
 --E 207
 
-@
+\end{chunk}
 Get a normal polynomial of degree d2 over F1
-<<*>>=
+\begin{chunk}{*}
 --S 208 of 350
 f2:=createNormalPoly(d2)$FFPOLY(F1)
 --R 
@@ -2115,9 +2115,9 @@ f2:=createNormalPoly(d2)$FFPOLY(F1)
 --RType: SparseUnivariatePolynomial FiniteFieldExtensionByPolynomial(PrimeField 3,?*?+1)
 --E 208
 
-@
+\end{chunk}
 Construct the field
-<<*>>=
+\begin{chunk}{*}
 --S 209 of 350
 F:=FFNBP(F1,f2)
 --R 
@@ -2128,12 +2128,12 @@ F:=FFNBP(F1,f2)
 --R                                                                 Type: Domain
 --E 209
 
-@
+\end{chunk}
 This field is the same as constructed by F:=FFX(F1,d2)
 \subsection{demonstration of common finite field functions}
 The finite field domain is in variable F
 Take some random elements
-<<*>>=
+\begin{chunk}{*}
 --S 210 of 350
 size()$F
 --R 
@@ -2162,9 +2162,9 @@ b:=index(size()$F quo 7)$F
 --RType: FiniteFieldNormalBasisExtensionByPolynomial(FiniteFieldExtensionByPolynomial(PrimeField 3,?*?+1),?**3+2*?*?+1)
 --E 212
 
-@
+\end{chunk}
 Simple arithmetic
-<<*>>=
+\begin{chunk}{*}
 --S 213 of 350
 a+b
 --R 
@@ -2239,9 +2239,9 @@ g := generator()$F
 --RType: FiniteFieldNormalBasisExtensionByPolynomial(FiniteFieldExtensionByPolynomial(PrimeField 3,?*?+1),?**3+2*?*?+1)
 --E 220
 
-@
+\end{chunk}
 \subsection{functions concerning the multiplicative cyclic group}
-<<*>>=
+\begin{chunk}{*}
 --S 221 of 350
 order(a)
 --R 
@@ -2267,9 +2267,9 @@ discreteLog(a)
 --R                                                        Type: PositiveInteger
 --E 223
 
-@
+\end{chunk}
 The next one should equal 0
-<<*>>=
+\begin{chunk}{*}
 --S 224 of 350
 g**% - a
 --R 
@@ -2278,9 +2278,9 @@ g**% - a
 --RType: FiniteFieldNormalBasisExtensionByPolynomial(FiniteFieldExtensionByPolynomial(PrimeField 3,?*?+1),?**3+2*?*?+1)
 --E 224
 
-@
+\end{chunk}
 The next may fail
-<<*>>=
+\begin{chunk}{*}
 --S 225 of 350
 discreteLog(b,a)
 --R 
@@ -2289,9 +2289,9 @@ discreteLog(b,a)
 --R                                          Type: Union(NonNegativeInteger,...)
 --E 225
 
-@
+\end{chunk}
 \subsection{special finite field functions}
-<<*>>=
+\begin{chunk}{*}
 --S 226 of 350
 extensionDegree()$F
 --R 
@@ -2380,11 +2380,11 @@ for d in divisors extensionDegree()$F repeat
 --R                                                                   Type: Void
 --E 234
 
-@
+\end{chunk}
 End of common finite field demonstration
 \subsection{normal extension of a normal extension}
 Get a normal polynomial of degree d1 over P
-<<*>>=
+\begin{chunk}{*}
 --S 235 of 350
 f1:=createNormalPoly(d1)$FFPOLY(P)
 --R 
@@ -2402,9 +2402,9 @@ F1:=FFNBP(P,f1)
 --R                                                                 Type: Domain
 --E 236
 
-@
+\end{chunk}
 Get a normal polynomial of degree d2 over F1
-<<*>>=
+\begin{chunk}{*}
 --S 237 of 350
 f2:=createNormalPoly(d2)$FFPOLY(F1)
 --R 
@@ -2414,9 +2414,9 @@ f2:=createNormalPoly(d2)$FFPOLY(F1)
 --RType: SparseUnivariatePolynomial FiniteFieldNormalBasisExtensionByPolynomial(PrimeField 3,?*?+2*?+2)
 --E 237
 
-@
+\end{chunk}
 Construct the field
-<<*>>=
+\begin{chunk}{*}
 --S 238 of 350
 F:=FFNBP(F1,f2)
 --R 
@@ -2427,12 +2427,12 @@ F:=FFNBP(F1,f2)
 --R                                                                 Type: Domain
 --E 238
 
-@
+\end{chunk}
 This field is the same as constructed by F:=FFX(F1,d2)
 \subsection{demonstration of common finite field functions}
 The finite field domain is in variable F
 Take some random elements
-<<*>>=
+\begin{chunk}{*}
 --S 239 of 350
 size()$F
 --R 
@@ -2461,9 +2461,9 @@ b:=index(size()$F quo 7)$F
 --RType: FiniteFieldNormalBasisExtensionByPolynomial(FiniteFieldNormalBasisExtensionByPolynomial(PrimeField 3,?*?+2*?+2),?**3+(2*F**q+2*F)*?*?+F**q+F)
 --E 241
 
-@
+\end{chunk}
 Simple arithmetic
-<<*>>=
+\begin{chunk}{*}
 --S 242 of 350
 a+b
 --R 
@@ -2538,9 +2538,9 @@ g := generator()$F
 --RType: FiniteFieldNormalBasisExtensionByPolynomial(FiniteFieldNormalBasisExtensionByPolynomial(PrimeField 3,?*?+2*?+2),?**3+(2*F**q+2*F)*?*?+F**q+F)
 --E 249
 
-@
+\end{chunk}
 \subsection{functions concerning the multiplicative cyclic group}
-<<*>>=
+\begin{chunk}{*}
 --S 250 of 350
 order(a)
 --R 
@@ -2566,9 +2566,9 @@ discreteLog(a)
 --R                                                        Type: PositiveInteger
 --E 252
 
-@
+\end{chunk}
 The next one should equal 0
-<<*>>=
+\begin{chunk}{*}
 --S 253 of 350
 g**% - a
 --R 
@@ -2577,9 +2577,9 @@ g**% - a
 --RType: FiniteFieldNormalBasisExtensionByPolynomial(FiniteFieldNormalBasisExtensionByPolynomial(PrimeField 3,?*?+2*?+2),?**3+(2*F**q+2*F)*?*?+F**q+F)
 --E 253
 
-@
+\end{chunk}
 The next may fail
-<<*>>=
+\begin{chunk}{*}
 --S 254 of 350
 discreteLog(b,a)
 --R 
@@ -2589,9 +2589,9 @@ discreteLog(b,a)
 --R                                                    Type: Union("failed",...)
 --E 254
 
-@
+\end{chunk}
 \subsection{special finite field functions}
-<<*>>=
+\begin{chunk}{*}
 --S 255 of 350
 extensionDegree()$F
 --R 
@@ -2681,11 +2681,11 @@ for d in divisors extensionDegree()$F repeat
 --R                                                                   Type: Void
 --E 263
 
-@
+\end{chunk}
 End of common finite field demonstration
 \subsection{normal extension of a cyclic extension}
 Get primitive polynomial of degree d1 over P
-<<*>>=
+\begin{chunk}{*}
 --S 264 of 350
 f1:=createPrimitivePoly(d1)$FFPOLY(P)
 --R 
@@ -2703,9 +2703,9 @@ F1:=FFCGP(P,f1)
 --R                                                                 Type: Domain
 --E 265
 
-@
+\end{chunk}
 Get a normal polynomial of degree d2 over F1
-<<*>>=
+\begin{chunk}{*}
 --S 266 of 350
 f2:=createNormalPoly(d2)$FFPOLY(F1)
 --R 
@@ -2715,9 +2715,9 @@ f2:=createNormalPoly(d2)$FFPOLY(F1)
 --RType: SparseUnivariatePolynomial FiniteFieldCyclicGroupExtensionByPolynomial(PrimeField 3,?*?+?+2)
 --E 266
 
-@
+\end{chunk}
 Construct the field
-<<*>>=
+\begin{chunk}{*}
 --S 267 of 350
 F:=FFNBP(F1,f2)
 --R 
@@ -2728,12 +2728,12 @@ F:=FFNBP(F1,f2)
 --R                                                                 Type: Domain
 --E 267
 
-@
+\end{chunk}
 This field is the same as constructed by F:=FFX(F1,d2)
 \subsection{demonstration of common finite field functions}
 The finite field domain is in variable F.
 Take some random elements
-<<*>>=
+\begin{chunk}{*}
 --S 268 of 350
 size()$F
 --R 
@@ -2762,9 +2762,9 @@ b:=index(size()$F quo 7)$F
 --RType: FiniteFieldNormalBasisExtensionByPolynomial(FiniteFieldCyclicGroupExtensionByPolynomial(PrimeField 3,?*?+?+2),?**3+H**4*?*?+1)
 --E 270
 
-@
+\end{chunk}
 Simple arithmetic
-<<*>>=
+\begin{chunk}{*}
 --S 271 of 350
 a+b
 --R 
@@ -2839,9 +2839,9 @@ g := generator()$F
 --RType: FiniteFieldNormalBasisExtensionByPolynomial(FiniteFieldCyclicGroupExtensionByPolynomial(PrimeField 3,?*?+?+2),?**3+H**4*?*?+1)
 --E 278
 
-@
+\end{chunk}
 \subsection{functions concerning the multiplicative cyclic group}
-<<*>>=
+\begin{chunk}{*}
 --S 279 of 350
 order(a)
 --R 
@@ -2867,9 +2867,9 @@ discreteLog(a)
 --R                                                        Type: PositiveInteger
 --E 281
 
-@
+\end{chunk}
 The next one should equal 0
-<<*>>=
+\begin{chunk}{*}
 --S 282 of 350
 g**% - a
 --R 
@@ -2878,9 +2878,9 @@ g**% - a
 --RType: FiniteFieldNormalBasisExtensionByPolynomial(FiniteFieldCyclicGroupExtensionByPolynomial(PrimeField 3,?*?+?+2),?**3+H**4*?*?+1)
 --E 282
 
-@
+\end{chunk}
 The next may fail
-<<*>>=
+\begin{chunk}{*}
 --S 283 of 350
 discreteLog(b,a)
 --R 
@@ -2889,9 +2889,9 @@ discreteLog(b,a)
 --R                                          Type: Union(NonNegativeInteger,...)
 --E 283
 
-@
+\end{chunk}
 \subsection{special finite field functions}
-<<*>>=
+\begin{chunk}{*}
 --S 284 of 350
 extensionDegree()$F
 --R 
@@ -2981,10 +2981,10 @@ for d in divisors extensionDegree()$F repeat
 --R                                                                   Type: Void
 --E 292
 
-@
+\end{chunk}
 End of common finite field demonstration
 \subsection{finite field homomorphisms demonstration}
-<<*>>=
+\begin{chunk}{*}
 --S 293 of 350
 P3:= PF 3
 --R 
@@ -2993,9 +2993,9 @@ P3:= PF 3
 --R                                                                 Type: Domain
 --E 293
 
-@
+\end{chunk}
 Create a irreducible, a normal and a primitive polynomial
-<<*>>=
+\begin{chunk}{*}
 --S 294 of 350
 fi:=createIrreduciblePoly(6)$FFPOLY(P3)
 --R 
@@ -3023,9 +3023,9 @@ fp:=createPrimitivePoly(3)$FFPOLY(P3)
 --R                                Type: SparseUnivariatePolynomial PrimeField 3
 --E 296
 
-@
+\end{chunk}
 \subsection{coercions between field with the same defining polynomials}
-<<*>>=
+\begin{chunk}{*}
 --S 297 of 350
 F:=FFP(P3,fn)
 --R 
@@ -3100,9 +3100,9 @@ coerce(cn)$FFHOM(F,P3,N)
 --R      Type: FiniteFieldExtensionByPolynomial(PrimeField 3,?**6+2*?**5+?**3+1)
 --E 304
 
-@
+\end{chunk}
 Should be the same as
-<<*>>=
+\begin{chunk}{*}
 --S 305 of 350
 c:=a*b
 --R 
@@ -3112,9 +3112,9 @@ c:=a*b
 --R      Type: FiniteFieldExtensionByPolynomial(PrimeField 3,?**6+2*?**5+?**3+1)
 --E 305
 
-@
+\end{chunk}
 \subsection{coercion between fields with different extension polynomials}
-<<*>>=
+\begin{chunk}{*}
 --S 306 of 350
 F:=FFP(P3,fi)
 --R 
@@ -3189,9 +3189,9 @@ coerce(cn)$FFHOM(F,P3,N)
 --R                Type: FiniteFieldExtensionByPolynomial(PrimeField 3,?**6+?+2)
 --E 313
 
-@
+\end{chunk}
 Should be the same as
-<<*>>=
+\begin{chunk}{*}
 --S 314 of 350
 c:=a*b
 --R 
@@ -3201,9 +3201,9 @@ c:=a*b
 --R                Type: FiniteFieldExtensionByPolynomial(PrimeField 3,?**6+?+2)
 --E 314
 
-@
+\end{chunk}
 \subsection{coercion between fields of different extension degree}
-<<*>>=
+\begin{chunk}{*}
 --S 315 of 350
 C:=FFCGP(P3,fp)
 --R 
@@ -3278,9 +3278,9 @@ coerce(cn)$FFHOM(C,P3,N)
 --R   Type: FiniteFieldCyclicGroupExtensionByPolynomial(PrimeField 3,?**3+2*?+1)
 --E 322
 
-@
+\end{chunk}
 Should be the same as
-<<*>>=
+\begin{chunk}{*}
 --S 323 of 350
 c:=a+b
 --R 
@@ -3290,9 +3290,9 @@ c:=a+b
 --R   Type: FiniteFieldCyclicGroupExtensionByPolynomial(PrimeField 3,?**3+2*?+1)
 --E 323
 
-@
+\end{chunk}
 \subsection{comparison of computation times for arithmetic operations}
-<<*>>=
+\begin{chunk}{*}
 --S 324 of 350
 f:=createPrimitiveNormalPoly(5)$FFPOLY(P3)
 --R 
@@ -3384,9 +3384,9 @@ bn:=coerce(bp)$FFHOM(FN,P3,FP)
 --RType: FiniteFieldNormalBasisExtensionByPolynomial(PrimeField 3,?**5+2*?**4+1)
 --E 333
 
-@
+\end{chunk}
 The next are to initialize the fields
-<<*>>=
+\begin{chunk}{*}
 --S 334 of 350
 ac+bc
 --R 
@@ -3406,10 +3406,10 @@ an*bn
 --RType: FiniteFieldNormalBasisExtensionByPolynomial(PrimeField 3,?**5+2*?**4+1)
 --E 335
 
-@
+\end{chunk}
 Now we can compare
 \subsection{Addition}
-<<*>>=
+\begin{chunk}{*}
 --S 336 of 350
 ap+bp
 --R 
@@ -3438,9 +3438,9 @@ ac+bc
 --RType: FiniteFieldCyclicGroupExtensionByPolynomial(PrimeField 3,?**5+2*?**4+1)
 --E 338
 
-@
+\end{chunk}
 \subsection{Multiplication}
-<<*>>=
+\begin{chunk}{*}
 --S 339 of 350
 ap*bp
 --R 
@@ -3469,9 +3469,9 @@ ac*bc
 --RType: FiniteFieldCyclicGroupExtensionByPolynomial(PrimeField 3,?**5+2*?**4+1)
 --E 341
 
-@
+\end{chunk}
 \subsection{discrete logarithms}
-<<*>>=
+\begin{chunk}{*}
 --S 342 of 350
 discreteLog(ap)
 --R 
@@ -3496,9 +3496,9 @@ discreteLog(ac)
 --R                                                        Type: PositiveInteger
 --E 344
 
-@
+\end{chunk}
 \subsection{Exponentiation}
-<<*>>=
+\begin{chunk}{*}
 --S 345 of 350
 ap**1234567
 --R 
@@ -3527,9 +3527,9 @@ ac**1234567
 --RType: FiniteFieldCyclicGroupExtensionByPolynomial(PrimeField 3,?**5+2*?**4+1)
 --E 347
 
-@
+\end{chunk}
 \subsection{computations between elements of field of different representation}
-<<*>>=
+\begin{chunk}{*}
 --S 348 of 350
 ap+bc
 --R 
@@ -3559,7 +3559,7 @@ an+bp
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/fferr.input.pamphlet b/src/input/fferr.input.pamphlet
index 607b253..fc10f84 100644
--- a/src/input/fferr.input.pamphlet
+++ b/src/input/fferr.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool fferr.output
 )set message test on
@@ -84,7 +84,7 @@ createPrimitivePoly(3)$FFPOLY(pf)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/ffrac.input.pamphlet b/src/input/ffrac.input.pamphlet
index 346c627..b2b1a97 100644
--- a/src/input/ffrac.input.pamphlet
+++ b/src/input/ffrac.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 
 )lib ffrac
 
@@ -55,7 +55,7 @@ f2 :: Float
 
 output "End of tests"
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/ffx72.input.pamphlet b/src/input/ffx72.input.pamphlet
index 563181b..141ecb9 100644
--- a/src/input/ffx72.input.pamphlet
+++ b/src/input/ffx72.input.pamphlet
@@ -10,22 +10,22 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool ffx72.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 \section{Finite Fields}
 This file demonstrates some calculations with the finite field of
 49 elements. It is built as a degree 2 extension of the Galois
 field with 7 elements.
-<<*>>=
+\begin{chunk}{*}
 
 --S 1 of 13
 gf72 := FF(7, 2)
@@ -35,9 +35,9 @@ gf72 := FF(7, 2)
 --R                                                                 Type: Domain
 --E 1
 
-@
+\end{chunk}
 $x^2+1$ is irreducible over PF 7
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 13
 u: UP(x,PF 7) := x**2 + 1
 --R 
@@ -56,9 +56,9 @@ factor u
 --R                          Type: Factored UnivariatePolynomial(x,PrimeField 7)
 --E 3 
 
-@
+\end{chunk}
 But factors over FF(PF 7, 2)
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 13
 u2 : UP(x,gf72) := u
 --R 
@@ -76,11 +76,11 @@ factor u2
 --R                      Type: Factored UnivariatePolynomial(x,FiniteField(7,2))
 --E 5
 
-@ 
+\end{chunk} 
 The following is the irreducible polynomial used in the representation
 of GF(7**2) over PF 7. It will be the same every time this field is
 used.
-<<*>>=
+\begin{chunk}{*}
 --S 6 of 13
 definingPolynomial()$gf72
 --R 
@@ -90,9 +90,9 @@ definingPolynomial()$gf72
 --R                                Type: SparseUnivariatePolynomial PrimeField 7
 --E 6
 
-@ 
+\end{chunk} 
 e is a randomly chosen element
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 13
 e := index(size()$gf72 quo 3)$gf72
 --R 
@@ -117,10 +117,10 @@ trace e
 --R                                                           Type: PrimeField 7
 --E 9
 
-@ 
+\end{chunk} 
 The order of an element is the minimum positive integer to which
 it can be raised to yield 1.
-<<*>>=
+\begin{chunk}{*}
 --S 10 of 13
 order e
 --R 
@@ -129,9 +129,9 @@ order e
 --R                                                        Type: PositiveInteger
 --E 10
 
-@ 
+\end{chunk} 
 We can display all the nonzero elements in the field
-<<*>>=
+\begin{chunk}{*}
 --S 11 of 13
 allElts := [index(i :: PI)$gf72 for i in 1..48]
 --R 
@@ -146,9 +146,9 @@ allElts := [index(i :: PI)$gf72 for i in 1..48]
 --R                                                  Type: List FiniteField(7,2)
 --E 11
 
-@ 
+\end{chunk} 
 We can sum over them
-<<*>>=
+\begin{chunk}{*}
 --S 12 of 13
 reduce(+,allElts)
 --R 
@@ -156,10 +156,10 @@ reduce(+,allElts)
 --R   (12)  0
 --R                                                       Type: FiniteField(7,2)
 --E 12 
-@
+\end{chunk}
 And we can determine the order of each of them.  Each element of
 order 48 generates the multiplicative group of non-zero elements.
-<<*>>=
+\begin{chunk}{*}
 --S 13 of 13
 [order e for e in allElts]
 --R 
@@ -173,7 +173,7 @@ order 48 generates the multiplicative group of non-zero elements.
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/fib.input.pamphlet b/src/input/fib.input.pamphlet
index 1fd5de6..567ab89 100644
--- a/src/input/fib.input.pamphlet
+++ b/src/input/fib.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool fib.output
 )set message test on
@@ -46,7 +46,7 @@ fibs == [fib i for i in 0..]
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/file.input.pamphlet b/src/input/file.input.pamphlet
index ddd7e00..f16647c 100644
--- a/src/input/file.input.pamphlet
+++ b/src/input/file.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool file.output
 )set message test on
@@ -119,7 +119,7 @@ close! ifile
 )system rm /tmp/jazz1
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/fixed.input.pamphlet b/src/input/fixed.input.pamphlet
index 35c6a1c..233144e 100644
--- a/src/input/fixed.input.pamphlet
+++ b/src/input/fixed.input.pamphlet
@@ -13,19 +13,19 @@
 Copyright The Numerical Algorithms Group Limited 1996.
 
 daly/10/06/92
-<<*>>=
+\begin{chunk}{*}
 )spool fixed.output
 )set message test on
 )set message auto off
 )set break resume
 )set expose add constructor SquareMatrix
 
-@
+\end{chunk}
 Something is wrong with the integration of serices, when the
 coeffiennts are not constants. while the series is mathematically
 correct, this is not what one expects as the taylor series, which
 does not exist. 
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 1 of 267
@@ -44,9 +44,9 @@ t1:=series(x/(x+log(x)))
 --R                   Type: GeneralUnivariatePowerSeries(Expression Integer,x,0)
 --E
 
-@
+\end{chunk}
 Here integrate is treating log(x) as a constant, which is incorrect.
-<<*>>=
+\begin{chunk}{*}
 
 --S 2 of 267
 integrate(t1)
@@ -60,9 +60,9 @@ integrate(t1)
 --R
 --E
 
-@
+\end{chunk}
 bmt/10/19/92 integrate problem -- serious, wrong answer
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 3 of 267
@@ -73,9 +73,9 @@ t1:=2*sin(t)*sqrt(1+cos(t))
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 Correct answer is \[\frac{2\sin(t)}{\sqrt{1+\cos(t)}}\]
-<<*>>=
+\begin{chunk}{*}
 
 --S 4 of 267
 integrate(t1,t)
@@ -87,9 +87,9 @@ integrate(t1,t)
 --R                                          Type: Union(Expression Integer,...)
 --E
 
-@
+\end{chunk}
 bmt/10/20/92 multiple complex in type tower
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 5 of 267
@@ -97,9 +97,9 @@ n:Complex ?
 --R                                                                   Type: Void
 --E
 
-@
+\end{chunk}
 An invalid type. can't have 2 complex constructors in a tower
-<<*>>=
+\begin{chunk}{*}
 
 --S 6 of 267
 n:=x/y+%i
@@ -110,14 +110,14 @@ n:=x/y+%i
 --R                                    Type: Complex Fraction Polynomial Integer
 --E
 
-@
+\end{chunk}
 grabm/09/28/92 coercion bug
 
 This coercion must carefully check whether there is a symbol
 among the kernels which is equal to an indeterminate of the
 polynomial ring, and not simply considering every expression
 as a constant
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 7 of 267
@@ -143,7 +143,7 @@ degree t1
 --R                                    Type: DirectProduct(2,NonNegativeInteger)
 --E
 
-@
+\end{chunk}
 bmt/10/26/92 wrong answer
 
 I believe this problem simplifies to
@@ -154,7 +154,7 @@ The answer is computed with respect to the result returned by rootPoly
 but the kernel which is substituted for ``y'' corresponds to radPoly.
 
 The answer should be should be \[\frac{2*\sin(t)}{\sqrt{1+\cos(t)}}\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 10 of 267
@@ -167,11 +167,11 @@ integrate(sqrt(1+cos(x)),x)
 --R                                          Type: Union(Expression Integer,...)
 --E
 
-@
+\end{chunk}
 bmt/09/28/92 bug in ITRIGMNP
 
 gives: Cannot convert kernel to gaussian function
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 11 of 267
@@ -184,7 +184,7 @@ integrate(exp(x**2),x)
 --R                                          Type: Union(Expression Integer,...)
 --E
 
-@
+\end{chunk}
 themos/11/06/92 integration bug
 
 I suggest changing line 11 of limitedLogs in INTTR from:
@@ -197,7 +197,7 @@ to
            1 + reduce(max,[degree(u.contrib) for u in l1],0)$List(N))
 \end{verbatim}
 Do you agree, thus max/ empty list would return 0.
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 12 of 267
@@ -246,10 +246,10 @@ integrate(g,x)
 --R                                          Type: Union(Expression Integer,...)
 --E
 
-@
+\end{chunk}
 bmt/11/17/92 interpreter resolve problem\\
 Says cannot find an appropriate *
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 16 of 267
@@ -262,9 +262,9 @@ Says cannot find an appropriate *
 --R                                             Type: Expression Complex Integer
 --E
 
-@
+\end{chunk}
 tpd/09/22/92 this generates extra brackets
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 17 of 267
@@ -283,7 +283,7 @@ foo
 
 msq := Matrix SquareMatrix(2,POLY INT)
 
-@
+\end{chunk}
 tpd/09/24/92 matrix multiplication appears broken in the product.\\
 fails with
 \begin{verbatim}
@@ -302,7 +302,7 @@ e.g.:
 )co foo
 \end{verbatim}
 comment: this works in version 2
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 19 of 267
@@ -516,14 +516,14 @@ mm*m
 --R                              Type: Matrix SquareMatrix(2,Polynomial Integer)
 --E
 
-@
+\end{chunk}
 tpd/09/25/92 new equation.spad from johannes grabmeier
 
 Furthermore, we have function to put 0 or 1 on one side
 and factor the left hand side, after the right hand side
 is 0 and we have an IntegralDomain.\\
 Johannes
-<<*>>=
+\begin{chunk}{*}
 )clear all
 --S 31 of 267
 eq1 := (-6*x**3+13*x**2+4)=(-x**4+12*x)
@@ -625,7 +625,7 @@ t8:=inv (eq :: EQ FRAC POLY INT)
 --R                                   Type: Equation Fraction Polynomial Integer
 --E
 
-@
+\end{chunk}
 bmt/09/29/92 coercion bug\\
 fails with:
 \begin{verbatim}
@@ -647,7 +647,7 @@ Daly Bug
 works fine at the top of this file but not here. Which means that
 some property is not being cleared properly. The symbol ``p'' does get
 properly declared despite the error message. --Tim
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 43 of 267
@@ -681,9 +681,9 @@ myNextPrime(x,n)==nextPrime(x)$PRIMES(INT)
 --R                                                                   Type: Void
 --E
 
-@
+\end{chunk}
 Runs forever due to algebra bug in handling leading coefficients
-<<*>>=
+\begin{chunk}{*}
 --S 48 of 267
 modularGcd([p1,p2])$InnerModularGcd(INT,UP(x,INT),67108859,myNextPrime)
 --R   Compiling function myNextPrime with type (Integer,NonNegativeInteger
@@ -694,9 +694,9 @@ modularGcd([p1,p2])$InnerModularGcd(INT,UP(x,INT),67108859,myNextPrime)
 --R                                        Type: UnivariatePolynomial(x,Integer)
 --E
 
-@
+\end{chunk}
 dewar/10/02/92 actually, this was never wrong
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 49 of 267
@@ -706,9 +706,9 @@ numeric(%e ** %pi)
 --R                                                                  Type: Float
 --E
 
-@
+\end{chunk}
 themos/10/07/92
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 50 of 267
@@ -811,9 +811,9 @@ solve(deqz,y,z=0,[1]) --bug
 --R                                          Type: Union(Expression Integer,...)
 --E
 
-@
+\end{chunk}
 themos/10/07/92 equation
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 60 of 267
@@ -833,9 +833,9 @@ deq:=D(y(x),x)+x**2=(y x)/x-(y x)**2
 --R                                            Type: Equation Expression Integer
 --E
 
-@
+\end{chunk}
 bmt/10/08/92 laplace
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 62 of 267
@@ -847,13 +847,13 @@ laplace(exp(-x**3)*x**7,x,s)
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 bmt/09/30/92 nonlinear ODE 
 
 Any hope of solving the following which appeared in Barry
 Simon's computer algebra test suite:
 (Apparently it has Bernoulli form)
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 63 of 267
@@ -883,9 +883,9 @@ solve(%,y,x)
 --R                                          Type: Union(Expression Integer,...)
 --E
 
-@
+\end{chunk}
 sit/10/08/92 factor bug
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 66 of 267
@@ -895,9 +895,9 @@ p:POLY FRAC INT := 3*(x+1)
 --R                                            Type: Polynomial Fraction Integer
 --E
 
-@
+\end{chunk}
 Is wrong (missing factor of 3).
-<<*>>=
+\begin{chunk}{*}
 
 --S 67 of 267
 factor(p)**2 
@@ -907,7 +907,7 @@ factor(p)**2
 --R                                   Type: Factored Polynomial Fraction Integer
 --E
 
-@
+\end{chunk}
 henderson/10/08/92 
 
 TextFile cliams that the operator readLineIfCan! returns ``failed'' when
@@ -920,7 +920,7 @@ not very useful:
    You are being returned to the top level of the interpreter.
 \end{verbatim}
 
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 68 of 267
@@ -978,9 +978,9 @@ close!(fin)
 --RValue = 0
 --E
 
-@
+\end{chunk}
 bmt/10/08/92 factoring over SAEs
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 76 of 267
@@ -1010,7 +1010,7 @@ factor t1
 --RType: Factored Polynomial SimpleAlgebraicExtension(Fraction Integer,UnivariatePolynomial(a,Fraction Integer),a*a+1)
 --E
 
-@
+\end{chunk}
 miller/10/09/92 local vars in types
 
 Fixed (Victor's) bug with using local variables in type expressions
@@ -1021,7 +1021,7 @@ The function changed was getAndEvalConstructorArgument from i-spec1.boot.
 themos/10/19/92
 
 Do this in a virgin system
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 )set expose add constructor SquareMatrix
@@ -1073,9 +1073,9 @@ l: List(S2) := append(cons(V2+h*I2,_
 --R                       Type: List SquareMatrix(2,Fraction Polynomial Integer)
 --E
 
-@
+\end{chunk}
 Does this give an error of deleteAssoc not defined ??
-<<*>>=
+\begin{chunk}{*}
 --S 84 of 267
 A: SquareMatrix(m, S2) := diagonalMatrix(l)
 --R
@@ -1105,7 +1105,7 @@ A: SquareMatrix(m, S2) := diagonalMatrix(l)
 --R            Type: SquareMatrix(5,SquareMatrix(2,Fraction Polynomial Integer))
 --E
 
-@
+\end{chunk}
 load definition of deleteAssoc
 \begin{verbatim}
 )li (load "/spad/obj/rios/interp/c-util")
@@ -1117,7 +1117,7 @@ now , can print.
 bmt/10/19/92 squareFree bug
 
 Has an extra factor of 2.
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 85 of 267
@@ -1128,9 +1128,9 @@ squareFree((2*x*y+1)*(x*y+1)**2)
 --R                                            Type: Factored Polynomial Integer
 --E
 
-@
+\end{chunk}
 bmt/10/19/92 division by zero error
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 86 of 267
@@ -1142,11 +1142,11 @@ limit(atan(1/sin(x)),x=0)
 --RType: Union(Record(leftHandLimit: Union(OrderedCompletion Expression Integer,"failed"),rightHandLimit: Union(OrderedCompletion Expression Integer,"failed")),...)
 --E
 
-@
+\end{chunk}
 bmt/10/19/92 limit problem
 
 The left and right hand limits don't agree
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 87 of 267
@@ -1167,9 +1167,9 @@ limit(atan(1/(cos(x)+e)),x=acos(-e))
 --RType: Union(Record(leftHandLimit: Union(OrderedCompletion Expression Integer,"failed"),rightHandLimit: Union(OrderedCompletion Expression Integer,"failed")),...)
 --E
 
-@
+\end{chunk}
 grabmeier/10/19/92 unable to compute the determinant of an 8x8
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 89 of 267
@@ -2092,9 +2092,9 @@ gdd4 := determinant mTV4
 --R                                            Type: Fraction Polynomial Integer
 --E
 
-@
+\end{chunk}
 sutor/09/28/92 operator bug?
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 96 of 267
@@ -2156,9 +2156,9 @@ L 15
 --R                                            Type: Polynomial Fraction Integer
 --E
 
-@
+\end{chunk}
 Used to fail on this line
-<<*>>=
+\begin{chunk}{*}
 
 --S 101 of 267
 E 15
@@ -2170,9 +2170,9 @@ E 15
 --R                                   Type: Operator Polynomial Fraction Integer
 --E
 
-@
+\end{chunk}
 bmt/10/12/92 EFSTRUC recursion problem
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 102 of 267
@@ -2187,11 +2187,11 @@ bug:=(1+x**(1/4))**(1/3)/(x**(1/2))
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 Gives a value stack overflow
 
 Seems to go into infinite recursion in rischNormalize
-<<*>>=
+\begin{chunk}{*}
 --S 103 of 267
 integrate(bug,x)
 --R
@@ -2203,11 +2203,11 @@ integrate(bug,x)
 --R                                          Type: Union(Expression Integer,...)
 --E
 
-@
+\end{chunk}
 james/10/28/92 coerce bug
 
 Improper character in Roman numeral: G
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 104 of 267
@@ -2223,11 +2223,11 @@ g::ROMAN
 --R
 --E
 
-@
+\end{chunk}
 grabm/10/28/92 runs forever
 
 factor is quick but sqrt runs forever
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 105 of 267
@@ -2246,9 +2246,9 @@ sqrt 1068303355883998767544567663620885466990173600
 --R                                                        Type: AlgebraicNumber
 --E
 
-@
+\end{chunk}
 themos/11/05/92 fortran output bug
-<<*>>=
+\begin{chunk}{*}
 )clear all
 --      REAL T7,T6,T5,T4,T3,T2,T1
 --      T1=x*x
@@ -2299,7 +2299,7 @@ a2+D(a2,x)
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 grabm/11/05/92 
 
 I believe the ``bug'' is that the interpreter is converting gb which is
@@ -2312,7 +2312,7 @@ the correct ordering).
 
 Expressing a symmetric functions in terms of elementary symm. functions
 working in POLY INT is o.k.
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 110 of 267
@@ -2404,7 +2404,7 @@ normalForm(x1**2+x2**2+x3**2,gb)
 --R                                            Type: Polynomial Fraction Integer
 --E
 
-@
+\end{chunk}
 bmt/11/17/92 Ifintegrate
 
 It seems that one cannot simply parametrize reducible curves.
@@ -2418,7 +2418,7 @@ $y=sqrt(a^2x^2+bx+c)$ whenever that is a perfect square.
 (then we don't even need to do any back subsitution or change to dx).
 
 For another example, perhaps due to the same essential difficulty try
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 121 of 267
@@ -2435,7 +2435,7 @@ integrate(normalize(sqrt(1+cos(x)),x),x)
 --R                                          Type: Union(Expression Integer,...)
 --E
 
-@
+\end{chunk}
 This gets a non-invertible error
 
 I have fixed integrate(sqrt(1+cos(x)),x) and
@@ -2448,7 +2448,7 @@ used to give error:
 \begin{verbatim}
   No identity element for reduce of empty list using operation max
 \end{verbatim}
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 122 of 267
@@ -2461,7 +2461,7 @@ integrate(((-x-1)*log((x**2+x))**2+2*log(x))/(x+1),x)
 --R                                          Type: Union(Expression Integer,...)
 --E
 
-@
+\end{chunk}
 dewar/02/15/93
 
 \begin{verbatim}
@@ -2472,7 +2472,7 @@ dewar/02/15/93
 This is a bug in old style union handling, this style of unions
 will become obsolete, so the suggested fix is to use tagged unions instead:
 
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 123 of 267
@@ -2496,7 +2496,7 @@ list t2
 --R                            Type: List Union(s: Symbol,p: Polynomial Integer)
 --E
 
-@
+\end{chunk}
 grabm/03/04/93 parser bug? not for system commands
 \begin{verbatim}
 )clear all
@@ -2507,7 +2507,7 @@ grabm/03/04/93 parser bug? not for system commands
 \end{verbatim}
 
 bronstein/03/08/93 wrong particular solution
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 126 of 267
@@ -2548,7 +2548,7 @@ solve(eq,I,x)
 --RType: Union(Record(particular: Expression Integer,basis: List Expression Integer),...)
 --E
 
-@
+\end{chunk}
 
 dewar/03/16/93 bug writing backslash to files
 
@@ -2565,7 +2565,7 @@ instead of lines of lisp strings, use:
 \end{verbatim}
 then you will get a file of literal strings with no string delimiters and
 no escape characters.
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 130 of 267
@@ -2575,9 +2575,9 @@ ofile: File String := open("/tmp/test","output")
 --R                                                            Type: File String
 --E
 
-@
+\end{chunk}
 This writes ``\verb|\\\\test|'' but should write ``\verb|\\test|''
-<<*>>=
+\begin{chunk}{*}
 
 --S 131 of 267
 write!(ofile,"\\test"::String)
@@ -2593,14 +2593,14 @@ close! ofile
 --R                                                            Type: File String
 --E
 
-@
+\end{chunk}
 
 themos/04/07/93 this sometimes fails
 
 Thanks for tracing down the problem. Basically the lines for monicizing
 the result need to be done before we try to 
 retract back from the algebraic extension.
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 133 of 267
@@ -2619,14 +2619,14 @@ factor pol
 --R       Type: Factored DistributedMultivariatePolynomial([x,y,z],PrimeField 2)
 --E
 
-@
+\end{chunk}
 williamson/04/21/93
 
 I ran into some problems when factoring polynomials over number fields.
 Evidently the interpretor doesn't choose the correct function 'factor'.
 It uses a function from MULTFACT, when it should be using a function from
 SAEFACT. 
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 135 of 267
@@ -2661,9 +2661,9 @@ q : UP('x,sae) := x**5 - 1
 --RType: UnivariatePolynomial(x,SimpleAlgebraicExtension(Fraction Integer,UnivariatePolynomial(w,Fraction Integer),w**4+w**3+w*w+w+1))
 --E
 
-@
+\end{chunk}
 Used to report: x**5-1 
-<<*>>=
+\begin{chunk}{*}
 --S 139 of 267
 factor q 
 --R
@@ -2691,7 +2691,7 @@ factor(q)$saefact
 --RType: Factored UnivariatePolynomial(x,SimpleAlgebraicExtension(Fraction Integer,UnivariatePolynomial(w,Fraction Integer),w**4+w**3+w*w+w+1))
 --E
 
-@
+\end{chunk}
 
 grabm/04/30/93
 
@@ -2703,7 +2703,7 @@ third line of intgroup to be:
 and then recompile RADIX
 
 Results in 10 and not A
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 142 of 267
@@ -2713,11 +2713,11 @@ Results in 10 and not A
 --R                                                      Type: RadixExpansion 16
 --E
 
-@
+\end{chunk}
 bronstei@inf.ethz.ch (manuel bronstein)
 
 Used to return x, now returns 1
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 143 of 267
@@ -2734,10 +2734,10 @@ r x
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 ADK@scri.fsu.edu (tony kennedy)
 
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 145 of 267
@@ -2756,11 +2756,11 @@ t1**2
 --R                                                       Type: Factored Integer
 --E
 
-@
+\end{chunk}
 bronstei@inf.ethz.ch (manuel bronstein)
 
 Error: cannot retract nonconstant polynomial
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 147 of 267
@@ -2770,7 +2770,7 @@ complexNumeric(log(sqrt(-3)))
 --R                                                          Type: Complex Float
 --E
 
-@
+\end{chunk}
 quitte@knuth.univ-poitiers.fr/8/15/93 (Claude Quitte)
 
 Why is it impossible to specify the target/cible types for the
@@ -2806,7 +2806,7 @@ answer (barry):
 Your problem in TEST about specifying target types which are Mapping's
 was a bug in the compiler and has been fixed for Axiom release 2.0.
 
-<<*>>=
+\begin{chunk}{*}
 \begin{verbatim}
 )clear all
 )sys rm -f /tmp/tpd.spad
@@ -2823,7 +2823,7 @@ was a bug in the compiler and has been fixed for Axiom release 2.0.
 )sys rm -f /tmp/tpd.spad
 )sys rm -rf /tmp/TPD.nrlib
 
-@
+\end{chunk}
 bronstei@inf.ethz.ch/10/6/93 (Manuel Bronstein)
 
 Here is algfunc.spad with an old bug fixed: eventh-roots of negative floats
@@ -2836,7 +2836,7 @@ root is odd, or the argument is positive. Here's the new behaviour:
 
 As a side-effect, this fixes the problem with numeric
 (which was instantiating \verb|sqrt(-1)\$EXPR(FLOAT))|.
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 148 of 267
@@ -2870,11 +2870,11 @@ nthRoot(-2::EXPR FLOAT, 4)
 --R                                                       Type: Expression Float
 --E
 
-@
+\end{chunk}
 bronstei@inf.ethz.ch/10/6/93 (Manuel Bronstein)
 
 Here is an updated efstruc.spad where ker2trigs now knows about abs.
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 152 of 267
@@ -2885,7 +2885,7 @@ real abs(4 + %i * 5)
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 bronstei@inf.ethz.ch/10/5/93 (Manuel Bronstein)
 
 Here is again an enhanced elemntry.spad. What happens now is that
@@ -2894,7 +2894,7 @@ Here is again an enhanced elemntry.spad. What happens now is that
 \end{verbatim}
 gets automatically simplifed whenever q is a rational number whose
 denominator is one of  \{1,2,3,4,6\}.
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 153 of 267
@@ -2907,10 +2907,10 @@ exp(5/3*%i*%pi)
 --R                                             Type: Expression Complex Integer
 --E
 
-@
+\end{chunk}
 bronstei@inf.ethz.ch/10/4/93 (Manuel Bronstein),\\
 luczak@nag.com (Richard Luczak)
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 154 of 267
@@ -2930,11 +2930,11 @@ sum((-1)**k * (k+m),k=0..n)
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 bronstei@inf.ethz.ch/10/4/93 (Manuel Bronstein)
 
 Simplifies (abs now checks quotients instead of just retraction to R).
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 156 of 267
@@ -2946,9 +2946,9 @@ abs((1/2)::EXPR(INT))
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 bronstei@inf.ethz.ch/10/4/93 (Manuel Bronstein)
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 157 of 267
@@ -2963,9 +2963,9 @@ integrate(1/(x**2 + %i*a),x)
 --R                                  Type: Union(Expression Complex Integer,...)
 --E
 
-@
+\end{chunk}
 bmt@spadserv.watson.ibm.com/9/28/93 (Barry Trager)
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 158 of 267
@@ -2975,7 +2975,7 @@ limit(1/2**n,n=%plusInfinity)
 --R                        Type: Union(OrderedCompletion Expression Integer,...)
 --E
 
-@
+\end{chunk}
 bronstei@inf.ethz.ch/9/22/93 (Manuel Bronstein)
 
 Here is an update to efstruc.spad that handles complex constants much better.
@@ -2984,7 +2984,7 @@ treated properly by real?, real, imag, and complexForm:
 
 As a result, integrals involving sqrt(-2) etc... are now treated correctly
 (this was the case only for sqrt(-1) with the older version).
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 159 of 267
@@ -3020,7 +3020,7 @@ imag x
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 bronstei@inf.ethz.ch/9/22/93 (Manuel Bronstein)
 \begin{verbatim}
   haha := rule x*x == z
@@ -3036,7 +3036,7 @@ the integer 4 (as 2 squared), so the rewrite chain for the last example is:
  a*a + b*b + c**2 + d*d  --->  z + z + z + z  = 4 * z ---> z * z ---> z
 \end{verbatim}
 Here is a console showing what exactly happens:
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 163 of 267
@@ -3075,9 +3075,9 @@ haha(3*z)
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 To see the whole rewrite chain:
-<<*>>=
+\begin{chunk}{*}
 
 --S 168 of 267
 t1:=a*a + b*b + c**2 + d*d
@@ -3109,7 +3109,7 @@ t4:=applyRules([haha], t3, 1)$APPRULE(INT,INT,EXPR INT)
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 I think it's actually the proper behavior for the pattern matcher. This
 example shows that rules can bite, something Mma users are quite aware about!
 
@@ -3117,7 +3117,7 @@ dewar/9/16/93 (mike dewar)
 
 There's an odd discontinuity about the behaviour of the following function:
 
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 172 of 267
@@ -3181,7 +3181,7 @@ harm(1024)
 --R                                                       Type: Fraction Integer
 --E
 
-@
+\end{chunk}
 williams@inf.ethz.ch/9/1/93 (Clifton Williamson)
 
 We should probably support integrate(%,x) on series types.
@@ -3190,7 +3190,7 @@ x could be either the variable of expansion or a parameter variable.
 We've discussed this before with regard to the function 'differentiate'.
 The technical problem is that ``generalized'' power series may have
 ``coefficients'' involving the series variable:
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 177 of 267
@@ -3209,10 +3209,10 @@ t1:=series(x**x,x=0)
 --R                   Type: GeneralUnivariatePowerSeries(Expression Integer,x,0)
 --E
 
-@
+\end{chunk}
 In this case, as currently implemented, 'differentiate' returns incorrect
 answers:
-<<*>>=
+\begin{chunk}{*}
 
 --S 178 of 267
 differentiate t1
@@ -3222,7 +3222,7 @@ differentiate t1
 
 --E
 
-@
+\end{chunk}
 The solution we discussed (perhaps ``resolution'' is a better word) was to
 create a separate series type for generalized series.  This would be a
 carbon copy of UPXS, except that differentiate(series,variable(series)) and
@@ -3252,7 +3252,7 @@ I thought I had you on this one!  The signature is there (in pscat.spad):
           ++ series variable viewed as an element of the coefficient domain.
 \end{verbatim}
 It certainly works for Laurent series:
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 179 of 267
@@ -3279,9 +3279,9 @@ approximate(t1,3)
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 But, unfortunately, I never implemented it for Puiseux series:
-<<*>>=
+\begin{chunk}{*}
 
 --S 181 of 267
 t2:=puiseux(cos(a+x)/x,x=0)
@@ -3343,7 +3343,7 @@ approximate(t1,7)
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 bronstei@inf.ethz.ch/10/6/93 (manuel bronstein)
 
 Here is algfunc.spad with an old bug fixed: eventh-roots of negative floats
@@ -3353,7 +3353,7 @@ message since the sqrt from FLOAT was called.
 I have now fixed iroot from AF(R,)
 to call the sqrt from R only if either R is algebraically closed, or the
 root is odd, or the argument is positive. Here's the new behaviour:
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 186 of 267
@@ -3386,7 +3386,7 @@ nthRoot(-2::EXPR FLOAT, 4)
 --R                                                       Type: Expression Float
 --E
 
-@
+\end{chunk}
 As a side-effect, this fixes the problem with numeric
 (which was instantiating sqrt(-1)\$EXPR(FLOAT)).
 
@@ -3434,7 +3434,7 @@ jhd@maths.bath.ac.uk/8/15/93 James Davenport
 \end{verbatim}
 is still fairly ugly.
 
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 190 of 267
@@ -3454,12 +3454,12 @@ integrate(1/(x*(log(x)**2+a**2-1)),x)
 --R                                     Type: Union(List Expression Integer,...)
 --E
 
-@
+\end{chunk}
 bronstei@inf.ethz.ch/8/9/93 (manuel bronstein)
 
 Here is efstruc.spad with a change to normalize so that
 this now returns  2**(1/4) ** 2 + 2**(1/4)
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 191 of 267
@@ -3470,14 +3470,14 @@ normalize(2**(1/2) + 2**(1/4))
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 satoshi@yktvmv.vnet.ibm.com/8/7/93 satoshi hamaguchi
 
 In axiom, both of these yield a warning ``potentialPole''.
 If I use ``noPole'' they give the right answer.
 Isn't this a bug?
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 912 of 267
@@ -3494,12 +3494,12 @@ integrate(log(x),x=1..2)
 --R                    Type: Union(f1: OrderedCompletion Expression Integer,...)
 --E
 
-@
+\end{chunk}
 
 bronstei@inf.ethz.ch/8/5/93 (manuel bronstein)
 
 This will return 2**(5/6).
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 194 of 267
@@ -3510,9 +3510,9 @@ simplify(2**(1/3)*2**(1/2)) --
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 bronstei@inf.ethz.ch/8/4/93 (manuel bronstein)
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 195 of 267
@@ -3528,11 +3528,11 @@ integrate(1/sqrt(1+cos(x)), x)
 --R                                          Type: Union(Expression Integer,...)
 --E
 
-@
+\end{chunk}
 bronstei@inf.ethz.ch/8/4/93 (manuel bronstein)
 
 This used to be division by 0 error
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 196 of 267
@@ -3544,10 +3544,10 @@ normalize atan(cos(x)/sin(x))
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 bronstei@inf.ethz.ch/8/4/93 (manuel bronstein)
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 197 of 267
@@ -3566,10 +3566,10 @@ a := 2**(1/6)
 --R                                                   Type: List AlgebraicNumber
 --E
 
-@
+\end{chunk}
 
 bronstei@inf.ethz.ch/8/4/93 (manuel bronstein)
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 199 of 267
@@ -3603,9 +3603,9 @@ integrate(eval(int,a=1),u)
 --R                                          Type: Union(Expression Integer,...)
 --E
 
-@
+\end{chunk}
 Runs forever?
-<<*>>=
+\begin{chunk}{*}
 --S 201 of 267
 integrate(eval(int,a=sqrt(-1)),u)
 --R
@@ -3650,9 +3650,9 @@ integrate(eval(int,a=sqrt(-1)),u)
 --R                                          Type: Union(Expression Integer,...)
 --E
 
-@
+\end{chunk}
 Dies after a long time with an elt index error
-<<*>>=
+\begin{chunk}{*}
 --S 202 of 267
 integrate(eval(int,a=1)*(-1)**(1/4),u)
 --R
@@ -3691,9 +3691,9 @@ integrate(eval(int,a=1)*(-1)**(1/4),u)
 --R                                          Type: Union(Expression Integer,...)
 --E
 
-@
+\end{chunk}
 bronstei@inf.ethz.ch/8/4/93 (manuel bronstein)
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 203 of 267
@@ -3716,9 +3716,9 @@ integrate(x/t1,x)
 --R                                          Type: Union(Expression Integer,...)
 --E
 
-@
+\end{chunk}
 bronstei@inf.ethz.ch/7/26/93 (manuel bronstein)
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 205 of 267
@@ -3755,9 +3755,9 @@ eval(t1,k,t1)
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 nagttt@vax.ox.ac.uk/7/15/93 themos tsikas
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 208 of 267
@@ -3778,13 +3778,13 @@ eval(f,x=1/x)
 --R                                            Type: Fraction Polynomial Integer
 --E
 
-@
+\end{chunk}
 nagttt@vax.ox.ac.uk/7/15/93 themos tsikas
 
 I claim that these two should give the same result (they do in Reduce):
 (precision was 200)
 
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 210 of 267
@@ -3843,9 +3843,9 @@ digits 20
 --R   (6)  200
 --R                                                        Type: PositiveInteger
 --E
-@
+\end{chunk}
 bmt@spadserv.watson.ibm.com/9/15/93 (Barry Trager)
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 216 of 267
@@ -3855,9 +3855,9 @@ limit(tanh(x),x=%plusInfinity)
 --R                        Type: Union(OrderedCompletion Expression Integer,...)
 --E
 
-@
+\end{chunk}
 bronstei@inf.ethz.ch/6/14/93 (manuel bronstein)
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 217 of 267
@@ -3895,11 +3895,11 @@ zeroOf(b**4+1,x)
 --R                                             Type: Expression Complex Integer
 --E
 
-@
+\end{chunk}
 bronstei@inf.ethz.ch/6/11/93 (manuel bronstein)
 
 Now returns 0  (was crashing before)
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 221 of 267
@@ -3909,11 +3909,11 @@ normalize(0**a)
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 bronstei@inf.ethz.ch/6/11/93 (manuel bronstein)
 
 New export ``complexForm(f)'' which returns the rectangular complex form of f:
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 222 of 267
@@ -3950,11 +3950,11 @@ complexForm t2
 --R                                             Type: Complex Expression Integer
 --E
 
-@
+\end{chunk}
 jcf@posso.ibp.fr
 
 normalForm est faux pour les polynomes a coef dans un anneau:
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 226 of 267
@@ -3985,9 +3985,9 @@ p:D:=a
 --R                       Type: DistributedMultivariatePolynomial([a,b],Integer)
 --E
 
-@
+\end{chunk}
 Was 1, au lieu de 1/2 !!
-<<*>>=
+\begin{chunk}{*}
 --S 230 of 267
 normalForm(p,g)
 --R
@@ -3997,9 +3997,9 @@ normalForm(p,g)
 --R              Type: DistributedMultivariatePolynomial([a,b],Fraction Integer)
 --E
 
-@
+\end{chunk}
 nagttt@vax.ox.ac.uk/6/9/93 themos tsikas
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 231 of 267
@@ -4009,10 +4009,10 @@ squareFreePart(50)
 --R                                                        Type: PositiveInteger
 --E
 
-@
+\end{chunk}
 
 mcd@maths.bath.ac.uk/6/4/92 mike dewar
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 232 of 267
@@ -4038,9 +4038,9 @@ imag g
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 daly - not wrong but the order is obscure...
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 235 of 267
@@ -4050,9 +4050,9 @@ primes(1,10)
 --R                                                           Type: List Integer
 --E
 
-@
+\end{chunk}
 nagttt@vax.ox.ac.uk/1/11/93 themos tsikas
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 236 of 267
@@ -4066,11 +4066,11 @@ m:=matrix[[1,a,0],[b,0,a],[0,b,c]]
 --R                                              Type: Matrix Polynomial Integer
 --E
 
-@
+\end{chunk}
 This ends in error:
 Internal system problem in function appInfix : fewer than 2 arguments to
 an infix function
-<<*>>=
+\begin{chunk}{*}
 --S 237 of 267
 ll:=radicalEigenvectors m
 --R
@@ -4893,9 +4893,9 @@ ll:=radicalEigenvectors m
 --RType: List Record(radval: Expression Integer,radmult: Integer,radvect: List Matrix Expression Integer)
 --E
 
-@
+\end{chunk}
 but this works
-<<*>>=
+\begin{chunk}{*}
 
 --S 238 of 267
 ll 1
@@ -5718,7 +5718,7 @@ ll 3
 --RType: Record(radval: Expression Integer,radmult: Integer,radvect: List Matrix Expression Integer)
 --E
 
-@
+\end{chunk}
 bronstei@inf.ethz.ch/11/24/93 Manuel Bronstein
 \begin{verbatim}
 --)clear all
@@ -5746,7 +5746,7 @@ and n is between 0 and 5000:
 \end{verbatim}
 
 It was gotten from Axiom by issuing the commands
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 241 of 267
@@ -5835,7 +5835,7 @@ srimes := complete rrimes
 --R                                                    Type: List Stream Integer
 --E
 
-@
+\end{chunk}
 miker@num-alg-grp.co.uk/12/13/93 (Mike Richardson)
 
 This is fixed now. You get an Expression Float.
@@ -5847,7 +5847,7 @@ I suspect that this is an example of the same thing - but it looks worse:
     >> Error detected within library code:
     negative root
 \end{verbatim}
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 246 of 267
@@ -5857,7 +5857,7 @@ X := log(0.7*%i*x)
 --R                                               Type: Expression Complex Float
 --E
 
-@
+\end{chunk}
 
 sutor@yktpub.watson.ibm.com/12/15/93 (Robert S. Sutor)
 \begin{itemize}
@@ -5869,7 +5869,7 @@ sutor@yktpub.watson.ibm.com/12/15/93 (Robert S. Sutor)
 page cannot be formatted
 
 bmt@posso.dm.unipi.it12/15/93 (barry trager)
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 247 of 267
@@ -5888,7 +5888,7 @@ exp1() --> DoubleFLoat ???
 --R                                                                  Type: Float
 --E
 
-@
+\end{chunk}
 quitte@knuth.univ-poitiers.fr/12/14/93 Claude Quitte
 
 There is a bug in the function \verb|delete_!|
@@ -5917,7 +5917,7 @@ ListAggregate(S:Object): Category == Join(StreamAggregate S,
 
 A little session :
 \end{verbatim}
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 249 of 267
@@ -5955,7 +5955,7 @@ L
 --R                                                            Type: List String
 --E
 
-@
+\end{chunk}
 \begin{verbatim}
    (5)  ["There is","a real bug","here"]
 \end{verbatim}
@@ -5977,7 +5977,7 @@ that given arguments will always be updated. So the correct use is to only
 depend on the results returned by updating functions.
 
 quitte@knuth.univ-poitiers.fr/1/13/94 Claude Quitte
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 254 of 267
@@ -6032,7 +6032,7 @@ minimalPolynomial(y)$E
 --R                               Type: UnivariatePolynomial(X,Fraction Integer)
 --E
 
-@
+\end{chunk}
 \begin{verbatim}
 Internal Error
 The function minimalPolynomial with signature SimpleAlgebraicExtension(
@@ -6046,7 +6046,7 @@ luczak@nag.com/02/20/94 (Richard Luczak)
 
 I'm trying to define the following rule
 
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 261 of 267
@@ -6059,7 +6059,7 @@ tr := rule cos(x)**(n | integer? n and even? n)==(1-sin(x)**2)**(n/2)
 --R                        Type: RewriteRule(Integer,Integer,Expression Integer)
 --E
 
-@
+\end{chunk}
 Axiom returns
 \begin{verbatim}
   Cannot find a definition or library operation named even? with argument
@@ -6167,7 +6167,7 @@ efficiency. You function may still work, but it may not run in
 a compiled form.
 
 barry@num-alg-grp.co.uk/02/24/94 Barry Trager
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 262 of 267
@@ -6186,14 +6186,14 @@ sqrt(2)::EXPR INT * 2.0 -- works
 --R                                                       Type: Expression Float
 --E
 
-@
+\end{chunk}
 tpd: this now fails with sample : () -> Reference Integer is missing
 from domain: Integer
 Internal Error
 
 bronstei@inf.ethz.ch/02/28/94 Manuel Bronstein
 
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 264 of 267
@@ -6212,7 +6212,7 @@ f := exp(exp(x)*exp(1/exp(x))) / exp exp x
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 \begin{verbatim}
  )tr LIMITPS )math
  )tr DFINTTLS )math
@@ -6226,7 +6226,7 @@ jhd@maths.bath.ac.uk/03/02/94 James Davenport
 I've fixed coercions of List and Vector to DirectProduct.
 You can now do things like
 
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 265 of 267
@@ -6236,14 +6236,14 @@ You can now do things like
 --R                                      Type: DirectProduct(3,Fraction Integer)
 --E
 
-@
+\end{chunk}
 I also fixed coercions from Vector to List, which seems to have
 been removed via a library change.
 
 jhd@maths.bath.ac.uk/03/09/94 James Davenport
 
 Used to give a lisp error
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 266 of 267
@@ -6254,9 +6254,9 @@ x**10+1::Polynomial PrimeField 2
 --R                                                Type: Polynomial PrimeField 2
 --E
 
-@
+\end{chunk}
 themos@num-alg-grp.co.uk/03/11/94 Themos Tsikas
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 267 of 267
@@ -6264,7 +6264,7 @@ f(x)==x**2
 --R                                                                   Type: Void
 --E
 
-@
+\end{chunk}
 draw(f,-1..1)
 
 themos@num-alg-grp.co.uk/03/16/94 Themos Tsikas
@@ -6279,11 +6279,11 @@ original example will then work. -- bob sutor
 riemannSphereDraw(1..2,0..%pi,4,4,"polar")
 \end{verbatim}
 
-<<*>>=
+\begin{chunk}{*}
 )spool
 )lisp (bye)
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/float.input.pamphlet b/src/input/float.input.pamphlet
index 6f1f1cc..cfc2db8 100644
--- a/src/input/float.input.pamphlet
+++ b/src/input/float.input.pamphlet
@@ -8,12 +8,12 @@
 \end{abstract}
 \eject
 \tableofcontents
-\eject
+
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool float.output
 )set message test on
@@ -134,7 +134,7 @@ numeric(%pi, 200)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/float1.input.pamphlet b/src/input/float1.input.pamphlet
index 18fddc7..3eecabd 100644
--- a/src/input/float1.input.pamphlet
+++ b/src/input/float1.input.pamphlet
@@ -8,12 +8,13 @@
 \end{abstract}
 \eject
 \tableofcontents
-\eject
+
 \section{License}
-<<license>>=
+
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool float1.output
 )set message test on
@@ -372,7 +373,7 @@ digits 20
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/float2.input.pamphlet b/src/input/float2.input.pamphlet
index 6c400cf..5dde5a1 100644
--- a/src/input/float2.input.pamphlet
+++ b/src/input/float2.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool float2.output
 )set message test on
@@ -350,7 +350,7 @@ log10 f
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/fname.input.pamphlet b/src/input/fname.input.pamphlet
index 637c56c..ce3371b 100644
--- a/src/input/fname.input.pamphlet
+++ b/src/input/fname.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool fname.output
 )set message test on
@@ -101,7 +101,7 @@ writo: FNAME := "/tmp/writo"
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/fname1.input.pamphlet b/src/input/fname1.input.pamphlet
index 19f5c8c..ddbfe5d 100644
--- a/src/input/fname1.input.pamphlet
+++ b/src/input/fname1.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool fname1.output
 )set message test on
@@ -164,7 +164,7 @@ fn := new(objdir, "xxx", "yy")
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/fnla.input.pamphlet b/src/input/fnla.input.pamphlet
index 3b8026c..e2253c8 100644
--- a/src/input/fnla.input.pamphlet
+++ b/src/input/fnla.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool fnla.output
 )set message test on
@@ -83,7 +83,7 @@ shallowExpand z
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/fns.input.pamphlet b/src/input/fns.input.pamphlet
index 4ea65f2..303d1fd 100644
--- a/src/input/fns.input.pamphlet
+++ b/src/input/fns.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool fns.output
 )set message test on
@@ -300,7 +300,7 @@ twins(i) ==firsts(i),2 + firsts(i)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/folium.input.pamphlet b/src/input/folium.input.pamphlet
index 953ded1..a5be9f6 100644
--- a/src/input/folium.input.pamphlet
+++ b/src/input/folium.input.pamphlet
@@ -9,10 +9,9 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
--- @(#)folium.input	1.1    89/09/07  20:54:58
+\begin{chunk}{*}
 draw(curve((t**2-1)/(3*t**2+1),t*(t**2-1)/(3*t**2+1)),t = -3..3, [title "Folium of Descartes"])
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/fparfrac.input.pamphlet b/src/input/fparfrac.input.pamphlet
index 5d03eeb..cf4da65 100644
--- a/src/input/fparfrac.input.pamphlet
+++ b/src/input/fparfrac.input.pamphlet
@@ -10,19 +10,19 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool fparfrac.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 This file demonstrates the factor-free conversion to full partial fractions.
-<<*>>=
+\begin{chunk}{*}
 
 --S 1 of 18
 Q := FRAC INT
@@ -48,9 +48,9 @@ Fx := FRAC Px
 --R                                                                 Type: Domain
 --E 3
 
-@
+\end{chunk}
 Here is a simple-looking function
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 18
 f:Fx := 36 / (x**5-2*x**4-2*x**3+4*x**2+x-2)
 --R 
@@ -62,9 +62,9 @@ f:Fx := 36 / (x**5-2*x**4-2*x**3+4*x**2+x-2)
 --R                      Type: Fraction UnivariatePolynomial(x,Fraction Integer)
 --E 4
 
-@
+\end{chunk}
 Use fullPartialFraction to convert to the type FPARFRAC
-<<*>>=
+\begin{chunk}{*}
 --S 5 of 18
 g := fullPartialFraction f
 --R 
@@ -77,9 +77,9 @@ g := fullPartialFraction f
 --RType: FullPartialFractionExpansion(Fraction Integer,UnivariatePolynomial(x,Fraction Integer))
 --E 5
 
-@
+\end{chunk}
 Use :: to convert back to a rational function
-<<*>>=
+\begin{chunk}{*}
 --S 6 of 18
 g::Fx
 --R 
@@ -91,9 +91,9 @@ g::Fx
 --R                      Type: Fraction UnivariatePolynomial(x,Fraction Integer)
 --E 6
 
-@
+\end{chunk}
 Full partial fractions differentiate faster than rational functions:
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 18
 g5 := D(g, 5)
 --R 
@@ -128,9 +128,9 @@ f5 := D(f, 5)
 --R                      Type: Fraction UnivariatePolynomial(x,Fraction Integer)
 --E 8
 
-@
+\end{chunk}
 Check that the two forms represent the same function
-<<*>>=
+\begin{chunk}{*}
 --S 9 of 18
 g5::Fx - f5
 --R 
@@ -139,9 +139,9 @@ g5::Fx - f5
 --R                      Type: Fraction UnivariatePolynomial(x,Fraction Integer)
 --E 9
 
-@
+\end{chunk}
 Here are more complicated examples:
-<<*>>=
+\begin{chunk}{*}
 --S 10 of 18
 f:Fx := (x**5 * (x-1)) / ((x**2 + x + 1)**2 * (x-2)**3)
 --R 
@@ -298,9 +298,9 @@ g := fullPartialFraction f
 --RType: FullPartialFractionExpansion(Fraction Integer,UnivariatePolynomial(x,Fraction Integer))
 --E 17
 
-@
+\end{chunk}
 This verification takes much longer than the conversion to partial fractions
-<<*>>=
+\begin{chunk}{*}
 --S 18 of 18
 g::Fx - f
 --R 
@@ -311,7 +311,7 @@ g::Fx - f
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/fparfrc.input.pamphlet b/src/input/fparfrc.input.pamphlet
index 513135a..0b77f90 100644
--- a/src/input/fparfrc.input.pamphlet
+++ b/src/input/fparfrc.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool fparfrc.output
 )set message test on
@@ -268,7 +268,7 @@ g :: Fx - f
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/fr.input.pamphlet b/src/input/fr.input.pamphlet
index 22fb8b6..a84f197 100644
--- a/src/input/fr.input.pamphlet
+++ b/src/input/fr.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool fr.output
 )set message test on
@@ -26,9 +26,9 @@
 --R                                                                   Type: Void
 --E 1
 
-@
+\end{chunk}
 Automatic coercion of integers to factored integers
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 55
 x := 2**8 * 78**7 * 111**3 * 74534
 --R 
@@ -47,9 +47,9 @@ y := 2**4 * 45**3 * 162**6 * 774325
 --R                                                       Type: Factored Integer
 --E 3
 
-@
+\end{chunk}
 Computation of 50!
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 55
 z1 := factorial 50
 --R 
@@ -67,9 +67,9 @@ z := z1 :: (FR INT)
 --R                                                       Type: Factored Integer
 --E 5
 
-@
+\end{chunk}
 Examine the structure if a factor
-<<*>>=
+\begin{chunk}{*}
 --S 6 of 55
 nthFactor(z,1)
 --R 
@@ -94,9 +94,9 @@ nthExponent(z,1)
 --R                                                        Type: PositiveInteger
 --E 8
 
-@
+\end{chunk}
 Extract the factors in another form
-<<*>>=
+\begin{chunk}{*}
 
 --S 9 of 55
 factorList z
@@ -114,9 +114,9 @@ factorList z
 --RType: List Record(flg: Union("nil","sqfr","irred","prime"),fctr: Integer,xpnt: Integer)
 --E 9
 
-@
+\end{chunk}
 Construct an object that has the factors to multiplicity one
-<<*>>=
+\begin{chunk}{*}
 --S 10 of 55
 r:=reduce(*,[(nthFactor(z,i) :: (FR INT)) for i in 1..(numberOfFactors z)])
 --R 
@@ -125,9 +125,9 @@ r:=reduce(*,[(nthFactor(z,i) :: (FR INT)) for i in 1..(numberOfFactors z)])
 --R                                                       Type: Factored Integer
 --E 10
 
-@
+\end{chunk}
 Some arithmetic
-<<*>>=
+\begin{chunk}{*}
 --S 11 of 55
 exquo(z,r)
 --R 
@@ -181,9 +181,9 @@ x+y
 --R                                                       Type: Factored Integer
 --E 16
 
-@
+\end{chunk}
 This is how you multiply the terms together
-<<*>>=
+\begin{chunk}{*}
 --S 17 of 55
 expand(x+y)
 --R 
@@ -192,9 +192,9 @@ expand(x+y)
 --R                                                        Type: PositiveInteger
 --E 17
 
-@
+\end{chunk}
 Now look at quotients
-<<*>>=
+\begin{chunk}{*}
 --S 18 of 55
 f := x/y
 --R 
@@ -255,9 +255,9 @@ f * g
 --R                                              Type: Fraction Factored Integer
 --E 22 
  
-@
+\end{chunk}
 Manipulation of factored polynomials
-<<*>>=
+\begin{chunk}{*}
 
 )clear all
 --S 23 of 55
@@ -266,9 +266,9 @@ Manipulation of factored polynomials
 --R                                                                   Type: Void
 --E 23
  
-@
+\end{chunk}
 Coercion to FR POLY INT involves factoring
-<<*>>=
+\begin{chunk}{*}
 --S 24 of 55
 u := (x**4 - y**4) :: POLY INT
 --R 
@@ -278,9 +278,9 @@ u := (x**4 - y**4) :: POLY INT
 --R                                            Type: Factored Polynomial Integer
 --E 24
 
-@
+\end{chunk}
 PrimeFactor creates factors that are asserted to be prime
-<<*>>=
+\begin{chunk}{*}
 --S 25 of 55
 v := primeFactor(x-y,2) * primeFactor(x+y,2) * primeFactor(x**2 + y**2,1)
 --R 
@@ -307,9 +307,9 @@ unit w
 --R                                                     Type: Polynomial Integer
 --E 27
 
-@
+\end{chunk}
 Some ways of looking at the components of an elements of FR P I
-<<*>>=
+\begin{chunk}{*}
 --S 28 of 55
 l := factorList u
 --R 
@@ -406,10 +406,10 @@ nthFactor(u,4)
 --R                                                     Type: Polynomial Integer
 --E 38
 
-@
+\end{chunk}
 This computes a factored object that is similar to v except that
 each factor occurs with multiplicity 1
-<<*>>=
+\begin{chunk}{*}
 --S 39 of 55
 s:=reduce(*,[(nthFactor(v,i) :: FR POLY INT) for i in 1..(numberOfFactors v)])
 --R 
@@ -419,9 +419,9 @@ s:=reduce(*,[(nthFactor(v,i) :: FR POLY INT) for i in 1..(numberOfFactors v)])
 --R                                            Type: Factored Polynomial Integer
 --E 39
 
-@
+\end{chunk}
 Some arithmetic
-<<*>>=
+\begin{chunk}{*}
 --S 40 of 55
 exquo(v,s)
 --R 
@@ -466,9 +466,9 @@ u * v * w
 --R                                            Type: Factored Polynomial Integer
 --E 44
 
-@
+\end{chunk}
 The function {\tt expand} multiplies the factors together
-<<*>>=
+\begin{chunk}{*}
 --S 45 of 55
 expand(u * v * w)
 --R 
@@ -488,9 +488,9 @@ expand(u * v * w)
 --R                                                     Type: Polynomial Integer
 --E 45
 
-@
+\end{chunk}
 Some quotients
-<<*>>=
+\begin{chunk}{*}
 --S 46 of 55
 u/w
 --R 
@@ -515,9 +515,9 @@ w/(u*v)
 --R                                   Type: Fraction Factored Polynomial Integer
 --E 47
 
-@
-The form [[%%(-1)]] is the last result, [[%%(-2)]] is the one before that
-<<*>>=
+\end{chunk}
+The form \verb|%%(-1)| is the last result, \verb|%%(-2)| is the one before that
+\begin{chunk}{*}
 --S 48 of 55
 w/(u*v) * u/w
 --R 
@@ -599,7 +599,7 @@ characteristic()$FR POLY INT
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/fr1.input.pamphlet b/src/input/fr1.input.pamphlet
index 4b6b128..6d2244f 100644
--- a/src/input/fr1.input.pamphlet
+++ b/src/input/fr1.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool fr1.output
 )set message test on
@@ -356,7 +356,7 @@ numberOfFactors(%)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/fr2.input.pamphlet b/src/input/fr2.input.pamphlet
index 1e2f473..0eeaa05 100644
--- a/src/input/fr2.input.pamphlet
+++ b/src/input/fr2.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool fr2.output
 )set message test on
@@ -71,7 +71,7 @@ nthFlag(g,1)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/frac.input.pamphlet b/src/input/frac.input.pamphlet
index 31a5ce5..f5681e3 100644
--- a/src/input/frac.input.pamphlet
+++ b/src/input/frac.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool frac.output
 )set message test on
@@ -145,7 +145,7 @@ g :: FRAC COMPLEX INT
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/frame.input.pamphlet b/src/input/frame.input.pamphlet
index f3f97d2..5d24d27 100644
--- a/src/input/frame.input.pamphlet
+++ b/src/input/frame.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool frame.output
 )set message test on
@@ -205,7 +205,7 @@ a
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/free.input.pamphlet b/src/input/free.input.pamphlet
index 42db6f1..3fca0b5 100644
--- a/src/input/free.input.pamphlet
+++ b/src/input/free.input.pamphlet
@@ -10,7 +10,7 @@ We expect that $-b < z < a < b$
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool free.output
 )set message test on
@@ -76,7 +76,7 @@ a < b
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/function.input.pamphlet b/src/input/function.input.pamphlet
index 0397d6c..65165d0 100644
--- a/src/input/function.input.pamphlet
+++ b/src/input/function.input.pamphlet
@@ -10,7 +10,7 @@
 \tableofcontents
 \eject
 Input for page RationatFunctionPage
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool function.output
 )set message test on
@@ -58,9 +58,9 @@ eval(f, [x = y, y = x])
 --R                                            Type: Fraction Polynomial Integer
 --E 5
 
-@
+\end{chunk}
 Input for page AlgebraicFunctionPage
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 6 of 33
@@ -117,9 +117,9 @@ ratPoly g
 --R                          Type: SparseUnivariatePolynomial Expression Integer
 --E 11
 
-@
+\end{chunk}
 Input for page ElementaryFunctionPage
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 12 of 33
@@ -149,9 +149,9 @@ eval(f, log y = acosh(x + sqrt y))
 --R                                                     Type: Expression Integer
 --E 14
 
-@
+\end{chunk}
 Input for page FunctionSimplificationPage
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 15 of 33
@@ -287,9 +287,9 @@ htrigs h2
 --R                                                     Type: Expression Integer
 --E 26
 
-@
+\end{chunk}
 Input for page PatternMatchingPage
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 27 of 33
@@ -362,7 +362,7 @@ sinCosExpand(sin(x+y-2*z) * cos y)
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/galois.input.pamphlet b/src/input/galois.input.pamphlet
index 7d3e13c..01a11fb 100644
--- a/src/input/galois.input.pamphlet
+++ b/src/input/galois.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool galois.output
 )set message test on
@@ -386,7 +386,7 @@ aa5 := subst(a5,beta = bb)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/gamma.input.pamphlet b/src/input/gamma.input.pamphlet
index b4a4a72..1a641f4 100644
--- a/src/input/gamma.input.pamphlet
+++ b/src/input/gamma.input.pamphlet
@@ -10,23 +10,24 @@ as well as a set of graphics that illustrate these curves.
 \end{abstract}
 \eject
 \tableofcontents
-\eject
+
 In the following table there are 4 columns. The first column
 is the argument of Gamma, ranging from 1.000 to 1.995. The
 second column is the reference value of Gamma from the book
 Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
 Dover Publications, Inc. New York 1965. pp267-270
 
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool gamma.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 \section{Gamma 1.000 to 1.995 by 0.005}
-<<*>>=
+
+\begin{chunk}{*}
 --S 1 of 12
 [[1.000,1.0000000000,Gamma(1.000),Gamma(1.000)-1.0000000000],_
  [1.005,0.9971385354,Gamma(1.005),Gamma(1.005)-0.9971385354],_
@@ -760,9 +761,9 @@ Dover Publications, Inc. New York 1965. pp267-270
 --R                                                  Type: List List DoubleFloat
 --E 1
 
-@
+\end{chunk}
 \section{Psi}
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 12
 Psi(x:DFLOAT):DFLOAT==polygamma(0,x)
 --R 
@@ -770,7 +771,7 @@ Psi(x:DFLOAT):DFLOAT==polygamma(0,x)
 --R      to workspace.
 --R                                                                   Type: Void
 --E 2
-@
+\end{chunk}
 In the following table there are 4 columns. The first column
 is the argument of Psi, ranging from 1.000 to 1.995. The
 second column is the reference value of Psi from the book
@@ -778,7 +779,7 @@ Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
 Dover Publications, Inc. New York 1965. pp267-270
 
 \section{Psi 1.000 to 2.000 by 0.005}
-<<*>>=
+\begin{chunk}{*}
 
 --S 3 of 12
 [[1.000, -0.5772156649, Psi(1.000), Psi(1.000)- -0.5772156649],_
@@ -1542,7 +1543,7 @@ Dover Publications, Inc. New York 1965. pp267-270
 --R    [2.,0.42278433510000002,0.42278433509846725,- 1.5327739077974911E-12]]
 --R                                                  Type: List List DoubleFloat
 --E 3
-@
+\end{chunk}
 \section{log(Gamma) 1+0.0i to 1+10.0i by 0+0.1i}
 In the following table there are 4 columns. The first column
 is the argument of complex Gamma, ranging from 1.0 + 0i to 1.0+10i
@@ -1553,7 +1554,7 @@ Dover Publications, Inc. New York 1965. pp227
 Note that at the value 1.0+4.6i there is a radical departure between
 the table and the computed values in the imaginary part of the value
 even though the real part is exact.
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 12
 [[1. + 0.0 * %i,0.,log(Gamma(1. + 0.0 * %i)),log(Gamma(1. + 0.0 * %i))-0.0],_
 [1. + 0.1 * %i, -0.008197780565 - 0.057322940417 * %i,_
@@ -2374,7 +2375,7 @@ log(Gamma(1. + 10.0 * %i))-(- 13.637732188247 + 13.802912974230 * %i)]]
 --R                                          Type: List List Complex DoubleFloat
 --E 4
 
-@
+\end{chunk}
 \section{log(Gamma) 1+0.0i to 1+10.0i by 0+0.1i}
 As you can see from the above, Axiom's value diverges from the published
 values in Abramowitz at 1+4.6i and above. Mathematica shows the same
@@ -2389,7 +2390,7 @@ ln \Gamma{(z)}\approx(z-\frac{1}{2})ln z-z+\frac{1}{2}ln{(2\pi)}
 (z\rightarrow \infty in \vert arg z\vert < \pi)
 \end{equation}
 First we compute the constant
-<<*>>=
+\begin{chunk}{*}
 --S 5 of 12
 halfLog2Pi:=log(2.0*%pi)/2
 --R 
@@ -2398,52 +2399,52 @@ halfLog2Pi:=log(2.0*%pi)/2
 --R                                                                  Type: Float
 --E 5
 
-@
+\end{chunk}
 Next we compute the Bernoulli numbers given by the double-sum formula
 \begin{equation}
 B_n=\sum_{k=0}^n{\frac{1}{(k+1)}}\sum_{r=0}^k{(-1)^r\binom{k}{r}r^n}
 \end{equation}
 The inner sum is given by
-<<*>>=
+\begin{chunk}{*}
 --S 6 of 12
 inner(k,n)==reduce(+,[(-1)^r*binomial(k,r)*r^n for r in 0..k])
 --R 
 --R                                                                   Type: Void
 --E 6
 
-@
+\end{chunk}
 and the bernoulli numbers are given by
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 12
 B(n)==reduce(+,[(inner(k,n)/(k+1)) for k in 0..n])
 --R 
 --R                                                                   Type: Void
 --E 7
 
-@
+\end{chunk}
 Now we need to compute the values of a single term in the expansion
-<<*>>=
+\begin{chunk}{*}
 --S 8 of 12
 Z(m,z)==B(2*m)/((2*m*(2*m-1))*z^(2*m-1))
 --R 
 --R                                                                   Type: Void
 --E 8
 
-@
+\end{chunk}
 and we can compute the formula 6.1.41
-<<*>>=
+\begin{chunk}{*}
 --S 9 of 12
 H(z)==(z-1/2)*log(z)-z+halfLog2Pi+reduce(+,[Z(m,z) for m in 1..5]) 
 --R 
 --R                                                                   Type: Void
 --E 9
 
-@
+\end{chunk}
 The most accurate values appear to be given when 5 terms are used.
 Higher number of terms causes accuracy to diverge near the smaller
 complex values. As you can see this formula reproduces the table
 values in Abramowitz smoothly.
-<<*>>=
+\begin{chunk}{*}
 --S 10 of 12
 [[1. + 0.0 * %i,0.,H(1. + 0.0 * %i),H(1. + 0.0 * %i)-0.0],_
 [1. + 0.1 * %i, -0.008197780565 - 0.057322940417 * %i,_
@@ -3258,10 +3259,10 @@ H(1. + 10.0 * %i)-(- 13.637732188247 + 13.802912974230 * %i)]]
 --R     ]
 --R                                                Type: List List Complex Float
 --E 10
-@
+\end{chunk}
 Another useful definition of the logGamma function that is 
 continuous across the cut [1+4.5i,1+4.6i] is:
-<<*>>=
+\begin{chunk}{*}
 --S 11 of 12
 lng2(xx:COMPLEX(DFLOAT)):COMPLEX(DFLOAT)==
   y:COMPLEX(DFLOAT):=xx;
@@ -3288,10 +3289,10 @@ lng2(xx:COMPLEX(DFLOAT)):COMPLEX(DFLOAT)==
 --R                                                                   Type: Void
 --E 11
 
-@
+\end{chunk}
 and we can compare this with the log(Gamma) and logGamma functions in
 Axiom:
-<<*>>=
+\begin{chunk}{*}
 --S 12 of 12
 [[1. + 0.0 * %i,0.,lng2(1. + 0.0 * %i),lng2(1. + 0.0 * %i)-0.0],_
 [1. + 0.1 * %i, -0.008197780565 - 0.057322940417 * %i,_
@@ -4916,7 +4917,7 @@ lng2(1. + 10.0 * %i)-(- 13.637732188247 + 13.802912974230 * %i)]]
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 
 \subsection{Gamma}
 Because we use this file for regression testing and regression tests
diff --git a/src/input/gary1.input.pamphlet b/src/input/gary1.input.pamphlet
index 1e3e3eb..5e01bf7 100644
--- a/src/input/gary1.input.pamphlet
+++ b/src/input/gary1.input.pamphlet
@@ -9,10 +9,9 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
--- @(#)gary1.input	1.1    89/09/07  20:55:01
+\begin{chunk}{*}
 draw(curve(cos(4*t)*cos(7*t),cos(4*t)*sin(7*t)),t = 0..2*%pi,[title "Greetings!"])
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/gbf.input.pamphlet b/src/input/gbf.input.pamphlet
index 653722a..c362ea7 100644
--- a/src/input/gbf.input.pamphlet
+++ b/src/input/gbf.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool gbf.output
 )set message test on
@@ -92,7 +92,7 @@ groebnerFactorize [eq, eval(eq, [x,y,z], [y,z,x]), eval(eq, [x,y,z], [z,x,y])]
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/genups.input.pamphlet b/src/input/genups.input.pamphlet
index bc17846..f0420ce 100644
--- a/src/input/genups.input.pamphlet
+++ b/src/input/genups.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool genups.output
 )set message test on
@@ -144,9 +144,9 @@ puiseux(j +-> j,x = 8,-4/3..1/6,1/2)
 --R                        Type: UnivariatePuiseuxSeries(Expression Integer,x,8)
 --E 10
 
-@
+\end{chunk}
 Same computations using expressions instead of functions
-<<*>>=
+\begin{chunk}{*}
 --S 11 of 40
 taylor(1/factorial(n),n,x = 0)      -- expansion of exp(x) at x = 0
 --R 
@@ -271,10 +271,10 @@ puiseux(j,j,x = 8,-4/3..1/6,1/2)
 --R                        Type: UnivariatePuiseuxSeries(Expression Integer,x,8)
 --E 20
 
-@
+\end{chunk}
 All of the above commands should still work when the functions 'taylor',
 'laurent', and 'puiseux' are replaced by 'series':
-<<*>>=
+\begin{chunk}{*}
 --S 21 of 40
 series(n +-> 1/factorial(n),x = 0)      -- expansion of exp(x) at x = 0
 --R 
@@ -402,9 +402,9 @@ series(j +-> j,x = 8,-4/3..1/6,1/2)
 --R                        Type: UnivariatePuiseuxSeries(Expression Integer,x,8)
 --E 30
 
-@
+\end{chunk}
 Same computations using expressions instead of functions
-<<*>>=
+\begin{chunk}{*}
 --S 31 of 40
 series(1/factorial(n),n,x = 0)      -- expansion of exp(x) at x = 0
 --R 
@@ -534,7 +534,7 @@ series(j,j,x = 8,-4/3..1/6,1/2)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/gnarly1.input.pamphlet b/src/input/gnarly1.input.pamphlet
index b90370c..66ed9d3 100644
--- a/src/input/gnarly1.input.pamphlet
+++ b/src/input/gnarly1.input.pamphlet
@@ -9,10 +9,10 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 draw(surface(cos(t)/(1+sin(t)**2),sin(t)*cos(t)*cos(u)/(1+sin(t)**2),
      sin(t)*cos(t)*sin(u)/(1+sin(t)**2)),t = -%pi..%pi,u = 0..%pi)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/gonshor.input.pamphlet b/src/input/gonshor.input.pamphlet
index 8767646..74e809f 100644
--- a/src/input/gonshor.input.pamphlet
+++ b/src/input/gonshor.input.pamphlet
@@ -10,17 +10,17 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool gonshor.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 \section{Some examples of algebras in genetics}
 Literature:
 [WB] A. Woerz-Busekros: Algebras in Genetics, LNB 36,
@@ -30,7 +30,7 @@ Springer-Verlag, Berlin etc. 1980.
 A Gonshor genetic algebra ([WB], p. 41-42) of dimension 4:
 
 The coefficient ring:
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 98
 R := FRAC POLY INT
 --R 
@@ -39,10 +39,10 @@ R := FRAC POLY INT
 --R                                                                 Type: Domain
 --E 1
 
-@
+\end{chunk}
 The following multiplication constants may be chosen arbitrarily
 (notice that we write ckij for $c_(i,j)^k$):
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 98
 (c100, c101, _
 c200, c201, c202, c211, _
@@ -75,9 +75,9 @@ c300 :=  1 ;     c301 :=  0 ;     c302 := -1 ;     c303 :=  1 ;
 --R                                            Type: Fraction Polynomial Integer
 --E 5
 
-@
+\end{chunk}
 The matrices of the multiplication constants:
-<<*>>=
+\begin{chunk}{*}
 --S 6 of 98
 gonshor : List SquareMatrix(4,R) :=
   [matrix [ [1, 0, 0, 0], [0, 0, 0, 0],_
@@ -130,9 +130,9 @@ associative?()$GonshorGenetic
 --R                                                                Type: Boolean
 --E 10
 
-@
+\end{chunk}
 The canonical basis:
-<<*>>=
+\begin{chunk}{*}
 --S 11 of 98
 e0 : GonshorGenetic := [1, 0, 0, 0] :: Vector R ;
 --R 
@@ -161,9 +161,9 @@ e3 : GonshorGenetic := [0, 0, 0, 1] :: Vector R ;
 --RType: AlgebraGivenByStructuralConstants(Fraction Polynomial Integer,4,[*01e0,*01e1,*01e2,*01e3],[MATRIX,MATRIX,MATRIX,MATRIX])
 --E 14
 
-@
+\end{chunk}
 A generic element of the algebra:
-<<*>>=
+\begin{chunk}{*}
 --S 15 of 98
 x  : GonshorGenetic := x0*e0 + x1*e1 + x2*e2 + x3*e3
 --R 
@@ -173,9 +173,9 @@ x  : GonshorGenetic := x0*e0 + x1*e1 + x2*e2 + x3*e3
 --RType: AlgebraGivenByStructuralConstants(Fraction Polynomial Integer,4,[*01e0,*01e1,*01e2,*01e3],[MATRIX,MATRIX,MATRIX,MATRIX])
 --E 15
 
-@
+\end{chunk}
 The matrix of the left multiplication with x :
-<<*>>=
+\begin{chunk}{*}
 --S 16 of 98
 Lx := leftRegularRepresentation x
 --R 
@@ -190,13 +190,13 @@ Lx := leftRegularRepresentation x
 --R                                     Type: Matrix Fraction Polynomial Integer
 --E 16
 
-@
+\end{chunk}
 leftRegularRepresentationt 8 : GonshorGenetic -> R 
 be the weight homomorphism
 defined by 8(e0) := 1 and 8(ei) := 0 for i = 1,2,3 .
 The coefficients of the characteristic polynomial
 of Lx depend only on 8(x) = x0 :
-<<*>>=
+\begin{chunk}{*}
 --S 17 of 98
 p := characteristicPolynomial(Lx,Y)
 --R 
@@ -206,9 +206,9 @@ p := characteristicPolynomial(Lx,Y)
 --R                                                     Type: Polynomial Integer
 --E 17
 
-@
+\end{chunk}
 The left minimal polynomial of x divides Y * p(Y) :
-<<*>>=
+\begin{chunk}{*}
 --S 18 of 98
 leftMinimalPolynomial x
 --R 
@@ -305,11 +305,11 @@ b*(c*b)
 --RType: AlgebraGivenByStructuralConstants(Fraction Polynomial Integer,4,[*01e0,*01e1,*01e2,*01e3],[MATRIX,MATRIX,MATRIX,MATRIX])
 --E 27
 
-@
+\end{chunk}
 A: Algebra
 a,b,c : A
 r,s : R
-<<*>>=
+\begin{chunk}{*}
 
 )clear prop AP
 --S 28 of 98
@@ -676,9 +676,9 @@ associatorDependence()$A
 --R                                Type: List Vector Fraction Polynomial Integer
 --E 63
 
-@
+\end{chunk}
 ConditionsForIdempotents()\$A
-<<*>>=
+\begin{chunk}{*}
 --S 64 of 98
 jacobiIdentity?()$A
 --R 
@@ -716,9 +716,9 @@ lieAdmissible?()$A
 --R                                                                Type: Boolean
 --E 67
 
-@
+\end{chunk}
 ConditionsForIdempotents 
-<<*>>=
+\begin{chunk}{*}
 --S 68 of 98
 b2 := [reduce(+,[sB.i for i in 1..k]) for k in 1..n]
 --R 
@@ -1054,7 +1054,7 @@ basisOfRightNucloid()$AP
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/graphics.input.pamphlet b/src/input/graphics.input.pamphlet
index 841bced..0b00763 100644
--- a/src/input/graphics.input.pamphlet
+++ b/src/input/graphics.input.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 
 -- Input for page OneVariableGraphicsExamplePage
 )clear all
@@ -94,7 +94,7 @@ draw(curve(sin(t)*sin(2*t), sin(3*t)*sin(4*t), sin(5*t)*sin(6*t)), t = 0..2*%pi)
 draw(sin(17*t), t = 0..2*%pi, coordinates == polar)
 draw(y**2 + y = x**3 - x, x, y,range == [-2..2,-2..1])
 All
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/grdef.input.pamphlet b/src/input/grdef.input.pamphlet
index 15f3240..c961d87 100644
--- a/src/input/grdef.input.pamphlet
+++ b/src/input/grdef.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 -- test input for GraphicsDefaults package
 
 --Operations to set graphic defaults:
@@ -49,7 +49,7 @@ minPoints()
 
 screenResolution()
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/grpthry.input.pamphlet b/src/input/grpthry.input.pamphlet
index 7568226..273b15c 100644
--- a/src/input/grpthry.input.pamphlet
+++ b/src/input/grpthry.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool grpthry.output
 )set message test on
@@ -2541,7 +2541,7 @@ dA6d16
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/gstbl.input.pamphlet b/src/input/gstbl.input.pamphlet
index 649834a..3e2e83e 100644
--- a/src/input/gstbl.input.pamphlet
+++ b/src/input/gstbl.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool gstbl.output
 )set message test on
@@ -27,7 +27,7 @@ patrons: GeneralSparseTable(String, Integer, KeyedAccessFile(Integer), 0) := tab
 --RDaly Bug
 --R   >> Error detected within library code:
 --R   File is not readable
---R   "kaf1413.sdata"
+--R   "kaf1414.sdata"
 --R
 --R   Continuing to read the file...
 --R
@@ -35,7 +35,7 @@ patrons: GeneralSparseTable(String, Integer, KeyedAccessFile(Integer), 0) := tab
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/heap.input.pamphlet b/src/input/heap.input.pamphlet
index e0f38b6..48372cd 100644
--- a/src/input/heap.input.pamphlet
+++ b/src/input/heap.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool heap.output
 )set message test on
@@ -85,7 +85,7 @@ heapsort h1
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/heat.input.pamphlet b/src/input/heat.input.pamphlet
index 81c40b7..9041de9 100644
--- a/src/input/heat.input.pamphlet
+++ b/src/input/heat.input.pamphlet
@@ -10,19 +10,19 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool heat.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 This is the heat equation
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 11
 u:= operator('u);
 --R 
@@ -39,9 +39,9 @@ heat:= D(u(x, t), t) - D(u(x, t), x, 2) = 0
 --R                                            Type: Equation Expression Integer
 --E 2
 
-@
+\end{chunk}
 This is the similarity form of the proposed solution
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 11
 f:= operator('f);
 --R 
@@ -63,9 +63,9 @@ s:= rule(u(x, t) == f(x/sqrt(t))/sqrt(t))
 --R                        Type: RewriteRule(Integer,Integer,Expression Integer)
 --E 4
 
-@
+\end{chunk}
 Apply s to the heat equation
-<<*>>=
+\begin{chunk}{*}
 --S 5 of 11
 s(lhs(heat)) = 0
 --R 
@@ -80,9 +80,9 @@ s(lhs(heat)) = 0
 --R                                            Type: Equation Expression Integer
 --E 5
 
-@
+\end{chunk}
 Change to the similarity variable z = x/sqrt(t)
-<<*>>=
+\begin{chunk}{*}
 --S 6 of 11
 subst(lhs(%), x = z*sqrt(t)) = 0
 --R 
@@ -96,9 +96,9 @@ subst(lhs(%), x = z*sqrt(t)) = 0
 --R                                            Type: Equation Expression Integer
 --E 6
 
-@
+\end{chunk}
 Eliminate the denominator
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 11
 % * denom(lhs(%))
 --R 
@@ -109,9 +109,9 @@ Eliminate the denominator
 --R                                            Type: Equation Expression Integer
 --E 7
 
-@
+\end{chunk}
 Now, solve the ordinary differential equation
-<<*>>=
+\begin{chunk}{*}
 --S 8 of 11
 eq:=%
 --R 
@@ -135,9 +135,9 @@ solve(%, f, z=0,[k1,k2])
 --R                                          Type: Union(Expression Integer,...)
 --E 9
 
-@
+\end{chunk}
 Finally, transform back to the original variables
-<<*>>=
+\begin{chunk}{*}
 --S 10 of 11
 subst(%, z = x/sqrt(t))/sqrt(t)
 --R 
@@ -155,10 +155,10 @@ subst(%, z = x/sqrt(t))/sqrt(t)
 --R                                                     Type: Expression Integer
 --E 10
 
-@
+\end{chunk}
 If we set k2 = 0 and k1 = 1/(2*sqrt(%pi)) in the previous expression,
 we will obtain the usual fundamental solution of the heat equation
-<<*>>=
+\begin{chunk}{*}
 --S 11 of 11
 subst(%, [k2 = 0, k1 = 1/(2*sqrt(%pi))])
 --R 
@@ -176,7 +176,7 @@ subst(%, [k2 = 0, k1 = 1/(2*sqrt(%pi))])
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/helix.input.pamphlet b/src/input/helix.input.pamphlet
index 4cfd1d8..733229b 100644
--- a/src/input/helix.input.pamphlet
+++ b/src/input/helix.input.pamphlet
@@ -9,9 +9,9 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 draw(curve(4*cos(t),4*sin(t),t),t = -10..10)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/help.input.pamphlet b/src/input/help.input.pamphlet
index cb65c98..18751f3 100644
--- a/src/input/help.input.pamphlet
+++ b/src/input/help.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool help.output
 )set message test on
@@ -40,7 +40,7 @@ a:= x**2 + 1
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/herm.input.pamphlet b/src/input/herm.input.pamphlet
index b5c38a9..3e4de7d 100644
--- a/src/input/herm.input.pamphlet
+++ b/src/input/herm.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool herm.output
 )set message test on
@@ -445,7 +445,7 @@ output "End of tests"
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/heugcd.input.pamphlet b/src/input/heugcd.input.pamphlet
index 0d52c96..aeb2a16 100644
--- a/src/input/heugcd.input.pamphlet
+++ b/src/input/heugcd.input.pamphlet
@@ -14,8 +14,8 @@ the gcd function in listgcd.spad.pamphlet.
 Of these examples, all but the first used to return 1.
 This is a test of revision 256 of FriCAS which changed
 the gcd function in listgcd.spad.pamphlet.
-@
-<<*>>=
+
+\begin{chunk}{*}
 )set break resume
 )spool heugcd.output
 )set message test on
@@ -59,7 +59,7 @@ gcd([36*x^2-1,36*x^2+12*x+1])$HeuGcd(SparseUnivariatePolynomial Integer)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} http://fricas.svn.sourceforge.net/fricas/?rev=256\&view=rev
diff --git a/src/input/hexadec.input.pamphlet b/src/input/hexadec.input.pamphlet
index 37da75e..1ecf4cb 100644
--- a/src/input/hexadec.input.pamphlet
+++ b/src/input/hexadec.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool hexadec.output
 )set message test on
@@ -90,7 +90,7 @@ g := gcd(p, q)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/huang.input.pamphlet b/src/input/huang.input.pamphlet
index ddaf6a7..3cc7b8d 100644
--- a/src/input/huang.input.pamphlet
+++ b/src/input/huang.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1996.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 
 -- this is here strictly for documentation purposes, nothing is executed
 --
@@ -556,7 +556,7 @@
 --	Output:
 --y = (-4 + x)^(-2)
 --inf
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/hyperbolicrules.input.pamphlet b/src/input/hyperbolicrules.input.pamphlet
index 7924cb5..853e96b 100644
--- a/src/input/hyperbolicrules.input.pamphlet
+++ b/src/input/hyperbolicrules.input.pamphlet
@@ -12,7 +12,7 @@
 \section{Definition of Hyperbolic Functions}
 \subsection{8.1 Hyperbolic sine of x}
 \[{\rm sinh}(x) == \frac{e^x-e^{-x}}{2}\]
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool hyperbolicrules.output
 )set message test on
@@ -46,10 +46,10 @@ t2:=sinhdef t1
 --R                                                     Type: Expression Integer
 --E 3
 
-@
+\end{chunk}
 \subsection{8.2 Hyperbolic cosine of x}
 \[{\rm cosh}(x) == \frac{e^x+e^{-x}}{2}\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 4 of 298
@@ -79,10 +79,10 @@ t2:=coshdef t1
 --R                                                     Type: Expression Integer
 --E 6
 
-@
+\end{chunk}
 \subsection{8.3 Hyperbolic tangent of x}
 \[{\rm tanh}(x) == \frac{e^x-e^{-x}}{e^x+e^{-x}}\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 7 of 298
@@ -114,10 +114,10 @@ t2:=tanhdef t1
 --R                                                     Type: Expression Integer
 --E 9
 
-@
+\end{chunk}
 \subsection{8.4 Hyperbolic cotangent of x}
 \[{\rm coth}(x) == \frac{e^x+e^{-x}}{e^x-e^{-x}}\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 10 of 298
@@ -149,10 +149,10 @@ t2:=cothdef t1
 --R                                                     Type: Expression Integer
 --E 12
 
-@
+\end{chunk}
 \subsection{8.5 Hyperbolic secant of x}
 \[{\rm sech}(x) == \frac{2}{e^x+e^{-x}}\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 13 of 298
@@ -183,10 +183,10 @@ t2:=sechdef t1
 --R                                                     Type: Expression Integer
 --E 15
 
-@
+\end{chunk}
 \subsection{8.6 Hyperbolic cosecant of x}
 \[{\rm csch}(x) == \frac{2}{e^x-e^{-x}}\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 16 of 298
@@ -217,11 +217,11 @@ t2:=cschdef t1
 --R                                                     Type: Expression Integer
 --E 18
 
-@
+\end{chunk}
 \section{Relationship among Hyperbolic Functions}
 \subsection{8.7 ${\rm tanh}(x)$}
 \[{\rm tanh}(x) == \frac{{\rm sinh}(x)}{{\rm cosh}(x)}\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 19 of 298
@@ -249,11 +249,11 @@ t2:=tanhrule t1
 --R                                                     Type: Expression Integer
 --E 21
 
-@
+\end{chunk}
 \subsection{8.8 ${\rm coth}(x)$}
 \[{\rm coth}(x) == \frac{1}{{\rm tanh}(x)}\]
 \[== \frac{{\rm cosh}(x)}{{\rm sinh}(x)}\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 22 of 298
@@ -306,10 +306,10 @@ t4:=cothrule2 t3
 --R                                                     Type: Expression Integer
 --E 27
 
-@
+\end{chunk}
 \subsection{8.9 ${\rm sech}(x)$}
 \[{\rm sech}(x) == \frac{1}{{\rm cosh}(x)}\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 28 of 298
@@ -337,10 +337,10 @@ t2:=sechrule t1
 --R                                                     Type: Expression Integer
 --E 30
 
-@
+\end{chunk}
 \subsection{8.10 ${\rm csch}(x)$}
 \[{\rm csch}(x) == \frac{1}{{\rm sinh}(x)}\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 31 of 298
@@ -368,10 +368,10 @@ t2:=cschrule t1
 --R                                                     Type: Expression Integer
 --E 33
 
-@
+\end{chunk}
 \subsection{8.11 ${\rm cosh}^2(x)-~{\rm sinh}^2(x)$}
 \[{\rm cosh}^2(x)-~{\rm sinh}^2(x) == 1\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 34 of 298
@@ -397,10 +397,10 @@ t2:=coshsinh t1
 --R                                                     Type: Expression Integer
 --E 36
 
-@
+\end{chunk}
 \subsection{8.12 ${\rm sech}^2(x)+~{\rm tanh}^2(x)$}
 \[{\rm sech}^2(x)+~{\rm tanh}^2(x) == 1\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 37 of 298
@@ -426,10 +426,10 @@ t2:=sechtanh t1
 --R                                                     Type: Expression Integer
 --E 39
 
-@
+\end{chunk}
 \subsection{8.13 ${\rm coth}^2(x)-~{\rm csch}^2(x)$}
 \[{\rm coth}^2(x)-~{\rm csch}^2(x) == 1\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 40 of 298
@@ -455,12 +455,12 @@ t2:=cothcsch t1
 --R                                                     Type: Expression Integer
 --E 42
 
-@
+\end{chunk}
 \section{Functions of Negative Arguments}
 Axiom already knows these simplifications
 \subsection{8.14 ${\rm sinh}(-x)$}
 \[{\rm sinh}(-x) == -~{\rm sinh}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 43 of 298
@@ -471,10 +471,10 @@ sinh(-x)
 --E 43
 
 
-@
+\end{chunk}
 \subsection{8.15 ${\rm cosh}(-x)$}
 \[{\rm cosh}(-x) == {\rm cosh}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 44 of 298
@@ -484,10 +484,10 @@ cosh(-x)
 --R                                                     Type: Expression Integer
 --E 44
 
-@
+\end{chunk}
 \subsection{8.16 ${\rm tanh}(-x)$}
 \[{\rm tanh}(-x) == -~{\rm tanh}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 45 of 298
@@ -497,10 +497,10 @@ tanh(-x)
 --R                                                     Type: Expression Integer
 --E 45
 
-@
+\end{chunk}
 \subsection{8.17 ${\rm csch}(-x)$}
 \[{\rm csch}(-x) == -~{\rm csch(x)}\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 46 of 298
@@ -510,10 +510,10 @@ csch(-x)
 --R                                                     Type: Expression Integer
 --E 46
 
-@
+\end{chunk}
 \subsection{8.18 ${\rm sech}(-x)$}
 \[{\rm sech}(-x) == {\rm sech}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 47 of 298
@@ -523,10 +523,10 @@ sech(-x)
 --R                                                     Type: Expression Integer
 --E 47
 
-@
+\end{chunk}
 \subsection{8.19 ${\rm coth}(-x)$}
 \[{\rm coth}(-x) == -~{\rm coth}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 48 of 298
@@ -536,11 +536,11 @@ coth(-x)
 --R                                                     Type: Expression Integer
 --E 48
 
-@
+\end{chunk}
 \section{Addition Formulas}
 \subsection{8.20 ${\rm sinh}(x \pm y)$}
 \[{\rm sinh}(x \pm y) == {\rm sinh}(x)~{\rm cosh}(y)\pm~{\rm cosh}(x)~{\rm sinh}(y)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 49 of 298
@@ -585,10 +585,10 @@ t4:=sinhsub t3
 --R                                                     Type: Expression Integer
 --E 54 
 
-@
+\end{chunk}
 \subsection{8.21 ${\rm cosh}(x \pm y)$}
 \[{\rm cosh}(x \pm y) == {\rm cosh}(x)~{\rm cosh}(y)\pm~{\rm sinh}(x)~{\rm sinh}(y)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 55 of 298
@@ -633,10 +633,10 @@ t4:=coshsub t3
 --R                                                     Type: Expression Integer
 --E 60
 
-@
+\end{chunk}
 \subsection{8.22 ${\rm tanh}(x \pm y)$}
 \[{\rm tanh}(x \pm y) == \frac{{\rm tanh}(x)\pm~{\rm tanh}(y)}{1\pm~{\rm tanh}(x)~{\rm tanh}(y)}\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 61 of 298
@@ -682,17 +682,17 @@ t3:=tanh(x-y) - (tanh(x)-tanh(y))/(1-tanh(x)*tanh(y))
 --R                                                     Type: Expression Integer
 --E 65
 
-@
+\end{chunk}
 This loops forever.
-<<*>>=
+\begin{chunk}{*}
 --S 66 of 298
 -- t4:=tanhneg t3
 --E 66
 
-@
+\end{chunk}
 \subsection{8.23 ${\rm coth}(x \pm y)$}
 \[{\rm coth}(x \pm y) == \frac{{\rm coth}(x)~{\rm coth}(y)\pm 1}{{\rm coth}(y)\pm~{\rm coth}(x)}\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 67 of 298
@@ -738,18 +738,18 @@ t3:=coth(x-y) - (coth(x)*coth(y)-1)/(coth(y)-coth(x))
 --R                                                     Type: Expression Integer
 --E 71
 
-@
+\end{chunk}
 This loops forever
-<<*>>=
+\begin{chunk}{*}
 --S 72 of 298
 --t4:=cothneg t3
 --E 72
 
-@
+\end{chunk}
 \section{Double Angle Formulas}
 \subsection{8.24 ${\rm sinh}(2x)$}
 \[{\rm sinh}(2x) == 2~{\rm sinh}(x)~{\rm cosh}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 73 of 298
@@ -773,12 +773,12 @@ t2:=sinh2x t1
 --R                                                     Type: Expression Integer
 --E 75
 
-@
+\end{chunk}
 \subsection{8.25 ${\rm cosh}(2x)$}
 \[{\rm cosh}(2x) == {\rm cosh}^2(x)+~{\rm sinh}^2(x)\]
 \[==2~{\rm cosh}^2(x)-1\]
 \[==1+2~{\rm sinh}^2(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 76 of 298
@@ -850,10 +850,10 @@ t6:=cosh2x3 t5
 --R                                                     Type: Expression Integer
 --E 84
 
-@
+\end{chunk}
 \subsection{8.26 ${\rm tanh}(2x)$}
 \[{\rm tanh}(2x) == \frac{2~{\rm tanh}(x)}{1+~{\rm tanh}^2(x)}\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 85 of 298
@@ -884,13 +884,13 @@ t2:=tanh2x t1
 --R                                                     Type: Expression Integer
 --E 87
 
-@
+\end{chunk}
 \section{Half Angle Formulas}
 \subsection{8.27 ${\rm sinh}\left(\frac{x}{2}\right)$}
 \[{\rm sinh}\left(\frac{x}{2}\right) == \pm\sqrt{\frac{{\rm cosh}(x) - 1}{2}}\quad [+~{\rm if\ \ }x > 0, -{\rm if\ \ }x < 0]\]
 
 if $x > 0$ then
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 88 of 298
@@ -923,9 +923,9 @@ t2:=sinhhalf t1
 --R                                                     Type: Expression Integer
 --E 90
 
-@
+\end{chunk}
 if $x < 0$ then
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 91 of 298
@@ -958,10 +958,10 @@ t2:=sinhhalfneg t1
 --R                                                     Type: Expression Integer
 --E 93
 
-@
+\end{chunk}
 \subsection{8.28 ${\rm cosh}\left(\frac{x}{2}\right)$}
 \[{\rm cosh}\left(\frac{x}{2}\right) == \sqrt{\frac{{\rm cosh}(x) + 1}{2}}\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 94 of 298
@@ -994,14 +994,14 @@ t2:=coshhalf t1
 --R                                                     Type: Expression Integer
 --E 96
 
-@
+\end{chunk}
 \subsection{8.29 ${\rm tanh}\left(\frac{x}{2}\right)$}
 \[{\rm tanh}\left(\frac{x}{2}\right) == \pm\sqrt{\frac{{\rm cosh}(x) - 1}{{\rm cosh}(x) + 1}}\quad [+~{\rm if\ \ }x > 0, -{\rm if\ \ }x < 0]\]
 \[== \frac{{\rm sinh}(x)}{{\rm cosh}(x)+1}\]
 \[== \frac{{\rm cosh}(x)-1}{{\rm sinh}(x)}\]
 
 if $x > 0$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 97 of 298
@@ -1031,9 +1031,9 @@ t2:=tanhhalf t1
 --R                                                     Type: Expression Integer
 --E 99
 
-@
+\end{chunk}
 if $x < 0$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 100 of 298
@@ -1121,12 +1121,12 @@ t2:=tanhhalf3 t1
 --R                                                     Type: Expression Integer
 --E 108
 
-@
+\end{chunk}
 
 \section{Multiple Angle Formulas}
 \subsection{8.30 ${\rm sinh}(3x)$}
 \[{\rm sinh}(3x) == 3~{\rm sinh}(x)+4~{\rm sinh}^3(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 109 of 298
@@ -1152,10 +1152,10 @@ t2:=sinh3x t1
 --R                                                     Type: Expression Integer
 --E 111
 
-@
+\end{chunk}
 \subsection{8.31 ${\rm cosh}(3x)$}
 \[{\rm cosh}(3x) == 4~{\rm cosh}^3(x)-3~{\rm cosh}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 112 of 298
@@ -1181,10 +1181,10 @@ t2:=cosh3x t1
 --R                                                     Type: Expression Integer
 --E 114
 
-@
+\end{chunk}
 \subsection{8.32 ${\rm tanh}(3x)$}
 \[{\rm tanh}(3x) == \frac{3~{\rm tanh}(x)+{\rm tanh}^3(x)}{1+3~{\rm tanh}^2(x)}\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 115 of 298
@@ -1216,10 +1216,10 @@ t2:=tanh3x t1
 --R                                                     Type: Expression Integer
 --E 117
 
-@
+\end{chunk}
 \subsection{8.33 ${\rm sinh}(4x)$}
 \[{\rm sinh}(4x) == 8~{\rm sinh}^3(x)~{\rm cosh}(x)+4~{\rm sinh}(x)~{\rm cosh}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 118 of 298
@@ -1245,10 +1245,10 @@ t2:=sinh4x t1
 --R                                                     Type: Expression Integer
 --E 120
 
-@
+\end{chunk}
 \subsection{8.34 ${\rm cosh}(4x)$}
 \[{\rm cosh}(4x) == 8~{\rm cosh}^4(x)-8~{\rm cosh}^2(x)+1\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 121 of 298
@@ -1274,10 +1274,10 @@ t2:=cosh4x t1
 --R                                                     Type: Expression Integer
 --E 123
 
-@
+\end{chunk}
 \subsection{8.35 ${\rm tanh}(4x)$}
 \[{\rm tanh}(4x) == \frac{4~{\rm tanh}(x)+4~{\rm tanh}^3(x)}{1+6~{\rm tanh}^2(x)+{\rm tanh}^4(x)}\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 124 of 298
@@ -1309,12 +1309,12 @@ t2:=tanh4x t1
 --R                                                     Type: Expression Integer
 --E 126
 
-@
+\end{chunk}
 
 \section{Powers of Hyperbolic Functions}
 \subsection{8.36 ${\rm sinh}^2(x)$}
 \[{\rm sinh}^2(x) == \frac{1}{2}~{\rm cosh}(2x)-\frac{1}{2}\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 127 of 298
@@ -1343,10 +1343,10 @@ t2:=sinhsquared t1
 --R                                                     Type: Expression Integer
 --E 129
 
-@
+\end{chunk}
 \subsection{8.37 ${\rm cosh}^2(x)$}
 \[{\rm cosh}^2(x) == \frac{1}{2}~{\rm cosh}(2x)+\frac{1}{2}\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 130 of 298
@@ -1361,10 +1361,10 @@ t1:=cosh(x)^2 - (1/2*cosh(2*x)+1/2)
 t2:=coshsquared t1
 --E 132
 
-@
+\end{chunk}
 \subsection{8.38 ${\rm sinh}^3(x)$}
 \[{\rm sinh}^3(x) == \frac{1}{4}~{\rm sinh}(3x)-\frac{3}{4}~{\rm sinh}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 133 of 298
@@ -1393,10 +1393,10 @@ t2:=sinhcubed t1
 --R                                                     Type: Expression Integer
 --E 135
 
-@
+\end{chunk}
 \subsection{8.39 ${\rm cosh}^3(x)$}
 \[{\rm cosh}^3(x) == \frac{1}{4}~{\rm cosh}(3x)+\frac{3}{4}~{\rm cosh}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 136 of 298
@@ -1425,10 +1425,10 @@ t2:=coshcubed t1
 --R                                                     Type: Expression Integer
 --E 138
 
-@
+\end{chunk}
 \subsection{8.40 ${\rm sinh}^4(x)$}
 \[{\rm sinh}^4(x) == \frac{3}{8}-\frac{1}{2}~{\rm cosh}(2x)+\frac{1}{8}~{\rm cosh}(4x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 139 of 298
@@ -1457,10 +1457,10 @@ t2:=sinhfourth t1
 --R                                                     Type: Expression Integer
 --E 141
 
-@
+\end{chunk}
 \subsection{8.41 ${\rm cosh}^4(x)$}
 \[{\rm cosh}^4(x) == \frac{3}{8}+\frac{1}{2}~{\rm cosh}(2x)+\frac{1}{8}~{\rm cosh}(4x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 142 of 298
@@ -1489,11 +1489,11 @@ t2:=coshfourth t1
 --R                                                     Type: Expression Integer
 --E 144
 
-@
+\end{chunk}
 \section{Sum, Difference, and Product of Hyperbolic Products}
 \subsection{8.42 ${\rm sinh}(x)+{\rm sinh}(y)$}
 \[{\rm sinh}(x)+{\rm sinh}(y) == 2~{\rm sinh}(\frac{1}{2}(x+y))~{\rm cosh}(\frac{1}{2}(x-y))\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 145 of 298
@@ -1521,10 +1521,10 @@ t2:=sinhplussinh t1
 --R                                                     Type: Expression Integer
 --E 147
 
-@
+\end{chunk}
 \subsection{8.43 ${\rm sinh}(x)-{\rm sinh}(y)$}
 \[{\rm sinh}(x)-{\rm sinh}(y) == 2~{\rm cosh}(\frac{1}{2}(x+y))~{\rm sinh}(\frac{1}{2}(x-y))\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 148 of 298
@@ -1552,10 +1552,10 @@ t2:=sinhminussinh t1
 --R                                                     Type: Expression Integer
 --E 150
 
-@
+\end{chunk}
 \subsection{8.44 ${\rm cosh}(x)+{\rm cosh}(y)$}
 \[{\rm cosh}(x)+{\rm cosh}(y) == 2~{\rm cosh}(\frac{1}{2}(x+y))~{\rm cosh}(\frac{1}{2}(x-y))\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 151 of 298
@@ -1583,10 +1583,10 @@ t2:=coshpluscosh t1
 --R                                                     Type: Expression Integer
 --E 153
 
-@
+\end{chunk}
 \subsection{8.45 ${\rm cosh}(x)-{\rm cosh}(y)$}
 \[{\rm cosh}(x)-{\rm cosh}(y) == 2~{\rm sinh}(\frac{1}{2}(x+y))~{\rm sinh}(\frac{1}{2}(x-y))\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 154 of 298
@@ -1614,10 +1614,10 @@ t2:=coshminuscosh t1
 --R                                                     Type: Expression Integer
 --E 156
 
-@
+\end{chunk}
 \subsection{8.46 ${\rm sinh}(x){\rm sinh}(y)$}
 \[{\rm sinh}(x){\rm sinh}(y) == \frac{1}{2}(~{\rm cosh}(x+y)-{\rm cosh}(x-y))\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 157 of 298
@@ -1645,10 +1645,10 @@ t2:=sinhtimessinh t1
 --R                                                     Type: Expression Integer
 --E 159
 
-@
+\end{chunk}
 \subsection{8.47 ${\rm cosh}(x){\rm cosh}(y)$}
 \[{\rm cosh}(x){\rm cosh}(y) == \frac{1}{2}(~{\rm cosh}(x+y)+{\rm cosh}(x-y))\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 160 of 298
@@ -1676,10 +1676,10 @@ t2:=coshtimescosh t1
 --R                                                     Type: Expression Integer
 --E 162
 
-@
+\end{chunk}
 \subsection{8.48 ${\rm sinh}(x){\rm cosh}(y)$}
 \[{\rm sinh}(x){\rm cosh}(y) == \frac{1}{2}(~{\rm sinh}(x+y)+{\rm sinh}(x-y))\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 163 of 298
@@ -1707,11 +1707,11 @@ t2:=sinhtimescosh t1
 --R                                                     Type: Expression Integer
 --E 165
 
-@
+\end{chunk}
 \section{Inverse Hyperbolic Functions}
 \subsection{8.55 ${\rm sinh}^{-1}(x)$}
 \[{\rm asinh}(x) == \log(x+\sqrt{x^2+1}) \quad {\rm if\ \ } -\infty < x < \infty\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 166 of 298
@@ -1739,10 +1739,10 @@ t2:=asinhrule t1
 --R                                                     Type: Expression Integer
 --E 168
 
-@
+\end{chunk}
 \subsection{8.56 ${\rm cosh}^{-1}(x)$}
 \[{\rm acosh}(x) == \log(x+\sqrt{x^2-1}) \quad {\rm if\ \ } x \ge 1\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 169 of 298
@@ -1770,11 +1770,11 @@ t2:=acoshrule t1
 --R                                                     Type: Expression Integer
 --E 171
 
-@
+\end{chunk}
 
 \subsection{8.57 ${\rm tanh}^{-1}(x)$}
 \[{\rm atanh}(x) == \frac{1}{2}\log(\frac{1+x}{1-x}) \quad {\rm if\ \ } -1 < x < 1\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 172 of 298
@@ -1806,11 +1806,11 @@ t2:=atanhrule t1
 --R                                                     Type: Expression Integer
 --E 174
 
-@
+\end{chunk}
 
 \subsection{8.58 ${\rm coth}^{-1}(x)$}
 \[{\rm acoth}(x) == \frac{1}{2}\log(\frac{x+1}{x-1}) \quad {\rm if\ \ } x>1 or x<-1\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 175 of 298
@@ -1842,11 +1842,11 @@ t2:=acothrule t1
 --R                                                     Type: Expression Integer
 --E 177
 
-@
+\end{chunk}
 
 \subsection{8.59 ${\rm sech}^{-1}(x)$}
 \[{\rm asech}(x) == \log(\frac{1}{x}+\sqrt{\frac{1}{x^2}-1}) \quad {\rm if\ \ } 0 < x \le 1\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 178 of 298
@@ -1884,10 +1884,10 @@ t2:=asechrule t1
 --R                                                     Type: Expression Integer
 --E 180
 
-@
+\end{chunk}
 \subsection{8.60 ${\rm csch}^{-1}(x)$}
 \[{\rm acsch}(x) == \log(\frac{1}{x}+\sqrt{\frac{1}{x^2}+1}) \quad {\rm if\ \ } x \ne 0\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 181 of 298
@@ -1925,11 +1925,11 @@ t2:=acschrule t1
 --R                                                     Type: Expression Integer
 --E 183
 
-@
+\end{chunk}
 \section{Relations between Inverse Hyperbolic Functions}
 \subsection{8.61 ${\rm csch}^{-1}(x)$}
 \[{\rm csch}^{-1}(x) == {\rm sinh}^{-1}\left(\frac{1}{x}\right)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 184 of 298
@@ -1969,10 +1969,10 @@ t2:=cschinv t1
 --R                                                     Type: Expression Integer
 --E 186
 
-@
+\end{chunk}
 \subsection{8.62 ${\rm sech}^{-1}(x)$}
 \[{\rm sech}^{-1}(x) == {\rm cosh}^{-1}\left(\frac{1}{x}\right)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 187 of 298
@@ -2012,10 +2012,10 @@ t2:=sechinv t1
 --R                                                     Type: Expression Integer
 --E 189
 
-@
+\end{chunk}
 \subsection{8.63 ${\rm coth}^{-1}(x)$}
 \[{\rm coth}^{-1}(x) == {\rm tanh}^{-1}\left(\frac{1}{x}\right)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 190 of 298
@@ -2055,11 +2055,11 @@ t2:=cothinv t1
 --R                                                     Type: Expression Integer
 --E 192
 
-@
+\end{chunk}
 \subsection{8.64 ${\rm sinh}^{-1}(x)$}
 \[{\rm sinh}^{-1}(x) == -~{\rm sinh}^{-1}(x)\]
 These identities are already known to Axiom
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 193 of 298
@@ -2069,10 +2069,10 @@ t1:=sinh(-x)^(-1) - -sinh(x)^(-1)
 --R                                                     Type: Expression Integer
 --E 193
 
-@
+\end{chunk}
 \subsection{8.65 ${\rm tanh}^{-1}(x)$}
 \[{\rm tanh}^{-1}(x) == -~{\rm tanh}^{-1}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 194 of 298
@@ -2082,10 +2082,10 @@ t1:=tanh(-x)^(-1) - -tanh(x)^(-1)
 --R                                                     Type: Expression Integer
 --E 194
 
-@
+\end{chunk}
 \subsection{8.66 ${\rm coth}^{-1}(x)$}
 \[{\rm coth}^{-1}(x) == -~{\rm coth}^{-1}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 195 of 298
@@ -2095,10 +2095,10 @@ t1:=coth(-x)^(-1) - -coth(x)^(-1)
 --R                                                     Type: Expression Integer
 --E 195
 
-@
+\end{chunk}
 \subsection{8.67 ${\rm csch}^{-1}(x)$}
 \[{\rm csch}^{-1}(x) == -~{\rm csch}^{-1}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 196 of 298
@@ -2108,12 +2108,12 @@ t1:=csch(-x)^(-1) - -csch(x)^(-1)
 --R                                                     Type: Expression Integer
 --E 196
 
-@
+\end{chunk}
 \section{Relationship between Hyperbolic and Trigonometric Functions}
 \subsection{8.74 $\sin(ix)$}
 \[\sin(ix) == i~{\rm sinh}(x)\]
 This match does not work.
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 197 of 298
@@ -2137,10 +2137,10 @@ t2:=sininv t1
 --R                                             Type: Expression Complex Integer
 --E 199
 
-@
+\end{chunk}
 \subsection{8.75 $\cos(ix)$}
 \[\cos(ix) == {\rm cosh}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 200 of 298
@@ -2164,10 +2164,10 @@ t2:=cosinv t1
 --R                                             Type: Expression Complex Integer
 --E 202
 
-@
+\end{chunk}
 \subsection{8.76 $\tan(ix)$}
 \[\tan(ix) == i~{\rm tanh}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 203 of 298
@@ -2191,10 +2191,10 @@ t2:=taninv t1
 --R                                             Type: Expression Complex Integer
 --E 205
 
-@
+\end{chunk}
 \subsection{8.77 $\csc(ix)$}
 \[\csc(ix) == -i~{\rm csch}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 206 of 298
@@ -2218,10 +2218,10 @@ t2:=cscinv t1
 --R                                             Type: Expression Complex Integer
 --E 208
 
-@
+\end{chunk}
 \subsection{8.78 $\sec(ix)$}
 \[\sec(ix) == {\rm sech}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 209 of 298
@@ -2245,10 +2245,10 @@ t2:=secinv t1
 --R                                             Type: Expression Complex Integer
 --E 211
 
-@
+\end{chunk}
 \subsection{8.79 $\cot(ix)$}
 \[\cot(ix) == -i~{\rm coth}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 212 of 298
@@ -2272,10 +2272,10 @@ t2:=cotinv t1
 --R                                             Type: Expression Complex Integer
 --E 214 
 
-@
+\end{chunk}
 \subsection{8.80 ${\rm sinh}(ix)$}
 \[\sinh(ix) == i~\sin(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 215 of 298
@@ -2299,10 +2299,10 @@ t2:=sinhinv t1
 --R                                             Type: Expression Complex Integer
 --E 217
 
-@
+\end{chunk}
 \subsection{8.81 ${\rm cosh}(ix)$}
 \[\cosh(ix) == \cos(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 218 of 298
@@ -2326,10 +2326,10 @@ t2:=coshinv t1
 --R                                             Type: Expression Complex Integer
 --E 220
 
-@
+\end{chunk}
 p\subsection{8.82 ${\rm tanh}(ix)$}
 \[\tanh(ix) == i\tan(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 221 of 298
@@ -2353,10 +2353,10 @@ t2:=tanhinv t1
 --R                                             Type: Expression Complex Integer
 --E 223
 
-@
+\end{chunk}
 \subsection{8.83 ${\rm csch}(ix)$}
 \[{\rm csch}(ix) == -i \csc(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 224 of 298
@@ -2380,10 +2380,10 @@ t2:=cschinv t1
 --R                                             Type: Expression Complex Integer
 --E 226
 
-@
+\end{chunk}
 \subsection{8.84 ${\rm sech}(ix)$}
 \[{\rm sech}(ix) == \sec(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 227 of 298
@@ -2407,10 +2407,10 @@ t2:=sechinv t1
 --R                                             Type: Expression Complex Integer
 --E 229
 
-@
+\end{chunk}
 \subsection{8.85 ${\rm coth}(ix)$}
 \[{\rm coth}(ix) == -i \cot(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 230 of 298
@@ -2434,12 +2434,12 @@ t2:=cothinv t1
 --R                                             Type: Expression Complex Integer
 --E 232
 
-@
+\end{chunk}
 
 \section{Periodicity of Hyperbolic Functions}
 \subsection{8.86 ${\rm sinh}(x+2k\pi i)$}
 \[{\rm sinh}(x+2k\pi i) == {\rm sinh}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 233 of 298
@@ -2463,10 +2463,10 @@ t2:=sinhperiod t1
 --R                                             Type: Expression Complex Integer
 --E 235
 
-@
+\end{chunk}
 \subsection{8.87 ${\rm cosh}(x+2k\pi i)$} 
 \[{\rm cosh}(x+2k\pi i) == {\rm cosh}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 236 of 298
@@ -2490,10 +2490,10 @@ t2:=coshperiod t1
 --R                                             Type: Expression Complex Integer
 --E 238
 
-@
+\end{chunk}
 \subsection{8.88 ${\rm tanh}(x+2k\pi i)$} 
 \[{\rm tanh}(x+k\pi i) == {\rm tanh}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 239 of 298
@@ -2517,10 +2517,10 @@ t2:=tanhperiod t1
 --R                                             Type: Expression Complex Integer
 --E 241
 
-@
+\end{chunk}
 \subsection{8.89 ${\rm csch}(x+2k\pi i)$} 
 \[{\rm csch}(x+2k\pi i) == {\rm csch}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 242 of 298
@@ -2544,10 +2544,10 @@ t2:=cschperiod t1
 --R                                             Type: Expression Complex Integer
 --E 244
 
-@
+\end{chunk}
 \subsection{8.90 ${\rm sech}(x+2k\pi i)$} 
 \[{\rm sech}(x+2k\pi i) == {\rm sech}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 245 of 298
@@ -2571,10 +2571,10 @@ t2:=sechperiod t1
 --R                                             Type: Expression Complex Integer
 --E 247
 
-@
+\end{chunk}
 \subsection{8.91 ${\rm coth}(x+2k\pi i)$} 
 \[{\rm coth}(x+k\pi i) == {\rm coth}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 248 of 298
@@ -2598,13 +2598,13 @@ t2:=cothperiod t1
 --R                                             Type: Expression Complex Integer
 --E 250
 
-@
+\end{chunk}
 
 \section{Relationship between Inverse Hyperbolic and Inverse Trigonometric Functions}
 These patterns do not match in Axiom.
 \subsection{8.92 $\sin^{-1}(ix)$}
 \[\sin^{-1}(ix) == i~{\rm sinh}^{-1}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 251 of 298
@@ -2634,10 +2634,10 @@ t2:=sinsinh t1
 --R                                             Type: Expression Complex Integer
 --E 253
 
-@
+\end{chunk}
 \subsection{8.93 ${\rm \sinh}^{-1}(ix)$}
 \[{\rm \sinh}^{-1}(ix) == i~\sin^{-1}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 254 of 298
@@ -2667,10 +2667,10 @@ t2:=sinhsin t1
 --R                                             Type: Expression Complex Integer
 --E 256
 
-@
+\end{chunk}
 \subsection{8.94 $\cos^{-1}(x)$}
 \[\cos^{-1}(x) == \pm ~{\rm cosh}^{-1}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 257 of 298
@@ -2729,10 +2729,10 @@ t2:=coscosh2 t1
 --R                                             Type: Expression Complex Integer
 --E 262
 
-@
+\end{chunk}
 \subsection{8.95 ${\rm \cosh}^{-1}(x)$}
 \[{\rm \cosh}^{-1}(x) == \pm i~\cos^{-1}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 263 of 298
@@ -2791,10 +2791,10 @@ t2:=coshcos2 t1
 --R                                             Type: Expression Complex Integer
 --E 268
 
-@
+\end{chunk}
 \subsection{8.96 $\tan^{-1}(ix)$}
 \[\tan^{-1}(ix) == i~{\rm tanh}^{-1}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 269 of 298
@@ -2824,10 +2824,10 @@ t2:=tantanh t1
 --R                                             Type: Expression Complex Integer
 --E 271
 
-@
+\end{chunk}
 \subsection{8.97 ${\rm tanh}^{-1}(ix)$}
 \[{\rm tanh}^{-1}(ix) == i~\tan^{-1}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 272 of 298
@@ -2857,10 +2857,10 @@ t2:=tanhtan t1
 --R                                             Type: Expression Complex Integer
 --E 274
 
-@
+\end{chunk}
 \subsection{8.98 $\cot^{-1}(ix)$}
 \[\cot^{-1}(ix) == -i~{\rm cosh}^{-1}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 275 of 298
@@ -2890,10 +2890,10 @@ t2:=cotcoth t1
 --R                                             Type: Expression Complex Integer
 --E 277
 
-@
+\end{chunk}
 \subsection{8.99 ${\rm coth}^{-1}(ix)$}
 \[{\rm coth}^{-1}(ix) == -i~\cot^{-1}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 278 of 298
@@ -2923,10 +2923,10 @@ t2:=cothcot t1
 --R                                             Type: Expression Complex Integer
 --E 280
 
-@
+\end{chunk}
 \subsection{8.100 $\sec^{-1}(x)$}
 \[\sec^{-1}(x) == \pm i~{\rm sech}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 281 of 298
@@ -2985,10 +2985,10 @@ t2:=secsech2 t1
 --R                                             Type: Expression Complex Integer
 --E 286
 
-@
+\end{chunk}
 \subsection{8.101 ${\rm sech}^{-1}(x)$}
 \[{\rm sech}^{-1}(x) == \pm i~\sec^{-1}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 287 of 298
@@ -3047,10 +3047,10 @@ t2:=sechsec t1
 --R                                             Type: Expression Complex Integer
 --E 292
 
-@
+\end{chunk}
 \subsection{8.102 $\csc^{-1}(ix)$}
 \[\csc^{-1}(ix) == -i~{\rm csch}^{-1}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 293 of 298
@@ -3080,10 +3080,10 @@ t2:=csccsch t1
 --R                                             Type: Expression Complex Integer
 --E 295
 
-@
+\end{chunk}
 \subsection{8.103 ${\rm csch}^{-1}(ix)$}
 \[{\rm csch}^{-1}(ix) ==-i~\csc^{-1}(x)\]
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 296 of 298
@@ -3113,17 +3113,17 @@ t2:=cschcsc t1
 --R                                             Type: Expression Complex Integer
 --E 298
 
-@
+\end{chunk}
 
 \begin{verbatim}
 rootrule4a:RewriteRule(INT,COMPLEX(INT),EXPR(COMPLEX(INT))):=rule(sqrt(p^2-q^2)==sqrt(p-q)*sqrt(q+p))  schaum17.input.pamphlet:
 tanrule2:RewriteRule(INT,COMPLEX(INT),EXPR(COMPLEX(INT))):=rule(tan(a) == sin(a)/cos(a))  schaum17.input.pamphlet:
 \end{verbatim}
 
-<<*>>=
+\begin{chunk}{*}
 )spool 
 )lisp (bye)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/ico.input.pamphlet b/src/input/ico.input.pamphlet
index c842a9a..a6a4806 100644
--- a/src/input/ico.input.pamphlet
+++ b/src/input/ico.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool ico.output
 )set message test on
@@ -593,7 +593,7 @@ makeViewport3D(space,title=="Icosahedron")
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/ideal.input.pamphlet b/src/input/ideal.input.pamphlet
index cef672c..df1002f 100644
--- a/src/input/ideal.input.pamphlet
+++ b/src/input/ideal.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool ideal.output
 )set message test on
@@ -175,7 +175,7 @@ quotient(ideal l,y)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/ifact.input.pamphlet b/src/input/ifact.input.pamphlet
index 21839f4..7513a3f 100644
--- a/src/input/ifact.input.pamphlet
+++ b/src/input/ifact.input.pamphlet
@@ -10,19 +10,19 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool ifact.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 Some integer factorizations
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 7
 factor(3**17-1)
 --R 
@@ -81,7 +81,7 @@ factor(11111111111111111111111111111111111111111111111)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/ifthenelse.input.pamphlet b/src/input/ifthenelse.input.pamphlet
index 03d2c7d..8a90425 100644
--- a/src/input/ifthenelse.input.pamphlet
+++ b/src/input/ifthenelse.input.pamphlet
@@ -9,16 +9,15 @@
 \end{abstract}
 \eject
 \tableofcontents
-\eject
-@
-<<*>>=
+
+\begin{chunk}{*}
 )set break resume
 )spool ifthenelse.output
 )set message test on
 )set message auto off
 )clear all
 
-@
+\end{chunk}
 I am having some problem with the if-then-else syntax in .input files
 
 {\bf Problem 1}: I refer to the Axiom book which ships with the program
@@ -46,7 +45,7 @@ which should be equivalent, namely:
 
 Well, I tried all of them, creating each time a blank r.input file with 
 inside only:
-<<*>>=
+\begin{chunk}{*}
  
 --S 1 of 20
 i:=2
@@ -56,12 +55,12 @@ i:=2
 --R                                                        Type: PositiveInteger
 --E 1
 
-@
+\end{chunk}
 followed by one of the ``if$\ldots$''.
 
 The result of the first two are ok, whereas the other three
 give some syntax error (different each time).
-<<*>>=
+\begin{chunk}{*}
 
 --S 2 of 20
 for i in 2..2 repeat
@@ -187,11 +186,11 @@ a:=
 --R                                                                  Type: Float
 --E 10
 
-@
+\end{chunk}
 {\bf Problem 2:} again with if then else, in a complex function I 
 noticed a wrong result (the function itself was ok). Simplifying,
 you can produce the same error with something like:
-<<*>>=
+\begin{chunk}{*}
 
 --S 11 of 20
 test: (INT,INT) -> List(INT)
@@ -227,9 +226,9 @@ test(4,-2)
 --R                                                           Type: List Integer
 --E 14
 
-@
+\end{chunk}
 returns correctly [1,1], but
-<<*>>=
+\begin{chunk}{*}
 
 --S 15 of 20
 4 rem -3
@@ -247,9 +246,9 @@ test(4,-3)
 --R                                                           Type: List Integer
 --E 16
 
-@
+\end{chunk}
 or
-<<*>>=
+\begin{chunk}{*}
 
 --S 17 of 20
 4 rem 2
@@ -267,9 +266,9 @@ test(4,2)
 --R                                                           Type: List Integer
 --E 18
 
-@
+\end{chunk}
 wrongly returns [0,1]. The same happens if I write
-<<*>>=
+\begin{chunk}{*}
 
 --S 19 of 20
 test1: (INT,INT) -> List(INT)
@@ -286,13 +285,13 @@ test1(a,b) ==
 --R                                                                   Type: Void
 --E 20
 
-@
+\end{chunk}
 Why?
-<<*>>=
+\begin{chunk}{*}
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/images1.input.pamphlet b/src/input/images1.input.pamphlet
index 3c178e2..0081c08 100644
--- a/src/input/images1.input.pamphlet
+++ b/src/input/images1.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 -- Color gallery page 1
 
 )read tknot
@@ -22,7 +22,7 @@
 -- draw a (15,17) torus knot
 
 torusKnot(15,17, 0.1, 6, 700)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/images1a.input.pamphlet b/src/input/images1a.input.pamphlet
index 4164de0..b9e82e5 100644
--- a/src/input/images1a.input.pamphlet
+++ b/src/input/images1a.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994-1996.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 
 -- Create a (p,q) torus-knot with radius r around the curve.
 -- The formula was derived by Larry Lambe.
@@ -121,7 +121,7 @@ torusKnot(p:DFLOAT, q:DFLOAT, r:DFLOAT, uSteps:PI, tSteps:PI):VIEW3D ==
 -- draw a (15,17) torus knot
 
 torusKnot(15,17, 0.1, 6, 700)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/images2.input.pamphlet b/src/input/images2.input.pamphlet
index 7232c5d..91ec778 100644
--- a/src/input/images2.input.pamphlet
+++ b/src/input/images2.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 -- Color gallery page 2
 
 )r newton
@@ -28,7 +28,7 @@ drawComplexVectorField(f**3, -3..3, -3..3)
 drawComplex(f**3, -3..3, -3..3)
 drawComplex(f**4, -3..3, -3..3)
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/images2a.input.pamphlet b/src/input/images2a.input.pamphlet
index 05bd36c..79b1663 100644
--- a/src/input/images2a.input.pamphlet
+++ b/src/input/images2a.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 
 -- Newton's Iteration function
 
@@ -199,7 +199,7 @@ drawComplexVectorField(f**3, -3..3, -3..3)
 drawComplex(f**3, -3..3, -3..3)
 drawComplex(f**4, -3..3, -3..3)
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/images3.input.pamphlet b/src/input/images3.input.pamphlet
index d9202ae..0002340 100644
--- a/src/input/images3.input.pamphlet
+++ b/src/input/images3.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 -- Color gallery pages 3-4
 
 )r tknot
@@ -22,7 +22,7 @@
 -- draw a seris of unfolding torus knots
 
 for i in 0..4 repeat torusKnot(2, 2 + i/4, 0.5, 25, 250)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/images3a.input.pamphlet b/src/input/images3a.input.pamphlet
index ff6d674..7b14f25 100644
--- a/src/input/images3a.input.pamphlet
+++ b/src/input/images3a.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994-1996.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 
 -- Create a (p,q) torus-knot with radius r around the curve.
 -- The formula was derived by Larry Lambe.
@@ -49,7 +49,7 @@ torusKnot(p:DFLOAT, q:DFLOAT, r:DFLOAT, uSteps:PI, tSteps:PI):VIEW3D ==
 -- draw a seris of unfolding torus knots
 
 for i in 0..4 repeat torusKnot(2, 2 + i/4, 0.5, 25, 250)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/images5.input.pamphlet b/src/input/images5.input.pamphlet
index 49a96b2..97178e8 100644
--- a/src/input/images5.input.pamphlet
+++ b/src/input/images5.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 -- Color gallery page 5
 
 
@@ -94,7 +94,7 @@ cf(u,v) == sin(21*u)
 ntubeDrawOpt(bcircle, twist2, 0..2*%pi, 0..2*%pi, _
               colorFunction == cf, var1Steps == 168, var2Steps == 126)
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/images5a.input.pamphlet b/src/input/images5a.input.pamphlet
index a44a381..28473c3 100644
--- a/src/input/images5a.input.pamphlet
+++ b/src/input/images5a.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994-1996.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 
 -- Etruscan Venus
 -- Parameterization by George Frances
@@ -167,7 +167,7 @@ cf(u,v) == sin(21*u)
 ntubeDrawOpt(bcircle, twist2, 0..2*%pi, 0..2*%pi, _
               colorFunction == cf, var1Steps == 168, var2Steps == 126)
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/images6.input.pamphlet b/src/input/images6.input.pamphlet
index 6d36277..8fe32cf 100644
--- a/src/input/images6.input.pamphlet
+++ b/src/input/images6.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 -- Color gallery page 6
 
 -- 3-d surface whose height is the real part of the Gamma function,
@@ -38,7 +38,7 @@ atf(x,y) ==
 
 draw(atf, -3.0..%pi, -3.0..%pi)
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/images6a.input.pamphlet b/src/input/images6a.input.pamphlet
index 44a06d4..4292af3 100644
--- a/src/input/images6a.input.pamphlet
+++ b/src/input/images6a.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994-1996.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 
 -- 3-d surface whose height is the real part of the Gamma function,
 -- and whose color is the argument of the Gamma function
@@ -37,7 +37,7 @@ atf(x,y) ==
 
 draw(atf, -3.0..%pi, -3.0..%pi)
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/images7.input.pamphlet b/src/input/images7.input.pamphlet
index 0d3ee37..20b5ee2 100644
--- a/src/input/images7.input.pamphlet
+++ b/src/input/images7.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 -- Color gallery page 7
 
 )r conformal
@@ -48,7 +48,7 @@ riemannConformalDraw(f, 0.1..0.99, 0..2*%pi, 7, 11, "polar")
 -- Visualization of the mapping from the complex plane to the Riemann Sphere.
 riemannSphereDraw(-4..4, -4..4, 7, 7, "cartesian")
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/images7a.input.pamphlet b/src/input/images7a.input.pamphlet
index bc6fc3b..80bae4e 100644
--- a/src/input/images7a.input.pamphlet
+++ b/src/input/images7a.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 
 -- Drawing conformal maps.
 
@@ -205,7 +205,7 @@ riemannConformalDraw(f, 0.1..0.99, 0..2*%pi, 7, 11, "polar")
 -- Visualization of the mapping from the complex plane to the Riemann Sphere.
 riemannSphereDraw(-4..4, -4..4, 7, 7, "cartesian")
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/images8.input.pamphlet b/src/input/images8.input.pamphlet
index 449ef05..4f9df2c 100644
--- a/src/input/images8.input.pamphlet
+++ b/src/input/images8.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 -- Color gallery page 8
 
 -- Sierpinsky's Tetrahedron
@@ -42,7 +42,7 @@ drawScherk(3,3)
 )set message test off
 drawRibbons([x**i for i in 1..5], x=-1..1, y=0..2)
 )set message test on
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/images8a.input.pamphlet b/src/input/images8a.input.pamphlet
index 7aae880..191d6e3 100644
--- a/src/input/images8a.input.pamphlet
+++ b/src/input/images8a.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 
 -- Sierpinsky's Tetrahedron
 
@@ -260,7 +260,7 @@ drawRibbons(flist, xrange, yrange) ==
 )set message test off
 drawRibbons([x**i for i in 1..5], x=-1..1, y=0..2)
 )set message test on
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/infprod.input.pamphlet b/src/input/infprod.input.pamphlet
index d2910c3..a9711ca 100644
--- a/src/input/infprod.input.pamphlet
+++ b/src/input/infprod.input.pamphlet
@@ -10,22 +10,22 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool infprod.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 \section{Infinite products of Taylor series}
 We compute series expansions of various infinite products using INFPROD0
 
 The partition function
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 11
 f : UTS(INT,x,0) := 1 - x
 --R 
@@ -43,10 +43,10 @@ g : UTS(INT,x,0) := recip f
 --R                                    Type: UnivariateTaylorSeries(Integer,x,0)
 --E 2
 
-@
+\end{chunk}
 The coefficient of $x^n$ in the following series is the number of ways
 that $n$ can be partitioned as a sum of positive integers:
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 11
 infiniteProduct g
 --R 
@@ -57,9 +57,9 @@ infiniteProduct g
 --R                                    Type: UnivariateTaylorSeries(Integer,x,0)
 --E 3
 
-@
+\end{chunk}
 Ramanujan's tau function
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 11
 h := infiniteProduct(f ** 24)
 --R 
@@ -73,10 +73,10 @@ h := infiniteProduct(f ** 24)
 --R                                    Type: UnivariateTaylorSeries(Integer,x,0)
 --E 4
 
-@
+\end{chunk}
 The coefficient of $x^n$ in the following series is Ramanujan's
 function tau(n)
-<<*>>=
+\begin{chunk}{*}
 --S 5 of 11
 delta := x * h
 --R 
@@ -90,10 +90,10 @@ delta := x * h
 --R                                    Type: UnivariateTaylorSeries(Integer,x,0)
 --E 5
 
-@
+\end{chunk}
 The function tau(n) is multiplicative, i.e. if gcd(m,n) = 1, then
 tau(m * n) = tau(m) * tau(n)
-<<*>>=
+\begin{chunk}{*}
 --S 6 of 11
 coefficient(delta,21)
 --R 
@@ -144,7 +144,7 @@ coefficient(delta,13) * coefficient(delta,5)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/int.input.pamphlet b/src/input/int.input.pamphlet
index c919750..a955a98 100644
--- a/src/input/int.input.pamphlet
+++ b/src/input/int.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool int.output
 )set message test on
@@ -409,7 +409,7 @@ b rem a
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/intaf.input.pamphlet b/src/input/intaf.input.pamphlet
index fde87c9..9614a57 100644
--- a/src/input/intaf.input.pamphlet
+++ b/src/input/intaf.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool intaf.output
 )set message test on
@@ -263,7 +263,7 @@ integrate(%,x)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/intbypart.input.pamphlet b/src/input/intbypart.input.pamphlet
index 1b2b304..52b6b7f 100644
--- a/src/input/intbypart.input.pamphlet
+++ b/src/input/intbypart.input.pamphlet
@@ -10,13 +10,13 @@ This are functions which are usually solved using integration by parts.
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool intbypart.output
 )set message test on
 )set message auto off
 )clear all
-@
+\end{chunk}
 \section{Overview}
 If $u$ and $v$ are functions, the product rule yields
 $$D_x(uv) = uv^{'} + vu^{'}$$
@@ -56,7 +56,7 @@ $$= (ln(x))(\frac{1}{2}x^2)-\int{(\frac{1}{2}x^2)({\frac{1}{x}}dx)}$$
 $$=\frac{1}{2}x^2 ln(x) - {\frac{1}{2}}\int{x dx}$$
 $$=\frac{1}{2} ln(x) - {\frac{1}{4}}x^2 + C$$
 $$=\frac{1}{4}x^2(2 ln(x) - 1)+C$$
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 16
 integrate(x*log(x),x)
 --R
@@ -66,7 +66,7 @@ integrate(x*log(x),x)
 --R               4
 --R                                          Type: Union(Expression Integer,...)
 --E 1
-@
+\end{chunk}
 
 \section{integrate $xe^x$}
 To solve
@@ -83,7 +83,7 @@ $$uv - \int{v du}$$
 $$= xe^x - \int{e^x dx}$$
 $$= xe^x - e^x + C$$
 $$= (x-1)e^x + C$$
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 16
 integrate(x*exp(x),x)
 --R
@@ -91,7 +91,7 @@ integrate(x*exp(x),x)
 --R   (2)  (x - 1)%e
 --R                                          Type: Union(Expression Integer,...)
 --E 2
-@
+\end{chunk}
 
 \section{integrate $e^x cos(x) dx$}
 This integral will require the substituion by parts rule to be applied twice.
@@ -134,7 +134,7 @@ $$=\frac{1}{2}(e^x sin(x) + e^x cos(x))$$
 
 so
 $$\int{e^x cos(x) dx} = \frac{1}{2}(e^x sin(x) + e^x cos(x)) + C$$
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 16
 integrate(exp(x)*sin(x),x)
 --R
@@ -144,7 +144,7 @@ integrate(exp(x)*sin(x),x)
 --R                  2
 --R                                          Type: Union(Expression Integer,...)
 --E 3
-@
+\end{chunk}
 
 \section{integrate $x^3 e^{x^2} dx$}
 $$u = x^2$$
@@ -156,7 +156,7 @@ $$\int{x^3 e^{x^2}}$$
 $$=\frac{1}{2}x^2 e^{x^2} - \int{x e^{x^2}} dx$$
 $$=\frac{1}{2}x^2 e^{x^2} - {\frac{1}{2}} e^{x^2} + C$$
 $$=\frac{1}{2}(x^2 -1)e^{x^2} + C$$
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 16
 integrate(x^3*exp(x^2),x)
 --R
@@ -168,7 +168,7 @@ integrate(x^3*exp(x^2),x)
 --R                                          Type: Union(Expression Integer,...)
 --E 4
 
-@
+\end{chunk}
 \section{integrate $ln(x^2+2)dx$}
 To integrate
 $$\int{ln(x^2+2)dx}$$
@@ -184,7 +184,7 @@ $$=x ln(x^2+2)-2\int{\left(1-\frac{2}{x^2+2}\right) dx}$$
 $$=x ln(x^2+2)-2x+
 \frac{4}{\sqrt{2}}\tan^{-1}\left(\frac{x}{\sqrt{2}}\right) + C$$
 $$x(ln(x^2+2)-2)+2\sqrt{2} \tan^{-1}\left(\frac{x}{\sqrt{2}}\right) + C$$
-<<*>>=
+\begin{chunk}{*}
 --S 5 of 16
 integrate(log(x^2+2),x)
 --R
@@ -194,7 +194,7 @@ integrate(log(x^2+2),x)
 --R                                    x
 --R                                          Type: Union(Expression Integer,...)
 --E 5
-@
+\end{chunk}
 
 \section{integrate $x\ sin(x) dx$}
 To integrate
@@ -208,14 +208,14 @@ so
 $$\int{x\ sin(x)\ dx}$$
 $$= -x\ cos(x) - \int{-cos(x)\ dx}$$
 $$= -x\ cos(x)+sin(x)+C$$
-<<*>>=
+\begin{chunk}{*}
 --S 6 of 16
 integrate(x*sin(x),x)
 --R
 --R   (6)  sin(x) - x cos(x)
 --R                                          Type: Union(Expression Integer,...)
 --E 6
-@
+\end{chunk}
 
 \section{integrate $x\ cos(x) dx$}
 To integrate
@@ -229,7 +229,7 @@ so
 $$\int{x\ cos(x)\ dx}$$
 $$= x\ sin(x) - \int{sin(x)\ dx}$$
 $$= x\ sin(x)+cos(x)+C$$
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 16
 integrate(x*cos(x),x)
 --R 
@@ -237,7 +237,7 @@ integrate(x*cos(x),x)
 --R   (7)  x sin(x) + cos(x)
 --R                                          Type: Union(Expression Integer,...)
 --E 7
-@
+\end{chunk}
 
 \section{integrate $x^2\ sin(x) dx$}
 To integrate
@@ -252,7 +252,7 @@ $$\int{x^2\ sin(x)\ dx}$$
 $$= -x^2\ cos(x) - \int{-2x\ cos(x)\ dx}$$
 $$= -x^2\ cos(x)+2\int{x\ cos(x)\ dx}$$
 $$=-x^2\ cos(x)+2(x\ sin(x)+cos(x))+C$$
-<<*>>=
+\begin{chunk}{*}
 --S 8 of 16
 integrate(x^2*cos(x),x)
 --R 
@@ -261,7 +261,7 @@ integrate(x^2*cos(x),x)
 --R   (8)  (x  - 2)sin(x) + 2x cos(x)
 --R                                          Type: Union(Expression Integer,...)
 --E 8
-@
+\end{chunk}
 
 \section{integrate $sin(x)\ cos(x)\ dx$}
 To integrate
@@ -278,7 +278,7 @@ but the integral appears on both sides of the equation so
 $$2\int{sin(x)cos(x)dx}=sin^2(x)$$
 so
 $$\int{sin(x)cos(x)dx}=\frac{1}{2}sin^2(x)+C$$
-<<*>>=
+\begin{chunk}{*}
 --S 9 of 16
 integrate(sin(x)*cos(x),x)
 --R 
@@ -289,7 +289,7 @@ integrate(sin(x)*cos(x),x)
 --R             2
 --R                                          Type: Union(Expression Integer,...)
 --E 9
-@
+\end{chunk}
 
 \section{integrate $ln(x) dx$}
 To integrate
@@ -304,14 +304,14 @@ $$\int{ln(x)\ dx}$$
 $$=x\ ln(x)=\int{1\ dx}$$
 $$=x\ ln(x) - x + C$$
 $$=x(ln(x)-1)+C$$
-<<*>>=
+\begin{chunk}{*}
 --S 10 of 16
 integrate(log(x),x)
 --R
 --R   (10)  x log(x) - x
 --R                                          Type: Union(Expression Integer,...)
 --E 10
-@
+\end{chunk}
 
 \section{integrate $x^2\ ln(x)\ dx$}
 To integrate
@@ -326,7 +326,7 @@ $$\int{x^2\ ln(x)\ dx}$$
 $$\frac{x^3}{3} ln(x) - \int{\frac{x^3}{3}\frac{dx}{x}}$$
 $$\frac{x^3}{3} ln(x)-\frac{1}{3}\int{x^2\ dx}$$
 $$\frac{x^3}{3}ln(x)-\frac{1}{9}x^3 + C$$
-<<*>>=
+\begin{chunk}{*}
 --S 11 of 16
 integrate(x^2*log(x),x)
 --R
@@ -336,7 +336,7 @@ integrate(x^2*log(x),x)
 --R                9
 --R                                          Type: Union(Expression Integer,...)
 --E 11
-@
+\end{chunk}
 
 \section{integrate $x^2\ e^x\ dx$}
 To integrate
@@ -350,7 +350,7 @@ so
 $$\int{x^2\ e^x\ dx}$$
 $$x^2\ e^x - 2x\ e^x - \int{e^x\ 2dx}$$
 $$x^2\ e^x - 2x\ e^x+2\ e^x+C$$
-<<*>>=
+\begin{chunk}{*}
 --S 12 of 16
 integrate(x^2*exp(x),x)
 --R 
@@ -359,7 +359,7 @@ integrate(x^2*exp(x),x)
 --R   (12)  (x  - 2x + 2)%e
 --R                                          Type: Union(Expression Integer,...)
 --E 12
-@
+\end{chunk}
 
 \section{integrate $sin^{-1}(x)\ dx$}
 To integrate
@@ -376,7 +376,7 @@ $$x\ sin^{-1}(x) + \frac{1}{2}\int{(1-x^2)^{-1/2}(-2x)\ dx}$$
 $$=x\ sin^{-1}(x) + \frac{1}{2}(2(1-x^2)^{1/2})+C$$
 $$=x\ sin^{-1}(x)+(1-x^2)^{1/2}+C$$
 $$=x\ sin^{-1}(x)+\sqrt{1-x^2}+C$$
-<<*>>=
+\begin{chunk}{*}
 --S 13 of 16
 integrate(asin(x),x)
 --R 
@@ -391,7 +391,7 @@ integrate(asin(x),x)
 --R                            2
 --R                                          Type: Union(Expression Integer,...)
 --E 13
-@
+\end{chunk}
 
 \section{integrate $\tan^{-1}(x)\ dx$}
 $$\int{\tan^{-1}(x)\ dx}$$
@@ -405,7 +405,7 @@ $$\int{\tan^{-1}(x)\ dx}$$
 $$=x\ \tan^{-1}-\int{\frac{x}{1+x^2}\ dx}$$
 $$=x\ tan^{-1}(x)-\frac{1}{2}\int{\frac{2x}{1+x^2}\ dx}$$
 $$=x\ tan^{-1}(x)-\frac{1}{2}ln(1+x^2)+C$$
-<<*>>=
+\begin{chunk}{*}
 --S 14 of 16
 integrate(atan(x),x)
 --R 
@@ -418,7 +418,7 @@ integrate(atan(x),x)
 --R                        2
 --R                                          Type: Union(Expression Integer,...)
 --E 14
-@
+\end{chunk}
 
 \section{integrate $\sec^3(x)\ dx$}
 $$\int{\sec^3(x)\ dx}$$
@@ -438,7 +438,7 @@ $$=2\int{sec^3(x)\ dx}=sec(x)tan(x)+ln(\vert sec(x)+\tan(x)\vert )$$
 so
 $$\int{sec^3(x)\ dx}=
 \frac{1}{2}(sec(x)tan(x)+ln(\vert sec(x)+\tan(x)\vert ))+C$$
-<<*>>=
+\begin{chunk}{*}
 --S 15 of 16
 integrate(sec(x)^3,x)
 --R 
@@ -452,7 +452,7 @@ integrate(sec(x)^3,x)
 --R                                    2cos(x)
 --R                                          Type: Union(Expression Integer,...)
 --E 15
-@
+\end{chunk}
 
 \section{integrate $x^3\ e^{2x}$}
 $$\int{x^3\ e^{2x}\ dx}$$
@@ -487,7 +487,7 @@ $$=\frac{1}{2}x^3\ e^{2x}-\frac{3}{4}x^2\ e^{2x}+
 \frac{3}{2}\left(\frac{1}{2}xe^{2x}-\frac{1}{2}\int{e^{2x}\ dx}\right)$$
 $$=\frac{1}{2}x^3\ e^{2x}-\frac{3}{4}x^2\ e^{2x}+
 \frac{3}{4}xe^{2x}-\frac{3}{8}e^{2x}+C$$
-<<*>>=
+\begin{chunk}{*}
 --S 16 of 16
 integrate(x^3*exp(2*x),x)
 --R 
@@ -500,7 +500,7 @@ integrate(x^3*exp(2*x),x)
 --E 16
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/intdeq.input.pamphlet b/src/input/intdeq.input.pamphlet
index 7e29cb6..88e8272 100644
--- a/src/input/intdeq.input.pamphlet
+++ b/src/input/intdeq.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool intdeq.output
 )set message test on
@@ -123,7 +123,7 @@ simplify %
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/intef.input.pamphlet b/src/input/intef.input.pamphlet
index 35162da..4c90ac8 100644
--- a/src/input/intef.input.pamphlet
+++ b/src/input/intef.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool intef.output
 )set message test on
@@ -71,9 +71,9 @@ integrate(%,x)
 --R                                          Type: Union(Expression Integer,...)
 --E 4
 
-@ 
+\end{chunk} 
 Here are three which do not have elementary integrals
-<<*>>=
+\begin{chunk}{*}
 --S 5 of 16
 sin(x)/x
 --R 
@@ -133,9 +133,9 @@ integrate(%,x)
 --R                                          Type: Union(Expression Integer,...)
 --E 10
 
-@
+\end{chunk}
 Real trigonometric functions are handled directly
-<<*>>=
+\begin{chunk}{*}
 --S 11 of 16
 cos(a * x) / (1 + cos(a * x))
 --R 
@@ -175,9 +175,9 @@ integrate(%,x)
 --R                                          Type: Union(Expression Integer,...)
 --E 14
 
-@
+\end{chunk}
 Integrals of hyperb. trigs are transformed back into hyperb. trigs.
-<<*>>=
+\begin{chunk}{*}
 --S 15 of 16
 cosh(a*x)*sinh(a*x)
 --R 
@@ -199,7 +199,7 @@ integrate(%,x)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/intef2.input.pamphlet b/src/input/intef2.input.pamphlet
index d431812..37071d7 100644
--- a/src/input/intef2.input.pamphlet
+++ b/src/input/intef2.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool intef2.output
 )set message test on
@@ -70,9 +70,9 @@ integrate(%,x)
 --R                                          Type: Union(Expression Integer,...)
 --E 4
 
-@
+\end{chunk}
 Here is one which does not have an elementary integral
-<<*>>=
+\begin{chunk}{*}
 --S 5 of 10
 x * cot x
 --R 
@@ -110,9 +110,9 @@ integrate(%,x)
 --R                                          Type: Union(Expression Integer,...)
 --E 8
 
-@
+\end{chunk}
 Integrals of hyperb. trigs are transformed back into hyperb. trigs.
-<<*>>=
+\begin{chunk}{*}
 --S 9 of 10
 cosh(a*x)*sinh(a*x)
 --R 
@@ -134,7 +134,7 @@ integrate(%,x)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/intg0.input.pamphlet b/src/input/intg0.input.pamphlet
index 4a49b22..abb76fe 100644
--- a/src/input/intg0.input.pamphlet
+++ b/src/input/intg0.input.pamphlet
@@ -10,19 +10,19 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool intg0.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 Some genus 0 integrations
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 25
 y := sqrt(a * x + b)
 --R 
@@ -189,9 +189,9 @@ integrate(t5,x)
 --R                                          Type: Union(Expression Integer,...)
 --E 13
 
-@
+\end{chunk}
 Examples of transcendentals over a curve of genus 0
-<<*>>=
+\begin{chunk}{*}
 --S 14 of 25
 t6:=x / (y + y**2) + log(y + 1)
 --R 
@@ -241,9 +241,9 @@ integrate(t7,x)
 --R                                          Type: Union(Expression Integer,...)
 --E 17
 
-@
+\end{chunk}
 One which does not have an elementary integral
-<<*>>=
+\begin{chunk}{*}
 --S 18 of 25
 t8:=log(1 + y) / x
 --R 
@@ -266,9 +266,9 @@ integrate(t8,x)
 --R                                          Type: Union(Expression Integer,...)
 --E 19
 
-@
+\end{chunk}
 Integrals of hyperbolic trigs are returned in terms of hyperb. trigs.
-<<*>>=
+\begin{chunk}{*}
 --S 20 of 25
 t9:=(sinh(1+sqrt(x+b))+2*sqrt(x+b))/(sqrt(x+b)*(x+cosh(1+sqrt(x+b))))
 --R 
@@ -293,9 +293,9 @@ integrate(t9,x)
 --R                                          Type: Union(Expression Integer,...)
 --E 21
 
-@
+\end{chunk}
 Examples of genus 0 functions presented as transcendentals
-<<*>>=
+\begin{chunk}{*}
 --S 22 of 25
 t10:=tan(atan(x)/2)
 --R 
@@ -352,7 +352,7 @@ integrate(t11,x)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/intheory.input.pamphlet b/src/input/intheory.input.pamphlet
index 45d47a2..617d1b2 100644
--- a/src/input/intheory.input.pamphlet
+++ b/src/input/intheory.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool intheory.output
 )set message test on
@@ -193,7 +193,7 @@ h(-1832)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/intlf.input.pamphlet b/src/input/intlf.input.pamphlet
index 783f3c0..3a2887e 100644
--- a/src/input/intlf.input.pamphlet
+++ b/src/input/intlf.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool intlf.output
 )set message test on
@@ -46,7 +46,7 @@ integrate(%, x)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/intmix.input.pamphlet b/src/input/intmix.input.pamphlet
index 3e73acd..6391a2f 100644
--- a/src/input/intmix.input.pamphlet
+++ b/src/input/intmix.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool intmix.output
 )set message test on
@@ -44,9 +44,9 @@ integrate(%, x)
 --R                                          Type: Union(Expression Integer,...)
 --E 2
 
-@
+\end{chunk}
 This one requires solving a risch d.e. over an elliptic curve
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 6
 ((5*x**4+2*x-2)/x**2 * (1+1/sqrt(x**3+1))+x/sqrt(x**3+1)) * exp(x*sqrt(x**3+1))
 --R 
@@ -75,9 +75,9 @@ integrate(%, x)
 --R                                          Type: Union(Expression Integer,...)
 --E 4
 
-@
+\end{chunk}
 This one does not have an elementary integral
-<<*>>=
+\begin{chunk}{*}
 --S 5 of 6
 log(1 + exp x)**(1/3) / (1 + log(1 + exp x))
 --R 
@@ -106,7 +106,7 @@ integrate(%, x)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/intmix2.input.pamphlet b/src/input/intmix2.input.pamphlet
index a5a0334..ec6c977 100644
--- a/src/input/intmix2.input.pamphlet
+++ b/src/input/intmix2.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool intmix2.output
 )set message test on
@@ -41,9 +41,9 @@ integrate(%, x)
 --R                                          Type: Union(Expression Integer,...)
 --E 2
 
-@
+\end{chunk}
 This one does not have an elementary integral
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 4
 log(1 + exp x)**(1/3) / (1 + log(1 + exp x))
 --R 
@@ -72,7 +72,7 @@ integrate(%, x)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/intrf.input.pamphlet b/src/input/intrf.input.pamphlet
index 76091b9..62f171d 100644
--- a/src/input/intrf.input.pamphlet
+++ b/src/input/intrf.input.pamphlet
@@ -10,19 +10,19 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool intrf.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 Some integration of rational functions
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 14
 x + y/x
 --R 
@@ -45,9 +45,9 @@ integrate(%,x)
 --R                                          Type: Union(Expression Integer,...)
 --E 2
 
-@
+\end{chunk}
 We need not factor the denominator
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 14
 (x+1)**2/((x+1)**6+1)
 --R 
@@ -217,7 +217,7 @@ integrate(%,x)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/ipftest.input.pamphlet b/src/input/ipftest.input.pamphlet
index 3a014f9..d63eca7 100644
--- a/src/input/ipftest.input.pamphlet
+++ b/src/input/ipftest.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool ipftest.output
 )set message test on
@@ -89,7 +89,7 @@ createPrimitivePoly(5)$FFPOLY(PF 3)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/iprntpk.input.pamphlet b/src/input/iprntpk.input.pamphlet
index 346709d..57bfa46 100644
--- a/src/input/iprntpk.input.pamphlet
+++ b/src/input/iprntpk.input.pamphlet
@@ -9,20 +9,20 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool iprntpk.output
 )set message test on
 )set message auto off
 )clear all
 
-@
+\end{chunk}
 This package exports but one function.  Nonetheless, we had a bug in
 this code, so a few tests are warranted. The function is iprint, which
 simply prints a string standard-output without a new line, and flushes
 the stream.
 
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 3
 )set expose add constructor IPRNTPK
 --R   InternalPrintPackage is now explicitly exposed in frame initial 
@@ -41,7 +41,7 @@ for i in 1..10 repeat iprint(i::String)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/is.input.pamphlet b/src/input/is.input.pamphlet
index 6ec0785..b72f479 100644
--- a/src/input/is.input.pamphlet
+++ b/src/input/is.input.pamphlet
@@ -10,17 +10,17 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool is.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 \begin{verbatim}
 This is the 3n + 1 function:   f(n) = n/2    if n is even,
                                       3n + 1 otherwise
@@ -37,7 +37,7 @@ but we code using the pattern matching syntax:
 
 The 'integer' is to return an integer instead of a polynomial
 \end{verbatim}
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 5
 f: INT -> INT
 --R                                                                   Type: Void
@@ -53,9 +53,9 @@ f n ==
 
 )set stream showall on
  
-@
+\end{chunk}
 The function g generates the stream of the repeated applications of f
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 5
 g(n:INT):STREAM(INT) == generate(f, n)
 --R 
@@ -64,10 +64,10 @@ g(n:INT):STREAM(INT) == generate(f, n)
 --R                                                                   Type: Void
 --E 3
 
-@
+\end{chunk}
 There is a conjecture that g(n) gets into the cycle (1 4 2)
 for every n
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 5
 s := g 27
 --R 
@@ -98,7 +98,7 @@ extend(s, 150)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/isprime.input.pamphlet b/src/input/isprime.input.pamphlet
index 9178121..72742ae 100644
--- a/src/input/isprime.input.pamphlet
+++ b/src/input/isprime.input.pamphlet
@@ -10,21 +10,21 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool isprime.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 The first two (2152302898747 and 3474749660383) are the only strong
 pseudoprimes bases 2,3,5,7,11 less than $10^13$: the remaining three
 are the only Carmichael numbers less than $10^16$ with this property.
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 15
 n := 6763*10627*29947 
 --R 
@@ -147,7 +147,7 @@ factor(n)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/kafile.input.pamphlet b/src/input/kafile.input.pamphlet
index c29b570..d718957 100644
--- a/src/input/kafile.input.pamphlet
+++ b/src/input/kafile.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool kafile.output
 )set message test on
@@ -66,7 +66,7 @@ ey."Char"
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/kamke0.input.pamphlet b/src/input/kamke0.input.pamphlet
index d1a9d8b..828fd5d 100644
--- a/src/input/kamke0.input.pamphlet
+++ b/src/input/kamke0.input.pamphlet
@@ -13,7 +13,7 @@ satisfies the original ordinary differential equation.
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 )spool kamke0.output
 )set break resume
 )set mes auto off
@@ -1896,7 +1896,7 @@ ode50a:=solve(ode50,y,x)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} {\bf http://www.cs.uwaterloo.ca/$\tilde{}$ecterrab/odetools.html}
diff --git a/src/input/kamke1.input.pamphlet b/src/input/kamke1.input.pamphlet
index c60b4e0..e982bf1 100644
--- a/src/input/kamke1.input.pamphlet
+++ b/src/input/kamke1.input.pamphlet
@@ -13,7 +13,7 @@ satisfies the original ordinary differential equation.
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 )spool kamke1.output
 )set break resume
 )set mes auto off
@@ -1110,10 +1110,10 @@ yx:=solve(ode64,y,x)
 --R                                          Type: Union(Expression Integer,...)
 --E 32
 
-@
+\end{chunk}
 The results of this substitution are too long to include.
 It should be zero but Axiom cannot simplify it.
-<<*>>=
+\begin{chunk}{*}
 --S 33 of 120
 ode64expr := D(yx,x) - sqrt((a*yx**2+b*yx+c)/(a*x**2+b*x+c));
 --E 33
@@ -1383,14 +1383,14 @@ ode73 := D(y(x),x) - ((a3*x**3+a2*x**2+a1*x+a0)/_
 --R                                                     Type: Expression Integer
 --E 52
 
-@
+\end{chunk}
 Attempting to solve this problem fails with the error:
 \begin{verbatim}
 ode73a:=solve(ode73,y,x)
    >> Error detected within library code:
    Table construction failed in MLIFT
 \end{verbatim}
-<<*>>=
+\begin{chunk}{*}
 
 --S 53 of 120
 ode74 := D(y(x),x) - f(x)*(y(x)-g(x))*sqrt((y(x)-a)*(y(x)-b))
@@ -2052,7 +2052,7 @@ ode100a:=solve(ode100,y,x)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} {\bf http://www.cs.uwaterloo.ca/$\tilde{}$ecterrab/odetools.html}
diff --git a/src/input/kamke2.input.pamphlet b/src/input/kamke2.input.pamphlet
index b4c8b85..316d237 100644
--- a/src/input/kamke2.input.pamphlet
+++ b/src/input/kamke2.input.pamphlet
@@ -13,7 +13,7 @@ satisfies the original ordinary differential equation.
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 )spool kamke2.output
 )set break resume
 )set mes auto off
@@ -50,7 +50,7 @@ ode101 := x*D(y(x),x) + x*y(x)**2 - y(x)
 --R                                                     Type: Expression Integer
 --E 4
 
-@
+\end{chunk}
 Maxima gives $$\frac{2x}{x^2-2\%c}$$ 
 which can be substituted and simplifies to 0.
 
@@ -61,7 +61,7 @@ which can be substituted and simplifies to 0.
 Mathematica gives
 $$y(x)=\frac{2x}{x^2+2}$$
 which can be substituted and simplifies to 0.
-<<*>>=
+\begin{chunk}{*}
 --S 5 of 126
 yx:=solve(ode101,y,x)
 --R
@@ -94,7 +94,7 @@ ode102 := x*D(y(x),x) + x*y(x)**2 - y(x) - a*x**3
 --R                                                     Type: Expression Integer
 --E 7
 
-@
+\end{chunk}
 Maxima fails.
 
 Maple gives
@@ -105,7 +105,7 @@ Mathematica gives
 $$\sqrt{a}~x~
 \tanh\left(\frac{1}{2}\left(\sqrt{a}~x^2+2\sqrt{a}~C[1]\right)\right)$$
 which, upon substitution, cannot be simplified to 0.
-<<*>>=
+\begin{chunk}{*}
 --S 8 of 126
 yx:=solve(ode102,y,x)
 --R
@@ -229,7 +229,7 @@ ode103 := x*D(y(x),x) + x*y(x)**2 - (2*x**2+1)*y(x) - x**3
 --R                                                     Type: Expression Integer
 --E 10
 
-@
+\end{chunk}
 Maxima fails.
 
 Maple gives
@@ -242,7 +242,7 @@ $$\frac{\left(e^{\sqrt{x}~x^2}+\sqrt{2}~e^{\sqrt{2}~x^2}+
 e^{2\sqrt{2}~C[1]}-\sqrt{2}~e^{2\sqrt{2}~C[1]}\right)x}
 {e^{\sqrt{2}~x^2}+e^{2*\sqrt{2}~C[1]}}$$
 which does not simplify to 0 on substitution.
-<<*>>=
+\begin{chunk}{*}
 --S 11 of 126
 yx:=solve(ode103,y,x)
 --R
@@ -320,7 +320,7 @@ ode106 := x*D(y(x),x) + x**a*y(x)**2 + (a-b)*y(x)/2 + x**b
 --R                                                     Type: Expression Integer
 --E 13
 
-@
+\end{chunk}
 Maxima fails.
 
 Maple gets
@@ -336,7 +336,7 @@ Mathematica gets
 $$e^{-\frac{1}{2}a\log(x)+\frac{1}{2}b\log(x)}
 \tan\left(\frac{2x^{\frac{a+b}{2}}}{a+b}-C[1]\right)$$
 which does not simplify to 0 on substitution.
-<<*>>=
+\begin{chunk}{*}
 --S 14 of 126
 yx:=solve(ode106,y,x)
 --R
@@ -354,9 +354,9 @@ ode107 := x*D(y(x),x) + a*x**alpha*y(x)**2 + b*y(x) - c*x**beta
 --R                                                     Type: Expression Integer
 --E 15
 
-@
+\end{chunk}
 Maxima fails.
-<<*>>=
+\begin{chunk}{*}
 --S 16 of 126
 yx:=solve(ode107,y,x)
 --R
@@ -373,7 +373,7 @@ ode108 := x*D(y(x),x) - y(x)**2*log(x) + y(x)
 --R
 --R                                                     Type: Expression Integer
 --E 17
-@
+\end{chunk}
 Maxima gets:
 $$\frac{1}{x\left(\frac{\log(x)}{x}+\frac{1}{x}+\%c\right)}$$
 which does not simplify on substitution.
@@ -385,7 +385,7 @@ which, on substitution, simplifies to 0.
 Mathematica gets:
 $$\frac{1}{1+xC[1]+\log(x)}$$
 which, on substitution, simplifies to 0.
-<<*>>=
+\begin{chunk}{*}
 --S 18 of 126
 yx:=solve(ode108,y,x)
 --R
@@ -421,7 +421,7 @@ ode109 := x*D(y(x),x) - y(x)*(2*y(x)*log(x)-1)
 --R                                                     Type: Expression Integer
 --E 20
 
-@
+\end{chunk}
 Maxima gets:
 $$\frac{1}{x\left(\%c-2\left(-\frac{\log(x)}{x}-\frac{1}{x}\right)\right)}$$
 which does not simplify to 0 on substitution.
@@ -433,7 +433,7 @@ which simplifies to 0 on substitition.
 Mathematica gets
 $$\frac{1}{2+xC[1]+2\log(x)}$$
 which simplifies to 0 on substitution.
-<<*>>=
+\begin{chunk}{*}
 --S 21 of 126
 yx:=solve(ode109,y,x)
 --R
@@ -469,9 +469,9 @@ ode110 := x*D(y(x),x) + f(x)*(y(x)**2-x**2)
 --R                                                     Type: Expression Integer
 --E 23
 
-@
+\end{chunk}
 Maxima failed.
-<<*>>=
+\begin{chunk}{*}
 --S 24 of 126
 yx:=solve(ode110,y,x)
 --R
@@ -489,11 +489,11 @@ ode111 := x*D(y(x),x) + y(x)**3 + 3*x*y(x)**2
 --R                                                     Type: Expression Integer
 --E 25
 
-@
+\end{chunk}
 Maxima fails.
 
 Maple gets 0 which simplifies to 0 on substitution.
-<<*>>=
+\begin{chunk}{*}
 
 --S 26 of 126
 yx:=solve(ode111,y,x)
@@ -513,14 +513,14 @@ ode112 := x*D(y(x),x) - sqrt(y(x)**2 + x**2) - y(x)
 --R                                                     Type: Expression Integer
 --E 27
 
-@
+\end{chunk}
 Maxima gets
 $$x=\%c \%e^{\displaystyle
 \frac{x {\rm asinh}\left(\frac{y}{x}\right)}{\vert x\vert}}$$
 which does not simplify to 0 on substitution.
 
 Maple gets 0 but simplification gives the result $csgn(x)x$.
-<<*>>=
+\begin{chunk}{*}
 
 --S 28 of 126
 yx:=solve(ode112,y,x)
@@ -540,7 +540,7 @@ ode113 := x*D(y(x),x) + a*sqrt(y(x)**2 + x**2) - y(x)
 --R                                                     Type: Expression Integer
 --E 29
 
-@
+\end{chunk}
 Maxima gets
 $$x=\%c \%e^{\displaystyle
 -\frac{x {\rm asinh}\left(\frac{y}{x}\right)}{a\vert x\vert}}$$
@@ -553,7 +553,7 @@ $$x*\sinh(C[1]+\log(x))$$
 If we choose $C[1]=0$ this simplifies to 
 $$\frac{1}{2}(-1+x^2)$$
 However, Mathematica cannot simplify either substition to 0.
-<<*>>=
+\begin{chunk}{*}
 --S 30 of 126
 yx:=solve(ode113,y,x)
 --R
@@ -572,7 +572,7 @@ ode114 := x*D(y(x),x) - x*sqrt(y(x)**2 + x**2) - y(x)
 --R                                                     Type: Expression Integer
 --E 31
 
-@
+\end{chunk}
 Maxima fails.
 
 Maple gets 0 but, on substitition, simplifies to $-x^2csqn(x)$.
@@ -580,7 +580,7 @@ Maple gets 0 but, on substitition, simplifies to $-x^2csqn(x)$.
 Mathematica gets
 $$x\sinh(x+C[1])$$
 but cannot simplify the substituted expression to 0.
-<<*>>=
+\begin{chunk}{*}
 --S 32 of 126
 yx:=solve(ode114,y,x)
 --R
@@ -599,7 +599,7 @@ ode115 := x*D(y(x),x) - x*(y(x)-x)*sqrt(y(x)**2 + x**2) - y(x)
 --R                                                     Type: Expression Integer
 --E 33
 
-@
+\end{chunk}
 Maxima failed.
 
 Maple claims the result is 0 but simplifies it, on substitution, to
@@ -607,7 +607,7 @@ $x^3 csgn(x)$.
 
 Mathematica claims that the equations appear to involve the variables
 to be solved for in an essentially non-algebraic way.
-<<*>>=
+\begin{chunk}{*}
 --S 34 of 126
 yx:=solve(ode115,y,x)
 --R
@@ -626,7 +626,7 @@ ode116 := x*D(y(x),x) - x*sqrt((y(x)**2 - x**2)*(y(x)**2-4*x**2)) - y(x)
 --R                                                     Type: Expression Integer
 --E 35
 
-@
+\end{chunk}
 Maxima failed.
 
 Maple claims the answer is 0 but simplifies, on substitution, to
@@ -636,7 +636,7 @@ Mathematica says that a potential solution of ComplexInfinity was possibly
 discarded by the verifier and should be checked by hand, possibly using
 limits. And the equations appear to involve the variables to be solved
 for in an essentially non-algebraic way.
-<<*>>=
+\begin{chunk}{*}
 --S 36 of 126
 yx:=solve(ode116,y,x)
 --R
@@ -656,7 +656,7 @@ ode117 := x*D(y(x),x) - x*exp(y(x)/x) - y(x) - x
 --R                                                     Type: Expression Integer
 --E 37
 
-@
+\end{chunk}
 Maxima gets:
 $$\%c~x=\%e^{\displaystyle -\frac{x\log(\%e^{y/x}+1)-y}{x}}$$
 which does not simplify to 0 on substitution.
@@ -670,7 +670,7 @@ solutions may not be found and to use Reduce for complete solution
 information. It gets the answer:
 $$-x\log\left(-1+\frac{e^{-C[1]}}{x}\right)$$
 which simplifies to 0.
-<<*>>=
+\begin{chunk}{*}
 --S 38 of 126
 yx:=solve(ode117,y,x)
 --R
@@ -688,7 +688,7 @@ ode118 := x*D(y(x),x) - y(x)*log(y(x))
 --R                                                     Type: Expression Integer
 --E 39
 
-@
+\end{chunk}
 Maxima gets 
 $$\%e^{\%e^{\%c}x}$$
 which, on substitution, simplifies to 0.
@@ -702,7 +702,7 @@ $$e^{e^{C[1]}x}$$
 which, on substitution simplifies to 
 $$e^x(x-\log(e^x))$$ which, if $log(e^x)$ could simplify to $x$
 then the result would be 0.
-<<*>>=
+\begin{chunk}{*}
 --S 40 of 126
 yx:=solve(ode118,y,x)
 --R
@@ -734,7 +734,7 @@ ode119 := x*D(y(x),x) - y(x)*(log(x*y(x))-1)
 --R                                                     Type: Expression Integer
 --E 42
 
-@
+\end{chunk}
 $$\frac{1}{x}$$ simplifies to 0.
 
 Maxima gets 
@@ -748,7 +748,7 @@ which, on substitution, does not simplify to 0.
 Mathematica gets
 $$\frac{1}{x(C[1]-log(log(x)))}$$
 which does not simplify to 0 on substitution.
-<<*>>=
+\begin{chunk}{*}
 --S 43 of 126
 yx:=solve(ode119,y,x)
 --R
@@ -767,7 +767,7 @@ ode120 := x*D(y(x),x) - y(x)*(x*log(x**2/y(x))+2)
 --R                                                     Type: Expression Integer
 --E 44
 
-@
+\end{chunk}
 Maxima fails.
 
 Maple gets
@@ -777,7 +777,7 @@ which, on substitution, does not simplify to 0.
 Mathematics get:
 $$2e^{-e^{-x} C[1]+e^{-x}{\rm ExpIntegralEi}[x]}x$$
 which does not simplify to 0 on substitution.
-<<*>>=
+\begin{chunk}{*}
 --S 45 of 126
 yx:=solve(ode120,y,x)
 --R
@@ -795,13 +795,13 @@ ode121 := x*D(y(x),x) + sin(y(x)-x)
 --R                                                     Type: Expression Integer
 --E 46
 
-@
+\end{chunk}
 Maxima fails.
 
 Mathematics gets
 $$\frac{\sin(x)}{1+\sin(x)}+x^{-sin(x)}C[1]$$
 which, on substitution, does not simplify to 0.
-<<*>>=
+\begin{chunk}{*}
 --S 47 of 126
 yx:=solve(ode121,y,x)
 --R
@@ -819,7 +819,7 @@ ode122 := x*D(y(x),x) + (sin(y(x))-3*x**2*cos(y(x)))*cos(y(x))
 --R                                                     Type: Expression Integer
 --E 48
 
-@
+\end{chunk}
 Maxima fails.
 
 Maple gets:
@@ -829,7 +829,7 @@ which, on substitution, simplifies to 0.
 Mathematica gets:
 $$\arctan\left(\frac{2x^3+C[1]}{2x}\right)$$
 which, on substitution, simplifies to 0.
-<<*>>=
+\begin{chunk}{*}
 --S 49 of 126
 yx:=solve(ode122,y,x)
 --R
@@ -847,7 +847,7 @@ ode123 := x*D(y(x),x) - x*sin(y(x)/x) - y(x)
 --R                                                     Type: Expression Integer
 --E 50
 
-@
+\end{chunk}
 Maxima gets:
 $$\%c~x=\%e^{\displaystyle -\frac{
 \log\left(\cos\left(\frac{y}{x}\right)+1\right)-
@@ -862,7 +862,7 @@ which, on substitution, simplifies to 0.
 Mathematica get:
 $$x^{1+sin(x)}C[1]$$
 which does not simplfy to 0 on substitution.
-<<*>>=
+\begin{chunk}{*}
 --S 51 of 126
 yx:=solve(ode123,y,x)
 --R
@@ -880,7 +880,7 @@ ode124 := x*D(y(x),x) + x*cos(y(x)/x) - y(x) + x
 --R                                                     Type: Expression Integer
 --E 52
 
-@
+\end{chunk}
 Maxima gets:
 $$\%c~x=\%e^{\displaystyle -\frac{\sin\left(\frac{y}{x}\right)}
 {\cos\left(\frac{y}{x}\right)+1}}$$
@@ -893,7 +893,7 @@ which, on substitution, does not simplify to 0.
 Mathematics gets
 $$2x\arctan(C[1]-\log(x))$$
 which does not simplify to 0 on substitution.
-<<*>>=
+\begin{chunk}{*}
 --S 53 of 126
 yx:=solve(ode124,y,x)
 --R
@@ -911,7 +911,7 @@ ode125 := x*D(y(x),x) + x*tan(y(x)/x) - y(x)
 --R                                                     Type: Expression Integer
 --E 54
 
-@
+\end{chunk}
 Maxima gets:
 $$\arcsin\left(\frac{1}{\%c~x}\right)x$$
 which, on substitition, does simplifes to 0.
@@ -923,7 +923,7 @@ which, on substitution, simplifies to 0.
 Mathematica gets
 $$\arcsin\left(\frac{e^{C[1]}}{x}\right)$$
 which does not simplify to 0 on substitution.
-<<*>>=
+\begin{chunk}{*}
 --S 55 of 126
 yx:=solve(ode125,y,x)
 --R
@@ -941,7 +941,7 @@ ode126 := x*D(y(x),x) - y(x)*f(x*y(x))
 --R                                                     Type: Expression Integer
 --E 56
 
-@
+\end{chunk}
 Maxima fails.
 
 Maple gets
@@ -952,7 +952,7 @@ which, on substitution, simplifies to 0.
 Mathematica gets
 $$\frac{1}{-f(x)-C[1]}$$
 which does not simplify to 0 on substitution.
-<<*>>=
+\begin{chunk}{*}
 --S 57 of 126
 yx:=solve(ode126,y,x)
 --R
@@ -969,7 +969,7 @@ ode127 := x*D(y(x),x) - y(x)*f(x**a*y(x)**b)
 --R
 --R                                                     Type: Expression Integer
 --E 58
-@
+\end{chunk}
 Maxima fails.
 
 Maple gives 0 which, on substitution simplifies to 0.
@@ -977,7 +977,7 @@ Maple gives 0 which, on substitution simplifies to 0.
 Mathematica gives:
 $$b\left(-\frac{f(x^a)}{a}-C[1]\right)^{-1/b}$$
 which, on substitution, does not simplify to 0.
-<<*>>=
+\begin{chunk}{*}
 --S 59 of 126
 yx:=solve(ode127,y,x)
 --R
@@ -994,7 +994,7 @@ ode128 := x*D(y(x),x) + a*y(x) - f(x)*g(x**a*y(x))
 --R
 --R                                                     Type: Expression Integer
 --E 60
-@
+\end{chunk}
 Maxima fails.
 
 Maple gives 
@@ -1005,7 +1005,7 @@ which, on substitution, gives 0.
 Mathematica gives 
 $$e^{\frac{f(x)g(x^{1+a})}{1+a}-a\log(x)}C[1]$$
 which, on substitution, does not simplify to 0.
-<<*>>=
+\begin{chunk}{*}
 --S 61 of 126
 yx:=solve(ode128,y,x)
 --R
@@ -1022,7 +1022,7 @@ ode129 := (x+1)*D(y(x),x) + y(x)*(y(x)-x)
 --R
 --R                                                     Type: Expression Integer
 --E 62
-@
+\end{chunk}
 Maxima gets:
 $$\frac{\%e^x}{(x+1)\left(\int{\frac{\%e^x}{(x+1)^2}}~dx+\%c\right)}$$
 which, on substitution, does not simplify to 0.
@@ -1035,7 +1035,7 @@ which, on substitution, simplifies to 0.
 Mathematica gives
 $$-\frac{e^{1+x}}{e^{1+x}-eC[1]-exC[1]-{\rm ExpIntegralEi}(1+x)-
 x{\rm ExpIntegralEi}(1+x)}$$
-<<*>>=
+\begin{chunk}{*}
 --S 63 of 126
 yx:=solve(ode129,y,x)
 --R 
@@ -1060,7 +1060,7 @@ ode130 := 2*x*D(y(x),x) - y(x) -2*x**3
 --R
 --R                                                     Type: Expression Integer
 --E 64
-@
+\end{chunk}
 Maxima gets:
 $$\%e^{\displaystyle\frac{\log(x)}{2}}\displaystyle
 \left(\frac{2\%e^{\displaystyle\frac{5\log(x)}{2}}}{5}+\%c\right)$$
@@ -1073,7 +1073,7 @@ which, on substitution, simplifies to 0.
 Mathematica gives
 $$\frac{2x^3}{5}+\sqrt{x}C[1]$$
 which simplifies to 0 on substitution.
-<<*>>=
+\begin{chunk}{*}
 --S 65 of 126
 ode130a:=solve(ode130,y,x)
 --R
@@ -1110,7 +1110,7 @@ ode131 := (2*x+1)*D(y(x),x) - 4*exp(-y(x)) + 2
 --R
 --R                                                     Type: Expression Integer
 --E 68
-@
+\end{chunk}
 Maxima gets:
 $$\log\left(\frac{4\%e^{2\%c}x+2\%e^{2\%c}+1}
 {2\%e^{2\%c}x+\%e^{2\%c}}\right)$$
@@ -1123,7 +1123,7 @@ which simplifies to 0 when substituted.
 Mathematica gives
 $$\log\left(2+\frac{1}{1+2x}\right)$$
 which simplifies to 0 when substituted.
-<<*>>=
+\begin{chunk}{*}
 --S 69 of 126
 yx:=solve(ode131,y,x)
 --R
@@ -1155,7 +1155,7 @@ ode132 := 3*x*D(y(x),x) - 3*x*log(x)*y(x)**4 - y(x)
 --R
 --R                                                     Type: Expression Integer
 --E 71
-@
+\end{chunk}
 Maxima gives 3 solutions.
 $$-\frac{\left(\sqrt{3}~4^{1/3}\%i-4^{1/3}\right)x^{1/3}}
 {2\left(6x^2\log(x)-3x^2+4\%c\right)^{1/3}}$$
@@ -1186,7 +1186,7 @@ $$\frac{(-2)^{2/3}x^{1/3}}{(3x^2+4C[1]-6x^2\log(x))^{1/3}}$$
 $$\frac{( 2)^{2/3}x^{1/3}}{(3x^2+4C[1]-6x^2\log(x))^{1/3}}$$
 $$\frac{(-1)^{1/3}2^{2/3}x^{1/3}}{(3x^2+4C[1]-6x^2\log(x))^{1/3}}$$
 which do not simplify to 0 on substitution.
-<<*>>=
+\begin{chunk}{*}
 --S 72 of 126
 yx:=solve(ode132,y,x)
 --R
@@ -1240,7 +1240,7 @@ ode133 := x**2*D(y(x),x) + y(x) - x
 --R
 --R                                                     Type: Expression Integer
 --E 74
-@
+\end{chunk}
 Maxima gets
 $$\%e^{1/x}
 \left(\int{\displaystyle\frac{\%e^{-\frac{1}{x}}}{x}}~dx+\%c\right)$$
@@ -1253,7 +1253,7 @@ which simplifies to 0 on substitution.
 Mathematica gets:
 $$e^{1/x}C[1]-e^{1/x}{\rm ExpIntegralEi}\left(-\frac{1}{x}\right)$$
 which simplifies to 0 on substitution.
-<<*>>=
+\begin{chunk}{*}
 --S 75 of 126
 yx:=solve(ode133,y,x)
 --R 
@@ -1281,7 +1281,7 @@ ode134 := x**2*D(y(x),x) - y(x) + x**2*exp(x-1/x)
 --R
 --R                                                     Type: Expression Integer
 --E 76
-@
+\end{chunk}
 Maxima gets
 $$\%e^{\displaystyle -\frac{1}{x}}\left(\%c-\%e^x\right)$$
 which simplifies to 0 on substitution.
@@ -1297,7 +1297,7 @@ This is curious because the basis element is the same one
 computed by Axiom, which Axiom cannot simplify either. 
 However, Axiom can simplify the particular element to 0
 and Mathematica cannot.
-<<*>>=
+\begin{chunk}{*}
 --S 77 of 126
 ode134a:=solve(ode134,y,x)
 --R
@@ -1336,7 +1336,7 @@ ode135 := x**2*D(y(x),x) - (x-1)*y(x)
 --R
 --R                                                     Type: Expression Integer
 --E 80
-@
+\end{chunk}
 Maxima gets
 $$\%c~x\%e^{1/x}$$
 which simplifies to 0 when substituted.
@@ -1348,7 +1348,7 @@ which simplifies to 0 when substituted.
 Mathematica gets 
 $$e^{1/x}xC[1]$$
 which simplifies to 0 when substituted.
-<<*>>=
+\begin{chunk}{*}
 --S 81 of 126
 ode135a:=solve(ode135,y,x)
 --R
@@ -1382,7 +1382,7 @@ ode136 := x**2*D(y(x),x) + y(x)**2 + x*y(x) + x**2
 --R
 --R                                                     Type: Expression Integer
 --E 84
-@
+\end{chunk}
 Maxima gets
 $$-\frac{x\log(\%c~x)-x}{log(\%c~x)}$$
 which simplifies to 0 on substitution.
@@ -1394,7 +1394,7 @@ which simplifies to 0 on substitution.
 Mathematica gets
 $$\frac{-x-xC[1]+x\log(x)}{C[1]-\log(x)}$$
 which simplifies to 0 on substition.
-<<*>>=
+\begin{chunk}{*}
 --S 85 of 126
 yx:=solve(ode136,y,x)
 --R
@@ -1432,7 +1432,7 @@ ode137 := x**2*D(y(x),x) - y(x)**2 - x*y(x)
 --R
 --R                                                     Type: Expression Integer
 --E 87
-@
+\end{chunk}
 Maxima gets
 $$\frac{x}{\log\left(\displaystyle \frac{1}{\%c~x}\right)}$$
 which simplifies to 0 on substitution.
@@ -1444,7 +1444,7 @@ which simplifies to 0 on substitution.
 Mathematica gets:
 $$\frac{x}{C[1]-\log(x)}$$
 which simplifies to 0 on substitution.
-<<*>>=
+\begin{chunk}{*}
 --S 88 of 126
 yx:=solve(ode137,y,x)
 --R
@@ -1475,7 +1475,7 @@ ode138 := x**2*D(y(x),x) - y(x)**2 - x*y(x) - x**2
 --R
 --R                                                     Type: Expression Integer
 --E 90
-@
+\end{chunk}
 Maxima gets
 $$\%c~x=\%e^{\arctan\left(\frac{y}{x}\right)}$$
 which does not simplify to 0 when substituted.
@@ -1487,7 +1487,7 @@ which simplifies to 0 on substitution.
 Mathematica get:
 $$x\tan(C[2]+\log(x))$$
 which simplifies to 0 when substituted.
-<<*>>=
+\begin{chunk}{*}
 
 --S 91 of 126
 yx:=solve(ode138,y,x)
@@ -1561,13 +1561,13 @@ ode139 := x**2*(D(y(x),x)+y(x)**2) + a*x**k - b*(b-1)
 --R                                                     Type: Expression Integer
 --E 93
 
-@
+\end{chunk}
 Maxima gets 6 answers, one of which is:
 $$\frac{-\left(3^{5/6}\%i\left(ax^k+\%ckx-\%cx+b^2k-bk-b^2+b\right)^{1/3}-
 3^{1/3}\left(ax^k+\%ckx-\%cx+b^2k-bk-b^2+b\right)^{1/3}\right)}
 {\left(2(k-1)^{1/3}x^{1/3}\right)}$$
 which simplifies to 0 on substitution.
-<<*>>=
+\begin{chunk}{*}
 
 --S 94 of 126
 yx:=solve(ode139,y,x)
@@ -1585,7 +1585,7 @@ ode140 := x**2*(D(y(x),x)+y(x)**2) + 4*x*y(x) + 2
 --R
 --R                                                     Type: Expression Integer
 --E 95
-@
+\end{chunk}
 Maxima gets
 $$-\frac{x-2\%c}{x^2-\%c~x}$$
 which simplifies to 0 when substituted.
@@ -1597,7 +1597,7 @@ which simplifies to 0 when substituted.
 Mathematica gets:
 $$-\frac{2}{x}+\frac{1}{x+C[1]}$$
 which does not simplify.
-<<*>>=
+\begin{chunk}{*}
 --S 96 of 126
 yx:=solve(ode140,y,x)
 --R
@@ -1631,13 +1631,13 @@ ode141 := x**2*(D(y(x),x)+y(x)**2) + a*x*y(x) + b
 --R                                                     Type: Expression Integer
 --E 98
 
-@
+\end{chunk}
 Maxima gets:
 $$\%e^{\displaystyle -a\log(x)-2x}
 \left(\%c-b \int{\displaystyle
 \frac{\%e^{\displaystyle a\log(x)+2x}}{x^2}}~dx\right)$$
 which, when substituted, simplifies to 0.
-<<*>>=
+\begin{chunk}{*}
 
 --S 99 of 126
 yx:=solve(ode141,y,x)
@@ -1831,9 +1831,9 @@ ode142 := x**2*(D(y(x),x)-y(x)**2) - a*x**2*y(x) + a*x + 2
 --R                                                     Type: Expression Integer
 --E 101
 
-@
+\end{chunk}
 Maxima failed.
-<<*>>=
+\begin{chunk}{*}
 
 --S 102 of 126
 yx:=solve(ode142,y,x)
@@ -1890,7 +1890,7 @@ ode143 := x**2*(D(y(x),x)+a*y(x)**2) - b
 --R                                                     Type: Expression Integer
 --E 104
 
-@
+\end{chunk}
 Maxima, if $4ab+1 >= 0$ gets:
 $$x=\%c\%e^{
 -\frac{\displaystyle\log\left(
@@ -1905,7 +1905,7 @@ $$x=\%c\%e^{
 {\displaystyle\sqrt{-4ab-1}}}$$
 
 neither of which simplify to 0 on substitution.
-<<*>>=
+\begin{chunk}{*}
 
 --S 105 of 126
 yx:=solve(ode143,y,x)
@@ -1970,9 +1970,9 @@ ode144 := x**2*(D(y(x),x)+a*y(x)**2) + b*x**alpha + c
 --R                                                     Type: Expression Integer
 --E 107
 
-@
+\end{chunk}
 Maxima failed.
-<<*>>=
+\begin{chunk}{*}
 --S 108 of 126
 yx:=solve(ode144,y,x)
 --R
@@ -1990,11 +1990,11 @@ ode145 := x**2*D(y(x),x) + a*y(x)**3 - a*x**2*y(x)**2
 --R                                                     Type: Expression Integer
 --E 109
 
-@
+\end{chunk}
 Maxima failed.
 
 Maple claims the result is 0, which when substituted, simplifies to 0
-<<*>>=
+\begin{chunk}{*}
 --S 110 of 126
 yx:=solve(ode145,y,x)
 --R
@@ -2012,11 +2012,11 @@ ode146 := x**2*D(y(x),x) + x*y(x)**3 + a*y(x)**2
 --R                                                     Type: Expression Integer
 --E 111
 
-@
+\end{chunk}
 Maxima failed.
 
 Maple gets 0 which, when substituted, simplifies to 0.
-<<*>>=
+\begin{chunk}{*}
 --S 112 of 126
 yx:=solve(ode146,y,x)
 --R
@@ -2033,11 +2033,11 @@ ode147 := x**2*D(y(x),x) + a*x**2*y(x)**3 + b*y(x)**2
 --R
 --R                                                     Type: Expression Integer
 --E 113
-@
+\end{chunk}
 Maxima failed.
 
 Maple gets 0 which, when substituted, results in 0.
-<<*>>=
+\begin{chunk}{*}
 --S 114 of 126
 yx:=solve(ode147,y,x)
 --R
@@ -2054,7 +2054,7 @@ ode148 := (x**2+1)*D(y(x),x) + x*y(x) - 1
 --R
 --R                                                     Type: Expression Integer
 --E 115
-@
+\end{chunk}
 Maxima gets
 $$({\rm asinh}(x)+\%c)\%e^{-\frac{\displaystyle\log(x^2+1)}{\displaystyle 2}}$$
 which when substituted, does not simplify to 0.
@@ -2066,7 +2066,7 @@ which when substituted, simplifies to 0.
 Mathematica gets
 $$\frac{{\rm arcsinh}(x)}{\sqrt{1+x^2}}+\frac{C[1]}{\sqrt{1+x^2}}$$
 gives 0 when substituted.
-<<*>>=
+\begin{chunk}{*}
 --S 116 of 126
 ode148a:=solve(ode148,y,x)
 --R
@@ -2109,7 +2109,7 @@ ode149 := (x**2+1)*D(y(x),x) + x*y(x) - x*(x**2+1)
 --R
 --R                                                     Type: Expression Integer
 --E 119
-@
+\end{chunk}
 Maxima gets
 $$\left(\displaystyle\frac{(x^2+1)^{3/2}}{3}+\%c\right)
 \%e^{\displaystyle -\frac{log(x^2+1)}{2}}$$
@@ -2122,7 +2122,7 @@ which simplifies to 0 when substituted.
 Mathematica gets
 $$\frac{1}{3}(1+x^2)+\frac{C[1]}{\sqrt{1+x^2}}$$
 which simplifes to 0 when substituted.
-<<*>>=
+\begin{chunk}{*}
 --S 120 of 126
 ode149a:=solve(ode149,y,x)
 --R
@@ -2161,7 +2161,7 @@ ode150 := (x**2+1)*D(y(x),x) + 2*x*y(x) - 2*x**2
 --R
 --R                                                     Type: Expression Integer
 --E 123
-@
+\end{chunk}
 Maxima gets
 $$\displaystyle\frac{\frac{2x^3}{3}+\%c}{x^2+1}$$
 which simplifies to 0 on substitution.
@@ -2173,7 +2173,7 @@ which simplifies to 0 on substitution.
 Mathematica gets:
 $$\frac{2x^3}{3(1+x^2)}+\frac{C[1]}{1+x^2}$$
 which simplifies to 0 on substitution.
-<<*>>=
+\begin{chunk}{*}
 
 --S 124 of 126
 ode150a:=solve(ode150,y,x)
@@ -2206,7 +2206,7 @@ ode150expr := (x**2+1)*D(yx,x) + 2*x*yx - 2*x**2
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} {\bf http://www.cs.uwaterloo.ca/$\tilde{}$ecterrab/odetools.html}
diff --git a/src/input/kamke3.input.pamphlet b/src/input/kamke3.input.pamphlet
index fc280ab..f2ff41a 100644
--- a/src/input/kamke3.input.pamphlet
+++ b/src/input/kamke3.input.pamphlet
@@ -13,7 +13,7 @@ satisfies the original ordinary differential equation.
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 )spool kamke3.output
 )set break resume
 )set mes auto off
@@ -418,7 +418,7 @@ ode162 := (x-a)*(x-b)*D(y(x),x) + y(x)**2 + k*(y(x)+x-a)*(y(x)+x-b)
 --R     k x  + (- b - a)k x + a b k
 --R                                                     Type: Expression Integer
 --E 35
-@
+\end{chunk}
 This loops infinitely 
 \begin{verbatim}
 ode162a:=solve(ode162,y,x)
@@ -428,7 +428,7 @@ ode162a:=solve(ode162,y,x)
      ?  - 3?  + (- k  + 3)? + k  - 1, trying square-free.
 
 \end{verbatim} 
-<<*>>=
+\begin{chunk}{*}
 --S 36 of 139
 ode163 := 2*x**2*D(y(x),x) - 2*y(x)**2 - x*y(x) + 2*a**2*x
 --R 
@@ -2053,13 +2053,13 @@ ode182 := x*(x**3-1)*D(y(x),x) - 2*x*y(x)**2 + y(x) + x**2
 --R
 --R                                                     Type: Expression Integer
 --E 90
-@
+\end{chunk}
 
 This never completes
 \begin{verbatim}
  ode182a:=solve(ode182,y,x)
 \end{verbatim}
-<<*>>=
+\begin{chunk}{*}
 
 --S 91 of 139
 ode183 := (2*x**4-x)*D(y(x),x) - 2*(x**3-1)*y(x)
@@ -2114,12 +2114,12 @@ ode184 := (a*x**2+b*x+c)**2*(D(y(x),x)+y(x)**2) + A
 --R                                                     Type: Expression Integer
 --E 95
 
-@
+\end{chunk}
 This never completes
 \begin{verbatim}
  ode184a:=solve(ode184,y,x)
 \end{verbatim}
-<<*>>=
+\begin{chunk}{*}
 
 --S 96 of 139
 ode185 := x**7*D(y(x),x) + 2*(x**2+1)*y(x)**3 + 5*x**3*y(x)**2
@@ -2674,7 +2674,7 @@ ode200expr := (a*sin(x)**2+b)*D(yx,x) + a*yx*sin(2*x) + A*x*(a*sin(x)**2+c)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} {\bf http://www.cs.uwaterloo.ca/$\tilde{}$ecterrab/odetools.html}
diff --git a/src/input/kamke4.input.pamphlet b/src/input/kamke4.input.pamphlet
index 57e395d..bf688c5 100644
--- a/src/input/kamke4.input.pamphlet
+++ b/src/input/kamke4.input.pamphlet
@@ -13,7 +13,7 @@ satisfies the original ordinary differential equation.
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 )spool kamke4.output
 )set break resume
 )set mes auto off
@@ -1453,7 +1453,7 @@ solve(ode250,y,x)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} {\bf http://www.cs.uwaterloo.ca/$\tilde{}$ecterrab/odetools.html}
diff --git a/src/input/kamke5.input.pamphlet b/src/input/kamke5.input.pamphlet
index 34a8ee0..0c95b00 100644
--- a/src/input/kamke5.input.pamphlet
+++ b/src/input/kamke5.input.pamphlet
@@ -13,7 +13,7 @@ satisfies the original ordinary differential equation.
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 )spool kamke5.output
 )set break resume
 )set mes auto off
@@ -1626,7 +1626,7 @@ ode300expr := 6*x*yx**2*D(yx,x)+2*yx**3+x
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} {\bf http://www.cs.uwaterloo.ca/$\tilde{}$ecterrab/odetools.html}
diff --git a/src/input/kamke6.input.pamphlet b/src/input/kamke6.input.pamphlet
index ad31cd3..42102df 100644
--- a/src/input/kamke6.input.pamphlet
+++ b/src/input/kamke6.input.pamphlet
@@ -13,7 +13,7 @@ satisfies the original ordinary differential equation.
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 )spool kamke6.output
 )set break resume
 )set mes auto off
@@ -1314,13 +1314,13 @@ y:=operator 'y
 --R
 --E 75
 
-@
+\end{chunk}
 I have no idea what to do with this
 \begin{verbatim}
  ode331 := D(y(x),x)*convert([sum(f[nu](x)*y(x)**nu,'nu'=1..p)],`+`)-_
                      convert([sum(g[nu](x)*y(x)**nu,'nu'=1..q)],`+`)
 \end{verbatim}
-<<*>>=
+\begin{chunk}{*}
 --R
 --S 76 of 120
 --Rode333 := (2*x**(5/2)*y(x)**(3/2)+x**2*y(x)-x)*D(y(x),x)-_
@@ -3653,7 +3653,7 @@ I have no idea what to do with this
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} {\bf http://www.cs.uwaterloo.ca/$\tilde{}$ecterrab/odetools.html}
diff --git a/src/input/kamke7.input.pamphlet b/src/input/kamke7.input.pamphlet
index eb989d3..0ac440b 100644
--- a/src/input/kamke7.input.pamphlet
+++ b/src/input/kamke7.input.pamphlet
@@ -18,7 +18,7 @@ in other regression test files.
 \tableofcontents
 \eject
 \section{Generated results}
-<<*>>=
+\begin{chunk}{*}
 )spool kamke7.output
 )set break resume
 )set mes auto off
@@ -1530,7 +1530,7 @@ solve(ode957,y,x)
 --E 97
 )spool
 )lisp (bye)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} {\bf http://www.cs.uwaterloo.ca/$\tilde{}$ecterrab/odetools.html}
diff --git a/src/input/kernel.input.pamphlet b/src/input/kernel.input.pamphlet
index 7ced09a..b9a05e8 100644
--- a/src/input/kernel.input.pamphlet
+++ b/src/input/kernel.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool kernel.output
 )set message test on
@@ -174,7 +174,7 @@ argument mainKernel e
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/knot.input.pamphlet b/src/input/knot.input.pamphlet
index 073e649..7f33a18 100644
--- a/src/input/knot.input.pamphlet
+++ b/src/input/knot.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 
 )cl all
 
@@ -32,7 +32,7 @@ torusKnot(p,q,r) ==
   draw(Curve, t=0..2*%pi, tubeRadius == r, title == Title)
 
 torusKnot(2, 3, 0.3)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/knot2.input.pamphlet b/src/input/knot2.input.pamphlet
index 5ece9fc..1004e2d 100644
--- a/src/input/knot2.input.pamphlet
+++ b/src/input/knot2.input.pamphlet
@@ -10,19 +10,19 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool knot2.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 This is the color function, nothing elaborate for now
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 7
 f(x:SF):SF == x
 --R 
@@ -31,12 +31,12 @@ f(x:SF):SF == x
 --R                                                                   Type: Void
 --E 1
 
-@
+\end{chunk}
 Creation of the knot.
 Only p/q is really used, but p and q correspond to       
 the factors in the notes deriving these knotty things    
 see the notes for detail...too involved to explain here  
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 7
 [p,q] := [3,5]
 --R 
@@ -79,13 +79,13 @@ theRange := 0..maxRange
 --R                                                             Type: Segment Pi
 --E 6
 
-@
+\end{chunk}
 Create the knot
 \begin{verbatim}
 knot:TUBE := tubePlot(sin t * cos(PQ*t),cos t * cos(PQ*t),cos t * sin(PQ*t),
                       f, theRange, 0.1::SF, 6, "open" )
 \end{verbatim}
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 7
 v:=draw(curve(sin t * cos(PQ*t),cos t * cos(PQ*t),cos t * sin(PQ*t)), _
         t=theRange, tubeRadius==0.1)
@@ -99,18 +99,18 @@ v:=draw(curve(sin t * cos(PQ*t),cos t * cos(PQ*t),cos t * sin(PQ*t)), _
 --R                                               Type: ThreeDimensionalViewport
 --E 7
 
-@
+\end{chunk}
 close the viewport
 \begin{verbatim}
 makeViewport3D(knot, concat ["knot",p::String,q::String])$VIEW3D
 close(v)
 \end{verbatim}
-<<*>>=
+\begin{chunk}{*}
 
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/knownbugs.input.pamphlet b/src/input/knownbugs.input.pamphlet
index 53bab29..7369dee 100644
--- a/src/input/knownbugs.input.pamphlet
+++ b/src/input/knownbugs.input.pamphlet
@@ -18,9 +18,9 @@ status: open
 \end{verbatim}
 This returns -5.0
 but should return -4.0
-<<bug1>>=
+\begin{chunk}{bug1}
 round(-3.77623)
-@
+\end{chunk}
 \subsection{bug2: truncate}
 \begin{verbatim}
 20030618001 by Bill Page <bill.page1@sympatico.ca>
@@ -29,9 +29,9 @@ status: open
 \end{verbatim}
 This returns -10.0
 but should return -9.0
-<<bug2>>=
+\begin{chunk}{bug2}
 truncate(-9.654)
-@
+\end{chunk}
 \subsection{bug3 fractionPart}
 \begin{verbatim}
 20030618002 by Bill Page <bill.page1@sympatico.ca>
@@ -40,9 +40,9 @@ status: open
 \end{verbatim}
 This returns 0.22377
 but should return -0.77623
-<<bug3>>=
+\begin{chunk}{bug3}
 fractionPart(-3.77623)
-@
+\end{chunk}
 \subsection{bug4: Using local database}
 \begin{verbatim}
 20030619000 by Bill Page <bill.page1@sympatico.ca>
@@ -56,40 +56,40 @@ Add a line that reads:
 \end{verbatim}
 Next time you start axiom and type a+1 you should no longer
 get algebra load messages.
-<<bug4>>=
+\begin{chunk}{bug4}
 --20030619000 by Bill Page <bill.page1@sympatico.ca>
 -- Using local database msg is missing a newline
-@
+\end{chunk}
 \subsection{bug5: axiom issues 2 prompts}
 \begin{verbatim}
 20030619001 by Bill Page <bill.page1@sympatico.ca>
 version: Tuesday June 17, 2003 at 18:27:07 
 status: open
 \end{verbatim}
-<<bug5>>=
+\begin{chunk}{bug5}
 --20030619001 by Bill Page <bill.page1@sympatico.ca>
 -- axiom issues 2 prompts on startup
-@
+\end{chunk}
 \subsection{bug6: turn off loading messages}
 \begin{verbatim}
 20030619002 by Bill Page <bill.page1@sympatico.ca>
 version: Tuesday June 17, 2003 at 18:27:07 
 status: closed
 \end{verbatim}
-<<bug6>>=
+\begin{chunk}{bug6}
 --20030619002 by Bill Page <bill.page1@sympatico.ca>
 )set message autoload off
-@
+\end{chunk}
 \subsection{bug7: axiom.input should have a period prefix}
 \begin{verbatim}
 20030619003 by Bill Page <bill.page1@sympatico.ca>
 version: Tuesday June 17, 2003 at 18:27:07 
 status: closed
 \end{verbatim}
-<<bug6>>=
+\begin{chunk}{bug6}
 --20030619002 by Bill Page <bill.page1@sympatico.ca>
 )set message autoload off
-@
+\end{chunk}
 \subsection{bug8: 325 Severe bug in normalize\$EFSTRUC}
 There is a severe bug in normalize\$EFSTRUC, which affects
 summation ('innersum\$SUMFS), maybe also integration.
@@ -339,20 +339,20 @@ Is this possible?
 
 Martin
 \end{verbatim}
-<<bug8>>=
+\begin{chunk}{bug8}
 T := t^(n^2)*(sqrt(1+t))^n
 S := T/eval(T,n=n-1)
 normalize S
-@
-<<*>>=
-<<bug1>>
-<<bug2>>
-<<bug3>>
-<<bug4>>
-<<bug5>>
-<<bug6>>
-<<bug8>>
-@
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{bug1}
+\getchunk{bug2}
+\getchunk{bug3}
+\getchunk{bug4}
+\getchunk{bug5}
+\getchunk{bug6}
+\getchunk{bug8}
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/kovacic.input.pamphlet b/src/input/kovacic.input.pamphlet
index 97ff3c8..732ea33 100644
--- a/src/input/kovacic.input.pamphlet
+++ b/src/input/kovacic.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool kovacic.output
 )set message test on
@@ -27,7 +27,7 @@ y := operator y
 --R                                                          Type: BasicOperator
 --E 1
 
-@
+\end{chunk}
 I've added case 2 of Kovacic's algorithm for version 1.5
 (version 1.0 had case 1 only, version 2.0 will have case 3).
 For order 2 equations, we can now find those solutions whose
@@ -36,7 +36,7 @@ logarithmic derivative is an algebraic function of degree 2
 were rational functions).
 
 Here is an example of an equation that we can solve in 1.5 and not in 1.0:
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 3
 eq := 2*x**3 * differentiate(y x,x,2) + 3*x**2 * differentiate(y x,x) - 2 * y x
 --R 
@@ -61,7 +61,7 @@ solve(eq,y,x).basis
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/kuipers.input.pamphlet b/src/input/kuipers.input.pamphlet
index 260c5ea..847ec93 100644
--- a/src/input/kuipers.input.pamphlet
+++ b/src/input/kuipers.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool kuipers.output
 )set message test on
@@ -328,7 +328,7 @@ rv:=eval(R,[a=%pi/6,b=%pi/3])
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/laplace.input.pamphlet b/src/input/laplace.input.pamphlet
index 94debba..af3d326 100644
--- a/src/input/laplace.input.pamphlet
+++ b/src/input/laplace.input.pamphlet
@@ -10,28 +10,28 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool laplace.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 Some laplace transforms
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 27
 f n == t**(n-1)*exp(-a*t)/factorial(n-1)
 --R 
 --R                                                                   Type: Void
 --E 1
 
-@
+\end{chunk}
 L(f n) is $1/(s+a)^n$
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 27
 f 2
 --R 
@@ -239,9 +239,9 @@ laplace(%, t, s)
 --R                                                     Type: Expression Integer
 --E 21
 
-@
+\end{chunk}
 We handle some very limited form of special functions
-<<*>>=
+\begin{chunk}{*}
 --S 22 of 27
 a*Ci(b*t) + c*Si(d*t)
 --R 
@@ -285,9 +285,9 @@ laplace(%, t, s)
 --R                                                     Type: Expression Integer
 --E 25
 
-@
+\end{chunk}
 We keep unknown transforms as formal transform in the answer
-<<*>>=
+\begin{chunk}{*}
 --S 26 of 27
 sin(a*t) - a*t*cos(a*t) + exp(t**2)
 --R 
@@ -313,7 +313,7 @@ laplace(%, t, s)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/leg.input.pamphlet b/src/input/leg.input.pamphlet
index e55bf41..31dbcb5 100644
--- a/src/input/leg.input.pamphlet
+++ b/src/input/leg.input.pamphlet
@@ -10,19 +10,19 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool leg.output
 )set message test on
 )set message auto off
 )clear all
 
-@ 
+\end{chunk} 
 \section{Legendre Polynomials}
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 4
 p(n | n=0) == 1
 --R 
@@ -56,7 +56,7 @@ p 3
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/lexp.input.pamphlet b/src/input/lexp.input.pamphlet
index f8af576..3acd832 100644
--- a/src/input/lexp.input.pamphlet
+++ b/src/input/lexp.input.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 )cl all
 
  a: Symbol := 'a
@@ -25,7 +25,7 @@
  log(g)$group
  g1: group := inv(g)
  g*g1
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/lextripk.input.pamphlet b/src/input/lextripk.input.pamphlet
index 8ce0cdd..b07f04e 100644
--- a/src/input/lextripk.input.pamphlet
+++ b/src/input/lextripk.input.pamphlet
@@ -6,10 +6,10 @@
 \maketitle
 \begin{abstract}
 \end{abstract}
-\eject
+
 \tableofcontents
-\eject
-<<*>>=
+
+\begin{chunk}{*}
 )cl all
 
 R := Integer
@@ -34,8 +34,8 @@ ls2 : List Symbol := concat(ls,new()$Symbol)
 zdpack := ZDSOLVE(R,ls,ls2)
 concat [univariateSolve(ts)$zdpack for ts in lts]
 concat [realSolve(ts)$zdpack for ts in lts]
-@
-\eject
+\end{chunk}
+
 \begin{thebibliography}{99}
 \bibitem{1} nothing
 \end{thebibliography}
diff --git a/src/input/lib.input.pamphlet b/src/input/lib.input.pamphlet
index c826634..facdeeb 100644
--- a/src/input/lib.input.pamphlet
+++ b/src/input/lib.input.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 
 -- Input generated from LibraryXmpPage
 )clear all
@@ -22,7 +22,7 @@ keys stuff
 stuff.poly
 stuff("poly")
 )system rm -rf /tmp/Neat.stuff
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/limit.input.pamphlet b/src/input/limit.input.pamphlet
index 58a101b..1090b9e 100644
--- a/src/input/limit.input.pamphlet
+++ b/src/input/limit.input.pamphlet
@@ -26,7 +26,7 @@ $$0 < \vert x-a \vert < \delta {\tt\ implies\ }
 \vert f(x)-A \vert < \epsilon$$
 Note that $f(x)$ does not need to be defined at $a$.
 
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool limit.output
 )set message test on
@@ -40,7 +40,7 @@ limit((x^2-4)/(x-2),x=2)
 --R   (1)  4
 --R               Type: Union(OrderedCompletion Fraction Polynomial Integer,...)
 --E 1
-@
+\end{chunk}
 \section{Right and Left Limits}
 The limit
 $$\lim_{x -> a^-}{f(x) = A}$$
@@ -84,7 +84,7 @@ the right. So
 $$\lim_{x->0}{\sqrt{\frac{1}{x}}}$$
 does not exist.
 
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 15
 limit(sqrt(9-x^2),x=-4)
 --R 
@@ -143,7 +143,7 @@ limit(sqrt(9-x^2),x=4)
 --R                                                    Type: Union("failed",...)
 --E 8
 
-@
+\end{chunk}
 \section{Theorems on Limits}
 If $$f(x)=c$$ where $c$ is a constant, then
 $$\lim_{x->a}{f(x)=c}$$
@@ -216,7 +216,7 @@ $$\lim_{x->a}{\vert f(x)\vert}=+\infty$$
 
 These definitions can be extended to one-sided limits.
 
-<<*>>=
+\begin{chunk}{*}
 --S 9 of 15
 limit(1/x^2,x=0)
 --R 
@@ -241,7 +241,7 @@ limit(1/x,x=0)
 --RType: Union(Record(leftHandLimit: Union(OrderedCompletion Fraction Polynomial Integer,"failed"),rightHandLimit: Union(OrderedCompletion Fraction Polynomial Integer,"failed")),...)
 --E 11
 
-@
+\end{chunk}
 The limit concepts already introduced can be extended to the case
 where the variable approaches $+\infty$ or $-\infty$. For example,
 $$\lim_{x->+\infty}{f(x)}=A$$
@@ -256,7 +256,7 @@ $$\lim_{x->+\infty}{f(x)}=+\infty$$
 $$\lim_{x->-\infty}{f(x)}=-\infty$$
 $$\lim_{x->+\infty}{f(x)}=-\infty$$
 $$\lim_{x->-\infty}{f(x)}=+\infty$$
-<<*>>=
+\begin{chunk}{*}
 --S 12 of 15
 limit(1/x,x=%plusInfinity)
 --R 
@@ -296,7 +296,7 @@ limit(f,n=%plusInfinity)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} Ayres, Frank Jr. and Mendelson, Elliott
diff --git a/src/input/linalg.input.pamphlet b/src/input/linalg.input.pamphlet
index 6cc06f2..b14a919 100644
--- a/src/input/linalg.input.pamphlet
+++ b/src/input/linalg.input.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool linalg.output
 )set message test on
@@ -934,7 +934,7 @@ orthonormalBasis(m3)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/lindep.input.pamphlet b/src/input/lindep.input.pamphlet
index 6585b93..f35d7b2 100644
--- a/src/input/lindep.input.pamphlet
+++ b/src/input/lindep.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool lindep.output
 )set message test on
@@ -28,9 +28,9 @@ v(i:INT):DIRPROD(5, FRAC INT) ==
 --R                                                                   Type: Void
 --E 1
 
-@
+\end{chunk}
 Create several elements of $Q^5$
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 10
 V := vector [v i for i in 1..6]
 --R 
@@ -44,9 +44,9 @@ V := vector [v i for i in 1..6]
 --R                               Type: Vector DirectProduct(5,Fraction Integer)
 --E 2
 
-@
+\end{chunk}
 Are they linearly dependent over Z?
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 10
 linearlyDependentOverZ? V
 --R 
@@ -55,9 +55,9 @@ linearlyDependentOverZ? V
 --R                                                                Type: Boolean
 --E 3
 
-@
+\end{chunk}
 Get the linear dependence relation over Z explicitly
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 10
 linearDependenceOverZ V
 --R 
@@ -66,9 +66,9 @@ linearDependenceOverZ V
 --R                                              Type: Union(Vector Integer,...)
 --E 4
 
-@
+\end{chunk}
 The Vi's are linearly dependent, express V.2 in terms of the others
-<<*>>=
+\begin{chunk}{*}
 --S 5 of 10
 solveLinearlyOverQ(delete(V, 2), V.2)
 --R 
@@ -88,9 +88,9 @@ w(i:INT):SQMATRIX(2, INT) ==
 --R                                                                   Type: Void
 --E 6
 
-@
+\end{chunk}
 Create several elements of Z(2)
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 10
 W := vector [w i for i in 1..3]
 --R 
@@ -102,9 +102,9 @@ W := vector [w i for i in 1..3]
 --R                                         Type: Vector SquareMatrix(2,Integer)
 --E 7
 
-@
+\end{chunk}
 Are they linearly dependent over Z?
-<<*>>=
+\begin{chunk}{*}
 --S 8 of 10
 linearlyDependentOverZ? W
 --R 
@@ -113,9 +113,9 @@ linearlyDependentOverZ? W
 --R                                                                Type: Boolean
 --E 8
 
-@
+\end{chunk}
 Get the linear dependence relation over Z explicitly
-<<*>>=
+\begin{chunk}{*}
 --S 9 of 10
 linearDependenceOverZ W
 --R 
@@ -124,9 +124,9 @@ linearDependenceOverZ W
 --R                                              Type: Union(Vector Integer,...)
 --E 9
 
-@
+\end{chunk}
 The Wi's are linearly dependent, express W.2 in terms of the others
-<<*>>=
+\begin{chunk}{*}
 --S 10 of 10
 solveLinearlyOverQ(delete(W, 2), W.2)
 --R 
@@ -139,7 +139,7 @@ solveLinearlyOverQ(delete(W, 2), W.2)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/liss1.input.pamphlet b/src/input/liss1.input.pamphlet
index e9718fd..150cad1 100644
--- a/src/input/liss1.input.pamphlet
+++ b/src/input/liss1.input.pamphlet
@@ -9,10 +9,9 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
--- @(#)liss1.input	1.1    89/09/07  20:55:03
+\begin{chunk}{*}
 draw(curve(9*sin(3*t/4),8*sin(t)),t = -4*%pi..4*%pi, [title "Lissajous curve"])
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/liss2.input.pamphlet b/src/input/liss2.input.pamphlet
index 593779a..b5a8381 100644
--- a/src/input/liss2.input.pamphlet
+++ b/src/input/liss2.input.pamphlet
@@ -9,10 +9,9 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
--- @(#)liss2.input	1.1    89/09/07  20:55:05
+\begin{chunk}{*}
 draw(curve(-9*sin(4*t/5),8*sin(t)),t = -5*%pi..5*%pi, [title "Lissajous curve"])
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/list.input.pamphlet b/src/input/list.input.pamphlet
index a028e61..30c24d7 100644
--- a/src/input/list.input.pamphlet
+++ b/src/input/list.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool list.output
 )set message test on
@@ -293,7 +293,7 @@ expand [1..]
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/liu.input.pamphlet b/src/input/liu.input.pamphlet
index 0971d70..d406c7c 100644
--- a/src/input/liu.input.pamphlet
+++ b/src/input/liu.input.pamphlet
@@ -14,8 +14,8 @@ for the use of ``\verb|^|'' and ``\verb|**|'' in some cases.
 Does exponential operation ``\verb|^|'' and ``\verb|**|'' of a differential
 operator, say L, means repeating multiplications of L in Axiom ? If
 so, it seems the following code produced an unexpected result:
-@
-<<*>>=
+
+\begin{chunk}{*}
 )set break resume
 )spool liu.output
 )set message test on
@@ -82,7 +82,7 @@ L^2=L*L
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 Clearly, the r.h.s. is correct too. I checked the .spad file, it seems the
 exponential operation of LODO (or its parent OREUP) is missed (or I guess it
 is directly inherited as usual polynomial operation). However I am not
diff --git a/src/input/lode.input.pamphlet b/src/input/lode.input.pamphlet
index d11d05f..5ff2aec 100644
--- a/src/input/lode.input.pamphlet
+++ b/src/input/lode.input.pamphlet
@@ -10,19 +10,19 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool lode.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 This will be the unknown
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 15
 y := operator y
 --R 
@@ -31,9 +31,9 @@ y := operator y
 --R                                                          Type: BasicOperator
 --E 1
 
-@
+\end{chunk}
 Homogeneous equation with constant coefficients
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 15
 deq := differentiate(y x, x, 2) + differentiate(y x, x) + y x
 --R 
@@ -56,9 +56,9 @@ solve(deq, y, x).basis
 --R                                                Type: List Expression Integer
 --E 3
 
-@ 
+\end{chunk} 
 Initial value problem: $y^{''} + y = 0$, $y(0) = y^{'}(0) = 1$
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 15
 deq := differentiate(y x, x, 2) + y x
 --R 
@@ -77,9 +77,9 @@ solve(deq, y, x = 0, [1, 1])
 --R                                          Type: Union(Expression Integer,...)
 --E 5
 
-@ 
+\end{chunk} 
 Same with a non-constant right-hand side
-<<*>>=
+\begin{chunk}{*}
 --S 6 of 15
 solve(deq = sin x, y, x)
 --R 
@@ -90,9 +90,9 @@ solve(deq = sin x, y, x)
 --RType: Union(Record(particular: Expression Integer,basis: List Expression Integer),...)
 --E 6
 
-@
+\end{chunk}
 Some inhomogenuous equations with rational coefficients
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 15
 deq := x**3 * differentiate(y x, x, 3) + x**2 * differentiate(y x, x, 2) - _
 2 * x * differentiate(y x, x) + 2 * y x = 2 * x**4
@@ -116,9 +116,9 @@ solve(deq, y, x)
 --RType: Union(Record(particular: Expression Integer,basis: List Expression Integer),...)
 --E 8
 
-@
+\end{chunk}
 Same with initial conditions
-<<*>>=
+\begin{chunk}{*}
 --S 9 of 15
 solve(deq, y, x = 1, [b, 0, a])
 --R 
@@ -130,9 +130,9 @@ solve(deq, y, x = 1, [b, 0, a])
 --R                                          Type: Union(Expression Integer,...)
 --E 9
 
-@
+\end{chunk}
 Third order equation with nontrivial singularities
-<<*>>=
+\begin{chunk}{*}
 --S 10 of 15
 deq := (x**9 + x**3) * differentiate(y x, x, 3) + _
 18 * x**8 * differentiate(y x, x,2) - 90 * x * differentiate(y x, x) - _
@@ -158,9 +158,9 @@ solve(deq, y, x).basis
 --R                                                Type: List Expression Integer
 --E 11
 
-@ 
+\end{chunk} 
 Third order equation on a curve of genus 0
-<<*>>=
+\begin{chunk}{*}
 --S 12 of 15
 deq := (2*x+2)* differentiate(y x, x, 3) + 3* differentiate(y x, x, 2) + _
 (2*x**2+2*x)* differentiate(y x,x) - sqrt(x+1) * y x = 2 * x**2 + x - 1
@@ -182,9 +182,9 @@ solve(deq, y, x).particular
 --R                                                     Type: Expression Integer
 --E 13
 
-@ 
+\end{chunk} 
 This equation is irreducible over the rational functions
-<<*>>=
+\begin{chunk}{*}
 --S 14 of 15
 deq := 2*x**3*differentiate(y x,x,2) + 3*x**2*differentiate(y x,x) - 2*y x
 --R 
@@ -209,7 +209,7 @@ solve(deq,y,x).basis
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/lodesys.input.pamphlet b/src/input/lodesys.input.pamphlet
index a4e436b..bef020c 100644
--- a/src/input/lodesys.input.pamphlet
+++ b/src/input/lodesys.input.pamphlet
@@ -10,23 +10,23 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool lodesys.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 There are 2 different ways to input a homogeneous 1st order system of
 linear ordinary differential equations of the form  dy/dt = M y
 where y is a vector of unknown functions of t.
 the first is simply  solve(M, t)  which will be understood to be
 a differential system:
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 13
 M := matrix [[ 1+4*t,  -5*t,   7*t,  -8*t,   8*t,  -6*t],_
              [ -10*t, 1+9*t, -14*t,  16*t, -16*t,  12*t],_
@@ -50,9 +50,9 @@ M := matrix [[ 1+4*t,  -5*t,   7*t,  -8*t,   8*t,  -6*t],_
 --R                                              Type: Matrix Polynomial Integer
 --E 1
 
-@
+\end{chunk}
 The original system in Barkatou's AAECC paper is $t^2 dy/dt = M*y$
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 13
 sol := solve(inv(t**2) * M, t)
 --R 
@@ -77,9 +77,9 @@ sol := solve(inv(t**2) * M, t)
 --R                              Type: Union(List Vector Expression Integer,...)
 --E 2
 
-@
+\end{chunk}
 Verify the solutions
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 13
 [t**2 * map(h +-> D(h, t), v) - M * v for v in sol]
 --R 
@@ -90,10 +90,10 @@ Verify the solutions
 --R                                         Type: List Vector Expression Integer
 --E 3
 
-@
+\end{chunk}
 The second way is to type each equation using a separate operator for
 each unknown:
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 13
 x := operator x
 --R 
@@ -132,12 +132,12 @@ solve(sys, [x, y], t).basis
 --R                                         Type: List Vector Expression Integer
 --E 7
 
-@
+\end{chunk}
 Similarly there are 2 different ways to input the inhomogeneous system
 dy/dt = M y + v  where v is a given vector of functions.
 
 The first is   solve(M, v, t):
-<<*>>=
+\begin{chunk}{*}
 --S 8 of 13
 v := vector [1, (-29*t + 19)/5, -1, t + 1, - 2*t + 3, -1]
 --R 
@@ -148,9 +148,9 @@ v := vector [1, (-29*t + 19)/5, -1, t + 1, - 2*t + 3, -1]
 --R                                     Type: Vector Polynomial Fraction Integer
 --E 8
 
-@
+\end{chunk}
 Get a particular solution to  $t^2 dy/dt = M y + v$
-<<*>>=
+\begin{chunk}{*}
 --S 9 of 13
 solp := solve(inv(t**2) * M, inv(t**2) * v, t).particular
 --R 
@@ -161,9 +161,9 @@ solp := solve(inv(t**2) * M, inv(t**2) * v, t).particular
 --R                                              Type: Vector Expression Integer
 --E 9
 
-@
+\end{chunk}
 Verify the particular solution
-<<*>>=
+\begin{chunk}{*}
 --S 10 of 13
 t**2 * map(h +-> D(h, t), solp) - M * solp - v
 --R 
@@ -172,9 +172,9 @@ t**2 * map(h +-> D(h, t), solp) - M * solp - v
 --R                                              Type: Vector Expression Integer
 --E 10
 
-@
+\end{chunk}
 The second way is by listing the equations:
-<<*>>=
+\begin{chunk}{*}
 --S 11 of 13
 z := operator z
 --R 
@@ -205,7 +205,7 @@ solve(sys, [x, y, z], t).particular
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/lodo.input.pamphlet b/src/input/lodo.input.pamphlet
index 66312df..54f4398 100644
--- a/src/input/lodo.input.pamphlet
+++ b/src/input/lodo.input.pamphlet
@@ -16,17 +16,17 @@ or elements of other domains.
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool lodo.output
 )set message test on
 )set message auto off
 )clear all
 
-@ 
+\end{chunk} 
 LODO2(M,A) is the domain of linear ordinary differential operators over
 an A-module M, where A is a differential ring.  This includes the
 cases of operators which are polynomials in D acting upon scalars or
@@ -35,7 +35,7 @@ operator polynomials can be integers, rational functions, matrices
 or elements of other domains.
 
 \section{Differential operators with constant coefficients}
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 55
 RN:=FRAC INT
 --R 
@@ -50,9 +50,9 @@ Dx: LODO2(RN, UP(x,RN))
 --R                                                                   Type: Void
 --E 2
 
-@
+\end{chunk}
 Definition of an operator
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 55
 Dx := D()                  
 --R 
@@ -79,9 +79,9 @@ b  := a + 1/2*Dx**2 - 1/2
 --RType: LinearOrdinaryDifferentialOperator2(Fraction Integer,UnivariatePolynomial(x,Fraction Integer))
 --E 5
 
-@
+\end{chunk}
 Something to work on
-<<*>>=
+\begin{chunk}{*}
 --S 6 of 55
 p: UP(x,RN) := 4*x**2 + 2/3      
 --R 
@@ -92,9 +92,9 @@ p: UP(x,RN) := 4*x**2 + 2/3
 --R                               Type: UnivariatePolynomial(x,Fraction Integer)
 --E 6
  
-@
+\end{chunk}
 Application of an operator to a polynomial
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 55
 a p                        
 --R 
@@ -105,9 +105,9 @@ a p
 --R                               Type: UnivariatePolynomial(x,Fraction Integer)
 --E 7
 
-@
+\end{chunk}
 Multiplication is defined by this identity
-<<*>>=
+\begin{chunk}{*}
 --S 8 of 55
 (a*b) p = a b p            
 --R 
@@ -118,9 +118,9 @@ Multiplication is defined by this identity
 --R                      Type: Equation UnivariatePolynomial(x,Fraction Integer)
 --E 8
 
-@
+\end{chunk}
 Exponentiation follows from multiplication
-<<*>>=
+\begin{chunk}{*}
 
 --S 9 of 55
 c := (1/9)*b*(a + b)**2    
@@ -132,9 +132,9 @@ c := (1/9)*b*(a + b)**2
 --RType: LinearOrdinaryDifferentialOperator2(Fraction Integer,UnivariatePolynomial(x,Fraction Integer))
 --E 9
 
-@
+\end{chunk}
 General application of operator expressions
-<<*>>=
+\begin{chunk}{*}
 --S 10 of 55
 (a**2 - 3/4*b + c) (p + 1) 
 --R 
@@ -145,9 +145,9 @@ General application of operator expressions
 --R                               Type: UnivariatePolynomial(x,Fraction Integer)
 --E 10
 
-@
+\end{chunk}
 \section{Differential operators with rational function coefficients}
-<<*>>=
+\begin{chunk}{*}
 
 )clear all
 --S 11 of 55
@@ -204,9 +204,9 @@ p: RFZ := x**2 + 1/x**2
 --R                               Type: Fraction UnivariatePolynomial(x,Integer)
 --E 16
 
-@
+\end{chunk}
 Operator multiplication is not commutative
-<<*>>=
+\begin{chunk}{*}
 --S 17 of 55
 (a*b - b*a) p 
 --R 
@@ -219,14 +219,14 @@ Operator multiplication is not commutative
 --R                               Type: Fraction UnivariatePolynomial(x,Integer)
 --E 17
 
-@ 
+\end{chunk} 
 When the coefficients of the operator polynomials come from a field
 it is possible to define left and right division of the operators.
 This allows the computation of left and right gcd's via remainder
 sequences, and also the computation of left and right lcm's.
 
 The result is the quotient/remainder pair
-<<*>>=
+\begin{chunk}{*}
 --S 18 of 55
 leftDivide(a,b)      
 --R 
@@ -261,9 +261,9 @@ a - (%.quotient * b + %.remainder)
 --RType: LinearOrdinaryDifferentialOperator1 Fraction UnivariatePolynomial(x,Integer)
 --E 21
 
-@
+\end{chunk}
 A GCD doesn't necessarily divide a and b on both sides.
-<<*>>=
+\begin{chunk}{*}
 --S 22 of 55
 e := leftGcd(a,b)
 --R 
@@ -274,9 +274,9 @@ e := leftGcd(a,b)
 --RType: LinearOrdinaryDifferentialOperator1 Fraction UnivariatePolynomial(x,Integer)
 --E 22
 
-@
+\end{chunk}
 Remainder from left division
-<<*>>=
+\begin{chunk}{*}
 --S 23 of 55
 leftRemainder(a, e)    
 --R 
@@ -285,9 +285,9 @@ leftRemainder(a, e)
 --RType: LinearOrdinaryDifferentialOperator1 Fraction UnivariatePolynomial(x,Integer)
 --E 23
 
-@
+\end{chunk}
 Remainder from right division
-<<*>>=
+\begin{chunk}{*}
 --S 24 of 55
 rightRemainder(a, e)    
 --R 
@@ -298,9 +298,9 @@ rightRemainder(a, e)
 --RType: LinearOrdinaryDifferentialOperator1 Fraction UnivariatePolynomial(x,Integer)
 --E 24
 
-@
+\end{chunk}
 An LCM is not necessarily divisible from both sides.
-<<*>>=
+\begin{chunk}{*}
 --S 25 of 55
 f := rightLcm(a,b)
 --R 
@@ -319,9 +319,9 @@ leftRemainder(f, b)
 --RType: LinearOrdinaryDifferentialOperator1 Fraction UnivariatePolynomial(x,Integer)
 --E 26
 
-@
+\end{chunk}
 The remainder is non-zero
-<<*>>=
+\begin{chunk}{*}
 --S 27 of 55
 rightRemainder(f, b)  
 --R 
@@ -332,7 +332,7 @@ rightRemainder(f, b)
 --RType: LinearOrdinaryDifferentialOperator1 Fraction UnivariatePolynomial(x,Integer)
 --E 27
 
-@ 
+\end{chunk} 
 \section{Problem 1}
 \begin{verbatim}
 Problem: find the first few coefficients of exp(x)/x^i in Dop phi
@@ -340,7 +340,7 @@ Problem: find the first few coefficients of exp(x)/x^i in Dop phi
        Dop := D**3 + G/x**2 * D + H/x**3 - 1
        phi := sum(s[i]*exp(x)/x**i, i = 0..)
 \end{verbatim}
-<<*>>=
+\begin{chunk}{*}
 )clear all
 --S 28 of 55
 Dx: LODO(EXPR INT, f +-> D(f, x))
@@ -623,9 +623,9 @@ leq
 --R                         Type: List List Equation Fraction Polynomial Integer
 --E 43
  
-@
+\end{chunk}
 \section{Differential operators with matrix coefficients acting on vectors}
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 44 of 55
@@ -666,9 +666,9 @@ m := [[x**2, 1, 0], [1, x**4, 0], [0, 0, 4*x**2]]::(SQMATRIX(3,PZ))
 --R                        Type: SquareMatrix(3,UnivariatePolynomial(x,Integer))
 --E 47
 
-@ 
+\end{chunk} 
 Vect is a left SM(3,PZ)-module
-<<*>>=
+\begin{chunk}{*}
 --S 48 of 55
 q: Vect := m * p
 --R 
@@ -678,9 +678,9 @@ q: Vect := m * p
 --RType: DirectProductMatrixModule(3,UnivariatePolynomial(x,Integer),SquareMatrix(3,UnivariatePolynomial(x,Integer)),UnivariatePolynomial(x,Integer))
 --E 48
  
-@
+\end{chunk}
 Operator combination and application
-<<*>>=
+\begin{chunk}{*}
 --S 49 of 55
 Dx:  Modo := D()
 --R 
@@ -769,7 +769,7 @@ b p
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/lodo1.input.pamphlet b/src/input/lodo1.input.pamphlet
index e0609b7..b3644a0 100644
--- a/src/input/lodo1.input.pamphlet
+++ b/src/input/lodo1.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool lodo1.output
 )set message test on
@@ -209,7 +209,7 @@ leftRemainder(f, b)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/lodo2.input.pamphlet b/src/input/lodo2.input.pamphlet
index 9f73ed3..c805c77 100644
--- a/src/input/lodo2.input.pamphlet
+++ b/src/input/lodo2.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool lodo2.output
 )set message test on
@@ -280,7 +280,7 @@ b p
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/lodo3.input.pamphlet b/src/input/lodo3.input.pamphlet
index d777dc9..42972b0 100644
--- a/src/input/lodo3.input.pamphlet
+++ b/src/input/lodo3.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool lodo3.output
 )set message test on
@@ -302,7 +302,7 @@ leq
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/lodof.input.pamphlet b/src/input/lodof.input.pamphlet
index 3ca507c..24cbd3c 100644
--- a/src/input/lodof.input.pamphlet
+++ b/src/input/lodof.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool lodof.output
 )set message test on
@@ -68,9 +68,9 @@ t := t::P::Q
 --R                       Type: Fraction UnivariatePolynomial(t,AlgebraicNumber)
 --E 6
 
-@ 
+\end{chunk} 
 Reducible order 2 operator (1-1)
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 16
 op := d**2 + t * d + 1
 --R 
@@ -88,9 +88,9 @@ factor op
 --RType: List LinearOrdinaryDifferentialOperator1 Fraction UnivariatePolynomial(t,AlgebraicNumber)
 --E 8
 
-@ 
+\end{chunk} 
 Irreducible order 2 operator
-<<*>>=
+\begin{chunk}{*}
 --S 9 of 16
 op := 2*t**3 * d**2 + 3*t**2 * d - 2
 --R 
@@ -109,9 +109,9 @@ factor op
 --RType: List LinearOrdinaryDifferentialOperator1 Fraction UnivariatePolynomial(t,AlgebraicNumber)
 --E 10
 
-@ 
+\end{chunk} 
 Reducible order 3 operator (1-2)
-<<*>>=
+\begin{chunk}{*}
 --S 11 of 16
 op := 2*t**3 * d**3 - (2*t**4 - 9*t**2) * d**2 - (3*t**3 - 6*t + 2) * d + 2*t
 --R 
@@ -130,9 +130,9 @@ factor op
 --RType: List LinearOrdinaryDifferentialOperator1 Fraction UnivariatePolynomial(t,AlgebraicNumber)
 --E 12
 
-@ 
+\end{chunk} 
 Reducible order 3 operator (1-1-1)
-<<*>>=
+\begin{chunk}{*}
 --S 13 of 16
 op := (t**9 + t**3) * d**3 + 18 * t**8 * d**2 - 90 * t * d - 30 * (11*t**6-3)
 --R 
@@ -160,9 +160,9 @@ factor op
 --RType: List LinearOrdinaryDifferentialOperator1 Fraction UnivariatePolynomial(t,AlgebraicNumber)
 --E 14
 
-@ 
+\end{chunk} 
 Irreducible order 3 operator
-<<*>>=
+\begin{chunk}{*}
 --S 15 of 16
 op := d**3 + 2 * d**2 + 5 / t * d + 7 / t**2
 --R 
@@ -187,7 +187,7 @@ factor op
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/log.input.pamphlet b/src/input/log.input.pamphlet
index 9f61027..6c55c5f 100644
--- a/src/input/log.input.pamphlet
+++ b/src/input/log.input.pamphlet
@@ -17,7 +17,7 @@ second column is the reference value of log from the book
 Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
 Dover Publications, Inc. New York 1965. pp100-113
 
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool log.output
 )set message test on
@@ -433,7 +433,7 @@ Dover Publications, Inc. New York 1965. pp100-113
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
diff --git a/src/input/loop.input.pamphlet b/src/input/loop.input.pamphlet
index 42b0ac8..7ad2069 100644
--- a/src/input/loop.input.pamphlet
+++ b/src/input/loop.input.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 
 -- Input for page BasicLoops
 )clear all
@@ -51,7 +51,7 @@ for i in 0..10 by 2 repeat print (i**3)
 for i in 10..0 by -2 repeat print (i**3)
 for i in 0..10 | even? i repeat print (i**3)
 for i in 0.. by 2 repeat (i**3)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/lpoly.input.pamphlet b/src/input/lpoly.input.pamphlet
index 672585b..b9599ee 100644
--- a/src/input/lpoly.input.pamphlet
+++ b/src/input/lpoly.input.pamphlet
@@ -8,12 +8,13 @@
 \end{abstract}
 \eject
 \tableofcontents
-\eject
+
 \section{License}
-<<license>>=
+
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool lpoly.output
 )set message test on
@@ -258,7 +259,7 @@ r + r1 + r2
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/lump.input.pamphlet b/src/input/lump.input.pamphlet
index 39b542c..189ce6c 100644
--- a/src/input/lump.input.pamphlet
+++ b/src/input/lump.input.pamphlet
@@ -9,10 +9,9 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
--- @(#)lump.input	1.1    89/09/07  20:55:06
+\begin{chunk}{*}
 draw(sin(2 * x**2 + 3 * y**2)/(x**2 + y**2),x = -3..3,y = -3..3)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/lupfact.input.pamphlet b/src/input/lupfact.input.pamphlet
index 9d5f2a6..7fc8a85 100644
--- a/src/input/lupfact.input.pamphlet
+++ b/src/input/lupfact.input.pamphlet
@@ -10,17 +10,17 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool lupfact.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 This file contains some functions that compute LUP factorizations of
 matrices over a field.  The main function to call is lupFactor.  It
 accepts one argument, which should be a non-singular square matrix.
@@ -32,7 +32,7 @@ before the definition of lupFactor for the reference for the
 algorithm.
 
 State the field here
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 18
 field := Fraction Integer
 --R 
@@ -41,9 +41,9 @@ field := Fraction Integer
 --R                                                                 Type: Domain
 --E 1
 
-@ 
+\end{chunk} 
 Next computes a permutation matrix for mult on the right
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 18
 permMat: (INT, INT, INT) -> Matrix field
 --R 
@@ -61,9 +61,9 @@ permMat(dim, i, j) ==
 --R                                                                   Type: Void
 --E 3
 
-@
+\end{chunk}
 Find first col in first row that is nonzero or returns 0
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 18
 nonZeroCol: Matrix field -> INT
 --R 
@@ -84,10 +84,10 @@ nonZeroCol(m) ==
 --R                                                                   Type: Void
 --E 5
 
-@
+\end{chunk}
 This embeds the given square matrix in a larger square matrix
 where the extra space is filled with 1s on the diagonal, 0 elsewhere.
-<<*>>=
+\begin{chunk}{*}
 --S 6 of 18
 embedMatrix: (Matrix field,NNI,NNI) -> Matrix field
 --R 
@@ -103,10 +103,10 @@ embedMatrix(m, oldDim, newDim) ==
 --R                                                                   Type: Void
 --E 7
  
-@
+\end{chunk}
 The following implements algorithm in "The Design and Analysis of
 Computer Algorithms" by Aho, Hopcroft and Ullman
-<<*>>=
+\begin{chunk}{*}
 --S 8 of 18
 lupFactorEngine: (Matrix field, INT, INT)  -> List Matrix field
 --R 
@@ -150,9 +150,9 @@ lupFactorEngine(a, m, p) ==
 --R                                                                   Type: Void
 --E 9
  
-@
+\end{chunk}
 Next computes floor of log base 2 of an integer
-<<*>>=
+\begin{chunk}{*}
 --S 10 of 18
 intLog2: NNI -> NNI
 --R 
@@ -165,9 +165,9 @@ intLog2 n == if n = 1 then 0 else 1 + intLog2(n quo 2)
 --R                                                                   Type: Void
 --E 11
  
-@
+\end{chunk}
 Here is the function to call
-<<*>>=
+\begin{chunk}{*}
 --S 12 of 18
 lupFactor: Matrix field -> Union(List Matrix field,"failed")
 --R 
@@ -190,9 +190,9 @@ lupFactor m ==
 --R                                                                   Type: Void
 --E 13
  
-@
+\end{chunk}
 Example from Aho, et al.
-<<*>>=
+\begin{chunk}{*}
 --S 14 of 18
 m : Matrix field := zero(4,4)
 --R 
@@ -255,9 +255,9 @@ lupFactor m
 --R                                Type: Union(List Matrix Fraction Integer,...)
 --E 17
 
-@
+\end{chunk}
 Example where the dimension does not start out a power of 2
-<<*>>= 
+\begin{chunk}{*}
 --S 18 of 18
 m := [[1,2,3],[2,3,1],[3,1,2]]
 --R 
@@ -272,7 +272,7 @@ m := [[1,2,3],[2,3,1],[3,1,2]]
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/lword.input.pamphlet b/src/input/lword.input.pamphlet
index cb5e203..6fa3b93 100644
--- a/src/input/lword.input.pamphlet
+++ b/src/input/lword.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool lword.output
 )set message test on
@@ -216,7 +216,7 @@ lyndon(w1*w2)$lword
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/macbug.input.pamphlet b/src/input/macbug.input.pamphlet
index 270e63d..6e49979 100644
--- a/src/input/macbug.input.pamphlet
+++ b/src/input/macbug.input.pamphlet
@@ -10,29 +10,29 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool macbug.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 Macros can be parameterized and so can be used for many different
 kinds of objects.
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 5
 macro ff(x) == x**2 + 1
 --R 
 --R                                                                   Type: Void
 --E 1
 
-@
+\end{chunk}
 Apply it to a number, a symbol, or an expression.
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 5
 ff z
 --R 
@@ -42,19 +42,19 @@ ff z
 --R                                                     Type: Polynomial Integer
 --E 2
 
-@
+\end{chunk}
 Macros can also be nested, but you will get an error message if you
 run out of space because of an infinite nesting loop.
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 5
 macro gg(x) == ff(2*x - 2/3)
 --R 
 --R                                                                   Type: Void
 --E 3
 
-@
+\end{chunk}
 This new macro is fine as it does not produce a loop.
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 5
 gg(1/w)
 --R 
@@ -67,11 +67,11 @@ gg(1/w)
 --R                                            Type: Fraction Polynomial Integer
 --E 4
 
-@
+\end{chunk}
 This however will loop since {\tt gg} is
 defined in terms of {\tt ff}.
 We risk not using a free g on next line
-<<*>>=
+\begin{chunk}{*}
 --S 5 of 5
 macro ff(x) == gg(-x)
 --R 
@@ -80,7 +80,7 @@ macro ff(x) == gg(-x)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/macros.input.pamphlet b/src/input/macros.input.pamphlet
index 16154f7..4e09634 100644
--- a/src/input/macros.input.pamphlet
+++ b/src/input/macros.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool macros.output
 )set message test on
@@ -45,7 +45,7 @@ macro q(i,j) == if x < i then i else j
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/magma.input.pamphlet b/src/input/magma.input.pamphlet
index 521c896..e9be639 100644
--- a/src/input/magma.input.pamphlet
+++ b/src/input/magma.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool magma.output
 )set message test on
@@ -198,7 +198,7 @@ lexico(xa,ax)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/mapleok.input.pamphlet b/src/input/mapleok.input.pamphlet
index a470496..62dc6f5 100644
--- a/src/input/mapleok.input.pamphlet
+++ b/src/input/mapleok.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )spool mapleok.output
 )set message test on
 )set message auto off
@@ -5548,7 +5548,7 @@ in319a:=integrate(exp(-z)*atan(sin(z)/(1+cos(z))), z=0..%plusInfinity,"noPole")
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/marcbench.input.pamphlet b/src/input/marcbench.input.pamphlet
index 7a79b66..ed04872 100644
--- a/src/input/marcbench.input.pamphlet
+++ b/src/input/marcbench.input.pamphlet
@@ -10,7 +10,7 @@
 \tableofcontents
 \eject
 \section{License}
-<<*>>=
+\begin{chunk}{*}
 
 )set break resume
 )clear completely
@@ -504,7 +504,7 @@ zeroSetSplit(lp)$T;
 zeroSetSplit(lp)$T;
 )set message time off
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/matbug.input.pamphlet b/src/input/matbug.input.pamphlet
index 0dfb85e..280765f 100644
--- a/src/input/matbug.input.pamphlet
+++ b/src/input/matbug.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool matbug.output
 )set message test on
@@ -243,7 +243,7 @@ mm*m
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/mathml.input.pamphlet b/src/input/mathml.input.pamphlet
index e027568..a38643e 100644
--- a/src/input/mathml.input.pamphlet
+++ b/src/input/mathml.input.pamphlet
@@ -6,10 +6,10 @@
 \maketitle
 \begin{abstract}
 \end{abstract}
-\eject
+
 \tableofcontents
-\eject
-<<*>>=
+
+\begin{chunk}{*}
 )set break resume
 )spool mathml.output
 )set message test on
@@ -358,7 +358,7 @@ c:=continuedFraction(314159/100000)
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/matrix.input.pamphlet b/src/input/matrix.input.pamphlet
index 15ad5b6..629c03a 100644
--- a/src/input/matrix.input.pamphlet
+++ b/src/input/matrix.input.pamphlet
@@ -10,22 +10,22 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool matrix.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 A number of matrix computations over the integers and over the
 rationals using various algortihms and indexing schemes.
 
 The Hilbert matrix
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 42
 mat : MATRIX FRAC INT := matrix [[1/(i + j) for i in 1..5] for j in 1..5]
 --R 
@@ -84,9 +84,9 @@ mat * matinv
 --R                                                Type: Matrix Fraction Integer
 --E 3
 
-@ 
+\end{chunk} 
 Same computation, different indexing
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 42
 mat1 : IMATRIX(FRAC INT,-3,47) := _
    matrix [[1/(i + j) for i in 1..5] for j in 1..5]
@@ -146,9 +146,9 @@ mat1 * mat1inv
 --R                                  Type: IndexedMatrix(Fraction Integer,-3,47)
 --E 6
  
-@
+\end{chunk}
 Vandermonde determinant
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 42
 mat2 : MATRIX INT := matrix [[j**i for i in 0..4] for j in 1..5]
 --R 
@@ -197,9 +197,9 @@ minordet    mat2
 --R                                                        Type: PositiveInteger
 --E 10
 
-@
+\end{chunk}
 Same computation, different indexing
-<<*>>=
+\begin{chunk}{*}
 --S 11 of 42
 mat3 : IMATRIX(INT,13,-7) := _
    matrix [[j**i for i in 0..4] for j in 1..5]
@@ -249,9 +249,9 @@ minordet    mat3
 --R                                                        Type: PositiveInteger
 --E 14
 
-@ 
+\end{chunk} 
 Same computation, work over the rationals
-<<*>>=
+\begin{chunk}{*}
 --S 15 of 42
 mat4 : MATRIX FRAC INT := matrix [[j**i for i in 0..4] for j in 1..5]
 --R 
@@ -300,9 +300,9 @@ minordet    mat4
 --R                                                       Type: Fraction Integer
 --E 18
 
-@
+\end{chunk}
 Same computation, different indexing
-<<*>>=
+\begin{chunk}{*}
 --S 19 of 42
 mat5 : IMATRIX(FRAC INT,-113,37) := _
    matrix [[j**i for i in 0..4] for j in 1..5]
@@ -558,7 +558,7 @@ nullSpace  mat9
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/matrix1.input.pamphlet b/src/input/matrix1.input.pamphlet
index 551784b..cc6a6bf 100644
--- a/src/input/matrix1.input.pamphlet
+++ b/src/input/matrix1.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool matrix1.output
 )set message test on
@@ -490,7 +490,7 @@ rowEchelon(mm)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/matrix22.input.pamphlet b/src/input/matrix22.input.pamphlet
index be95652..0bbae7c 100644
--- a/src/input/matrix22.input.pamphlet
+++ b/src/input/matrix22.input.pamphlet
@@ -10,19 +10,19 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool matrix22.output
 )set message test on
 )set message auto off
 )clear all
 
-@ 
+\end{chunk} 
 This file shows nesting of matrices
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 8
 m:SQMATRIX(2,INT) := squareMatrix matrix [[0,1],[-1,0]]
 --R 
@@ -33,9 +33,9 @@ m:SQMATRIX(2,INT) := squareMatrix matrix [[0,1],[-1,0]]
 --R                                                Type: SquareMatrix(2,Integer)
 --E 1
 
-@
+\end{chunk}
 This determinant can be computed
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 8
 determinant m
 --R 
@@ -59,11 +59,11 @@ n:SQMATRIX(2,SQMATRIX(2,INT)) :=
 --R                                Type: SquareMatrix(2,SquareMatrix(2,Integer))
 --E 3
 
-@
+\end{chunk}
 This determinant cannot be computed by Scratchpad II
 because there is no function that computes the determinant of a
 matrix whose entries belong to a noncommutative ring
-<<*>>=
+\begin{chunk}{*}
 )set mes test off
 --S 4 of 8
 determinant n
@@ -85,9 +85,9 @@ determinant n
 --E 4
 )set mes test on
 
-@ 
+\end{chunk} 
 Another level of matrix
-<<*>>=
+\begin{chunk}{*}
 --S 5 of 8
 o:SQMATRIX(2,SQMATRIX(2,SQMATRIX(2,INT))) :=
    squareMatrix matrix [[n,n**2],[n**3,n**4]]
@@ -133,9 +133,9 @@ o ** 2
 --R                Type: SquareMatrix(2,SquareMatrix(2,SquareMatrix(2,Integer)))
 --E 6
 
-@
+\end{chunk}
 Add 2 to this matrix
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 8
 % + 2
 --R 
@@ -158,9 +158,9 @@ Add 2 to this matrix
 --R                Type: SquareMatrix(2,SquareMatrix(2,SquareMatrix(2,Integer)))
 --E 7
 
-@
+\end{chunk}
 What is 2 as a matrix?
-<<*>>=
+\begin{chunk}{*}
 --S 8 of 8
 o := 2
 --R 
@@ -185,7 +185,7 @@ o := 2
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/matrox.input.pamphlet b/src/input/matrox.input.pamphlet
index 1bfc660..e4d8b23 100644
--- a/src/input/matrox.input.pamphlet
+++ b/src/input/matrox.input.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 -- Screen setup for graphics demos for the matrox card screen width
 
 
@@ -87,7 +87,7 @@ donut:=draw(surface(sin t,cos t,0),fcolor,t=0..2*%pi)
 resize(donut,374,180)
 move(donut,900,0)
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/mfinfact.input.pamphlet b/src/input/mfinfact.input.pamphlet
index 421bfe5..966ffbd 100644
--- a/src/input/mfinfact.input.pamphlet
+++ b/src/input/mfinfact.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool mfinfact.output
 )set message test on
@@ -237,7 +237,7 @@ factor(q*(1+q))
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/mkfunc.input.pamphlet b/src/input/mkfunc.input.pamphlet
index be5acf7..cf03241 100644
--- a/src/input/mkfunc.input.pamphlet
+++ b/src/input/mkfunc.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool mkfunc.output
 )set message test on
@@ -117,7 +117,7 @@ h(m1, m2)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/mountain.input.pamphlet b/src/input/mountain.input.pamphlet
index 915ab7c..0316033 100644
--- a/src/input/mountain.input.pamphlet
+++ b/src/input/mountain.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 
 -- Draw a fractal mountain
 
@@ -125,7 +125,7 @@ drawMountain(maxLevel, H) ==
     var1Steps == N, var2Steps == N, title == "Fractal Mountain")
 
 drawMountain(3, sf 0.95)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/mpoly.input.pamphlet b/src/input/mpoly.input.pamphlet
index 33a176b..169fb3e 100644
--- a/src/input/mpoly.input.pamphlet
+++ b/src/input/mpoly.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool mpoly.output
 )set message test on
@@ -115,7 +115,7 @@ q :: MPOLY([x,z], FRAC UP(y,INT))
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/mset.input.pamphlet b/src/input/mset.input.pamphlet
index c076701..7a2ad56 100644
--- a/src/input/mset.input.pamphlet
+++ b/src/input/mset.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool mset.output
 )set message test on
@@ -147,7 +147,7 @@ t1 := multiset [2,2,2]
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/mset2.input.pamphlet b/src/input/mset2.input.pamphlet
index 0cac826..35297cd 100644
--- a/src/input/mset2.input.pamphlet
+++ b/src/input/mset2.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool mset2.output
 )set message test on
@@ -117,7 +117,7 @@ t1 := multiset [1,2,2,3]; [t1 < t, t1 < s, t < s, t1 <= s]
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/mult2d.input.pamphlet b/src/input/mult2d.input.pamphlet
index 0a3526a..d9bd437 100644
--- a/src/input/mult2d.input.pamphlet
+++ b/src/input/mult2d.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )clear all
 
 --draws x**i for i in 1..5, x=-1..1
@@ -48,7 +48,7 @@ makeListFuns(fl:List(Expression Integer),_
 drawFuns(makeListFuns([x**i for i in 1..5], x=-1..1), x=-1..1)
 drawFuns(makeListFuns([sin(x*i) for i in 1..5], x=-1..1), x=-1..1)
 drawFuns(makeListFuns([sec x, sin x, cos x, tan x], x=-1..1), x=-1..1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/mult3d.input.pamphlet b/src/input/mult3d.input.pamphlet
index 4920aaf..9ac9312 100644
--- a/src/input/mult3d.input.pamphlet
+++ b/src/input/mult3d.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 
 )clear all
 s := create3Space()$ThreeSpace(DFLOAT)
@@ -65,7 +65,7 @@ torusInKnot(p,q,r) ==
 
 torusInKnot(15,17,.1)
 draw(curve(2.2*sin(t),2.2*cos(t),0),t=0..2*%pi,tubePoints==10,tubeRadius==.7, space == sp)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/multfact.input.pamphlet b/src/input/multfact.input.pamphlet
index 5a7f96d..ad3ebd3 100644
--- a/src/input/multfact.input.pamphlet
+++ b/src/input/multfact.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool multfact.output
 )set message test on
@@ -63,7 +63,7 @@ factor(x**2*y**2+u**2*v**2,[b])
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/multiple.input.pamphlet b/src/input/multiple.input.pamphlet
index db90c46..e8aa7f8 100644
--- a/src/input/multiple.input.pamphlet
+++ b/src/input/multiple.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool multiple.output
 )set message test on
@@ -93,7 +93,7 @@ makeViewport2D(v2)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/multknot.input.pamphlet b/src/input/multknot.input.pamphlet
index 625f038..0e11224 100644
--- a/src/input/multknot.input.pamphlet
+++ b/src/input/multknot.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 
 )clear all
 sp := create3Space()$ThreeSpace(DFLOAT)
@@ -33,7 +33,7 @@ torusInKnot(15,17,.1)
 cfxn(t:DFLOAT):DFLOAT == .7
 --draw(sp,curve(3*sin(t),3*cos(t),0),t=0..2*%pi,tubePoints==10,tubeRadius==.7)
 draw(curve(2.4*sin(t),2.4*cos(t),0),t=0..2*%pi,tubePoints==10,tubeRadius==.8,colorFunction==cfxn, space == sp)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/ndftip.input.pamphlet b/src/input/ndftip.input.pamphlet
index 5966245..95c6bef 100644
--- a/src/input/ndftip.input.pamphlet
+++ b/src/input/ndftip.input.pamphlet
@@ -10,22 +10,22 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool ndftip.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 Note that the conversions of results from DoubleFloat to Float
 will become unnecessary if outputGeneral is extended to apply to
 DoubleFloat quantities.  Those results not converted will, of
 course, then be displayed to 6 s.f.
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 45
 outputGeneral 6
 --R 
@@ -841,7 +841,7 @@ outputGeneral()
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/negfloats.input.pamphlet b/src/input/negfloats.input.pamphlet
index 7b39912..b45ccb2 100644
--- a/src/input/negfloats.input.pamphlet
+++ b/src/input/negfloats.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool negfloats.output
 )set message test on
@@ -45,7 +45,7 @@ round(-9.6571)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/nepip.input.pamphlet b/src/input/nepip.input.pamphlet
index 67f3900..89b7de5 100644
--- a/src/input/nepip.input.pamphlet
+++ b/src/input/nepip.input.pamphlet
@@ -8,23 +8,23 @@
 \end{abstract}
 \eject
 \tableofcontents
-\eject
+
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool nepip.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 Note that the conversions of results from DoubleFloat to Float
 will become unnecessary if outputGeneral is extended to apply to
 DoubleFloat quantities.
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 27
 outputGeneral 5
 --R 
@@ -168,9 +168,9 @@ nagEigenvalues(mA2,mB2)
 --R      or "$" to specify which version of the function you need.
 --E 10
 
-@
+\end{chunk}
 All components are O(1) or more so:
-<<*>>=
+\begin{chunk}{*}
 --S 11 of 27 used to work?
 % :: List Complex Float
 --R 
@@ -226,9 +226,9 @@ vv2.eigenvalues
 --R      or "$" to specify which version of the function you need.
 --E 13
 
-@
+\end{chunk}
 All components are O(1) or more so:
-<<*>>=
+\begin{chunk}{*}
 
 --S 14 of 27 used to work?
 % :: List Complex Float
@@ -352,9 +352,9 @@ mB1(1,1) := -1;
 --R                                                                Type: Integer
 --E 19
 
-@
+\end{chunk}
 The next test should fail on F02ADF then call F02BJF:
-<<*>>=
+\begin{chunk}{*}
 --S 20 of 27
 nagEigenvalues(mA1,mB1)
 --R 
@@ -374,9 +374,9 @@ nagEigenvalues(mA1,mB1)
 --R      or "$" to specify which version of the function you need.
 --E 20
 
-@
+\end{chunk}
 All components are O(1) or more so:
-<<*>>=
+\begin{chunk}{*}
 --S 21 of 27 used to work?
 % :: List Complex Float
 --R 
@@ -388,9 +388,9 @@ All components are O(1) or more so:
 --E 21
 --       [3.5016,- 1.5471,0.041212 + 0.21738 %i,0.041212 - 0.21738 %i]
 
-@
+\end{chunk}
 Similarly, this should fail on F02AEF then call F02BJF:
-<<*>>=
+\begin{chunk}{*}
 --S 22 of 27
 vv3 := nagEigenvectors(mA1,mB1);
 --R 
@@ -428,9 +428,9 @@ vv3.eigenvalues
 --R      or "$" to specify which version of the function you need.
 --E 23
 
-@
+\end{chunk}
 All components are O(1) or more so:
-<<*>>=
+\begin{chunk}{*}
 
 --S 24 of 27 used to work?
 % :: List Complex Float
@@ -486,7 +486,7 @@ output "End of tests"
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/newlodo.input.pamphlet b/src/input/newlodo.input.pamphlet
index 23c18bf..335b007 100644
--- a/src/input/newlodo.input.pamphlet
+++ b/src/input/newlodo.input.pamphlet
@@ -8,19 +8,19 @@
 \end{abstract}
 \eject
 \tableofcontents
-\eject
+
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool newlodo.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 LODO2(M,A) is the domain of linear ordinary differential operators over
 an A-module M, where A is a differential ring.  This includes the
 cases of operators which are polynomials in D acting upon scalars or
@@ -29,7 +29,7 @@ operator polynomials can be integers, rational functions, matrices
 or elements of other domains.
 
 \section{Differential operators with constant coefficients}
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 55
 RN:=FRAC INT
 --R 
@@ -120,9 +120,9 @@ c := (1/9)*b*(a + b)**2    -- exponentiation follows from multiplication
 --R                               Type: UnivariatePolynomial(x,Fraction Integer)
 --E 10
 
-@
+\end{chunk}
 \section{Differential operators with rational function coefficients}
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 11 of 55
@@ -191,12 +191,12 @@ p: RFZ := x**2 + 1/x**2
 --R                               Type: Fraction UnivariatePolynomial(x,Integer)
 --E 17
 
-@
+\end{chunk}
 When the coefficients of the operator polynomials come from a field
 it is possible to define left and right division of the operators.
 This allows the computation of left and right gcd's via remainder
 sequences, and also the computation of left and right lcm's.
-<<*>>=
+\begin{chunk}{*}
 --S 18 of 55
 leftDivide(a,b)      -- result is the quotient/remainder pair
 --R 
@@ -231,9 +231,9 @@ a - (%.quotient * b + %.remainder)
 --RType: LinearOrdinaryDifferentialOperator1 Fraction UnivariatePolynomial(x,Integer)
 --E 21
 
-@
+\end{chunk}
 A GCD doesn't necessarily divide a and b on both sides.
-<<*>>=
+\begin{chunk}{*}
 --S 22 of 55
 e := leftGcd(a,b)
 --R 
@@ -262,9 +262,9 @@ rightRemainder(a, e)    -- remainder from right division
 --RType: LinearOrdinaryDifferentialOperator1 Fraction UnivariatePolynomial(x,Integer)
 --E 24
 
-@
+\end{chunk}
 An LCM is not necessarily divisible from both sides.
-<<*>>=
+\begin{chunk}{*}
 --S 25 of 55
 f := rightLcm(a,b)
 --R 
@@ -293,7 +293,7 @@ rightRemainder(f, b)  -- the remainder is non-zero
 --RType: LinearOrdinaryDifferentialOperator1 Fraction UnivariatePolynomial(x,Integer)
 --E 27
 
-@
+\end{chunk}
 Problem: find the first few coefficients of $\exp(x)/x^i$ in Dop phi
 where
 \begin{verbatim}
@@ -301,6 +301,7 @@ where
        phi := sum(s[i]*exp(x)/x**i, i = 0..)
 \end{verbatim}
 
+\begin{chunk}{*}
 )clear all
 --S 28 of 55
 Dx: LODO(EXPR INT, f +-> D(f, x))
@@ -313,7 +314,7 @@ Dx := D()
 --R 
 --R
 --R   (2)  D
---RType: LinearOrdinaryDifferentialOperator(Expression Integer,theMap LAMBDA-CLOSURE(NIL,NIL,NIL,G1500 envArg,SPADCALL(G1500,QUOTE x,ELT(*1;anonymousFunction;0;initial;internal;MV,0))))
+--IType: LinearOrdinaryDifferentialOperator(Expression Integer,theMap LAMBDA-CLOSURE(NIL,NIL,NIL,G1500 envArg,SPADCALL(G1500,QUOTE x,ELT(*1;anonymousFunction;0;initial;internal;MV,0))))
 --E 29
 
 --S 30 of 55
@@ -325,7 +326,7 @@ Dop:= Dx**3 + G/x**2*Dx + H/x**3 - 1
 --R   (3)  D  + -- D + --------
 --R              2         3
 --R             x         x
---RType: LinearOrdinaryDifferentialOperator(Expression Integer,theMap LAMBDA-CLOSURE(NIL,NIL,NIL,G1500 envArg,SPADCALL(G1500,QUOTE x,ELT(*1;anonymousFunction;0;initial;internal;MV,0))))
+--IType: LinearOrdinaryDifferentialOperator(Expression Integer,theMap LAMBDA-CLOSURE(NIL,NIL,NIL,G1500 envArg,SPADCALL(G1500,QUOTE x,ELT(*1;anonymousFunction;0;initial;internal;MV,0))))
 --E 30
 
 --S 31 of 55
@@ -394,7 +395,7 @@ leq
 --R      Polynomial Integer 
 --R   Compiling body of rule leq to compute value of type List List 
 --R      Equation Fraction Polynomial Integer 
---R   Compiling function G3445 with type Integer -> Boolean 
+--I   Compiling function G3445 with type Integer -> Boolean 
 --R
 --R   (12)
 --R                           2                                3        2
@@ -583,9 +584,9 @@ leq
 --R                         Type: List List Equation Fraction Polynomial Integer
 --E 43
 
-@
+\end{chunk}
 \section{Differential operators with matrix coefficients acting on vectors}
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 44 of 55
@@ -626,9 +627,9 @@ m := [[x**2, 1, 0], [1, x**4, 0], [0, 0, 4*x**2]]::(SQMATRIX(3,PZ))
 --R                        Type: SquareMatrix(3,UnivariatePolynomial(x,Integer))
 --E 47
 
-@
+\end{chunk}
 Vect is a left SM(3,PZ)-module
-<<*>>=
+\begin{chunk}{*}
 --S 48 of 55
 q: Vect := m * p
 --R 
@@ -638,9 +639,9 @@ q: Vect := m * p
 --RType: DirectProductMatrixModule(3,UnivariatePolynomial(x,Integer),SquareMatrix(3,UnivariatePolynomial(x,Integer)),UnivariatePolynomial(x,Integer))
 --E 48
 
-@
+\end{chunk}
 Operator combination and application
-<<*>>=
+\begin{chunk}{*}
 --S 49 of 55
 Dx:  Modo := D()
 --R 
@@ -729,7 +730,7 @@ b p
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/newton.input.pamphlet b/src/input/newton.input.pamphlet
index 0f95046..0b1ce98 100644
--- a/src/input/newton.input.pamphlet
+++ b/src/input/newton.input.pamphlet
@@ -10,23 +10,23 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool newton.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 \section{Newton's Iteration function}
 
 The function {\tt newtonStep(f)} 
 returns a newton's iteration function for the expression f.
 
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 5
 newtonStep(f) ==
   fun  := complexNumericFunction f
@@ -37,9 +37,9 @@ newtonStep(f) ==
 --R                                                                   Type: Void
 --E 1
 
-@
+\end{chunk}
 Create complex numeric functions from an expression
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 5
 complexFunPack := MakeUnaryCompiledFunction(EXPR INT, Complex DoubleFloat, Complex DoubleFloat)
 --R 
@@ -50,9 +50,9 @@ complexFunPack := MakeUnaryCompiledFunction(EXPR INT, Complex DoubleFloat, Compl
 --R                                                                 Type: Domain
 --E 2
 
-@
+\end{chunk}
 Create a complex numeric function from an expression
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 5
 complexNumericFunction x ==
   v := theVariable x
@@ -61,9 +61,9 @@ complexNumericFunction x ==
 --R                                                                   Type: Void
 --E 3
 
-@
+\end{chunk}
 Create a complex numeric derivatiave function from an expression
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 5
 complexDerivativeFunction(x,n) ==
   v := theVariable x
@@ -73,9 +73,9 @@ complexDerivativeFunction(x,n) ==
 --R                                                                   Type: Void
 --E 4
 
-@
+\end{chunk}
 Return the unique variable in x, or an error if it is multivariate
-<<*>>=
+\begin{chunk}{*}
 --S 5 of 5
 theVariable x ==
   vl := variables x
@@ -89,7 +89,7 @@ theVariable x ==
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/nlode.input.pamphlet b/src/input/nlode.input.pamphlet
index ed2bfa6..90c5630 100644
--- a/src/input/nlode.input.pamphlet
+++ b/src/input/nlode.input.pamphlet
@@ -10,19 +10,19 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool nlode.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 This will be the unknown
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 16
 y := operator y
 --R 
@@ -31,9 +31,9 @@ y := operator y
 --R                                                          Type: BasicOperator
 --E 1
 
-@
+\end{chunk}
 Some non-linear non-exact 1st order equations
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 16
 deq := (sin y x - x / y(x)) * differentiate(y x, x) = 1
 --R 
@@ -46,10 +46,10 @@ deq := (sin y x - x / y(x)) * differentiate(y x, x) = 1
 --R                                            Type: Equation Expression Integer
 --E 2
 
-@
+\end{chunk}
 The result with no initial condition is a first integral
 when equated to any constant
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 16
 solve(deq, y, x)
 --R 
@@ -79,10 +79,10 @@ solve(deq, y, x)
 --R                                          Type: Union(Expression Integer,...)
 --E 5
 
-@
+\end{chunk}
 Same with initial condition y(1) = 1
 the result is a first integral if equated to 0
-<<*>>=
+\begin{chunk}{*}
 --S 6 of 16
 solve(deq, y, x = 1, [1])
 --R 
@@ -113,9 +113,9 @@ solve(deq, y, x)
 --R                                          Type: Union(Expression Integer,...)
 --E 8
 
-@
+\end{chunk}
 This one has an independent parameter w, initial condition y(0) = 0
-<<*>>=
+\begin{chunk}{*}
 --S 9 of 16
 deq := differentiate(y x, x) = w + y(x) / (1 - y x)
 --R 
@@ -138,10 +138,10 @@ solve(deq, y, x = 0, [0])
 --R                                          Type: Union(Expression Integer,...)
 --E 10
 
-@
+\end{chunk}
 Bernoulli equation: the result is a first integral when equated to
 any constant, but it can be explicitly solved for y(x)
-<<*>>=
+\begin{chunk}{*}
 --S 11 of 16
 deq := x**2 * differentiate(y x, x) + 2 * x * y x - y(x)**3
 --R 
@@ -164,10 +164,10 @@ solve(deq, y, x)
 --R                                          Type: Union(Expression Integer,...)
 --E 12
 
-@
+\end{chunk}
 Riccati equation: the result is a first integral when equated to
 any constant, but it can be explicitly solved for y(x)
-<<*>>=
+\begin{chunk}{*}
 --S 13 of 16
 deq := differentiate(y x,x) = 1 + x**2 - 2 * x * y x + y(x)**2
 --R 
@@ -189,10 +189,10 @@ solve(deq, y, x)
 --R                                          Type: Union(Expression Integer,...)
 --E 14
 
-@
+\end{chunk}
 Riccati equation: the result is a first integral when equated to
 any constant, but it can be explicitly solved for y(x)
-<<*>>=
+\begin{chunk}{*}
 --S 15 of 16
 deq := x**2 * differentiate(y x,x) = -1 - x * y x + x**2 * y(x)**2
 --R 
@@ -217,7 +217,7 @@ solve(deq, y, x)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/none.input.pamphlet b/src/input/none.input.pamphlet
index fd31063..f7294cf 100644
--- a/src/input/none.input.pamphlet
+++ b/src/input/none.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool none.output
 )set message test on
@@ -45,7 +45,7 @@
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/noonburg.input.pamphlet b/src/input/noonburg.input.pamphlet
index 7fa8287..9fd0d72 100644
--- a/src/input/noonburg.input.pamphlet
+++ b/src/input/noonburg.input.pamphlet
@@ -10,19 +10,19 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool noonburg.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 \section{Example of Noonburg}
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 6
 RN := Fraction Integer
 --R 
@@ -153,7 +153,7 @@ gb0 := groebnerFactorize [px,py,pz]
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/noptip.input.pamphlet b/src/input/noptip.input.pamphlet
index 76f3385..74ad5d5 100644
--- a/src/input/noptip.input.pamphlet
+++ b/src/input/noptip.input.pamphlet
@@ -10,21 +10,21 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool noptip.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 Note that the conversions of results from DoubleFloat to Float
 will become unnecessary if outputGeneral is extended to apply to
 DoubleFloat quantities.
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 6
 outputGeneral 5
 --R 
@@ -80,7 +80,7 @@ output "End of tests"
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/nqip.input.pamphlet b/src/input/nqip.input.pamphlet
index 07536d6..ea6e9ea 100644
--- a/src/input/nqip.input.pamphlet
+++ b/src/input/nqip.input.pamphlet
@@ -10,21 +10,21 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool nqip.output
 )set message test on
 )set message auto off
 )clear all
 
-@ 
+\end{chunk} 
 Note that the conversions of results from DoubleFloat to Float
 will become unnecessary if outputGeneral is extended to apply to
 DoubleFloat quantities.
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 14
 outputGeneral 5
 --R 
@@ -219,7 +219,7 @@ output "End of tests"
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/nsfip.input.pamphlet b/src/input/nsfip.input.pamphlet
index 05890fe..1e54bae 100644
--- a/src/input/nsfip.input.pamphlet
+++ b/src/input/nsfip.input.pamphlet
@@ -10,21 +10,21 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool nsfip.output
 )set message test on
 )set message auto off
 )clear all
 
-@ 
+\end{chunk} 
 Note that the conversions of Results from DoubleFloat to Float
 will become unnecessary if outputGeneral is extended to apply to
 DoubleFloat quantities.
-<<*>>=
+\begin{chunk}{*}
 
 --S 1 of 141
 outputGeneral 4
@@ -32,12 +32,12 @@ outputGeneral 4
 --R                                                                   Type: Void
 --E 1
 
-@
+\end{chunk}
 DF here means DoubleFloat.
 Results converted to Float as outputGeneral not working on DF.
 
 nagExpInt : DF -> DF ;
-<<*>>=
+\begin{chunk}{*}
 
 --S 2 of 141 used to work?
 nagExpInt(2) :: Float
@@ -84,9 +84,9 @@ nagExpInt(-1) :: Float
 --      S13AAF. The error number (IFAIL value) is 1, please consult the 
 --      NAG manual via the Browser for diagnostic information.
 
-@
+\end{chunk}
 nagSinInt : DF -> DF ;
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 141 used to work?
 nagSinInt(0) :: Float
 --R 
@@ -201,9 +201,9 @@ nagSinInt(1) :: Float
 --E 9
 --       0.9461
 
-@
+\end{chunk}
 nagCosInt : DF -> DF ;
-<<*>>=
+\begin{chunk}{*}
 
 --S 10 of 141 used to work?
 nagCosInt(0.2) :: Float
@@ -300,9 +300,9 @@ nagCosInt(1) :: Float
 --E 14
 --       0.3374
 
-@
+\end{chunk}
 nagIncompleteGammaP : (DF, DF) -> DF ; (to machine precision)
-<<*>>=
+\begin{chunk}{*}
 
 --S 15 of 141
 nagIncompleteGammaP(2,3) :: Float
@@ -404,9 +404,9 @@ nagIncompleteGammaP(21,20) :: Float
 --E 19
 --       0.4409
 
-@
+\end{chunk}
 nagIncompleteGammaP : (DF, DF, DF) -> DF ; (to specified precision)
-<<*>>=
+\begin{chunk}{*}
 
 --S 20 of 141
 nagIncompleteGammaP(7,1,0.1) :: Float
@@ -429,9 +429,9 @@ nagIncompleteGammaP(7,1,0.1) :: Float
 --E 20
 --       0.00008313
 
-@
+\end{chunk}
 nagIncompleteGammaQ : (DF, DF) -> DF ; (to machine precision)
-<<*>>=
+\begin{chunk}{*}
 
 --S 21 of 141
 nagIncompleteGammaQ(2,3) :: Float
@@ -553,9 +553,9 @@ nagIncompleteGammaQ(25,14) :: Float
 --E 26
 --       0.995
 
-@
+\end{chunk}
 nagIncompleteGammaQ : (DF, DF, DF) -> DF ; (to specified precision)
-<<*>>=
+\begin{chunk}{*}
 
 --S 27 of 141
 nagIncompleteGammaQ(25,14,0.1) :: Float
@@ -578,9 +578,9 @@ nagIncompleteGammaQ(25,14,0.1) :: Float
 --E 27
 --       0.9953
 
-@
+\end{chunk}
 nagErf : DF -> DF ;
-<<*>>=
+\begin{chunk}{*}
 
 --S 28 of 141
 nagErf(-6) :: Float
@@ -696,9 +696,9 @@ nagErf(6) :: Float
 --E 33
 --       1.0
 
-@
+\end{chunk}
 nagErfC : DF -> DF ;
-<<*>>=
+\begin{chunk}{*}
 
 --S 34 of 141
 nagErfC(-10) :: Float
@@ -795,9 +795,9 @@ nagErfC(15) :: Float
 --E 38
 --       0.7213 E -99
 
-@
+\end{chunk}
 nagDAiryAi : DF -> DF ;
-<<*>>=
+\begin{chunk}{*}
 --S 39 of 141
 nagDAiryAi(-10) :: Float
 --R 
@@ -931,9 +931,9 @@ nagDAiryAi(20) :: Float
 --E 45
 --       - 0.7586 E -26
 
-@
+\end{chunk}
 nagDAiryAi : CDF -> CDF ;
-<<*>>=
+\begin{chunk}{*}
 --S 46 of 141
 --RnagDAiryAi(0.3+0.4*%i) :: Complex Float
 --R 
@@ -953,9 +953,9 @@ nagDAiryAi : CDF -> CDF ;
 --E 46
 --       - 0.2612 + 0.03848 %i
 
-@
+\end{chunk}
 nagDAiryBi : DF -> DF ;
-<<*>>=
+\begin{chunk}{*}
 --S 47 of 141
 nagDAiryBi(-10) :: Float
 --R 
@@ -1089,9 +1089,9 @@ nagDAiryBi(20) :: Float
 --E 53
 --       0.9382 E 26
 
-@
+\end{chunk}
 nagDAiryBi : CDF -> CDF ;
-<<*>>=
+\begin{chunk}{*}
 
 --S 54 of 141
 nagDAiryBi(0.3+0.4*%i) :: Complex Float
@@ -1112,9 +1112,9 @@ nagDAiryBi(0.3+0.4*%i) :: Complex Float
 --E 54
 --       0.4093 + 0.07966 %i
 
-@
+\end{chunk}
 nagScaledDAiryAi : CDF -> CDF ;
-<<*>>=
+\begin{chunk}{*}
 --S 55 of 141
 nagScaledDAiryAi(0.3+0.4*%i) :: Complex Float
 --R 
@@ -1134,9 +1134,9 @@ nagScaledDAiryAi(0.3+0.4*%i) :: Complex Float
 --E 55
 --       - 0.2744 - 0.02356 %i
 
-@
+\end{chunk}
 nagScaledDAiryBi : CDF -> CDF ;
-<<*>>=
+\begin{chunk}{*}
 --S 56 of 141
 nagScaledDAiryBi(0.3+0.4*%i) :: Complex Float
 --R 
@@ -1156,9 +1156,9 @@ nagScaledDAiryBi(0.3+0.4*%i) :: Complex Float
 --E 56
 --       0.3924 + 0.07638 %i
 
-@
+\end{chunk}
 nagHankelH1 : (DF, CDF, Int) -> List CDF ;
-<<*>>=
+\begin{chunk}{*}
 --S 57 of 141
 nagHankelH1(0,0.3+0.4*%i,2) :: Matrix Complex Float
 --R 
@@ -1222,9 +1222,9 @@ nagHankelH1(2.12,-1,2) :: Matrix Complex Float
 --E 59
 --       [- 0.7722 - 1.693 %i  2.601 + 6.527 %i]
 
-@
+\end{chunk}
 nagHankelH2 : (DF, CDF, Int) -> List CDF ;
-<<*>>=
+\begin{chunk}{*}
 
 --S 60 of 141
 nagHankelH2(6,3.1-1.6*%i,2) :: Matrix Complex Float
@@ -1247,9 +1247,9 @@ nagHankelH2(6,3.1-1.6*%i,2) :: Matrix Complex Float
 --E 60
 --       [- 1.371 - 1.28 %i  - 1.491 - 5.993 %i]
 
-@
+\end{chunk}
 nagScaledHankelH1 : (DF, CDF, Int) -> List CDF ;
-<<*>>=
+\begin{chunk}{*}
 --S 61 of 141
 nagScaledHankelH1(0,0.3+0.4*%i,2) :: Matrix Complex Float
 --R 
@@ -1271,9 +1271,9 @@ nagScaledHankelH1(0,0.3+0.4*%i,2) :: Matrix Complex Float
 --E 61
 --       [0.2477 - 0.9492 %i  - 1.488 - 0.8166 %i]
 
-@
+\end{chunk}
 nagScaledHankelH2 : (DF, CDF, Int) -> List CDF ;
-<<*>>=
+\begin{chunk}{*}
 
 --S 62 of 141
 nagScaledHankelH2(6,3.1-1.6*%i,2) :: Matrix Complex Float
@@ -1296,9 +1296,9 @@ nagScaledHankelH2(6,3.1-1.6*%i,2) :: Matrix Complex Float
 --E 62
 --       [7.05 + 6.052 %i  8.614 + 29.35 %i]
 
-@
+\end{chunk}
 nagKelvinBer : DF -> DF ;
-<<*>>=
+\begin{chunk}{*}
 
 --S 63 of 141
 nagKelvinBer(0.1) :: Float
@@ -1459,9 +1459,9 @@ nagKelvinBer(-1) :: Float
 --E 70
 --       0.9844
 
-@
+\end{chunk}
 nagKelvinBei : DF -> DF ;
-<<*>>=
+\begin{chunk}{*}
 --S 71 of 141
 nagKelvinBei(0.1) :: Float
 --R 
@@ -1621,9 +1621,9 @@ nagKelvinBei(-1) :: Float
 --E 77a
 --       0.2496
 
-@
+\end{chunk}
 nagKelvinKer : DF -> DF ;
-<<*>>=
+\begin{chunk}{*}
 
 --S 78 of 141
 nagKelvinKer(0) :: Float
@@ -1817,9 +1817,9 @@ nagKelvinKer(-1) :: Float
 --      S19ACF. The error number (IFAIL value) is 2, please consult the 
 --      NAG manual via the Browser for diagnostic information.
 
-@
+\end{chunk}
 nagKelvinKei : DF -> DF ;
-<<*>>=
+\begin{chunk}{*}
 
 --S 87 of 141
 nagKelvinKei(0) :: Float
@@ -2006,9 +2006,9 @@ nagKelvinKei(-1) :: Float
 --      S19ADF. The error number (IFAIL value) is 2, please consult the 
 --      NAG manual via the Browser for diagnostic information.
 
-@
+\end{chunk}
 nagFresnelS : DF -> DF ;
-<<*>>=
+\begin{chunk}{*}
 
 --S 96 of 141
 nagFresnelS(0) :: Float
@@ -2219,9 +2219,9 @@ nagFresnelS(1000) :: Float
 --E 106
 --       0.4997
 
-@
+\end{chunk}
 nagFresnelC : DF -> DF ;
-<<*>>=
+\begin{chunk}{*}
 
 --S 107 of 141
 nagFresnelC(0) :: Float
@@ -2432,9 +2432,9 @@ nagFresnelC(1000) :: Float
 --E 117
 --       0.5
 
-@
+\end{chunk}
 -- nagEllipticIntegralRC : (DF, DF) -> DF ;
-<<*>>=
+\begin{chunk}{*}
 
 --S 118 of 141
 nagEllipticIntegralRC(0.5,1) :: Float
@@ -2496,9 +2496,9 @@ nagEllipticIntegralRC(1.5,1) :: Float
 --E 120
 --       0.9312
 
-@
+\end{chunk}
 nagEllipticIntegralRD : (DF, DF, DF) -> DF ;
-<<*>>=
+\begin{chunk}{*}
 --S 121 of 141
 nagEllipticIntegralRD(0.5,0.5,1) :: Float
 --R 
@@ -2625,9 +2625,9 @@ nagEllipticIntegralRD(1.5,1.5,1) :: Float
 --E 126
 --       0.7775
 
-@
+\end{chunk}
 nagEllipticIntegralRF : (DF, DF, DF) -> DF ;
-<<*>>=
+\begin{chunk}{*}
 --S 127 of 141
 nagEllipticIntegralRF(0.5,1,1.5) :: Float
 --R 
@@ -2691,9 +2691,9 @@ nagEllipticIntegralRF(1.5,2,2.5) :: Float
 --E 129
 --       0.7116
 
-@
+\end{chunk}
 nagEllipticIntegralRJ : (DF, DF, DF, DF) -> DF ;
-<<*>>=
+\begin{chunk}{*}
 --S 130 of 141
 nagEllipticIntegralRJ(0.5,0.5,0.5,2) :: Float
 --R 
@@ -2929,7 +2929,7 @@ output "End of tests"
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/ntube.input.pamphlet b/src/input/ntube.input.pamphlet
index fbe5db3..f670674 100644
--- a/src/input/ntube.input.pamphlet
+++ b/src/input/ntube.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 -- ntube.input
 -- Generalized tubes.
 -- The functions in this file draw a 2-d curve in the normal
@@ -92,7 +92,7 @@ ngeneralTube(spaceCurve, planeCurve, delT, oldT) ==
     p := planeCurve(v, t)
     frame.value + p.1*frame.normal + p.2*frame.binormal
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/numbers.input.pamphlet b/src/input/numbers.input.pamphlet
index efe91ce..e197310 100644
--- a/src/input/numbers.input.pamphlet
+++ b/src/input/numbers.input.pamphlet
@@ -8,12 +8,12 @@
 \end{abstract}
 \eject
 \tableofcontents
-\eject
+
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool numbers.output
 )set message test on
@@ -780,7 +780,7 @@ x * y
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/oct.input.pamphlet b/src/input/oct.input.pamphlet
index 4edbd25..7ed68b3 100644
--- a/src/input/oct.input.pamphlet
+++ b/src/input/oct.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool oct.output
 )set message test on
@@ -204,7 +204,7 @@ norm(o*p)-norm(p)*norm(p)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/octonion.input.pamphlet b/src/input/octonion.input.pamphlet
index f593941..ca3e4bf 100644
--- a/src/input/octonion.input.pamphlet
+++ b/src/input/octonion.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool octonion.output
 )set message test on
@@ -91,10 +91,10 @@ e7:Octonion(Fraction(Integer)):=octon(0,0,0,0,0,0,0,1)
 --R   (9)  [1,i,j,k,E,I,J,K]
 --R                                         Type: List Octonion Fraction Integer
 --E 9
-@
+\end{chunk}
 Given the above basis elements we can form the multiplication table
 for the Octonions.
-<<*>>=
+\begin{chunk}{*}
 --S 10 of 39
 for i in [e0,e1,e2,e3,e4,e5,e6,e7] repeat _
   print [ (i*e0),(i*e1),(i*e2),(i*e3),(i*e4),(i*e5),(i*e6),(i*e7) ]
@@ -109,9 +109,9 @@ for i in [e0,e1,e2,e3,e4,e5,e6,e7] repeat _
 --R   [K,- J,I,E,- k,- j,i,- 1]
 --R                                                                   Type: Void
 --E 10
-@
+\end{chunk}
 The octonions build a non-associative algebra:
-<<*>>=
+\begin{chunk}{*}
 --S 11 of 39
 oci1 := octon(1,2,3,4,5,6,7,8)
 --R 
@@ -152,9 +152,9 @@ oci := oci1 * oci2 * oci3
 --R                                                       Type: Octonion Integer
 --E 15
 
-@
+\end{chunk}
 The following elements, together with 1, build a basis over the ground ring
-<<*>>=
+\begin{chunk}{*}
 --S 16 of 39
 octon(1,0,0,0,0,0,0,0)
 --R 
@@ -235,9 +235,9 @@ i*(j*J)
 --R                                                       Type: Octonion Integer
 --E 25
 
-@
+\end{chunk}
 We can extract the coefficient w.r.t. a basis element:
-<<*>>=
+\begin{chunk}{*}
 --S 26 of 39
 imagi oci
 --R 
@@ -254,10 +254,10 @@ imagE oci
 --R                                                                Type: Integer
 --E 27
 
-@
+\end{chunk}
 The elements 1 and E build a basis with respect to the quaternions:
 but what are the commuting rules?
-<<*>>=
+\begin{chunk}{*}
 --S 28 of 39
 qs := Quaternion Polynomial Integer
 --R 
@@ -274,9 +274,9 @@ os := Octonion Polynomial Integer
 --R                                                                 Type: Domain
 --E 29
 
-@
+\end{chunk}
 A general quaternion:
-<<*>>=
+\begin{chunk}{*}
 --S 30 of 39
 q : qs := quatern(q1,qi,qj,qk)
 --R 
@@ -325,9 +325,9 @@ q * 1$os
 --R                                            Type: Octonion Polynomial Integer
 --E 35
 
-@
+\end{chunk}
 Two general octonions:
-<<*>>=
+\begin{chunk}{*}
 --S 36 of 39
 o : os := octon(o1,oi,oj,ok,oE,oI,oJ,oK)
 --R 
@@ -344,10 +344,10 @@ p : os := octon(p1,pi,pj,pk,pE,pI,pJ,pK)
 --R                                            Type: Octonion Polynomial Integer
 --E 37
 
-@
+\end{chunk}
 The norm of an octonion is defined as the sum of the squares of the 
 coefficients:
-<<*>>=
+\begin{chunk}{*}
 
 --S 38 of 39
 norm o
@@ -358,9 +358,9 @@ norm o
 --R                                                     Type: Polynomial Integer
 --E 38
 
-@
+\end{chunk}
 And the norm is multiplicative:
-<<*>>=
+\begin{chunk}{*}
 --S 39 of 39
 norm(o*p)-norm(p*o)
 --R 
@@ -371,7 +371,7 @@ norm(o*p)-norm(p*o)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/ode.input.pamphlet b/src/input/ode.input.pamphlet
index 3c6510e..3773dea 100644
--- a/src/input/ode.input.pamphlet
+++ b/src/input/ode.input.pamphlet
@@ -10,19 +10,19 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool ode.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 A bug when one one uses a diff.eq. with a free variable other than x.
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 --S 1 of 11
 y:=operator 'y
@@ -134,7 +134,7 @@ solve(deqz,y,z=0,[1]) -- BUG!
 --R                                          Type: Union(Expression Integer,...)
 --E 10
 
-@
+\end{chunk}
 I think the bug is in
 \begin{verbatim}
    file odeef.spad
@@ -158,7 +158,7 @@ as the line immediately below it. That change certainly fixes THIS bug!
 
 Also, maybe a check should be made that this kx is indeed to be found
 in the diffeq -- my system reports segmenttion violation if I do
-<<*>>=
+\begin{chunk}{*}
 --S 11 of 11 needs fixing
 solve(deqt,y,x=0,[1])
 --R 
@@ -173,7 +173,7 @@ solve(deqt,y,x=0,[1])
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/odpol.input.pamphlet b/src/input/odpol.input.pamphlet
index e82023d..dbab6cd 100644
--- a/src/input/odpol.input.pamphlet
+++ b/src/input/odpol.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool odpol.output
 )set message test on
@@ -358,7 +358,7 @@ ig * prf - lcf * g * lg
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/op.input.pamphlet b/src/input/op.input.pamphlet
index 94eea25..aeba7b8 100644
--- a/src/input/op.input.pamphlet
+++ b/src/input/op.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool op.output
 )set message test on
@@ -37,7 +37,7 @@ eval(%,x=-3.4)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/op1.input.pamphlet b/src/input/op1.input.pamphlet
index be094bd..472e0da 100644
--- a/src/input/op1.input.pamphlet
+++ b/src/input/op1.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool op1.output
 )set message test on
@@ -219,7 +219,7 @@ E 15
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/opalg.input.pamphlet b/src/input/opalg.input.pamphlet
index 7f748c2..7952341 100644
--- a/src/input/opalg.input.pamphlet
+++ b/src/input/opalg.input.pamphlet
@@ -10,19 +10,19 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool opalg.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 This is the recursive definition of the Legendre polynomials
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 9
 L n ==
   n = 0 => 1
@@ -45,9 +45,9 @@ L 5
 --R                                            Type: Polynomial Fraction Integer
 --E 2
 
-@
+\end{chunk}
 Create the differential operator d/dx on Q[x]
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 9
 dx := operator("D")::OP(POLY FRAC INT)
 --R 
@@ -56,9 +56,9 @@ dx := operator("D")::OP(POLY FRAC INT)
 --R                                   Type: Operator Polynomial Fraction Integer
 --E 3
 
-@
+\end{chunk}
 And attach the map d/dx to it:
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 9
 evaluate(dx, p +-> differentiate(p, 'x))$OP(POLY FRAC INT)
 --R 
@@ -67,9 +67,9 @@ evaluate(dx, p +-> differentiate(p, 'x))$OP(POLY FRAC INT)
 --R                                   Type: Operator Polynomial Fraction Integer
 --E 4
 
-@
+\end{chunk}
 This is the differential equation satisfied by the nth Legendre poly:
-<<*>>=
+\begin{chunk}{*}
 --S 5 of 9
 E n == (1 - x**2) * dx**2 - 2 * x * dx + n*(n+1)
 --R 
@@ -136,7 +136,7 @@ E 5
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/operator.input.pamphlet b/src/input/operator.input.pamphlet
index 4a020ee..52c259e 100644
--- a/src/input/operator.input.pamphlet
+++ b/src/input/operator.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool operator.output
 )set message test on
@@ -81,7 +81,7 @@ E 15
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/ovar.input.pamphlet b/src/input/ovar.input.pamphlet
index 342532b..9856150 100644
--- a/src/input/ovar.input.pamphlet
+++ b/src/input/ovar.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool ovar.output
 )set message test on
@@ -63,7 +63,7 @@ sorted?(>,lv)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/overload.input.pamphlet b/src/input/overload.input.pamphlet
index fbe3eeb..2096df4 100644
--- a/src/input/overload.input.pamphlet
+++ b/src/input/overload.input.pamphlet
@@ -10,13 +10,13 @@ Type conversion and overload problems
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool overload.output
 )set message test on
 )set message auto off
 )clear all
-@
+\end{chunk}
 \section{Type Conversion and Overload problems}
 Several non-intuitive problems with overloading and type conversions
 arose while developing the biquaternion (see biquat.input) support
@@ -29,7 +29,7 @@ arguments and conversion which we will break in various ways, some
 understandable, some not(?), below.
 
 The cos function will produce float outcomes for float arguments
-<<*>>=
+\begin{chunk}{*}
 
 --S 1 of 51
 cos(1.237)
@@ -39,9 +39,9 @@ cos(1.237)
 --R                                                                  Type: Float
 --E 1
 
-@
+\end{chunk}
 can handle expressions that mix floats and integers
-<<*>>=
+\begin{chunk}{*}
 
 --S 2 of 51
 cos(1.237/2)
@@ -51,10 +51,10 @@ cos(1.237/2)
 --R                                                                  Type: Float
 --E 2
 
-@
+\end{chunk}
 but will respect an integer expression, as we would want it to,
 by not evaluating
-<<*>>=
+\begin{chunk}{*}
 
 --S 3 of 51
 cos(2/3)
@@ -66,7 +66,7 @@ cos(2/3)
 --R                                                     Type: Expression Integer
 --E 3
 
-@
+\end{chunk}
 We can coerce the evaluation as a float by forcing the floating point
 evaluation of the division and typing of the outcome in a variety of
 ways. Each of the following forms is effective in some appropriate
@@ -74,7 +74,7 @@ and understandable way. Some act explicitly on the ``/'' operator
 to force a polymorphic choice, others convert the type of the second
 constand in each expression which results in a proper implicit selection
 of which ``/'' definitition to use.
-<<*>>=
+\begin{chunk}{*}
 
 --S 4 of 51
 cos(2/3::Float)
@@ -124,11 +124,11 @@ cos((2/3)@Float)
 --R                                                                  Type: Float
 --E 9
 
-@
+\end{chunk}
 But, as we would expect, it is too late to attempt coercion after the
 fact. Coercion operates ``on the surface and not deeply'' as illustrated
 here.
-<<*>>=
+\begin{chunk}{*}
 
 --S 10 of 51
 cos(2/3)::Float
@@ -142,10 +142,10 @@ cos(2/3)::Float
 --R
 --E 10
 
-@
+\end{chunk}
 However, there is a real need for a deep coercion operator that operates
 on the innermost atomic constants. Suppose we define
-<<*>>=
+\begin{chunk}{*}
 
 --S 11 of 51
 cosf(x:Expression Integer):Expression Integer == 1+cos(x/2)
@@ -155,7 +155,7 @@ cosf(x:Expression Integer):Expression Integer == 1+cos(x/2)
 --R                                                                   Type: Void
 --E 11
 
-@
+\end{chunk}
 which is an example of a simple function that might be defined in the
 course of typical work. We wish to declare functions as having integer
 based fractions, rather than forming approximate decimal expansions, which
@@ -167,7 +167,7 @@ to lying to Axiom in many cases as to the ultimate destiny of the function
 being defined. But woe to us if we wish later to evaluate it in a more
 general way because it is a tangled web we weave when we practice to
 decieve.
-<<*>>=
+\begin{chunk}{*}
 
 --S 12 of 51
 cosf(2/3)
@@ -192,7 +192,7 @@ cosf((2/3)::Float)
 --R
 --E 13
 
-@
+\end{chunk}
 Thus in effect once we wrap a function around an integer base definition,
 we are stuck and unable to evaluate it as a float later, unlike the core
 basic functions that can be used either way. This forces us to choose the
@@ -203,13 +203,13 @@ sequential development of a formula.
 
 Bizarrely, the draw function seems to have the power to override the
 type problem as shown here
-<<*>>=
+\begin{chunk}{*}
 
 --S 14 of 51
 --draw(cosf(x),x=0..15)
 --E 14
 
-@
+\end{chunk}
 Why can't we grant this deep coercion power to some new form of floating
 point conversion operation which can be applied at will? If draw has
 this power, why not put it in the hands of the user?
@@ -221,7 +221,7 @@ constant quantities with distinguishable parts until an {\bf evalf}
 like function that would force them entirely into the Float type. For
 example, in Maple ``cos(2/3)+1.2323'' remains as is, while in Axiom
 we get
-<<*>>=
+\begin{chunk}{*}
 
 --S 15 of 51
 cos(2/3)+1.2323
@@ -231,12 +231,12 @@ cos(2/3)+1.2323
 --R                                                       Type: Expression Float
 --E 15
 
-@
+\end{chunk}
 In a way, Axiom already has a quantity treated like this -- the constant
 %pi is treated as a special float which remains unevaluated and does not
 force combination of itself with an Integer. It simply results in a new
 kind of Integer evaluation of type Pi
-<<*>>=
+\begin{chunk}{*}
 
 --S 16 of 51
 3/4+%pi
@@ -248,12 +248,12 @@ kind of Integer evaluation of type Pi
 --R                                                                     Type: Pi
 --E 16
 
-@
+\end{chunk}
 \section{Overloading problems}
 Now let's examine properties and problems with overloading.
 
 Define the type $Q$ of Hamiltonian biquaternions
-<<*>>=
+\begin{chunk}{*}
 
 --S 17 of 51
 C:=Complex Expression Integer
@@ -271,10 +271,10 @@ Q:=Quaternion C
 --R                                                                 Type: Domain
 --E 18
 
-@
+\end{chunk}
 While developing the support functions, this definition of biquat
 division was introduced to simplify the format of the formulae
-<<*>>=
+\begin{chunk}{*}
 
 --S 19 of 51
 ((x:Q)/(y:Q)):Q == x*inv(y)
@@ -285,11 +285,11 @@ division was introduced to simplify the format of the formulae
 --R                                                                   Type: Void
 --E 19
 
-@
+\end{chunk}
 But is this typed function in any way actually restricted to quaternions?
 On the face, it would appear all is normal, here's an example of 
 integer division
-<<*>>=
+\begin{chunk}{*}
 
 --S 20 of 51
 x:=15/6
@@ -304,11 +304,11 @@ x:=15/6
 --R                                  Type: Quaternion Complex Expression Integer
 --E 20
 
-@
+\end{chunk}
 But though the answer was right, the type is now a biquat. If we don't
 notice this, and proceed, some things seem still to act normally,
 for example, no complaint from Axiom with
-<<*>>=
+\begin{chunk}{*}
 
 --S 21 of 51
 cos(x)
@@ -320,9 +320,9 @@ cos(x)
 --R                                                     Type: Expression Integer
 --E 21
 
-@
+\end{chunk}
 Of course, we still get a correct answer with
-<<*>>=
+\begin{chunk}{*}
 
 --S 22 of 51
 cos(1.237)
@@ -332,9 +332,9 @@ cos(1.237)
 --R                                                                  Type: Float
 --E 22
 
-@
+\end{chunk}
 But let's try to apply this as a simple mixed float/integer function
-<<*>>=
+\begin{chunk}{*}
 
 --S 23 of 51
 cos(15.457/6)
@@ -348,12 +348,12 @@ cos(15.457/6)
 --R
 --E 23
 
-@
+\end{chunk}
 Obviously the quaternion version of ``/'' is being invoked despite
 mismatches of the arguments and the supposed overloading in effect.
 Well, what if we built a new cosine function that forced the form of
 the arguments into certain types to avoid mismatch?
-<<*>>=
+\begin{chunk}{*}
 
 --S 24 of 51
 c(y:Float):Float == cos(y)
@@ -362,9 +362,9 @@ c(y:Float):Float == cos(y)
 --R                                                                   Type: Void
 --E 24
 
-@
+\end{chunk}
 At first this seems to work, we can still evaluate a float
-<<*>>=
+\begin{chunk}{*}
 
 --S 25 of 51
 c(1.237)
@@ -375,10 +375,10 @@ c(1.237)
 --R                                                                  Type: Float
 --E 25
 
-@
+\end{chunk}
 and we can even get a float answer when we introduce the integer coercible
 biquat variable value generated from the above.
-<<*>>=
+\begin{chunk}{*}
 
 --S 26 of 51
 c(x)
@@ -388,11 +388,11 @@ c(x)
 --R                                                                  Type: Float
 --E 26
 
-@
+\end{chunk}
 But that was only misdirection, because this breaks down for reasonable
 expressions because of the ``/'' operation still not being resolved
 correctly.
-<<*>>=
+\begin{chunk}{*}
 
 --S 27 of 51
 c(1.237/2)
@@ -406,13 +406,13 @@ c(1.237/2)
 --R
 --E 27
 
-@
+\end{chunk}
 Rather than complaining about it, what if we tried the various coercions
 that served to solve the similar type conversion problem we had when 
 just dealing with Integer Fraction versus Floats at the top of the page.
 Our results are mixed. Recall that each of the following worked in the
 previous case, producing the correct floating result in each case.
-<<*>>=
+\begin{chunk}{*}
 
 --S 28 of 51
 cos(2/3::Float)
@@ -470,10 +470,10 @@ cos((2/3)@Float)
 --R      Float .
 --E 33
 
-@
+\end{chunk}
 Try these examples with our type constrained function, which has better
 luck now
-<<*>>=
+\begin{chunk}{*}
 
 --S 34 of 51
 c(2/3::Float)
@@ -525,11 +525,11 @@ c((2/3)@Float)
 --R      Float .
 --E 39
 
-@
+\end{chunk}
 Could the above problems have been avoided by not assigning types
 to the function we defined? Let's repeat the entire example with
 this single change for the function c2
-<<*>>=
+\begin{chunk}{*}
 
 --S 40 of 51
 c2(y) == cos(y)
@@ -570,10 +570,10 @@ c2(x)
 --R                                                     Type: Expression Integer
 --E 42
 
-@
+\end{chunk}
 But that was only misdirection, because this breaks down for
 reasonable expressions
-<<*>>=
+\begin{chunk}{*}
 
 --S 43 of 51
 c2(1.237/2)
@@ -587,10 +587,10 @@ c2(1.237/2)
 --R
 --E 43
 
-@
+\end{chunk}
 and various attempts at coercion also fail -- compare these results
 to the previous ones
-<<*>>=
+\begin{chunk}{*}
 
 --S 44 of 51
 c2(2/3::Float)
@@ -648,23 +648,23 @@ c2((2/3)@Float)
 --R      Float .
 --E 49
 
-@
+\end{chunk}
 Lastly, we cannot now use the graph function, draw, on such a function 
 since the wrong ``/'' function is used, contrary to the bypassing of
 internal types we saw take place with draw in the example prior to the
 introduction of operator overloading.
-<<*>>=
+\begin{chunk}{*}
 
 --S 50 of 51
 --draw(c(x),x=0..15)
 --E 50
 
-@
+\end{chunk}
 {\sl Not safe at any speed}. Most oddly, the ordinary cos() function which
 exposes no ``/'' division Now fails to work with draw despite the fact
 that we just saw it above still working with Integer and Float arguments
 applied directly.
-<<*>>=
+\begin{chunk}{*}
 
 --S 51 of 51
 --draw(cos(x),x=0..15)
@@ -673,7 +673,7 @@ applied directly.
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/padic.input.pamphlet b/src/input/padic.input.pamphlet
index 0ea57dd..890a17f 100644
--- a/src/input/padic.input.pamphlet
+++ b/src/input/padic.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool padic.output
 )set message test on
@@ -221,7 +221,7 @@ rr6 : BPADIC 7 := root(pp,6)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/page.input.pamphlet b/src/input/page.input.pamphlet
index 2f5d29f..0f51d95 100644
--- a/src/input/page.input.pamphlet
+++ b/src/input/page.input.pamphlet
@@ -10,17 +10,17 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool page.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 \begin{verbatim}
 On April 1, 2007 5:45 AM Gaby wrote:
 > 
@@ -50,7 +50,7 @@ interface, please review the following Axiom session.
 
 Consider the three strings:
 \end{verbatim}
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 18
 a1:="(a/x)+(a/y)"
 --R
@@ -72,9 +72,9 @@ a3:="(a*x+a*y)/(x*y)"
 --R                                                                 Type: String
 --E 3
 
-@
+\end{chunk}
 Of course as members of the Domain String these are all different.
-<<*>>=
+\begin{chunk}{*}
 
 --S 4 of 18
 (a1=a2)::Boolean
@@ -97,9 +97,9 @@ Of course as members of the Domain String these are all different.
 --R                                                                Type: Boolean
 --E 6
 
-@
+\end{chunk}
 While as members of the Domain Expression Integer these are equal.
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 18
 interpretString(a1."=".a2)::Boolean
 --R
@@ -121,10 +121,10 @@ interpretString(a2."=".a3)::Boolean
 --R                                                                Type: Boolean
 --E 9
 
-@
+\end{chunk}
 But when we evaluate them as symbolic expressions in the domain
 InputForm:
-<<*>>=
+\begin{chunk}{*}
 --S 10 of 18
 x:INFORM:=x
 --R
@@ -146,9 +146,9 @@ a:INFORM:=a
 --R                                                              Type: InputForm
 --E 12
 
-@
+\end{chunk}
 The first two are equal but the third is something different!
-<<*>>=
+\begin{chunk}{*}
 --S 13 of 18
 interpretString(a1."=".a2)::Boolean
 --R
@@ -170,7 +170,7 @@ interpretString(a2."=".a3)::Boolean
 --R                                                                Type: Boolean
 --E 15
 
-@
+\end{chunk}
 So equality of these ``algebraic'' objects in Expression Integer
 is not the same as equality in a purely symbolic domain like
 InputForm.
@@ -180,7 +180,7 @@ original Axiom developers actually did already anticipate the
 need for an OutputForm for InputForm that is equivalent the
 actual input to the Axiom interpreter. The function that I was
 looking for is called 'expr' in the domain InputForm.
-<<*>>=
+\begin{chunk}{*}
 --S 16 of 18
 map(expr,map(interpretString,a1=a2)::Equation(INFORM))
 --R
@@ -210,7 +210,7 @@ map(expr,map(interpretString,a1=a3)::Equation(INFORM))
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 So once again as Tim Daly has said many times, the problem is
 just that :( as usual ): there is not enough documentation.
 
diff --git a/src/input/palette.input.pamphlet b/src/input/palette.input.pamphlet
index e980f47..8b58903 100644
--- a/src/input/palette.input.pamphlet
+++ b/src/input/palette.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 -- test for Palette domain
 
 dark blue()
@@ -27,7 +27,7 @@ draw(x**2,x=-1..1,curveColor == hue dark blue())
 
 shade bright blue()
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/parabola.input.pamphlet b/src/input/parabola.input.pamphlet
index 91ab8f2..5176dba 100644
--- a/src/input/parabola.input.pamphlet
+++ b/src/input/parabola.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool parabola.output
 )set message test on
@@ -33,7 +33,7 @@ draw(curve(t**2 + 2*t - 1,t**2 + t - 2),t = -4..3)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/parpcurv.input.pamphlet b/src/input/parpcurv.input.pamphlet
index 176b97e..6b08b33 100644
--- a/src/input/parpcurv.input.pamphlet
+++ b/src/input/parpcurv.input.pamphlet
@@ -10,17 +10,17 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 
 -- test for ParametricPlaneCurve domain 
 
 draw(curve(sin(3*t),cos(3*t)),t = -5*%pi..5*%pi)
 draw(curve(sin(tan(t)),tan(sin(t))),t = -5*%pi..5*%pi)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/parscurv.input.pamphlet b/src/input/parscurv.input.pamphlet
index 3380ca2..faee0db 100644
--- a/src/input/parscurv.input.pamphlet
+++ b/src/input/parscurv.input.pamphlet
@@ -10,17 +10,17 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 
 -- test for ParametricSpaceCurve domain
 
 draw(curve(tan(cos(t)),sin(t),cos(t)),t=-12..12)
 draw(curve(sin(t),cos(t),sin(t)*cos(t)),t=-12..12)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/parsurf.input.pamphlet b/src/input/parsurf.input.pamphlet
index 31da59d..8a4eab7 100644
--- a/src/input/parsurf.input.pamphlet
+++ b/src/input/parsurf.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 
 -- test for ParametricSurface domain
 
@@ -26,7 +26,7 @@ f3(u:DFLOAT,v:DFLOAT):DFLOAT == cos(u+v)
 draw(surface(f1,f2,f3),0..2*%pi,-%pi..%pi)
 f4(u:DFLOAT,v:DFLOAT):DFLOAT == v*cos(u+v)
 draw(surface(f1,f2,f4),0..2*%pi,-%pi..%pi)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/pascal.input.pamphlet b/src/input/pascal.input.pamphlet
index 4fa6e2e..0775cf7 100644
--- a/src/input/pascal.input.pamphlet
+++ b/src/input/pascal.input.pamphlet
@@ -10,19 +10,19 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool pascal.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 This file shows some computations involving Pascal's triangle
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 10
 )set fun cache all
 --R 
@@ -103,9 +103,9 @@ pk 10
 --R                                              Type: List List PositiveInteger
 --E 9
 
-@
+\end{chunk}
 Reset the cache size
-<<*>>=
+\begin{chunk}{*}
 --S 10 of 10
 )set fun cache 10
 --R 
@@ -114,7 +114,7 @@ Reset the cache size
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/pascal1.input.pamphlet b/src/input/pascal1.input.pamphlet
index 668e60b..91912b0 100644
--- a/src/input/pascal1.input.pamphlet
+++ b/src/input/pascal1.input.pamphlet
@@ -10,19 +10,19 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool pascal1.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 This file shows some computations involving Pascal's triangle
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 7
 )set fun cache all
 --R 
@@ -72,7 +72,7 @@ l := [center blankSeparate [p(i,n)::OUTFORM for i in 1..n] for n in 1..10] ;
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/pat.input.pamphlet b/src/input/pat.input.pamphlet
index ac55e40..adee884 100644
--- a/src/input/pat.input.pamphlet
+++ b/src/input/pat.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool pat.output
 )set message test on
@@ -163,7 +163,7 @@ linearExponent?(exp(a*x+b,x) | freeOf?(a,x) and freeOf?(b,x)) == true
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/patch51.input.pamphlet b/src/input/patch51.input.pamphlet
index fc2dfdf..9d75cda 100644
--- a/src/input/patch51.input.pamphlet
+++ b/src/input/patch51.input.pamphlet
@@ -10,16 +10,16 @@ These are bug fixes available in patch51
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool patch51.output
 )set message test on
 )set message auto off
 )clear all
-@
+\end{chunk}
 The besselK function was missing a minus sign as of patch50.
 This is fixed as of patch51. 
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 1 bug #355 fix
 D(besselK(a,x),x)
 --R 
@@ -31,7 +31,7 @@ D(besselK(a,x),x)
 --E 1
 )spool 
 )lisp (bye)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} Milton Abramowitz and Irene A. Stegun, eds.  (1965). 
diff --git a/src/input/patmatch.input.pamphlet b/src/input/patmatch.input.pamphlet
index ba9d39a..f38e902 100644
--- a/src/input/patmatch.input.pamphlet
+++ b/src/input/patmatch.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool patmatch.output
 )set message test on
@@ -219,7 +219,7 @@ Is(3*x**2 + 9*x + 1, n * y**2 + n**2 * y + 1)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/perm.input.pamphlet b/src/input/perm.input.pamphlet
index 10ac894..29ed730 100644
--- a/src/input/perm.input.pamphlet
+++ b/src/input/perm.input.pamphlet
@@ -10,17 +10,17 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool perm.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 This file demonstrates some of the new routines for permutations
 in AXIOM.
 
@@ -28,7 +28,7 @@ Permutations can act on every set, finite or infinite.
 Usually permutations are given as a product of cycles,
 so the following generates a permutation acting on some
 elements of GF(29):
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 51
 x : List List PrimeField 29 :=
  [[23,19,7,9,12,11,15],[22,4,14,18,2,5,8],[21,20,10,16,13,6,17]]
@@ -46,10 +46,10 @@ px : PERM PrimeField 29 := x
 --R                                              Type: Permutation PrimeField 29
 --E 2
 
-@
+\end{chunk}
 If the permutation consists of just one cycle, you can use the
 function ``cycle'' instead of ``coerce'':
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 51
 w : List PrimeField 29 :=
  [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23]
@@ -67,9 +67,9 @@ pw : PERM PrimeField 29 := cycle w
 --R                                              Type: Permutation PrimeField 29
 --E 4
 
-@
+\end{chunk}
 For a product of cycles there is also the function ``cycles'':
-<<*>>=
+\begin{chunk}{*}
 --S 5 of 51
 k : List List PrimeField 29 :=
  [[23,24],[22,16],[21,9],[20,19],[18,12],[17,14],[15,7],[10,6]]
@@ -87,13 +87,13 @@ pk : PERM PrimeField 29 := cycles k
 --R                                              Type: Permutation PrimeField 29
 --E 6
 
-@
+\end{chunk}
 Since these permutations generate a group, you can
 perform various operations on px, pw and pk.
 You may have to be careful, because permutations are viewed
 as mappings acting on the left, so   (pw*pk)(7) = pw(pk(7)).
 Here are some examples:
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 51
 pw*pk
 --R 
@@ -110,9 +110,9 @@ px**3
 --R                                              Type: Permutation PrimeField 29
 --E 8
 
-@
+\end{chunk}
 You can ask for inverses:
-<<*>>=
+\begin{chunk}{*}
 --S 9 of 51
 inv px
 --R 
@@ -121,9 +121,9 @@ inv px
 --R                                              Type: Permutation PrimeField 29
 --E 9
 
-@
+\end{chunk}
 Or for the image of some element under a special permutation:
-<<*>>=
+\begin{chunk}{*}
 --S 10 of 51
 eval(px,17::PrimeField(29))
 --R 
@@ -132,9 +132,9 @@ eval(px,17::PrimeField(29))
 --R                                                          Type: PrimeField 29
 --E 10
 
-@
+\end{chunk}
 You may try to build commutators:
-<<*>>=
+\begin{chunk}{*}
 --S 11 of 51
 commutator(pk,pw)
 --R 
@@ -143,11 +143,11 @@ commutator(pk,pw)
 --R                                              Type: Permutation PrimeField 29
 --E 11
 
-@
+\end{chunk}
 Which is the same as inv(pk) * inv(pw) * pk * pw
 
 You can also ask for the orbit of some element under a permutation:
-<<*>>=
+\begin{chunk}{*}
 --S 12 of 51
 orbit(px,11::PrimeField(29))
 --R 
@@ -156,10 +156,10 @@ orbit(px,11::PrimeField(29))
 --R                                                      Type: Set PrimeField 29
 --E 12
 
-@
+\end{chunk}
 Or for the elements of the underlying set, which are permuted
 by a given permutation:
-<<*>>=
+\begin{chunk}{*}
 --S 13 of 51
 movedPoints(pk)
 --R 
@@ -168,10 +168,10 @@ movedPoints(pk)
 --R                                                      Type: Set PrimeField 29
 --E 13
 
-@
+\end{chunk}
 Now we take a short look on permutation groups.
 They are represented as a list of generating permutations:
-<<*>>=
+\begin{chunk}{*}
 --S 14 of 51
 gp1 : PERMGRP PrimeField 29 := [ px , pk ]
 --R 
@@ -211,9 +211,9 @@ gp3 : PERMGRP PrimeField 29 := [ pw , pk ]
 --R                                         Type: PermutationGroup PrimeField 29
 --E 16
 
-@
+\end{chunk}
 And we can ask for their orders:
-<<*>>=
+\begin{chunk}{*}
 --S 17 of 51
 order gp1
 --R 
@@ -238,12 +238,12 @@ order gp3
 --R                                                        Type: PositiveInteger
 --E 19
 
-@
+\end{chunk}
 In fact these are the Mathieu-groups $M_22$, $M_23$ and $M_24$.
 
 Now a more sophisticated example.
 The following matrices generate the general linear group GL(3,2):
-<<*>>=
+\begin{chunk}{*}
 --S 20 of 51
 (m1,m2,m3,m4): Matrix PrimeField 2
 --R 
@@ -298,10 +298,10 @@ m4 := [[1,0,0],[0,1,0],[0,1,1]]
 --R                                                    Type: Matrix PrimeField 2
 --E 24
 
-@
+\end{chunk}
 And these matrices act on the non-zero vectors of the
 corresponding vector space
-<<*>>=
+\begin{chunk}{*}
 --S 25 of 51
 vl : List Vector PrimeField 2
 --R 
@@ -316,10 +316,10 @@ vl := [[0,0,1],[0,1,0],[0,1,1],[1,0,0],[1,0,1],[1,1,0],[1,1,1]]
 --R                                               Type: List Vector PrimeField 2
 --E 26
 
-@
+\end{chunk}
 Now we can write down the action of our matrices on this list vl
 as a list of pairs
-<<*>>=
+\begin{chunk}{*}
 --S 28 of 51
 ll1 : List List Vector PrimeField 2 :=
    [ [ vl.i , m1*(vl.i) ] for i in 1..7 ]
@@ -364,9 +364,9 @@ ll4 : List List Vector PrimeField 2 :=
 --R                                          Type: List List Vector PrimeField 2
 --E 31
 
-@
+\end{chunk}
 And we can coerce these lists to permutations
-<<*>>=
+\begin{chunk}{*}
 --S 32 of 51
 el1 : PERM Vector PrimeField 2 := coerceListOfPairs ll1
 --R 
@@ -399,9 +399,9 @@ el4 : PERM Vector PrimeField 2 := coerceListOfPairs ll4
 --R                                        Type: Permutation Vector PrimeField 2
 --E 35
 
-@
+\end{chunk}
 Now we can do the same operations as before, e.g.
-<<*>>=
+\begin{chunk}{*}
 --S 36 of 51
 eval ( el3 , vl.5 )
 --R 
@@ -426,9 +426,9 @@ movedPoints el4
 --R                                                Type: Set Vector PrimeField 2
 --E 38
 
-@
+\end{chunk}
 Let's built the general linear group now
-<<*>>=
+\begin{chunk}{*}
 --S 39 of 51
 gl : PERMGRP Vector PrimeField 2 := [ el1 , el2 , el3 , el4 ]
 --R 
@@ -442,9 +442,9 @@ gl : PERMGRP Vector PrimeField 2 := [ el1 , el2 , el3 , el4 ]
 --R                                   Type: PermutationGroup Vector PrimeField 2
 --E 39
 
-@
+\end{chunk}
 And ask for its order
-<<*>>=
+\begin{chunk}{*}
 --S 40 of 51
 order gl
 --R 
@@ -453,9 +453,9 @@ order gl
 --R                                                        Type: PositiveInteger
 --E 40
 
-@
+\end{chunk}
 We can also ask for the orbit of the unordered set of vectors
-<<*>>=
+\begin{chunk}{*}
 --S 41 of 51
 setOfVectors : Set Vector PrimeField 2 := brace [ vl.2 , vl.4 , vl.6 ]
 --R 
@@ -464,9 +464,9 @@ setOfVectors : Set Vector PrimeField 2 := brace [ vl.2 , vl.4 , vl.6 ]
 --R                                                Type: Set Vector PrimeField 2
 --E 41
 
-@
+\end{chunk}
 Under gl
-<<*>>=
+\begin{chunk}{*}
 --S 42 of 51
 orbit ( gl, setOfVectors )
 --R 
@@ -479,9 +479,9 @@ orbit ( gl, setOfVectors )
 --R                                            Type: Set Set Vector PrimeField 2
 --E 42
 
-@
+\end{chunk}
 And also for the orbit of the ordered list
-<<*>>=
+\begin{chunk}{*}
 --S 43 of 51
 listOfVectors : List Vector PrimeField 2 := parts setOfVectors
 --R 
@@ -519,9 +519,9 @@ orbit ( gl, listOfVectors )
 --R                                           Type: Set List Vector PrimeField 2
 --E 44
 
-@
+\end{chunk}
 Now Rubik's cube.
-<<*>>=
+\begin{chunk}{*}
 --S 45 of 51
 f : PERM INT := cycles [[11,13,15,17],[12,14,16,18],[51,31,21,41],[53,33,23,43],_
              [52,32,22,42]]
@@ -540,9 +540,9 @@ r : PERM INT := cycles [[21,23,25,27],[22,24,26,28],[13,37,67,43],[15,31,61,45],
 --R                                                    Type: Permutation Integer
 --E 46
 
-@
+\end{chunk}
 Some calculation in Rubik's group:
-<<*>>=
+\begin{chunk}{*}
 --S 47 of 51
 (f**2*r**2)**3
 --R 
@@ -590,10 +590,10 @@ orbits rc
 --R                                                        Type: Set Set Integer
 --E 50
 
-@
+\end{chunk}
 Can we interchange just two pieces with two visible faces on the cube
 and leave everything else fixed?
-<<*>>=
+\begin{chunk}{*}
 --S 51 of 51
 member? (cycles([[12,14],[32,22]])$(PERM INT),rc)
 --R 
@@ -604,7 +604,7 @@ member? (cycles([[12,14],[32,22]])$(PERM INT),rc)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/perman.input.pamphlet b/src/input/perman.input.pamphlet
index f67f2d7..9f26071 100644
--- a/src/input/perman.input.pamphlet
+++ b/src/input/perman.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool perman.output
 )set message test on
@@ -53,7 +53,7 @@ permanent(kn(5) :: SQMATRIX(5,INT))
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/pfaffian.input.pamphlet b/src/input/pfaffian.input.pamphlet
index 8735dd5..4f9a871 100644
--- a/src/input/pfaffian.input.pamphlet
+++ b/src/input/pfaffian.input.pamphlet
@@ -11,7 +11,7 @@ It is the square root of the determinant.\cite{1}
 \end{abstract}
 \eject
 \tableofcontents
-\eject
+
 \section{Examples}
 $$
 {\rm Pfaffian}\left[
@@ -71,17 +71,17 @@ The Pfaffian of a $n\times n$ skew-symmetric matrix for n odd is
 defined to be zero.
 
 \section{Axiom code}
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool pfaffian.output
 )set message test on
 )set message auto off
 )clear all
 
-@
+\end{chunk}
 The function B0 has an input range of PositiveInteger. It computes
 a square matrix.  
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 26
 B0 n == matrix [[(if i=j+1 and odd? j then -1 else _
                    if i=j-1 and odd? i then 1 else 0) _
@@ -89,10 +89,10 @@ B0 n == matrix [[(if i=j+1 and odd? j then -1 else _
 --R 
 --R                                                                   Type: Void
 --E 1
-@
+\end{chunk}
 
 The first 8 values computed are:
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 26
 B0 1
 --R 
@@ -344,11 +344,11 @@ eval(n,['a,'b,'c,'d,'e,'f]::List(Symbol),[a,b,c,d,e,f])
 --R                                                     Type: Polynomial Integer
 --E 20
 
-@
+\end{chunk}
 Here we demonstrate the pfaffian of a block matrix which is
 anti-symmetric at each level. The proper result is to return
 a single matrix in the ground field. Maybe. It's not clear.
-<<*>>=
+\begin{chunk}{*}
 
 )clear properties z
 )clear properties d
@@ -434,10 +434,10 @@ mypf(m) ==
 --R                                                                   Type: Void
 --E 25
 
-@
+\end{chunk}
 We can construct an anti-symmetric matrix from a sequence by taking
 the first $n$ elements of the sequence:
-<<*>>=
+\begin{chunk}{*}
 --S 26 of 26
 antisymmetric(seq,n) == 
   m:= matrix [[(if i<j then (seq.(j-i)) _
@@ -447,7 +447,7 @@ antisymmetric(seq,n) ==
 --R                                                                   Type: Void
 --E 26
 
-@
+\end{chunk}
 According to Austin\cite{1} we can construct a map, called the
 ``Pfaffian transformation'' of a sequence which maps the sequence
 $(a_0, a_1, a_2, \ldots)$ to $(Pf(A_0), Pf(A_1), Pf(A_2), \ldots)$.
@@ -502,12 +502,11 @@ seq:=[1,1,2,3,5,8,13,21,34]
 --
 \end{verbatim}
 
-@
-<<*>>=
+\begin{chunk}{*}
 )spool 
 )lisp (bye)
 
-@
+\end{chunk}
 The Pfaffian is the square root of the determinant. The determinant
 can be calculated by
 \begin{verbatim}
diff --git a/src/input/pfr.input.pamphlet b/src/input/pfr.input.pamphlet
index 2187b4a..ac5e78f 100644
--- a/src/input/pfr.input.pamphlet
+++ b/src/input/pfr.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool pfr.output
 )set message test on
@@ -203,7 +203,7 @@ padicFraction %
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/pfr1.input.pamphlet b/src/input/pfr1.input.pamphlet
index cad41fb..381ec2c 100644
--- a/src/input/pfr1.input.pamphlet
+++ b/src/input/pfr1.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool pfr1.output
 )set message test on
@@ -137,7 +137,7 @@ padicFraction %
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/pinch.input.pamphlet b/src/input/pinch.input.pamphlet
index 5273dc8..e4ae634 100644
--- a/src/input/pinch.input.pamphlet
+++ b/src/input/pinch.input.pamphlet
@@ -9,10 +9,9 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
--- @(#)pinch.input	1.1    89/09/07  20:55:10
+\begin{chunk}{*}
 draw((x**2 - y**2)/(x**2 + y**2),x = -1..1,y = -1..1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/plotfile.input.pamphlet b/src/input/plotfile.input.pamphlet
index e99d78a..99f45ab 100644
--- a/src/input/plotfile.input.pamphlet
+++ b/src/input/plotfile.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 
 --Here is an input file which will plot a list of 2d data from a file.
 
@@ -76,7 +76,7 @@ drawFun(f:DoubleFloat->DoubleFloat):VIEW2D ==
   component(g, lp, pointColorDefault(), lineColorDefault(), pointSizeDefault())
   gi := makeGraphImage(g)$GRIMAGE
   makeViewport2D(gi, [title("Points")])$VIEW2D
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/plotlist.input.pamphlet b/src/input/plotlist.input.pamphlet
index 7dd581e..a6c1f5e 100644
--- a/src/input/plotlist.input.pamphlet
+++ b/src/input/plotlist.input.pamphlet
@@ -10,12 +10,12 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1996.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )clear all
-<<license>>
+\getchunk{license}
 
 --draws x**i for i in 1..5, x=-1..1
 
@@ -49,7 +49,7 @@ makeListFuns(fl:List(Expression Integer),_
 
 drawFuns(makeListFuns([x**i for i in 1..5], x=-1..1), x=-1..1)
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/pmint.input.pamphlet b/src/input/pmint.input.pamphlet
index af0efc6..827c586 100644
--- a/src/input/pmint.input.pamphlet
+++ b/src/input/pmint.input.pamphlet
@@ -10,19 +10,19 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool pmint.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 \section{Rational Functions}
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 29
 f:=(x^7-24*x^4-4*x^2+8*x-8)/(x^8+6*x^6+12*x^4+8*x^2)
 --R 
@@ -61,9 +61,9 @@ differentiate(g,x)
 
 )clear all
 
-@
+\end{chunk}
 \section{Trigonometric Functions}
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 29
 f:=(x-tan(x))/tan(x)^2 + tan(x)
 --R 
@@ -101,9 +101,9 @@ differentiate(g,x)
 
 )clear all
 
-@
+\end{chunk}
 \section{Log-Exp Functions}
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 29
 f:=(1+x+x*exp(x))*(x+log(x)+exp(x)-1)/(x+log(x)+exp(x))^2/x
 --R 
@@ -142,9 +142,9 @@ differentiate(g,x)
 
 )clear all
 
-@
+\end{chunk}
 \section{Liouvillian special functions}
-<<*>>=
+\begin{chunk}{*}
 --S 10 of 29
 f:=exp(-x^2)+erf(x)/(erf(x)^3-erf(x)^2-erf(x)+1)
 --R 
@@ -228,9 +228,9 @@ differentiate(g,x)
 
 )clear all
  
-@
+\end{chunk}
 \section{Airy Functions}
-<<*>>=
+\begin{chunk}{*}
 -- Axiom does not have a 2 argument form of the airyAi function
 --  f:=(x-airyAi(x)*airyAi(1,x))/(x^2-airyAi(x)^2)
 --it has the integral
@@ -302,9 +302,9 @@ differentiate(g,x)
 
 )clear all
 
-@
+\end{chunk}
 \section{Bessel functions}
-<<*>>=
+\begin{chunk}{*}
 --S 22 of 29
 f:=besselJ(y+1,x)/besselJ(y,x)
 --R 
@@ -371,9 +371,9 @@ differentiate(g,x)
 --E 27
 )clear all
 
-@
+\end{chunk}
 \section{Whittaker functions}
-<<*>>=
+\begin{chunk}{*}
 --S 28 of 29 used to work
 f:=WhittakerW(u+1,n,x)/(WhittakerW(u,n,x)*x)
 --R 
@@ -410,9 +410,9 @@ f:=WhittakerW(u+1,n,x)/(WhittakerW(u,n,x)*x)
 
 )clear all
 
-@
+\end{chunk}
 \section{The Lambert W function} 
-<<*>>=
+\begin{chunk}{*}
 -- Axiom does not implement LambertW
 --S 29 of 29 used to work
 f:=LambertW(x)
@@ -543,7 +543,7 @@ integrate(f,x)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/pollevel.input.pamphlet b/src/input/pollevel.input.pamphlet
index b317de8..94523eb 100644
--- a/src/input/pollevel.input.pamphlet
+++ b/src/input/pollevel.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1996.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 
 -- This file tests variables moving to the correct level within
 -- polynomial towers.
@@ -39,7 +39,7 @@ seriesSolve(eq2,y,x=0,y(0) = 0)
 p : UP(x, POLY INT) := x
 u := (z*x)
 u * p
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/poly.input.pamphlet b/src/input/poly.input.pamphlet
index 660df41..1be27cd 100644
--- a/src/input/poly.input.pamphlet
+++ b/src/input/poly.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool poly.output
 )set message test on
@@ -511,7 +511,7 @@ definingPolynomial y1
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/poly1.input.pamphlet b/src/input/poly1.input.pamphlet
index 45f37a0..9ba5026 100644
--- a/src/input/poly1.input.pamphlet
+++ b/src/input/poly1.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool poly1.output
 )set message test on
@@ -422,7 +422,7 @@ map(numeric,%)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/polycoer.input.pamphlet b/src/input/polycoer.input.pamphlet
index 8148b7c..05562cc 100644
--- a/src/input/polycoer.input.pamphlet
+++ b/src/input/polycoer.input.pamphlet
@@ -10,20 +10,20 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool polycoer.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 This file demonstrates the capabilities of the interpreter to
 perform coercions among different polynomial types.
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 41
 u : UP(x,COMPLEX INT)
 --R 
@@ -343,7 +343,7 @@ l2 := l1
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/psgenfcn.input.pamphlet b/src/input/psgenfcn.input.pamphlet
index 4254f62..c42ae48 100644
--- a/src/input/psgenfcn.input.pamphlet
+++ b/src/input/psgenfcn.input.pamphlet
@@ -10,17 +10,17 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool psgenfcn.output
 )set message test on
 )set message auto off
 )clear all
 
-@ 
+\end{chunk} 
 \section{Power Series Generating Functions}
 We obtain Fibonacci numbers, Bernoulli numbers and polynomials, and
 Euler numbers and polynomials as power series coefficients
@@ -28,7 +28,7 @@ Euler numbers and polynomials as power series coefficients
 We will compute power series in two different ways, then test equality
 of coefficients up to a specified order.  The function that tests
 'approximate equality' will return an error message if the test fails.
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 19
 ORD := 20
 --R 
@@ -315,7 +315,7 @@ approximateEquality(hh1,hh2)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/quat.input.pamphlet b/src/input/quat.input.pamphlet
index dba9f34..1ec47d5 100644
--- a/src/input/quat.input.pamphlet
+++ b/src/input/quat.input.pamphlet
@@ -10,20 +10,20 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool quat.output
 )set message test on
 )set message auto off
 )clear all
 
-@ 
+\end{chunk} 
 The basic function for creating quaternions is ``quatern''. This is
 a quaternion over the rational numbers.
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 25
 q := quatern(2/11,-8,3/4,1)
 --R 
@@ -34,11 +34,11 @@ q := quatern(2/11,-8,3/4,1)
 --R                                            Type: Quaternion Fraction Integer
 --E 1
 
-@
+\end{chunk}
 The four arguments are the real part, the i imaginary part, the
 j imaginary part and the k imaginary part, respectively. These are
 extracted with the following functions.
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 25
 real q
 --R 
@@ -75,9 +75,9 @@ imagK q
 --R                                                       Type: Fraction Integer
 --E 5
 
-@ 
+\end{chunk} 
 Because q is over the rationals (and nonzero), you can invert it ...
-<<*>>=
+\begin{chunk}{*}
 --S 6 of 25
 inv q
 --R 
@@ -88,9 +88,9 @@ inv q
 --R                                            Type: Quaternion Fraction Integer
 --E 6
  
-@
+\end{chunk}
 In addition to the normal arithmetic (ring) operations.
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 25
 q**6
 --R 
@@ -131,9 +131,9 @@ q - r
 --R                                            Type: Quaternion Fraction Integer
 --E 10
 
-@
+\end{chunk}
 In general, multiplication is not commutative.
-<<*>>=
+\begin{chunk}{*}
 --S 11 of 25
 q * r
 --R 
@@ -154,10 +154,10 @@ r * q
 --R                                            Type: Quaternion Fraction Integer
 --E 12
 
-@ 
+\end{chunk} 
 There are no predefined constants for the imaginary i, j and k but
 you can easily define them.
-<<*>>=
+\begin{chunk}{*}
 --S 13 of 25
 i := quatern(0,1,0,0)
 --R 
@@ -240,9 +240,9 @@ q * i
 --R                                            Type: Quaternion Fraction Integer
 --E 22
 
-@ 
+\end{chunk} 
 The norm is the quaternion times its conjugate
-<<*>>=
+\begin{chunk}{*}
 --S 23 of 25
 norm q
 --R 
@@ -275,7 +275,7 @@ q * %
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/quat1.input.pamphlet b/src/input/quat1.input.pamphlet
index 4452b11..ade0546 100644
--- a/src/input/quat1.input.pamphlet
+++ b/src/input/quat1.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool quat1.output
 )set message test on
@@ -129,7 +129,7 @@ q * %
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/r20abugs.input.pamphlet b/src/input/r20abugs.input.pamphlet
index 0985fb3..29ed564 100644
--- a/src/input/r20abugs.input.pamphlet
+++ b/src/input/r20abugs.input.pamphlet
@@ -8,24 +8,24 @@
 \end{abstract}
 \eject
 \tableofcontents
-\eject
+
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool r20abugs.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 This file tests bugs fixed/additions made since release 2.0a.
 Created by Mike Dewar, 17.5.95
 
 -- Added eval for aggregates
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 34
 m : Matrix Expression Integer := matrix [[i*x^j for i in 1..3] for j in 1..3]
 --R 
@@ -52,9 +52,9 @@ eval(m,x=0)
 --R                                              Type: Matrix Expression Integer
 --E 2
 
-@
+\end{chunk}
 Added seed function
-<<*>>=
+\begin{chunk}{*}
 
 )clear completely
 --S 3 of 34
@@ -98,9 +98,9 @@ r1 - r2
 --R                                                     Type: NonNegativeInteger
 --E 8
 
-@
+\end{chunk}
 Fixed some problems with \%e etc in rules
-<<*>>=
+\begin{chunk}{*}
 
 )clear completely
 
@@ -130,9 +130,9 @@ numeric(r3(3))
 
 )clear completely
 
-@
+\end{chunk}
 Added some extra simplifications
-<<*>>=
+\begin{chunk}{*}
 
 --S 12 of 34
 sin(atan(sqrt 3)/2)
@@ -146,9 +146,9 @@ sin(atan(sqrt 3)/2)
 
 )clear completely
  
-@
+\end{chunk}
 Fix to poly from Quitte
-<<*>>=
+\begin{chunk}{*}
 --S 13 of 34
 R := IntegerMod(4)
 --R 
@@ -191,9 +191,9 @@ b : PolR := X**2 + 2*X + 1
 --R                                   Type: UnivariatePolynomial(X,IntegerMod 4)
 --E 17
 
-@
+\end{chunk}
 Used to give a 0 remainder!
-<<*>>=
+\begin{chunk}{*}
 --S 18 of 34
 qr := monicDivide(a, b)
 --R 
@@ -212,9 +212,9 @@ a - (qr.quotient * b + qr.remainder)
 
 )clear completely
 
-@
+\end{chunk}
 This used not to return 0
-<<*>>=
+\begin{chunk}{*}
 --S 20 of 34
 limit(%e^(1/x^2)/(%e^(1/x^2) + %e^(1/x^4)), x=0)
 --R 
@@ -224,9 +224,9 @@ limit(%e^(1/x^2)/(%e^(1/x^2) + %e^(1/x^4)), x=0)
 --E 20
 )clear completely
  
-@
+\end{chunk}
 This used to crash because we generated tan(\%pi/2)
-<<*>>=
+\begin{chunk}{*}
 --S 21 of 34
 integrate((sin(t))*sin((%pi-t)/6),t)
 --R 
@@ -242,9 +242,9 @@ integrate((sin(t))*sin((%pi-t)/6),t)
 
 )clear completely
 
-@
+\end{chunk}
 This used not to return 1.0!
-<<*>>=
+\begin{chunk}{*}
 --S 22 of 34
 (x+1.0)/(x+1.0)
 --R 
@@ -255,9 +255,9 @@ This used not to return 1.0!
 
 )clear completely
 
-@
+\end{chunk}
 This used to return a formal integral
-<<*>>=
+\begin{chunk}{*}
 --S 23 of 34
 b := D(Ci(x),x)
 --R 
@@ -276,9 +276,9 @@ integrate(b,x)
 --R                                          Type: Union(Expression Integer,...)
 --E 24
 
-@
+\end{chunk}
 This used to return -Si(x) rather than log(x) - Si(x)
-<<*>>=
+\begin{chunk}{*}
 --S 25 of 34
 integrate((1 - sin x)/x,x)
 --R 
@@ -289,9 +289,9 @@ integrate((1 - sin x)/x,x)
 
 )clear completely
 
-@
+\end{chunk}
 This used to return ``failed''
-<<*>>=
+\begin{chunk}{*}
 --S 26 of 34
 limit(erf(x),x=c)
 --R 
@@ -300,10 +300,10 @@ limit(erf(x),x=c)
 --R                        Type: Union(OrderedCompletion Expression Integer,...)
 --E 26
 
-@
+\end{chunk}
 Used only to do structural equality for algebraic numbers, now try
 to do true mathematical equality
-<<*>>=
+\begin{chunk}{*}
 --S 27 of 34
 (sqrt(2)*sqrt(3)=sqrt(6))@Boolean
 --R 
@@ -312,9 +312,9 @@ to do true mathematical equality
 --R                                                                Type: Boolean
 --E 27
 
-@
+\end{chunk}
 New case we couldn't handle before
-<<*>>=
+\begin{chunk}{*}
 --S 28 of 34
 integrate((a + b*x)*exp(-x^2),x)
 --R 
@@ -327,9 +327,9 @@ integrate((a + b*x)*exp(-x^2),x)
 --R                                          Type: Union(Expression Integer,...)
 --E 28
 
-@
+\end{chunk}
 This used to give an infinite recursion
-<<*>>=
+\begin{chunk}{*}
 --S 29 of 34
 laplace(sin(t)^2/t^(3/2),t,s)
 --R 
@@ -346,9 +346,9 @@ laplace(sin(t)^2/t^(3/2),t,s)
 
 )clear completely
  
-@
+\end{chunk}
 The following used to fail
-<<*>>=
+\begin{chunk}{*}
 --S 30 of 34
 P:=x^4+x^3+x^2+x+1
 --R 
@@ -1607,7 +1607,7 @@ ans:=integrate(int2,x)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/r20bugs.input.pamphlet b/src/input/r20bugs.input.pamphlet
index 93b9926..838264a 100644
--- a/src/input/r20bugs.input.pamphlet
+++ b/src/input/r20bugs.input.pamphlet
@@ -8,22 +8,22 @@
 \end{abstract}
 \eject
 \tableofcontents
-\eject
+
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool r20bugs.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 -- This file tests bugs fixed at release 2.0a.
 -- Mike Dewar 17-5-95
-<<*>>=
+\begin{chunk}{*}
 
 )clear completely
  
@@ -294,7 +294,7 @@ normalize %
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/r21bugs.input.pamphlet b/src/input/r21bugs.input.pamphlet
index 5fa83be..80427f0 100644
--- a/src/input/r21bugs.input.pamphlet
+++ b/src/input/r21bugs.input.pamphlet
@@ -10,17 +10,17 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool r21bugs.output
 )set message test on
 )set message auto off
 )clear all
 
-@ 
+\end{chunk} 
 This file tests bugs fixed since release 2.1.
 -- Mike Dewar 19-11-96
 
@@ -28,7 +28,7 @@ This bug, spotted by Claude Quitte, meant that we generated incorrect
 expressions for Chebyshev polynomials of the second kind, so that they
 did not satisfy the recurrence relation:
 $U_n(x) - x U_{n-1}(x) = T_n(x)$
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 95
 )set expose add constructor PolynomialNumberTheoryFunctions
 --R 
@@ -312,11 +312,11 @@ a | a^2+1
 --RType: SimpleAlgebraicExtension(Fraction Integer,UnivariatePolynomial(a,Fraction Integer),a*a+1)
 --E 28
 
-@
+\end{chunk}
 Gets an error while trying to display the type of the expression
 since it uses fortran code generation stuff which wants to use
 the variable name T1 for some other purpose
-<<*>>=
+\begin{chunk}{*}
 
 )clear completely
  
@@ -1055,7 +1055,7 @@ exquo(%,leadingCoefficient(f))
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/r21bugsbig.input.pamphlet b/src/input/r21bugsbig.input.pamphlet
index c66d487..cabc880 100644
--- a/src/input/r21bugsbig.input.pamphlet
+++ b/src/input/r21bugsbig.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool r21bugsbig.output
 )set message test on
@@ -38,9 +38,9 @@ UZn : List(PositiveInteger) := [i for i in 1 .. n-1 | gcd(i,n) = 1]
 --R   (2)  [1,2,3,4]
 --E 2
 
-@
+\end{chunk}
 K = Q(t), corps des fractions rationnelles a Phi(n) indeterminees sur Q
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 22
 vars : List(Symbol) := [concat("t", i::String)::Symbol for i in 0 ..#UZn-1] 
 --R 
@@ -62,9 +62,9 @@ t : List(K) := [v::K for v in vars]
 --R   (5)  [t0,t1,t2,t3]
 --E 5
 
-@
+\end{chunk}
 ATTENTION : on specialise certains des indeterminees
-<<*>>=
+\begin{chunk}{*}
 --S 6 of 22
 t(#t) := 0 ; t
 --R 
@@ -96,9 +96,9 @@ Phi : UP('xi, K) := map(coerce, cyclotomic(n))
 --R   (9)  xi  + xi  + xi  + xi + 1
 --E 9
 
-@
+\end{chunk}
 E est l'extension cyclotomique de K par les racines n-iemes de l'unite
-<<*>>=
+\begin{chunk}{*}
 --S 10 of 22
 E := SimpleAlgebraicExtension(K, UP('xi, K), Phi) 
 --R 
@@ -127,9 +127,9 @@ bList : List(E) := [reduce(+, [t(i+1) * xi**(i*j) for i in 0 .. #UZn-1]) for j i
 --R    t1 xi  + t2 xi + t0, (- t1 + t2)xi  - t1 xi  - t1 xi + t0 - t1]
 --E 12
 
-@
+\end{chunk}
 delta(j) = delta(j, 1) avec les nouvelles notations
-<<*>>=
+\begin{chunk}{*}
 --S 13 of 22
 delta : List(E) :=
   [reduce(*, [b**((j*rapport(1,k)) quo n) for b in bList for k in UZn]) for j in UZn] 
@@ -240,9 +240,9 @@ delta : List(E) :=
 --R     ]
 --E 13
 
-@
+\end{chunk}
 verification en introduisant la liste B des Bj
-<<*>>=
+\begin{chunk}{*}
 --S 14 of 22
 B : List(E) := [reduce(*, [b**rapport(j,i) for b in bList for i in UZn]) for j in UZn] 
 --R 
@@ -848,9 +848,9 @@ L := SimpleAlgebraicExtension(E, UP('C1, E), C1**n - B(1)) ;  C1 : L := generato
 --R   (16)  C1
 --E 16 
 
-@
+\end{chunk}
 retracter de L sur Zt : Zt < K < E < L
-<<*>>=
+\begin{chunk}{*}
 --S 17 of 22
 retraction(z : L) : Zt ==
    zE : E := retract(z)
@@ -1420,9 +1420,9 @@ C : List(L) := [C1**j / d for j in UZn for d in delta]
 --R     ]
 --E 18 
 
-@
+\end{chunk}
 en principe [c**n for c in C] = B
-<<*>>=
+\begin{chunk}{*}
 --S 19 of 22
 r : List(L) := [reduce(+, [c * xi**(k*j) for j in UZn for c in C]) for k in 0 .. n-1] 
 --R 
@@ -4140,7 +4140,7 @@ f : UP('X, Zt) := map(retraction, g)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/radff.input.pamphlet b/src/input/radff.input.pamphlet
index 14862ed..88f18e2 100644
--- a/src/input/radff.input.pamphlet
+++ b/src/input/radff.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool radff.output
 )set message test on
@@ -35,9 +35,9 @@ P1 := UP(y, FRAC P0)
 --R                                                                 Type: Domain
 --E 2
 
-@
+\end{chunk}
 curve given by $x^20 + y^20 = 1$
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 27
 R := RADFF(INT, P0, P1, 1 - x**20, 20)
 --R 
@@ -142,9 +142,9 @@ trace y
 --R                               Type: Fraction UnivariatePolynomial(x,Integer)
 --E 13
 
-@
+\end{chunk}
 curve given by $y^4 = 2 x^2$
-<<*>>=
+\begin{chunk}{*}
 --S 14 of 27
 R2 := RADFF(INT, P0, P1, 2 * x**2, 4)
 --R 
@@ -265,7 +265,7 @@ regularRepresentation y
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/radix.input.pamphlet b/src/input/radix.input.pamphlet
index 3d7ffc2..9900eab 100644
--- a/src/input/radix.input.pamphlet
+++ b/src/input/radix.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool radix.output
 )set message test on
@@ -169,7 +169,7 @@ a :: Fraction(Integer)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/realclos.input.pamphlet b/src/input/realclos.input.pamphlet
index 6110f55..94ffbfe 100644
--- a/src/input/realclos.input.pamphlet
+++ b/src/input/realclos.input.pamphlet
@@ -10,19 +10,19 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool realclos.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 Computing without a table manipulation when creating objects
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 31
 Ran := RECLOS(FRAC INT)
 --R 
@@ -31,10 +31,10 @@ Ran := RECLOS(FRAC INT)
 --R                                                                 Type: Domain
 --E 1
 
-@
+\end{chunk}
 Some simple signs for square roots, these correspond to an extension
 of degree 16 of the rational numbers.
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 31
 fourSquares(a:Ran,b:Ran,c:Ran,d:Ran):Ran ==
            sqrt(a)+sqrt(b) - sqrt(c)-sqrt(d)
@@ -308,9 +308,9 @@ sign(squareDiff)
 
 )cl prop s2 s5 s10 l
 
-@ 
+\end{chunk} 
 A more complicated test that involve an extension of degree 256
-<<*>>=
+\begin{chunk}{*}
 --S 27 of 31
 (s2, s5, s10) := (sqrt(2)$Ran, sqrt(5)$Ran, sqrt(10)$Ran);
 --R 
@@ -336,9 +336,9 @@ sqrt(s10+3)*sqrt(s5+2) - sqrt(s10-3)*sqrt(s5-2) = sqrt(10*s2+10)
 --R                                                                Type: Boolean
 --E 29
 
-@
+\end{chunk}
 The sum of these 4 numbers is 0
-<<*>>=
+\begin{chunk}{*}
 --S 30 of 31
 l := allRootsOf((x^2-2)^2-2)$Ran
 --R 
@@ -357,7 +357,7 @@ l.1+l.2+l.3+l.4
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/reclos.input.pamphlet b/src/input/reclos.input.pamphlet
index 91dd2e7..fb3f1c6 100644
--- a/src/input/reclos.input.pamphlet
+++ b/src/input/reclos.input.pamphlet
@@ -8,12 +8,12 @@
 \end{abstract}
 \eject
 \tableofcontents
-\eject
+
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool reclos.output
 )set message test on
@@ -27,11 +27,11 @@ Ran := RECLOS(FRAC INT)
 --R                                                                 Type: Domain
 --E 1
 
-@
+\end{chunk}
 Some simple signs for square roots, these correspond to an extension
 of degree 16 of the rational numbers.
 these examples were given to me by J. Abbot
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 70
 fourSquares(a:Ran,b:Ran,c:Ran,d:Ran):Ran == sqrt(a)+sqrt(b) - sqrt(c)-sqrt(d)
 --R 
@@ -310,9 +310,9 @@ relativeApprox(squareDiff8,10**(-3))::Float
 --R                                                                  Type: Float
 --E 27
 
-@
+\end{chunk}
 Test the Renaud Rioboo fix (Jan 2004)
-<<*>>=
+\begin{chunk}{*}
 --S 28 of 70
 allRootsOf((x-2)*(x-3)*(x-4))$RECLOS(FRAC INT)
 --R 
@@ -321,10 +321,10 @@ allRootsOf((x-2)*(x-3)*(x-4))$RECLOS(FRAC INT)
 --R                                      Type: List RealClosure Fraction Integer
 --E 28
 
-@
+\end{chunk}
 Check out if the sum of all roots is null.
 Example from P.V. Koseleff
-<<*>>=
+\begin{chunk}{*}
 --S 29 of 70
 l := allRootsOf((x**2-2)**2-2)$Ran
 --R 
@@ -366,10 +366,10 @@ map(mainCharacterization,l)
 --R                                      Type: List RealClosure Fraction Integer
 --E 33
 
-@
+\end{chunk}
 A more complicated test that involve an extension of degree 256
 example by prof Kahan at ISSAC'92
-<<*>>=
+\begin{chunk}{*}
 )cl prop s2 s5 10
  
 --S 34 of 70
@@ -399,9 +399,9 @@ eq1::Boolean
 --R                                                                Type: Boolean
 --E 36
 
-@
+\end{chunk}
 Analogous one by [rr]
-<<*>>=
+\begin{chunk}{*}
 --S 37 of 70
 eq2:=sqrt(s5+2)*sqrt(s2+1) - sqrt(s5-2)*sqrt(s2-1) = sqrt(2*s10+2)
 --R 
@@ -420,9 +420,9 @@ eq2::Boolean
 --R                                                                Type: Boolean
 --E 38
 
-@
+\end{chunk}
 These came from J.M. Arnaudies
-<<*>>=
+\begin{chunk}{*}
 
 )cl prop s4 s7 e1 e2
 
@@ -464,9 +464,9 @@ e2 := sqrt(2*s7+3*s3,3)
 --R                                           Type: RealClosure Fraction Integer
 --E 42
 
-@
+\end{chunk}
 This should be null
-<<*>>=
+\begin{chunk}{*}
 --S 43 of 70
 ee1:=e2-e1=s3
 --R 
@@ -506,9 +506,9 @@ r1 := sqrt(7633)$Ran
 --R                                           Type: RealClosure Fraction Integer
 --E 46
 
-@
+\end{chunk}
 Cubic roots
-<<*>>=
+\begin{chunk}{*}
 --S 47 of 70
 alpha := sqrt(5*r1-436,3)/3
 --R 
@@ -531,9 +531,9 @@ beta := -sqrt(5*r1+436,3)/3
 --R                                           Type: RealClosure Fraction Integer
 --E 48
 
-@
+\end{chunk}
 This should be null
-<<*>>=
+\begin{chunk}{*}
 
 --S 49 of 70
 pol.(alpha+beta-1/3)
@@ -554,9 +554,9 @@ r2 := sqrt(153)$Ran
 --R                                           Type: RealClosure Fraction Integer
 --E 50
 
-@
+\end{chunk}
 Roots of order 5
-<<*>>=
+\begin{chunk}{*}
 --S 51 of 70
 alpha2 := sqrt(r2-11,5)
 --R 
@@ -750,7 +750,7 @@ dst5::Boolean
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/reclos2.input.pamphlet b/src/input/reclos2.input.pamphlet
index 439e48a..6019d58 100644
--- a/src/input/reclos2.input.pamphlet
+++ b/src/input/reclos2.input.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool reclos2.output
 )set message test on
@@ -141,10 +141,10 @@ t10:=complexNumeric rhs t9.1
 --R                                                          Type: Complex Float
 --E 10
 
-@
+\end{chunk}
 Note that the comparison relation in AlgebraicNumber is not
 based on numeric value but on hash values.
-<<*>>=
+\begin{chunk}{*}
 --S 11 of 31
 t11:=select(p+->rhs(p)::AN < 0, radicalSolve(p^2-p+1/10=0,p))
 --R
@@ -598,7 +598,7 @@ t7:=map(x+->real complexNumeric rhs x,t6)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/reductio.input.pamphlet b/src/input/reductio.input.pamphlet
index 6d34c5d..b62054d 100644
--- a/src/input/reductio.input.pamphlet
+++ b/src/input/reductio.input.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 
 -- Input for page Reductions
 )clear all
@@ -34,7 +34,7 @@ reduce(+,[v.(n - i) * 2**i for i in 0..(n := maxIndex v)])
 reduce(+,[x * y for x in u for y in v])
 reduce(+,[r for x in u for y in v | (r := y/x) > 0])
 reduce(max,[x for x in u for y in v | y = 1])
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/regset.input.pamphlet b/src/input/regset.input.pamphlet
index 72f04cf..a763213 100644
--- a/src/input/regset.input.pamphlet
+++ b/src/input/regset.input.pamphlet
@@ -10,7 +10,7 @@ Input generated from RegularTriangularSetXmpPage
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool regset.output
 )set message test on
@@ -546,7 +546,7 @@ zeroSetSplit(lq,true,true)$T
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/repa6.input.pamphlet b/src/input/repa6.input.pamphlet
index 768c4d8..28aadc4 100644
--- a/src/input/repa6.input.pamphlet
+++ b/src/input/repa6.input.pamphlet
@@ -10,17 +10,17 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool repa6.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 This file demonstrates Representation Theory in Scratchpad
 using the packages REP1, REP2, IRSN and SGCF, which are the
 abbreviations for RepresentationPackage1, RepresentationPackage2
@@ -39,7 +39,7 @@ representations of the alternating group A6.
  
 We generate A6 by the permutations threecycle x=(1,2,3)
 and the 5-cycle y=(2,3,4,5,6)
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 33
 genA6 : List PERM INT := [cycle [1,2,3], cycle [2,3,4,5,6]]
 --R 
@@ -48,9 +48,9 @@ genA6 : List PERM INT := [cycle [1,2,3], cycle [2,3,4,5,6]]
 --R                                               Type: List Permutation Integer
 --E 1
 
-@ 
+\end{chunk} 
 pRA6 is the permutation representation over the Integers...
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 33
 pRA6 := permutationRepresentation (genA6, 6)
 --R 
@@ -69,9 +69,9 @@ pRA6 := permutationRepresentation (genA6, 6)
 --R                                                    Type: List Matrix Integer
 --E 2
 
-@
+\end{chunk}
 And pRA6m2 is the permutation representation over PrimeField 2:
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 33
 pRA6m2 : List Matrix PrimeField 2 := pRA6
 --R 
@@ -90,9 +90,9 @@ pRA6m2 : List Matrix PrimeField 2 := pRA6
 --R                                               Type: List Matrix PrimeField 2
 --E 3
  
-@
+\end{chunk}
 Now try to split pRA6m2:
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 33
 sp0 := meatAxe pRA6m2
 --R 
@@ -114,10 +114,10 @@ sp0 := meatAxe pRA6m2
 --R                                          Type: List List Matrix PrimeField 2
 --E 4
  
-@
+\end{chunk}
 We have found the trivial module as a factormodule
 and a 5-dimensional submodule.
-<<*>>=
+\begin{chunk}{*}
 --S 5 of 33
 dA6d1 := sp0.2
 --R 
@@ -126,9 +126,9 @@ dA6d1 := sp0.2
 --R                                               Type: List Matrix PrimeField 2
 --E 5
 
-@ 
+\end{chunk} 
 Try to split again...
-<<*>>=
+\begin{chunk}{*}
 --S 6 of 33
 sp1 := meatAxe sp0.1
 --R 
@@ -155,10 +155,10 @@ sp1 := meatAxe sp0.1
 --R                                          Type: List List Matrix PrimeField 2
 --E 6
  
-@
+\end{chunk}
 And find a 4-dimensional submodule, say dA6d4a, and the
 trivial one again.
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 33
 dA6d4a := sp1.2
 --R 
@@ -173,9 +173,9 @@ dA6d4a := sp1.2
 --R                                               Type: List Matrix PrimeField 2
 --E 7
  
-@
+\end{chunk}
 Now we want to test, whether dA6d4a is absolutely irreducible...
-<<*>>=
+\begin{chunk}{*}
 --S 8 of 33 random input, FAILURE OK
 isAbsolutelyIrreducible? dA6d4a
 --R 
@@ -195,7 +195,7 @@ isAbsolutelyIrreducible? dA6d4a
 --R                                                                Type: Boolean
 --E 8
 
-@ 
+\end{chunk} 
 And see: dA6d4a is absolutely irreducible.
 So we have found a second irreducible representation.
  
@@ -203,7 +203,7 @@ Now construct a representation from reducing an irreducible one
 of the symmetric group $S_6$ over the integers taken mod 2
 What is the degree of the representation belonging to partition
 [2,2,1,1]?
-<<*>>=
+\begin{chunk}{*}
 -- lambda : PRTITION := partition [2,2,1,1]
 --S 9 of 33
 lambda := [2,2,1,1]
@@ -221,9 +221,9 @@ dimensionOfIrreducibleRepresentation lambda
 --R                                                        Type: PositiveInteger
 --E 10
 
-@
+\end{chunk}
 Now create the restriction to A6:
-<<*>>=
+\begin{chunk}{*}
 
 --S 11 of 33
 d2211  := irreducibleRepresentation(lambda, genA6)
@@ -250,9 +250,9 @@ d2211  := irreducibleRepresentation(lambda, genA6)
 --R                                                    Type: List Matrix Integer
 --E 11
 
-@
+\end{chunk}
 And d2211m2 is the representation over PrimeField 2:
-<<*>>=
+\begin{chunk}{*}
 --S 12 of 33
 d2211m2 : List Matrix PrimeField 2 := d2211
 --R 
@@ -277,9 +277,9 @@ d2211m2 : List Matrix PrimeField 2 := d2211
 --R                                               Type: List Matrix PrimeField 2
 --E 12
 
-@ 
+\end{chunk} 
 And split it:
-<<*>>=
+\begin{chunk}{*}
 --S 13 of 33
 sp2 := meatAxe d2211m2
 --R 
@@ -301,11 +301,11 @@ sp2 := meatAxe d2211m2
 --R                                          Type: List List Matrix PrimeField 2
 --E 13
 
-@
+\end{chunk}
 A 5 and a 4-dimensional one.
  
 we take the 4-dimensional one, say dA6d4b:
-<<*>>=
+\begin{chunk}{*}
 --S 14 of 33
 dA6d4b := sp2.1
 --R 
@@ -320,9 +320,9 @@ dA6d4b := sp2.1
 --R                                               Type: List Matrix PrimeField 2
 --E 14
 
-@
+\end{chunk}
 This is absolutely irreducible, too ...
-<<*>>=
+\begin{chunk}{*}
 --S 15 of 33 random generation, FAILURE OK.
 isAbsolutelyIrreducible? dA6d4b
 --R 
@@ -340,9 +340,9 @@ isAbsolutelyIrreducible? dA6d4b
 --R                                                                Type: Boolean
 --E 15
 
-@ 
+\end{chunk} 
 And dA6d4a and dA6d4b are not equivalent:
-<<*>>=
+\begin{chunk}{*}
 --S 16 of 33 random generation, FAILURE OK.
 areEquivalent? ( dA6d4a , dA6d4b )
 --R 
@@ -354,11 +354,11 @@ areEquivalent? ( dA6d4a , dA6d4b )
 --R                                                    Type: Matrix PrimeField 2
 --E 16
 
-@ 
+\end{chunk} 
 So the third irreducible representation is found.
  
 Now construct a new representation with the help of the tensorproduct
-<<*>>=
+\begin{chunk}{*}
 --S 17 of 33
 dA6d16 := tensorProduct ( dA6d4a , dA6d4b )
 --R 
@@ -429,9 +429,9 @@ dA6d16 := tensorProduct ( dA6d4a , dA6d4b )
 --R                                               Type: List Matrix PrimeField 2
 --E 17
 
-@ 
+\end{chunk} 
 And try to split it...
-<<*>>=
+\begin{chunk}{*}
 --S 18 of 33
 sp3 := meatAxe dA6d16
 --R 
@@ -532,10 +532,10 @@ sp3 := meatAxe dA6d16
 --R                                          Type: List List Matrix PrimeField 2
 --E 18
 
-@ 
+\end{chunk} 
 The representation is irreducible, but may be not
 absolutely irreducible.
-<<*>>=
+\begin{chunk}{*}
 --S 19 of 33
 isAbsolutelyIrreducible? dA6d16
 --R 
@@ -596,9 +596,9 @@ isAbsolutelyIrreducible? dA6d16
 --R                                                                Type: Boolean
 --E 19
 
-@ 
+\end{chunk} 
 So let's try the same over the field with 4 elements:
-<<*>>=
+\begin{chunk}{*}
 --S 20 of 33
 gf4 := FiniteField(2,2)
 --R 
@@ -774,9 +774,9 @@ sp4 := meatAxe dA6d16gf4
 --R                                      Type: List List Matrix FiniteField(2,2)
 --E 22
 
-@
+\end{chunk}
 Now we find two 8-dimensional ones, dA6d8a and dA6d8b.
-<<*>>=
+\begin{chunk}{*}
 --S 23 of 33
 dA6d8a : List Matrix gf4  := sp4.1
 --R 
@@ -853,9 +853,9 @@ dA6d8b : List Matrix gf4  := sp4.2
 --R                                           Type: List Matrix FiniteField(2,2)
 --E 24
 
-@
+\end{chunk}
 Both are absolutely irreducible...
-<<*>>=
+\begin{chunk}{*}
 --S 25 of 33 random generation, FAILURE OK.
 isAbsolutelyIrreducible? dA6d8a
 --R 
@@ -910,9 +910,9 @@ isAbsolutelyIrreducible? dA6d8b
 --R                                                                Type: Boolean
 --E 26
 
-@
+\end{chunk}
 And they are not equivalent...
-<<*>>=
+\begin{chunk}{*}
 --S 27 of 33 random generation, FAILURE OK.
 areEquivalent? ( dA6d8a, dA6d8b )
 --R 
@@ -939,14 +939,14 @@ areEquivalent? ( dA6d8a, dA6d8b )
 --R                                                Type: Matrix FiniteField(2,2)
 --E 27
 
-@ 
+\end{chunk} 
 So we have found five absolutely irreducible representations of A6
 in characteristic 2.
  
 The theory tells us that there are no more irreducible ones.
 Here again are all absolutely irreducible 2-modular
 representations of A6
-<<*>>=
+\begin{chunk}{*}
 --S 28 of 33
 dA6d1
 --R 
@@ -1059,10 +1059,10 @@ dA6d8b
 --R                                           Type: List Matrix FiniteField(2,2)
 --E 32
 
-@ 
+\end{chunk} 
 And here again is the irreducible, but not absolutely irreducible
 representations of A6 over PrimeField 2
-<<*>>=
+\begin{chunk}{*}
 --S 33 of 33
 dA6d16
 --R 
@@ -1135,7 +1135,7 @@ dA6d16
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/ribbon.input.pamphlet b/src/input/ribbon.input.pamphlet
index d5fc485..0e6e43b 100644
--- a/src/input/ribbon.input.pamphlet
+++ b/src/input/ribbon.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 --the first attempt
 drawRibbons(flist,xrange) ==
   sp := createThreeSpace()
@@ -31,7 +31,7 @@ drawRibbons(flist,xrange) ==
   zoom(vp,n,1,n)
   rotate(vp,0,75)
   vp
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/ribbons.input.pamphlet b/src/input/ribbons.input.pamphlet
index 2fe8dd0..0a472d7 100644
--- a/src/input/ribbons.input.pamphlet
+++ b/src/input/ribbons.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 --the second attempt
 drawRibbons(flist, xrange, yrange) ==
  sp := createThreeSpace()
@@ -33,7 +33,7 @@ drawRibbons(flist, xrange, yrange) ==
  showRegion(vp, "on")
  vp
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/ribbonsnew.input.pamphlet b/src/input/ribbonsnew.input.pamphlet
index 4963db7..171859e 100644
--- a/src/input/ribbonsnew.input.pamphlet
+++ b/src/input/ribbonsnew.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 drawRibbons(flist, xrange, yrange) ==
  sp := createThreeSpace()
  num := # flist
@@ -32,7 +32,7 @@ drawRibbons(flist, xrange, yrange) ==
  showRegion(vp, "on")
  vp
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/rk4draw.input.pamphlet b/src/input/rk4draw.input.pamphlet
index 209ebb9..e490069 100644
--- a/src/input/rk4draw.input.pamphlet
+++ b/src/input/rk4draw.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 -- Two scripts which can be combined to show how accurate the Runge-Kutta
 -- method is for simple problems.
 
@@ -77,7 +77,7 @@ g:= makeGraphImage(llp,lpc,lc,lsize)$GRIMAGE
 makeViewport2D(g,[title("RK4")])$VIEW2D
 
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/robidoux.input.pamphlet b/src/input/robidoux.input.pamphlet
index c37e47b..9b756d2 100644
--- a/src/input/robidoux.input.pamphlet
+++ b/src/input/robidoux.input.pamphlet
@@ -10,23 +10,23 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool robidoux.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 from the paper:
 
 Does Axiom Solve Systems of O.D.E.'s Like Mathematica?
 
 Nicolas Robidoux University of New Mexico 24 June 1993
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 15
 X1:=operator 'X1
 --R 
@@ -163,10 +163,10 @@ x2
 --R                                                      Type: FunctionCalled x2
 --E 14
 
-@
+\end{chunk}
 We can stop here because the answer is improved over the 
 one given in the paper.
-<<*>>=
+\begin{chunk}{*}
 --S 15 of 15
 x1 t
 --R 
@@ -178,7 +178,7 @@ x1 t
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/roman.input.pamphlet b/src/input/roman.input.pamphlet
index a6d20a3..2997e83 100644
--- a/src/input/roman.input.pamphlet
+++ b/src/input/roman.input.pamphlet
@@ -8,12 +8,12 @@
 \end{abstract}
 \eject
 \tableofcontents
-\eject
+
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool roman.output
 )set message test on
@@ -122,7 +122,7 @@ roman y
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/roots.input.pamphlet b/src/input/roots.input.pamphlet
index 5757bdf..02b4dff 100644
--- a/src/input/roots.input.pamphlet
+++ b/src/input/roots.input.pamphlet
@@ -10,19 +10,19 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool roots.output
 )set message test on
 )set message auto off
 )clear all
 
-@
+\end{chunk}
 This will compute all the roots of x**4 + 1 = 0
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 7
 lr:=rootsOf(x**4+1,x)
 --R 
@@ -31,9 +31,9 @@ lr:=rootsOf(x**4+1,x)
 --R                                                Type: List Expression Integer
 --E 1
 
-@
+\end{chunk}
 The new expressions satisfy
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 7
 definingPolynomial %x0
 --R 
@@ -52,9 +52,9 @@ definingPolynomial %x1
 --R                                                     Type: Expression Integer
 --E 3
 
-@
+\end{chunk}
 The product of the first three is a root
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 7
 lr.1 * lr.2 * lr.3
 --R 
@@ -72,9 +72,9 @@ lr.1 * lr.2 * lr.3
 --R                                                     Type: Expression Integer
 --E 5
 
-@
+\end{chunk}
 So is the sum
-<<*>>=
+\begin{chunk}{*}
 --S 6 of 7
 lr.1 + lr.2 + lr.3
 --R 
@@ -93,7 +93,7 @@ lr.1 + lr.2 + lr.3
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/rules.input.pamphlet b/src/input/rules.input.pamphlet
index f9ec9b7..8088cfe 100644
--- a/src/input/rules.input.pamphlet
+++ b/src/input/rules.input.pamphlet
@@ -10,19 +10,19 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool rules.output
 )set message test on
 )set message auto off
 )clear all
 
-@
+\end{chunk}
 First a single rule
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 21
 logrule := rule log(x) + log(y) == log(x * y)
 --R 
@@ -47,9 +47,9 @@ logrule f
 --R                                                     Type: Expression Integer
 --E 3
 
-@
+\end{chunk}
 Now a pile of several rules
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 21
 logrules := rule
   log(x) + log(y) == log(x * y)
@@ -81,9 +81,9 @@ logrules f
 --R                                                     Type: Expression Integer
 --E 6
 
-@
+\end{chunk}
 Example of a predicate attached to a pattern variable
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 21
 logrules2 := rule
   log(x) + log(y)          == log(x * y)
@@ -106,9 +106,9 @@ logrules2 f
 --R                                                     Type: Expression Integer
 --E 8
 
-@
+\end{chunk}
 Rules for linearizing sines and cosines
-<<*>>=
+\begin{chunk}{*}
 --S 9 of 21
 trigLinearize := rule
   sin(x) * sin(y)                      == cos(x-y)/2 - cos(x+y)/2
@@ -153,9 +153,9 @@ trigLinearize g
 --R                                                     Type: Expression Integer
 --E 11
 
-@
+\end{chunk}
 Here we show the use of ? to indicate an 'optional' pattern variables
-<<*>>=
+\begin{chunk}{*}
 --S 12 of 21
 eirule := rule integral((?y + exp x)/x,x) == integral(y/x,x) + Ei x
 --R 
@@ -186,9 +186,9 @@ eirule integral(sin u + exp u/u, u)
 --R                                                     Type: Expression Integer
 --E 14
 
-@
+\end{chunk}
 Here we show the use of : to indicate a 'multiple' pattern variables
-<<*>>=
+\begin{chunk}{*}
 --S 15 of 21
 u := operator u
 --R 
@@ -247,7 +247,7 @@ myrule2 h
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/ruleset.input.pamphlet b/src/input/ruleset.input.pamphlet
index 4b0625a..e71f755 100644
--- a/src/input/ruleset.input.pamphlet
+++ b/src/input/ruleset.input.pamphlet
@@ -10,19 +10,19 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool ruleset.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 This is the example from "Programming in Mathematica", p.139
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 9
 TrigLinearRules := rule
    sin(x) * sin(y) == cos(x-y)/2 - cos(x+y)/2
@@ -85,9 +85,9 @@ TrigLinearRules %
 --R                                                     Type: Expression Integer
 --E 5
 
-@
+\end{chunk}
 Defining an operator to be linear w.r.t. its 2nd argument
-<<*>>=
+\begin{chunk}{*}
 --S 6 of 9
 f := operator 'f
 --R 
@@ -124,7 +124,7 @@ FLinearRules %
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s01eaf.input.pamphlet b/src/input/s01eaf.input.pamphlet
index e7a2ed7..8c598e9 100644
--- a/src/input/s01eaf.input.pamphlet
+++ b/src/input/s01eaf.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s01eaf(complex(-0.5,2.0),-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s13aaf.input.pamphlet b/src/input/s13aaf.input.pamphlet
index 0301868..15488e2 100644
--- a/src/input/s13aaf.input.pamphlet
+++ b/src/input/s13aaf.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s13aaf(2.0,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s13acf.input.pamphlet b/src/input/s13acf.input.pamphlet
index d6e16be..9b7b5aa 100644
--- a/src/input/s13acf.input.pamphlet
+++ b/src/input/s13acf.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s13acf(0.2,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s13adf.input.pamphlet b/src/input/s13adf.input.pamphlet
index 22479b5..6acb4f1 100644
--- a/src/input/s13adf.input.pamphlet
+++ b/src/input/s13adf.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s13adf(0.2,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s14aaf.input.pamphlet b/src/input/s14aaf.input.pamphlet
index 8feeafa..5dcdb21 100644
--- a/src/input/s14aaf.input.pamphlet
+++ b/src/input/s14aaf.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s14aaf(1.25,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s14abf.input.pamphlet b/src/input/s14abf.input.pamphlet
index e2090cc..f6c30ca 100644
--- a/src/input/s14abf.input.pamphlet
+++ b/src/input/s14abf.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s14abf(1.25,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s14baf.input.pamphlet b/src/input/s14baf.input.pamphlet
index 49128de..5e03c2d 100644
--- a/src/input/s14baf.input.pamphlet
+++ b/src/input/s14baf.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s14baf(2.0,3.0,1.1102230246251600E-16,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s15adf.input.pamphlet b/src/input/s15adf.input.pamphlet
index 594ba5c..24dbb6e 100644
--- a/src/input/s15adf.input.pamphlet
+++ b/src/input/s15adf.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s15adf(-10.0,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s15aef.input.pamphlet b/src/input/s15aef.input.pamphlet
index be8c8bd..832822e 100644
--- a/src/input/s15aef.input.pamphlet
+++ b/src/input/s15aef.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s15aef(-6.0,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s17acf.input.pamphlet b/src/input/s17acf.input.pamphlet
index f7f6ac2..5769966 100644
--- a/src/input/s17acf.input.pamphlet
+++ b/src/input/s17acf.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s17acf(0.5,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s17adf.input.pamphlet b/src/input/s17adf.input.pamphlet
index c8f1527..7650edf 100644
--- a/src/input/s17adf.input.pamphlet
+++ b/src/input/s17adf.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s17adf(0.5,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s17aef.input.pamphlet b/src/input/s17aef.input.pamphlet
index 2a1a878..db3dac9 100644
--- a/src/input/s17aef.input.pamphlet
+++ b/src/input/s17aef.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s17aef(0.5,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s17aff.input.pamphlet b/src/input/s17aff.input.pamphlet
index c0fe8ce..dcedcd1 100644
--- a/src/input/s17aff.input.pamphlet
+++ b/src/input/s17aff.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s17aff(0.5,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s17agf.input.pamphlet b/src/input/s17agf.input.pamphlet
index 8e806e4..c24a2b5 100644
--- a/src/input/s17agf.input.pamphlet
+++ b/src/input/s17agf.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s17agf(-10.0,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s17ahf.input.pamphlet b/src/input/s17ahf.input.pamphlet
index 294a5d1..39af6af 100644
--- a/src/input/s17ahf.input.pamphlet
+++ b/src/input/s17ahf.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s17ahf(-10.0,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s17ajf.input.pamphlet b/src/input/s17ajf.input.pamphlet
index abeb9e9..4eb4c6b 100644
--- a/src/input/s17ajf.input.pamphlet
+++ b/src/input/s17ajf.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s17ajf(-10.0,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s17akf.input.pamphlet b/src/input/s17akf.input.pamphlet
index dd6db24..e619d1b 100644
--- a/src/input/s17akf.input.pamphlet
+++ b/src/input/s17akf.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s17akf(-10.0,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s17dcf.input.pamphlet b/src/input/s17dcf.input.pamphlet
index a8768b8..242461b 100644
--- a/src/input/s17dcf.input.pamphlet
+++ b/src/input/s17dcf.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s17dcf(0.0,complex(0.3,0.4),2,"u", -1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s17def.input.pamphlet b/src/input/s17def.input.pamphlet
index 3ee0374..a6ab2f1 100644
--- a/src/input/s17def.input.pamphlet
+++ b/src/input/s17def.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s17def(0.0,complex(0.3,0.4),2,"u", -1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s17dgf.input.pamphlet b/src/input/s17dgf.input.pamphlet
index d66dd14..a1fab4d 100644
--- a/src/input/s17dgf.input.pamphlet
+++ b/src/input/s17dgf.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s17dgf("f",complex(0.3,0.4),"u", -1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s17dhf.input.pamphlet b/src/input/s17dhf.input.pamphlet
index ce48859..9f2be2f 100644
--- a/src/input/s17dhf.input.pamphlet
+++ b/src/input/s17dhf.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s17dhf("f",complex(0.3,0.4),"u", -1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s17dlf.input.pamphlet b/src/input/s17dlf.input.pamphlet
index 91919c9..c3c43f2 100644
--- a/src/input/s17dlf.input.pamphlet
+++ b/src/input/s17dlf.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s17dlf(1, 0.0,complex(0.3,0.4),2,"u", -1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s18acf.input.pamphlet b/src/input/s18acf.input.pamphlet
index ccd3891..4ca3fc5 100644
--- a/src/input/s18acf.input.pamphlet
+++ b/src/input/s18acf.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s18acf(0.4,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s18adf.input.pamphlet b/src/input/s18adf.input.pamphlet
index 07cfcac..d74cda7 100644
--- a/src/input/s18adf.input.pamphlet
+++ b/src/input/s18adf.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s18adf(0.4,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s18aef.input.pamphlet b/src/input/s18aef.input.pamphlet
index 8819c03..3a58306 100644
--- a/src/input/s18aef.input.pamphlet
+++ b/src/input/s18aef.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s18aef(0.5,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s18aff.input.pamphlet b/src/input/s18aff.input.pamphlet
index 34ddbd2..3e7f357 100644
--- a/src/input/s18aff.input.pamphlet
+++ b/src/input/s18aff.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s18aff(0.5,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s18dcf.input.pamphlet b/src/input/s18dcf.input.pamphlet
index 8f8b2f5..cbbe8a2 100644
--- a/src/input/s18dcf.input.pamphlet
+++ b/src/input/s18dcf.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s18dcf(0.0,complex(0.3,0.4),2,"u", -1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s18def.input.pamphlet b/src/input/s18def.input.pamphlet
index 5f575d1..cdd525d 100644
--- a/src/input/s18def.input.pamphlet
+++ b/src/input/s18def.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s18def(0.0,complex(0.3,-0.4),2,"u", -1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s19aaf.input.pamphlet b/src/input/s19aaf.input.pamphlet
index 708326c..a6d63c4 100644
--- a/src/input/s19aaf.input.pamphlet
+++ b/src/input/s19aaf.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s19aaf(1.0,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s19abf.input.pamphlet b/src/input/s19abf.input.pamphlet
index dc6e2bf..ac62b05 100644
--- a/src/input/s19abf.input.pamphlet
+++ b/src/input/s19abf.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s19abf(0.1,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s19acf.input.pamphlet b/src/input/s19acf.input.pamphlet
index 1b8ce28..5dbde82 100644
--- a/src/input/s19acf.input.pamphlet
+++ b/src/input/s19acf.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s19acf(0.1,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s19adf.input.pamphlet b/src/input/s19adf.input.pamphlet
index 2312850..2ac5471 100644
--- a/src/input/s19adf.input.pamphlet
+++ b/src/input/s19adf.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s19adf(0.0,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s20acf.input.pamphlet b/src/input/s20acf.input.pamphlet
index f6ba053..a6f7039 100644
--- a/src/input/s20acf.input.pamphlet
+++ b/src/input/s20acf.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s20acf(0.5,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s20adf.input.pamphlet b/src/input/s20adf.input.pamphlet
index 4743337..d9b1066 100644
--- a/src/input/s20adf.input.pamphlet
+++ b/src/input/s20adf.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s20adf(0.5,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s21baf.input.pamphlet b/src/input/s21baf.input.pamphlet
index f2c39d0..289942d 100644
--- a/src/input/s21baf.input.pamphlet
+++ b/src/input/s21baf.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s21baf(0.5,1.0,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s21bbf.input.pamphlet b/src/input/s21bbf.input.pamphlet
index 5654738..bf515e3 100644
--- a/src/input/s21bbf.input.pamphlet
+++ b/src/input/s21bbf.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s21bbf(0.5,1.0,1.5,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s21bcf.input.pamphlet b/src/input/s21bcf.input.pamphlet
index a63aee5..3e54d84 100644
--- a/src/input/s21bcf.input.pamphlet
+++ b/src/input/s21bcf.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s21bcf(0.5,0.5,1.0,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/s21bdf.input.pamphlet b/src/input/s21bdf.input.pamphlet
index 64b3ddf..99dd480 100644
--- a/src/input/s21bdf.input.pamphlet
+++ b/src/input/s21bdf.input.pamphlet
@@ -10,15 +10,15 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 showArrayValues true
 showScalarValues true
 result:=s21bdf(0.5,0.5,0.5,2.0,-1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/saddle.input.pamphlet b/src/input/saddle.input.pamphlet
index a280c62..cf08153 100644
--- a/src/input/saddle.input.pamphlet
+++ b/src/input/saddle.input.pamphlet
@@ -9,10 +9,9 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
--- @(#)saddle.input	1.1    89/09/07  20:55:18
+\begin{chunk}{*}
 draw(x**2 - y**2,x = -2..2, y = -2..2)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/sae.input.pamphlet b/src/input/sae.input.pamphlet
index 6ff3f8d..c441d8a 100644
--- a/src/input/sae.input.pamphlet
+++ b/src/input/sae.input.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool sae.output
 )set message test on
@@ -77,7 +77,7 @@ Ae:=SAE(FRAC(INT),SparseUnivariatePolynomial(FRAC(INT)),primrec.prim)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/schaum1.input.pamphlet b/src/input/schaum1.input.pamphlet
index 59014f9..3b3c11d 100644
--- a/src/input/schaum1.input.pamphlet
+++ b/src/input/schaum1.input.pamphlet
@@ -12,7 +12,7 @@
 $$\int{\frac{1}{ax+b}}=
 \frac{1}{a}~\ln(ax+b)
 $$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum1.output
 )set message test on
@@ -43,13 +43,13 @@ cc:=bb-aa
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 \section{\cite{1}:14.60~~~~~$\displaystyle
 \int{\frac{x~dx}{ax+b}}$}
 $$\int{\frac{x}{ax+b}}=
 \frac{x}{a}-\frac{b}{a^2}~\ln(ax+b)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 4 of 108
@@ -79,14 +79,14 @@ cc:=bb-aa
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.61~~~~~$\displaystyle
 \int{\frac{x^2~dx}{ax+b}}$}
 $$\int{\frac{x^2}{ax+b}}=
 \frac{(ax+b)^2}{2a^3}-\frac{2b(ax+b)}{a^3}+\frac{b^2}{a^3}~\ln(ax+b)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 7 of 108
@@ -121,24 +121,24 @@ cc:=bb-aa
 --R          2a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 This factor is constant with respect to $x$ as shown by taking the
 derivative. It is a constant of integration.
-<<*>>=
+\begin{chunk}{*}
 --S 10 of 108     14:61 Schaums and Axiom differ by a constant
 differentiate(cc,x)
 --R
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 \section{\cite{1}:14.62~~~~~$\displaystyle
 \int{\frac{x^3~dx}{ax+b}}$}
 $$\int{\frac{x^3}{ax+b}}=
 \frac{(ax+b)^3}{3a^4}-\frac{3b(ax+b)^2}{2a^4}+
 \frac{3b^2(ax+b)}{a^4}-\frac{b^3}{a^4}~\ln(ax+b)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 11 of 108
@@ -151,9 +151,9 @@ aa:=integrate(x^3/(a*x+b),x)
 --R                             6a
 --R                                          Type: Union(Expression Integer,...)
 --E
-@
+\end{chunk}
 and the book expression is:
-<<*>>=
+\begin{chunk}{*}
 --S 12 of 108
 bb:=(a*x+b)^3/(3*a^4)-(3*b*(a*x+b)^2)/(2*a^4)+(3*b^2*(a*x+b))/a^4-(b^3/a^4)*log(a*x+b)
 --R
@@ -164,10 +164,10 @@ bb:=(a*x+b)^3/(3*a^4)-(3*b*(a*x+b)^2)/(2*a^4)+(3*b^2*(a*x+b))/a^4-(b^3/a^4)*log(
 --R                                6a
 --R                                                     Type: Expression Integer
 --E 
-@
+\end{chunk}
 
 The difference is a constant with respect to x:
-<<*>>=
+\begin{chunk}{*}
 --S 13 of 108
 cc:=aa-bb
 --R
@@ -178,25 +178,25 @@ cc:=aa-bb
 --R           6a
 --R                                                     Type: Expression Integer
 --E 
-@
+\end{chunk}
 
 If we differentiate each expression we see that this is the integration
 constant.
-<<*>>=
+\begin{chunk}{*}
 --S 14 of 108     14:62 Schaums and Axiom differ by a constant
 dd:=D(cc,x)
 --R
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.63~~~~~$\displaystyle
 \int{\frac{dx}{x~(ax+b)}}$}
 $$\int{\frac{1}{x~(ax+b)}}=
 \frac{1}{b}~\ln\left(\frac{x}{ax+b}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 15 of 108
@@ -229,11 +229,11 @@ cc:=aa-bb
 --R                           b
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 but we know that $$\log(a)-\log(b)=\log(\frac{a}{b})$$
 
 We can express this fact as a rule:
-<<*>>=
+\begin{chunk}{*}
 --S 18 of 108
 logdiv:=rule(log(a)-log(b) == log(a/b))
 --R
@@ -242,16 +242,16 @@ logdiv:=rule(log(a)-log(b) == log(a/b))
 --R                                      b
 --R                        Type: RewriteRule(Integer,Integer,Expression Integer)
 --E 
-@
+\end{chunk}
 and use this rule to rewrite the logs into divisions:
-<<*>>=
+\begin{chunk}{*}
 --S 19 of 108     14:63 Schaums and Axiom agree
 dd:=logdiv cc
 --R
 --R   (5)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 so we can see the equivalence directly.
 
 \section{\cite{1}:14.64~~~~~$\displaystyle
@@ -259,7 +259,7 @@ so we can see the equivalence directly.
 $$\int{\frac{1}{x^2~(ax+b)}}=
 -\frac{1}{bx}+\frac{a}{b^2}~\ln\left(\frac{ax+b}{x}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 20 of 108
@@ -271,10 +271,10 @@ aa:=integrate(1/(x^2*(a*x+b)),x)
 --R                       b x
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 The original form given in the book expands to:
-<<*>>=
+\begin{chunk}{*}
 --S 21 of 108
 bb:=-1/(b*x)+a/b^2*log((a*x+b)/x)
 --R
@@ -298,10 +298,10 @@ cc:=aa-bb
 --R                            b
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 We can define the following rule to expand log forms:
-<<*>>=
+\begin{chunk}{*}
 --S 23 of 108
 divlog:=rule(log(a/b) == log(a) - log(b))
 --R
@@ -310,23 +310,23 @@ divlog:=rule(log(a/b) == log(a) - log(b))
 --R            b
 --R                        Type: RewriteRule(Integer,Integer,Expression Integer)
 --E 
-@
+\end{chunk}
 and apply it to the difference
-<<*>>=
+\begin{chunk}{*}
 --S 24 of 108     14:64 Schaums and Axiom agree
 divlog cc
 --R
 --R   (5)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.65~~~~~$\displaystyle
 \int{\frac{dx}{x^3~(ax+b)}}$}
 $$\int{\frac{1}{x^3~(ax+b)}}=
 \frac{2ax-b}{2b^2x^2}+\frac{a^2}{b^3}~\ln\left(\frac{x}{ax+b}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 --S 25 of 108
 aa:=integrate(1/(x^3*(a*x+b)),x)
@@ -378,14 +378,14 @@ dd:=divlog cc
 --R   (5)  0
 --R                                                     Type: Expression Integer
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.66~~~~~$\displaystyle
 \int{\frac{dx}{(ax+b)^2}}$}
 $$\int{\frac{1}{(ax+b)^2}}=
 \frac{-1}{a~(ax+b)}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 30 of 108
@@ -415,14 +415,14 @@ cc:=aa-bb
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.67~~~~~$\displaystyle
 \int{\frac{x~dx}{(ax+b)^2}}$}
 $$\int{\frac{x}{(ax+b)^2}}=
 \frac{b}{a^2~(ax+b)}+\frac{1}{a^2}~\ln(ax+b)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 33 of 108
@@ -452,7 +452,7 @@ cc:=aa-bb
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.68~~~~~$\displaystyle
 \int{\frac{x^2~dx}{(ax+b)^2}}$}
@@ -460,7 +460,7 @@ $$\int{\frac{x^2}{(ax+b)^2}}=
 \frac{ax+b}{a^3}-\frac{b^2}{a^3~(ax+b)}
 -\frac{2b}{a^3}~\ln(ax+b)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 36 of 108
@@ -473,9 +473,9 @@ aa:=integrate(x^2/(a*x+b)^2,x)
 --R                            a x + a b
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 and the book expression expands into
-<<*>>=
+\begin{chunk}{*}
 --S 37 of 108
 bb:=(a*x+b)/a^3-b^2/(a^3*(a*x+b))-((2*b)/a^3)*log(a*x+b)
 --R
@@ -486,10 +486,10 @@ bb:=(a*x+b)/a^3-b^2/(a^3*(a*x+b))-((2*b)/a^3)*log(a*x+b)
 --R                          a x + a b
 --R                                                     Type: Expression Integer
 --E 
-@
+\end{chunk}
 
 These two expressions differ by the constant
-<<*>>=
+\begin{chunk}{*}
 --S 38 of 108
 cc:=aa-bb
 --R
@@ -499,17 +499,17 @@ cc:=aa-bb
 --R          a
 --R                                                     Type: Expression Integer
 --E 
-@
+\end{chunk}
 
 That this expression is constant can be shown by differentiation:
-<<*>>=
+\begin{chunk}{*}
 --S 39 of 108     14:68 Schaums and Axiom differ by a constant
 D(cc,x)
 --R
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.69~~~~~$\displaystyle
 \int{\frac{x^3~dx}{(ax+b)^2}}$}
@@ -517,7 +517,7 @@ $$\int{\frac{x^3}{(ax+b)^2}}=
 \frac{(ax+b)^2}{2a^4}-\frac{3b(ax+b)}{a^4}+\frac{b^3}{a^4(ax+b)}
 +\frac{3b^2}{a^4}~\ln(ax+b)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 40 of 108
@@ -559,13 +559,13 @@ dd:=D(cc,x)
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 \section{\cite{1}:14.70~~~~~$\displaystyle
 \int{\frac{dx}{x~(ax+b)^2}}$}
 $$\int{\frac{1}{x~(ax+b)^2}}=
 \frac{1}{b~(ax+b)}+\frac{1}{b^2}~\ln\left(\frac{x}{ax+b}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 44 of 108
@@ -577,9 +577,9 @@ aa:=integrate(1/(x*(a*x+b)^2),x)
 --R                          a b x + b
 --R                                          Type: Union(Expression Integer,...)
 --E
-@
+\end{chunk}
 and the book says:
-<<*>>=
+\begin{chunk}{*}
 --S 45 of 108
 bb:=(1/(b*(a*x+b))+(1/b^2)*log(x/(a*x+b)))
 --R
@@ -603,9 +603,9 @@ cc:=aa-bb
 --R                          b
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 So we look at the divlog rule again:
-<<*>>=
+\begin{chunk}{*}
 --S 47 of 108
 divlog:=rule(log(a/b) == log(a) - log(b))
 --R
@@ -614,17 +614,17 @@ divlog:=rule(log(a/b) == log(a) - log(b))
 --R            b
 --R                        Type: RewriteRule(Integer,Integer,Expression Integer)
 --E
-@
+\end{chunk}
 
 we apply it:
-<<*>>=
+\begin{chunk}{*}
 --S 48 of 108     14:70 Schaums and Axiom agree
 dd:=divlog cc
 --R
 --R   (5)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.71~~~~~$\displaystyle
 \int{\frac{dx}{x^2~(ax+b)^2}}$}
@@ -632,7 +632,7 @@ $$\int{\frac{1}{x^2~(ax+b)^2}}=
 \frac{-a}{b^2~(ax+b)}-\frac{1}{b^2~x}+
 \frac{2a}{b^3}~\ln\left(\frac{ax+b}{x}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 49 of 108
@@ -645,9 +645,9 @@ aa:=integrate(1/(x^2*(a*x+b)^2),x)
 --R                                     a b x  + b x
 --R                                          Type: Union(Expression Integer,...)
 --E
-@
+\end{chunk}
 and the book says:
-<<*>>=
+\begin{chunk}{*}
 --S 50 of 108
 bb:=(-a/(b^2*(a*x+b)))-(1/(b^2*x))+((2*a)/b^3)*log((a*x+b)/x)
 --R
@@ -671,9 +671,9 @@ cc:=aa-bb
 --R                              b
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 which calls for our divlog rule:
-<<*>>=
+\begin{chunk}{*}
 --S 52 of 108
 divlog:=rule(log(a/b) == log(a) - log(b))
 --R
@@ -682,23 +682,23 @@ divlog:=rule(log(a/b) == log(a) - log(b))
 --R            b
 --R                        Type: RewriteRule(Integer,Integer,Expression Integer)
 --E
-@
+\end{chunk}
 which we use to transform the result:
-<<*>>=
+\begin{chunk}{*}
 --S 53 of 108     14:71 Schaums and Axiom agree
 dd:=divlog cc
 --R
 --R   (5)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 \section{\cite{1}:14.72~~~~~$\displaystyle
 \int{\frac{dx}{x^3~(ax+b)^2}}$}
 $$\int{\frac{1}{x^3~(ax+b)^2}}=
 -\frac{(ax+b)^2}{2b^4x^2}+\frac{3a(ax+b)}{b^4x}-
 \frac{a^3x}{b^4(ax+b)}-\frac{3a^2}{b^4}~\ln\left(\frac{ax+b}{x}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 54 of 108
@@ -766,14 +766,14 @@ ee:=D(dd,x)
 --R   (6)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.73~~~~~$\displaystyle
 \int{\frac{dx}{(ax+b)^3}}$}
 $$\int{\frac{1}{(ax+b)^3}}=
 \frac{-1}{2a(ax+b)^2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 60 of 108
@@ -821,14 +821,14 @@ ee:=D(dd,x)
 --R   (5)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.74~~~~~$\displaystyle
 \int{\frac{x~dx}{(ax+b)^3}}$}
 $$\int{\frac{x}{(ax+b)^3}}=
 \frac{-1}{a^2(ax+b)}+\frac{b}{2a^2(ax+b)^2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 65 of 108
@@ -857,7 +857,7 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.75~~~~~$\displaystyle
 \int{\frac{x^2~dx}{(ax+b)^3}}$}
@@ -865,7 +865,7 @@ $$\int{\frac{x^2}{(ax+b)^3}}=
 \frac{2b}{a^3(ax+b)}-\frac{b^2}{2a^3(ax+b)^2}+
 \frac{1}{a^3}~\ln(ax+b)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 68 of 108
@@ -896,7 +896,7 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.76~~~~~$\displaystyle
 \int{\frac{x^3~dx}{(ax+b)^3}}$}
@@ -904,7 +904,7 @@ $$\int{\frac{x^3}{(ax+b)^3}}=
 \frac{x}{a^3}-\frac{3b^2}{a^4(ax+b)}+\frac{b^3}{2a^4(ax+b)^2}-
 \frac{3b}{a^4}~\ln(ax+b)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 --S 71 of 108
 aa:=integrate(x^3/(a*x+b)^3,x)
@@ -936,7 +936,7 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.77~~~~~$\displaystyle
 \int{\frac{dx}{x(ax+b)^3}}$}
@@ -945,7 +945,7 @@ $$\int{\frac{1}{x(ax+b)^3}}=
 \frac{1}{b^3}*\ln\left(\frac{ax+b}{x}\right)
 $$
 
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 74 of 108
@@ -1012,7 +1012,7 @@ ee:=D(dd,x)
 --R   (6)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.78~~~~~$\displaystyle
 \int{\frac{dx}{x^2(ax+b)^3}}$}
@@ -1020,7 +1020,7 @@ $$\int{\frac{1}{x^2(ax+b)^3}}=
 \frac{-a}{2b^2(ax+b)^2}-\frac{2a}{b^3(ax+b)}-
 \frac{1}{b^3x}+\frac{3a}{b^4}~\ln\left(\frac{ax+b}{x}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 80 of 108
@@ -1077,7 +1077,7 @@ dd:=divlog cc
 --R   (5)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.79~~~~~$\displaystyle
 \int{\frac{dx}{x^3(ax+b)^3}}$}
@@ -1088,7 +1088,7 @@ $$\int{\frac{1}{x^3(ax+b)^3}}=
 \frac{6a^3x}{b^4(ax+b)^2}-
 \frac{6a^2}{b^5}~\ln\left(\frac{ax+b}{x}\right)$$
 
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 85 of 108
@@ -1153,14 +1153,14 @@ dd:=divlog cc
 --R   (5)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.80~~~~~$\displaystyle
 \int{(ax+b)^n~dx}$}
 $$\int{(ax+b)^n}=
 \frac{(ax+b)^{n+1}}{(n+1)a}{\rm\ provided\ }n \ne -1
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 --S 90 of 108
 aa:=integrate((a*x+b)^n,x)
@@ -1191,9 +1191,9 @@ cc:=aa-bb
 --R                          a n + a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 This messy formula can be simplified using the explog rule:
-<<*>>=
+\begin{chunk}{*}
 --S 93 of 108
 explog:=rule(%e^(n*log(x)) == x^n)
 --R
@@ -1218,7 +1218,7 @@ ee:=complexNormalize dd
 --R   (6)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.81~~~~~$\displaystyle
 \int{x(ax+b)^n~dx}$}
@@ -1226,7 +1226,7 @@ $$\int{x(ax+b)^n}=
 \frac{(ax+b)^{n+2}}{(n+2)a^2}-\frac{b(ax+b)^{n+1}}{(n+1)a^2}
 {\rm\ provided\ }n \ne -1,-2
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 --S 96 of 108
 aa:=integrate(x*(a*x+b)^n,x)
@@ -1294,7 +1294,7 @@ ee:=complexNormalize dd
 --R   (6)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 \section{\cite{1}:14.82~~~~~$\displaystyle
 \int{x^2(ax+b)^n~dx}$}
 $$\int{x^2(ax+b)^n}=
@@ -1304,7 +1304,7 @@ $$\int{x^2(ax+b)^n}=
 {\rm\ provided\ }n \ne -1,-2,-3
 $$
 
-<<*>>=
+\begin{chunk}{*}
 )clear all
 --S 102 of 108
 aa:=integrate(x^2*(a*x+b)^n,x)
@@ -1386,7 +1386,7 @@ ee:=complexNormalize dd
 --R   (6)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 \section{\cite{1}:14.83~~~~~$\displaystyle
 \int{x^m(ax+b)^n}~dx$}
 $$\int{x^m(ax+b)^n}
@@ -1407,7 +1407,7 @@ $$\int{x^m(ax+b)^n}
 \right.
 $$
 
-<<*>>=
+\begin{chunk}{*}
 --S 108 of 108    14:83 Axiom cannot do this integration
 aa:=integrate(x^m*(a*x+b)^n,x)
 --R
@@ -1420,7 +1420,7 @@ aa:=integrate(x^m*(a*x+b)^n,x)
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum10.input.pamphlet b/src/input/schaum10.input.pamphlet
index 2f16a7b..ba68128 100644
--- a/src/input/schaum10.input.pamphlet
+++ b/src/input/schaum10.input.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \section{\cite{1}:14.210~~~~~$\displaystyle\int{\frac{dx}{\sqrt{x^2-a^2}}}$}
 $$\int{\frac{1}{\sqrt{x^2-a^2}}}=\ln\left(x+\sqrt{x^2-a^2}\right)$$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum10.output
 )set message test on
@@ -58,11 +58,11 @@ dd:=logmul1 cc
 --R   (5)  - log(- a )
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.xxx~~~~~$\displaystyle\int{\frac{x~dx}{\sqrt{x^2-a^2}}}$}
 $$\int{\frac{x}{\sqrt{x^2-a^2}}}=\sqrt{x^2-a^2}$$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 6 of 150
@@ -94,14 +94,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.211~~~~~$\displaystyle
 \int{\frac{x^2~dx}{\sqrt{x^2-a^2}}}$}
 $$\int{\frac{x^2}{\sqrt{x^2-a^2}}}=
 \frac{x\sqrt{x^2-a^2}}{2}+\frac{a^2}{2}\ln\left(x+\sqrt{x^2-a^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 9 of 150
@@ -155,14 +155,14 @@ dd:=complexNormalize cc
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.212~~~~~$\displaystyle
 \int{\frac{x^3~dx}{\sqrt{x^2-a^2}}}$}
 $$\int{\frac{x^3}{\sqrt{x^2-a^2}}}=
 \frac{(x^2-a^2)^{3/2}}{3}+a^2\sqrt{x^2-a^2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 13 of 150
@@ -196,13 +196,13 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.213~~~~~$\displaystyle\int{\frac{dx}{x\sqrt{x^2-a^2}}}$}
 $$\int{\frac{1}{x\sqrt{x^2-a^2}}}=
 \frac{1}{a}\sec^{-1}\left|\frac{x}{a}\right|
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 16 of 150
@@ -347,14 +347,14 @@ hh:=complexNormalize gg
 --R            2a
 --R                                             Type: Expression Complex Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.214~~~~~$\displaystyle
 \int{\frac{dx}{x^2\sqrt{x^2-a^2}}}$}
 $$\int{\frac{1}{x^2\sqrt{x^2-a^2}}}=
 \frac{\sqrt{x^2-a^2}}{a^2x}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 26 of 150
@@ -390,14 +390,14 @@ cc:=aa-bb
 --R        a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.215~~~~~$\displaystyle\int{\frac{dx}{x^3\sqrt{x^2-a^2}}}$}
 $$\int{\frac{1}{x^3\sqrt{x^2-a^2}}}=
 -\frac{\sqrt{x^2-a^2}}{2a^2x^2}+\frac{1}{2a^3}
 \sec^{-1}\left|\frac{x}{a}\right|
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 29 of 150
@@ -558,13 +558,13 @@ hh:=complexNormalize gg
 --R                                             Type: Expression Complex Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.216~~~~~$\displaystyle\int{\sqrt{x^2-a^2}}~dx$}
 $$\int{\sqrt{x^2-a^2}}=
 \frac{x\sqrt{x^2-a^2}}{2}-\frac{a^2}{2}\ln\left(x+\sqrt{x^2-a^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 39 of 150
@@ -617,13 +617,13 @@ dd:=complexNormalize cc
 --R             2
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.217~~~~~$\displaystyle\int{x\sqrt{x^2-a^2}}~dx$}
 $$\int{x\sqrt{x^2-a^2}}=
 \frac{(x^2-a^2)^{3/2}}{3}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 43 of 150
@@ -657,7 +657,7 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.218~~~~~$\displaystyle
 \int{x^2\sqrt{x^2-a^2}}~dx$}
@@ -665,7 +665,7 @@ $$\int{x^2\sqrt{x^2-a^2}}=
 \frac{x(x^2-a^2)^{3/2}}{4}+\frac{a^2x\sqrt{x^2-a^2}}{8}-
 \frac{a^4}{8}\ln\left(x+\sqrt{x^2-a^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 46 of 150
@@ -718,14 +718,14 @@ dd:=complexNormalize cc
 --R             8
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.219~~~~~$\displaystyle
 \int{x^3\sqrt{x^2-a^2}}~dx$}
 $$\int{x^3\sqrt{x^2-a^2}}=
 \frac{(x^2-a^2)^{5/2}}{5}+\frac{a^2(x^2-a^2)^{3/2}}{3}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 50 of 150
@@ -763,14 +763,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.220~~~~~$\displaystyle
 \int{\frac{\sqrt{x^2-a^2}}{x}}~dx$}
 $$\int{\frac{\sqrt{x^2-a^2}}{x}}=
 \sqrt{x^2-a^2}-a\sec^{-1}\left|\frac{x}{a}\right|
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 53 of 150
@@ -912,14 +912,14 @@ hh:=complexNormalize gg
 --R           2
 --R                                             Type: Expression Complex Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.221~~~~~$\displaystyle
 \int{\frac{\sqrt{x^2-a^2}}{x^2}}~dx$}
 $$\int{\frac{\sqrt{x^2-a^2}}{x^2}}=
 -\frac{\sqrt{x^2-a^2}}{x}+\ln\left(x+\sqrt{x^2-a^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 63 of 150
@@ -964,7 +964,7 @@ dd:=complexNormalize cc
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.222~~~~~$\displaystyle
 \int{\frac{\sqrt{x^2-a^2}}{x^3}}~dx$}
@@ -972,7 +972,7 @@ $$\int{\frac{\sqrt{x^2-a^2}}{x^3}}=
 -\frac{\sqrt{x^2-a^2}}{2x^2}+\frac{1}{2a}
 \sec^{-1}\left|\frac{x}{a}\right|
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 67 of 150
@@ -1126,13 +1126,13 @@ hh:=complexNormalize gg
 --R            4a
 --R                                             Type: Expression Complex Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.223~~~~~$\displaystyle\int{\frac{dx}{(x^2-a^2)^{3/2}}}$}
 $$\int{\frac{1}{(x^2-a^2)^{3/2}}}=
 -\frac{x}{a^2\sqrt{x^2-a^2}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 77 of 150
@@ -1167,14 +1167,14 @@ cc:=aa-bb
 --R          a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.224~~~~~$\displaystyle
 \int{\frac{x~dx}{(x^2-a^2)^{3/2}}}$}
 $$\int{\frac{x}{(x^2-a^2)^{3/2}}}=
 \frac{-1}{\sqrt{x^2-a^2}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 80 of 150
@@ -1208,14 +1208,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.225~~~~~$\displaystyle
 \int{\frac{x^2dx}{(x^2-a^2)^{3/2}}}$}
 $$\int{\frac{x^2}{(x^2-a^2)^{3/2}}}=
 \frac{-x}{\sqrt{x^2-a^2}}+\ln\left(x+\sqrt{x^2-a^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 83 of 150
@@ -1261,14 +1261,14 @@ dd:=complexNormalize cc
 --R   (4)  - log(- a ) - 1
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.226~~~~~$\displaystyle
 \int{\frac{x^3dx}{(x^2-a^2)^{3/2}}}$}
 $$\int{\frac{x^3}{(x^2-a^2)^{3/2}}}=
 \sqrt{x^2-a^2}-\frac{a^2}{\sqrt{x^2-a^2}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 87 of 150
@@ -1303,7 +1303,7 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.227~~~~~$\displaystyle
 \int{\frac{dx}{x(x^2-a^2)^{3/2}}}$}
@@ -1311,7 +1311,7 @@ $$\int{\frac{1}{x(x^2-a^2)^{3/2}}}=
 \frac{-1}{a^2\sqrt{x^2-a^2}}-
 \frac{1}{a^3}\sec^{-1}\left|\frac{x}{a}\right|
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 90 of 150
@@ -1467,14 +1467,14 @@ hh:=complexNormalize gg
 --R                                             Type: Expression Complex Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.228~~~~~$\displaystyle
 \int{\frac{dx}{x^2(x^2-a^2)^{3/2}}}$}
 $$\int{\frac{1}{x^2(x^2-a^2)^{3/2}}}=
 -\frac{\sqrt{x^2-a^2}}{a^4x}-\frac{x}{a^4\sqrt{x^2-a^2}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 100 of 150
@@ -1511,7 +1511,7 @@ cc:=aa-bb
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.229~~~~~$\displaystyle
 \int{\frac{dx}{x^3(x^2-a^2)^{3/2}}}$}
@@ -1520,7 +1520,7 @@ $$\int{\frac{1}{x^3(x^2-a^2)^{3/2}}}=
 \frac{3}{2a^4\sqrt{x^2-a^2}}-
 \frac{3}{2a^5}\sec^{-1}\left|\frac{x}{a}\right|
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 103 of 150
@@ -1680,13 +1680,13 @@ hh:=complexNormalize gg
 --R          4a
 --R                                             Type: Expression Complex Integer
 --E
-@
+\end{chunk}
 \section{\cite{1}:14.230~~~~~$\displaystyle\int{(x^2-a^2)^{3/2}}~dx$}
 $$\int{(x^2-a^2)^{3/2}}=
 \frac{x(x^2-a^2)^{3/2}}{4}-\frac{3a^2x\sqrt{x^2-a^2}}{8}+
 \frac{3}{8}a^4\ln\left(x+\sqrt{x^2-a^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 113 of 150
@@ -1743,11 +1743,11 @@ dd:=complexNormalize cc
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.231~~~~~$\displaystyle\int{x(x^2-a^2)^{3/2}}~dx$}
 $$\int{x(x^2-a^2)^{3/2}}=\frac{(x^2-a^2)^{5/2}}{5}$$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 117 of 150
@@ -1785,7 +1785,7 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.232~~~~~$\displaystyle\int{x^2(x^2-a^2)^{3/2}}~dx$}
 $$\int{x^2(x^2-a^2)^{3/2}}=
@@ -1793,7 +1793,7 @@ $$\int{x^2(x^2-a^2)^{3/2}}=
 \frac{a^4x\sqrt{x^2-a^2}}{16}+
 \frac{a^6}{16}\ln\left(x+\sqrt{x^2-a^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 120 of 150
@@ -1856,13 +1856,13 @@ dd:=complexNormalize cc
 --R               16
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.233~~~~~$\displaystyle\int{x^3(x^2-a^2)^{3/2}}~dx$}
 $$\int{x^3(x^2-a^2)^{3/2}}=
 \frac{(x^2-a^2)^{7/2}}{7}+\frac{a^2(x^2-a^2)^{5/2}}{5}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 124 of 150
@@ -1912,7 +1912,7 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.234~~~~~$\displaystyle
 \int{\frac{(x^2-a^2)^{3/2}}{x}}~dx$}
@@ -1920,7 +1920,7 @@ $$\int{\frac{(x^2-a^2)^{3/2}}{x}}=
 \frac{(x^2-a^2)^{3/2}}{3}-a^2\sqrt{x^2-a^2}+
 a^3\sec^{-1}\left|\frac{x}{a}\right|
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 127 of 150
@@ -2073,7 +2073,7 @@ hh:=complexNormalize gg
 --R             2
 --R                                             Type: Expression Complex Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.235~~~~~$\displaystyle
 \int{\frac{(x^2-a^2)^{3/2}}{x^2}}~dx$}
@@ -2081,7 +2081,7 @@ $$\int{\frac{(x^2-a^2)^{3/2}}{x^2}}=
 -\frac{(x^2-a^2)^{3/2}}{x}+\frac{3x\sqrt{x^2-a^2}}{2}-
 \frac{3}{2}a^2\ln\left(x+\sqrt{x^2-a^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 137 of 150
@@ -2135,7 +2135,7 @@ dd:=complexNormalize cc
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.236~~~~~$\displaystyle
 \int{\frac{(x^2-a^2)^{3/2}}{x^3}}~dx$}
@@ -2143,7 +2143,7 @@ $$\int{\frac{(x^2-a^2)^{3/2}}{x^3}}=
 -\frac{(x^2-a^2)^{3/2}}{2x^2}+\frac{3}{2}\sqrt{x^2-a^2}-
 \frac{3}{2}a\sec^{-1}\left|\frac{x}{a}\right|
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 141 of 150
@@ -2300,7 +2300,7 @@ hh:=complexNormalize gg
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum11.input.pamphlet b/src/input/schaum11.input.pamphlet
index cb8675c..1d7ea3f 100644
--- a/src/input/schaum11.input.pamphlet
+++ b/src/input/schaum11.input.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \section{\cite{1}:14.237~~~~~$\displaystyle\int{\frac{dx}{\sqrt{a^2-x^2}}}$}
 $$\int{\frac{1}{\sqrt{a^2-x^2}}}=\ln\left(x+\sqrt{a^2-x^2}\right)$$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum11.output
 )set message test on
@@ -117,11 +117,11 @@ gg:=complexNormalize ff
 --R                                             Type: Expression Complex Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.238~~~~~$\displaystyle\int{\frac{x~dx}{\sqrt{a^2-x^2}}}$}
 $$\int{\frac{x}{\sqrt{a^2-x^2}}}=\sqrt{a^2-x^2}$$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 10 of 170
@@ -152,14 +152,14 @@ cc:=aa-bb
 --R   (3)  - a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.239~~~~~$\displaystyle
 \int{\frac{x^2~dx}{\sqrt{a^2-x^2}}}$}
 $$\int{\frac{x^2}{\sqrt{a^2-x^2}}}=
 \frac{x\sqrt{a^2-x^2}}{2}+\frac{a^2}{2}\ln\left(x+\sqrt{a^2-x^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 13 of 170
@@ -303,14 +303,14 @@ hh:=complexNormalize gg
 --R                                             Type: Expression Complex Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.240~~~~~$\displaystyle
 \int{\frac{x^3~dx}{\sqrt{a^2-x^2}}}$}
 $$\int{\frac{x^3}{\sqrt{a^2-x^2}}}=
 \frac{(a^2-x^2)^{3/2}}{3}+a^2\sqrt{a^2-x^2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 23 of 170
@@ -347,13 +347,13 @@ cc:=aa-bb
 --R           3
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.241~~~~~$\displaystyle\int{\frac{dx}{x\sqrt{a^2-x^2}}}$}
 $$\int{\frac{1}{x\sqrt{a^2-x^2}}}=
 \frac{1}{a}\sec^{-1}\left|\frac{x}{a}\right|
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 26 of 170
@@ -429,14 +429,14 @@ ff:=rootSimp ee
 --R              a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.242~~~~~$\displaystyle
 \int{\frac{dx}{x^2\sqrt{a^2-x^2}}}$}
 $$\int{\frac{1}{x^2\sqrt{a^2-x^2}}}=
 \frac{\sqrt{a^2-x^2}}{a^2x}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 32 of 170
@@ -471,14 +471,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.243~~~~~$\displaystyle\int{\frac{dx}{x^3\sqrt{a^2-x^2}}}$}
 $$\int{\frac{1}{x^3\sqrt{a^2-x^2}}}=
 -\frac{\sqrt{a^2-x^2}}{2a^2x^2}+\frac{1}{2a^3}
 \sec^{-1}\left|\frac{x}{a}\right|
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 35 of 170
@@ -566,13 +566,13 @@ ff:=rootSimp ee
 --R             a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.244~~~~~$\displaystyle\int{\sqrt{a^2-x^2}}~dx$}
 $$\int{\sqrt{a^2-x^2}}=
 \frac{x\sqrt{a^2-x^2}}{2}-\frac{a^2}{2}\ln\left(x+\sqrt{a^2-x^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 41 of 170
@@ -716,13 +716,13 @@ hh:=complexNormalize gg
 --R   (10)  0
 --R                                             Type: Expression Complex Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.245~~~~~$\displaystyle\int{x\sqrt{a^2-x^2}}~dx$}
 $$\int{x\sqrt{a^2-x^2}}=
 \frac{(a^2-x^2)^{3/2}}{3}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 51 of 170
@@ -759,7 +759,7 @@ cc:=aa-bb
 --R           3
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.246~~~~~$\displaystyle
 \int{x^2\sqrt{a^2-x^2}}~dx$}
@@ -767,7 +767,7 @@ $$\int{x^2\sqrt{a^2-x^2}}=
 \frac{x(a^2-x^2)^{3/2}}{4}+\frac{a^2x\sqrt{a^2-x^2}}{8}-
 \frac{a^4}{8}\ln\left(x+\sqrt{a^2-x^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 54 of 170
@@ -914,14 +914,14 @@ hh:=complexNormalize gg
 --R   (10)  0
 --R                                             Type: Expression Complex Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.247~~~~~$\displaystyle
 \int{x^3\sqrt{a^2-x^2}}~dx$}
 $$\int{x^3\sqrt{a^2-x^2}}=
 \frac{(a^2-x^2)^{5/2}}{5}+\frac{a^2(a^2-x^2)^{3/2}}{3}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 64 of 170
@@ -959,14 +959,14 @@ cc:=aa-bb
 --R           15
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.248~~~~~$\displaystyle
 \int{\frac{\sqrt{a^2-x^2}}{x}}~dx$}
 $$\int{\frac{\sqrt{a^2-x^2}}{x}}=
 \sqrt{a^2-x^2}-a\sec^{-1}\left|\frac{x}{a}\right|
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 67 of 170
@@ -1034,14 +1034,14 @@ ff:=rootSimp ee
 --R   (6)  2a log(\|- 1 ) + a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.249~~~~~$\displaystyle
 \int{\frac{\sqrt{a^2-x^2}}{x^2}}~dx$}
 $$\int{\frac{\sqrt{a^2-x^2}}{x^2}}=
 -\frac{\sqrt{a^2-x^2}}{x}+\ln\left(x+\sqrt{a^2-x^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 73 of 170
@@ -1171,7 +1171,7 @@ hh:=complexNormalize gg
 --R   (10)  0
 --R                                             Type: Expression Complex Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.250~~~~~$\displaystyle
 \int{\frac{\sqrt{a^2-x^2}}{x^3}}~dx$}
@@ -1179,7 +1179,7 @@ $$\int{\frac{\sqrt{a^2-x^2}}{x^3}}=
 -\frac{\sqrt{a^2-x^2}}{2x^2}+\frac{1}{2a}
 \sec^{-1}\left|\frac{x}{a}\right|
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 83 of 170
@@ -1263,13 +1263,13 @@ ff:=rootSimp ee
 --R               a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.251~~~~~$\displaystyle\int{\frac{dx}{(a^2-x^2)^{3/2}}}$}
 $$\int{\frac{1}{(a^2-x^2)^{3/2}}}=
 -\frac{x}{a^2\sqrt{a^2-x^2}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 89 of 170
@@ -1303,14 +1303,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.252~~~~~$\displaystyle
 \int{\frac{x~dx}{(a^2-x^2)^{3/2}}}$}
 $$\int{\frac{x}{(a^2-x^2)^{3/2}}}=
 \frac{-1}{\sqrt{a^2-x^2}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 92 of 170
@@ -1345,14 +1345,14 @@ cc:=aa-bb
 --R        a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.253~~~~~$\displaystyle
 \int{\frac{x^2dx}{(a^2-x^2)^{3/2}}}$}
 $$\int{\frac{x^2}{(a^2-x^2)^{3/2}}}=
 \frac{-x}{\sqrt{a^2-x^2}}+\ln\left(x+\sqrt{a^2-x^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 95 of 170
@@ -1483,14 +1483,14 @@ hh:=complexNormalize gg
 --R   (10)  0
 --R                                             Type: Expression Complex Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.254~~~~~$\displaystyle
 \int{\frac{x^3dx}{(a^2-x^2)^{3/2}}}$}
 $$\int{\frac{x^3}{(a^2-x^2)^{3/2}}}=
 \sqrt{a^2-x^2}-\frac{a^2}{\sqrt{a^2-x^2}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 105 of 170
@@ -1524,7 +1524,7 @@ cc:=aa-bb
 --R   (3)  2a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.255~~~~~$\displaystyle
 \int{\frac{dx}{x(a^2-x^2)^{3/2}}}$}
@@ -1532,7 +1532,7 @@ $$\int{\frac{1}{x(a^2-x^2)^{3/2}}}=
 \frac{-1}{a^2\sqrt{a^2-x^2}}-
 \frac{1}{a^3}\sec^{-1}\left|\frac{x}{a}\right|
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 108 of 170
@@ -1616,14 +1616,14 @@ ff:=rootSimp ee
 --R               a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.256~~~~~$\displaystyle
 \int{\frac{dx}{x^2(a^2-x^2)^{3/2}}}$}
 $$\int{\frac{1}{x^2(a^2-x^2)^{3/2}}}=
 -\frac{\sqrt{a^2-x^2}}{a^4x}-\frac{x}{a^4\sqrt{a^2-x^2}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 114 of 170
@@ -1658,7 +1658,7 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.257~~~~~$\displaystyle
 \int{\frac{dx}{x^3(a^2-x^2)^{3/2}}}$}
@@ -1667,7 +1667,7 @@ $$\int{\frac{1}{x^3(a^2-x^2)^{3/2}}}=
 \frac{3}{2a^4\sqrt{a^2-x^2}}-
 \frac{3}{2a^5}\sec^{-1}\left|\frac{x}{a}\right|
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 117 of 170
@@ -1760,14 +1760,14 @@ ff:=rootSimp ee
 --R               a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.258~~~~~$\displaystyle\int{(a^2-x^2)^{3/2}}~dx$}
 $$\int{(a^2-x^2)^{3/2}}=
 \frac{x(a^2-x^2)^{3/2}}{4}-\frac{3a^2x\sqrt{a^2-x^2}}{8}+
 \frac{3}{8}a^4\ln\left(x+\sqrt{a^2-x^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 123 of 170
@@ -1919,11 +1919,11 @@ ii:=complexNormalize hh
 --R   (10)  0
 --R                                             Type: Expression Complex Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.259~~~~~$\displaystyle\int{x(a^2-x^2)^{3/2}}~dx$}
 $$\int{x(a^2-x^2)^{3/2}}=\frac{(a^2-x^2)^{5/2}}{5}$$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 133 of 170
@@ -1964,7 +1964,7 @@ cc:=aa-bb
 --R           5
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.260~~~~~$\displaystyle\int{x^2(a^2-x^2)^{3/2}}~dx$}
 $$\int{x^2(a^2-x^2)^{3/2}}=
@@ -1972,7 +1972,7 @@ $$\int{x^2(a^2-x^2)^{3/2}}=
 \frac{a^4x\sqrt{a^2-x^2}}{16}+
 \frac{a^6}{16}\ln\left(x+\sqrt{a^2-x^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 136 of 170
@@ -2128,13 +2128,13 @@ hh:=complexNormalize gg
 --R   (10)  0
 --R                                             Type: Expression Complex Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.261~~~~~$\displaystyle\int{x^3(a^2-x^2)^{3/2}}~dx$}
 $$\int{x^3(a^2-x^2)^{3/2}}=
 \frac{(a^2-x^2)^{7/2}}{7}+\frac{a^2(a^2-x^2)^{5/2}}{5}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 146 of 170
@@ -2178,7 +2178,7 @@ cc:=aa-bb
 --R           35
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.262~~~~~$\displaystyle
 \int{\frac{(a^2-x^2)^{3/2}}{x}}~dx$}
@@ -2186,7 +2186,7 @@ $$\int{\frac{(a^2-x^2)^{3/2}}{x}}=
 \frac{(a^2-x^2)^{3/2}}{3}-a^2\sqrt{a^2-x^2}+
 a^3\sec^{-1}\left|\frac{x}{a}\right|
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 149 of 170
@@ -2269,7 +2269,7 @@ ff:=rootSimp ee
 --R                  3
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.263~~~~~$\displaystyle
 \int{\frac{(a^2-x^2)^{3/2}}{x^2}}~dx$}
@@ -2277,7 +2277,7 @@ $$\int{\frac{(a^2-x^2)^{3/2}}{x^2}}=
 -\frac{(a^2-x^2)^{3/2}}{x}+\frac{3x\sqrt{a^2-x^2}}{2}-
 \frac{3}{2}a^2\ln\left(x+\sqrt{a^2-x^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 155 of 170
@@ -2421,7 +2421,7 @@ hh:=complexNormalize gg
 --R   (10)  0
 --R                                             Type: Expression Complex Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.264~~~~~$\displaystyle
 \int{\frac{(a^2-x^2)^{3/2}}{x^3}}~dx$}
@@ -2429,7 +2429,7 @@ $$\int{\frac{(a^2-x^2)^{3/2}}{x^3}}=
 -\frac{(a^2-x^2)^{3/2}}{2x^2}+\frac{3}{2}\sqrt{a^2-x^2}-
 \frac{3}{2}a\sec^{-1}\left|\frac{x}{a}\right|
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 165 of 170
@@ -2512,7 +2512,7 @@ ff:=rootSimp ee
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum12.input.pamphlet b/src/input/schaum12.input.pamphlet
index 9f05594..408742b 100644
--- a/src/input/schaum12.input.pamphlet
+++ b/src/input/schaum12.input.pamphlet
@@ -18,7 +18,7 @@ $$\int{\frac{1}{ax^2+bx+c}}=
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum12.output
 )set message test on
@@ -264,14 +264,14 @@ ff3:=complexNormalize ee3
 --R   (11)  0
 --R                                             Type: Expression Complex Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.266~~~~~$\displaystyle
 \int{\frac{x~dx}{ax^2+bx+c}}$}
 $$\int{\frac{x}{ax^2+bx+c}}=
 \frac{1}{2a}\ln(ax^2+bx+c)-\frac{b}{2a}\int{\frac{1}{ax^2+bx+c}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 12 of 84
@@ -500,7 +500,7 @@ cc4:=aa.2-bb2
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.267~~~~~$\displaystyle
 \int{\frac{x^2dx}{ax^2+bx+c}}$}
@@ -508,7 +508,7 @@ $$\int{\frac{x^2}{ax^2+bx+c}}=
 \frac{x}{a}-\frac{b}{2a^2}\ln(ax^2+bx+c)+\frac{b^2-2ac}{2a^2}
 \int{\frac{1}{ax^2+bx+c}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 20 of 84
@@ -692,7 +692,7 @@ dd1:=complexNormalize cc1
 --R                2a \|- 4a c + b
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.268~~~~~$\displaystyle
 \int{\frac{x^m~dx}{ax^2+bx+c}}$}
@@ -700,7 +700,7 @@ $$\int{\frac{x^m}{ax^2+bx+c}}=
 \frac{x^{m-1}}{(m-1)a}-\frac{c}{a}\int{\frac{x^{m-2}}{ax^2+bx+c}}-
 \frac{b}{a}\int{\frac{x^{m-1}}{ax^2+bx+c}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 26 of 84     14:268 Axiom cannot compute this integral
@@ -715,7 +715,7 @@ aa:=integrate(x^m/(a*x^2+b*x+c),x)
 --R                                          Type: Union(Expression Integer,...)
 --E 
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.269~~~~~$\displaystyle
 \int{\frac{dx}{x(ax^2+bx+c)}}$}
@@ -723,7 +723,7 @@ $$\int{\frac{1}{x(ax^2+bx+c)}}=
 \frac{1}{2c}\ln\left(\frac{x^2}{ax^2+bx+c}\right)-
 \frac{b}{2c}\int{\frac{1}{ax^2+bx+c}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 27 of 84
@@ -944,7 +944,7 @@ ee1:=complexNormalize dd1
 --R             2c\|- 4a c + b
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.270~~~~~$\displaystyle
 \int{\frac{dx}{x^2(ax^2+bx+c)}}$}
@@ -952,7 +952,7 @@ $$\int{\frac{1}{x^2(ax^2+bx+c)}}=
 \frac{b}{2c^2}\ln\left(\frac{ax^2+bx+c}{x^2}\right)-\frac{1}{cx}+
 \frac{b^2-2ac}{2c^2}\int{\frac{1}{ax^2+bx+c}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 34 of 84
@@ -1181,7 +1181,7 @@ ee1:=complexNormalize dd1
 --R                2c \|- 4a c + b
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.271~~~~~$\displaystyle
 \int{\frac{dx}{x^n(ax^2+bx+c)}}$}
@@ -1190,7 +1190,7 @@ $$\int{\frac{1}{x^n(ax^2+bx+c)}}=
 \frac{b}{c}\int{\frac{1}{x^{n-1}(ax^2+bx+c)}}-
 \frac{a}{c}\int{\frac{1}{x^{x-2}(ax^2+bx+c)}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 41 of 84     14:271 Axiom cannot compute this integral
@@ -1205,7 +1205,7 @@ aa:=integrate(1/(x^n*(a*x^2+b*x+c)),x)
 --R                                          Type: Union(Expression Integer,...)
 --E 
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.272~~~~~$\displaystyle
 \int{\frac{dx}{(ax^2+bx+c)^2}}$}
@@ -1213,7 +1213,7 @@ $$\int{\frac{1}{(ax^2+bx+c)^2}}=
 \frac{2xa+b}{(4ac-b^2)(ax^2+bx+c)}+
 \frac{2a}{4ac-b^2}\int{\frac{1}{ax^2+bx+c}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 42 of 84
@@ -1416,7 +1416,7 @@ cc4:=aa.2-bb2
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.273~~~~~$\displaystyle
 \int{\frac{x~dx}{(ax^2+bx+c)^2}}$}
@@ -1424,7 +1424,7 @@ $$\int{\frac{x}{(ax^2+bx+c)^2}}=
 -\frac{bx+2c}{(4ac-b^2)(ax^2+bx+c)}-
 \frac{b}{4ac-b^2}\int{\frac{1}{ax^2+bx+c}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 50 of 84
@@ -1644,7 +1644,7 @@ ee1:=complexNormalize dd1
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.274~~~~~$\displaystyle
 \int{\frac{x^2~dx}{(ax^2+bx+c)^2}}$}
@@ -1652,7 +1652,7 @@ $$\int{\frac{x^2}{(ax^2+bx+c)^2}}=
 \frac{(b^2-2ac)x+bc}{a(4ac-b^2)(ax^2+bx+c)}+
 \frac{2c}{4ac-b^2}\int{\frac{1}{ax^2+bx+c}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 57 of 84
@@ -1791,7 +1791,7 @@ cc1:=aa.1-bb1
 --R   (5)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.275~~~~~$\displaystyle
 \int{\frac{x^m~dx}{(ax^2+bx+c)^n}}$}
@@ -1805,7 +1805,7 @@ $$
 &\displaystyle-\frac{(n-m)b}{(2n-m-1)a}\int{\frac{x^{m-1}}{(ax^2+bx+c)^n}}
 \end{array}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 62 of 84     14:275 Axiom cannot compute this integral
@@ -1820,7 +1820,7 @@ aa:=integrate(x^m/(a*x^2+b*x+c)^n,x)
 --R                                          Type: Union(Expression Integer,...)
 --E 
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.276~~~~~$\displaystyle
 \int{\frac{x^{2n-1}~dx}{(ax^2+bx+c)^n}}$}
@@ -1833,7 +1833,7 @@ $$\begin{array}{lr}
 &\displaystyle-\frac{b}{a}\int{\frac{x^{2n-2}}{(ax^2+bx+c)^n}}
 \end{array}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 63 of 84     14:276 Axiom cannot compute this integral
@@ -1848,7 +1848,7 @@ aa:=integrate(x^(2*n-1)/(a*x^2+b*x+c)^n,x)
 --R                                          Type: Union(Expression Integer,...)
 --E 
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.277~~~~~$\displaystyle
 \int{\frac{dx}{x(ax^2+bx+c)^2}}$}
@@ -1861,7 +1861,7 @@ $$\begin{array}{lr}
 &\displaystyle+\frac{1}{c}\int{\frac{1}{x(ax^2+bx+c)}}
 \end{array}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 64 of 84
@@ -2311,7 +2311,7 @@ ee1:=complexNormalize dd1
 --R         (4a c  - b c)\|- 4a c + b
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.278~~~~~$\displaystyle
 \int{\frac{dx}{x^2(ax^2+bx+c)^2}}$}
@@ -2324,7 +2324,7 @@ $$\begin{array}{lr}
 &\displaystyle-\frac{2b}{c}\int{\frac{1}{x(ax^2+bx+c)^2}}
 \end{array}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 74 of 84
@@ -2830,7 +2830,7 @@ ee1:=complexNormalize dd1
 --R         (4a c  - b c)\|- 4a c + b
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.279~~~~~$\displaystyle
 \int{\frac{dx}{x^m(ax^2+bx+c)^n}}$}
@@ -2843,7 +2843,7 @@ $$\begin{array}{lr}
 &\displaystyle-\frac{(m+n-2)b}{(m-1)c}\int{\frac{1}{x^{m-1}(ax^2+bx+c)^n}}
 \end{array}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 84 of 84     14:279 Axiom cannot compute this integral
@@ -2860,7 +2860,7 @@ aa:=integrate(1/(x^m*(a*x^2+b*x+c)^n),x)
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum13.input.pamphlet b/src/input/schaum13.input.pamphlet
index abdb68d..28736ee 100644
--- a/src/input/schaum13.input.pamphlet
+++ b/src/input/schaum13.input.pamphlet
@@ -23,7 +23,7 @@ $$\int{\frac{1}{\sqrt{ax^2+bx+c}}}=
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum13.output
 )set message test on
@@ -273,14 +273,14 @@ ee1:=ratDenom dd1
 --R                     a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.281~~~~~$\displaystyle
 \int{\frac{x~dx}{\sqrt{ax^2+bx+c}}}$}
 $$\int{\frac{x}{\sqrt{ax^2+bx+c}}}=
 \frac{\sqrt{ax^2+bx+c}}{a}-\frac{b}{2a}\int{\frac{1}{\sqrt{ax^2+bx+c}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 11 of 131
@@ -557,7 +557,7 @@ dd1:=ratDenom cc4
 --R            a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.282~~~~~$\displaystyle
 \int{\frac{x^2dx}{\sqrt{ax^2+bx+c}}}$}
@@ -565,7 +565,7 @@ $$\int{\frac{x^2}{\sqrt{ax^2+bx+c}}}=
 \frac{2ax-3b}{4a^2}\sqrt{ax^2+bx+c}+\frac{3b^2-4ac}{8a^2}
 \int{\frac{1}{\sqrt{ax^2+bx+c}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 19 of 131
@@ -946,7 +946,7 @@ dd4:=ratDenom cc4
 --R            4a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.283~~~~~$\displaystyle
 \int{\frac{dx}{x\sqrt{ax^2+bx+c}}}$}
@@ -965,7 +965,7 @@ $$\int{\frac{1}{x\sqrt{ax^2+bx+c}}}=
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 27 of 131
@@ -1120,14 +1120,14 @@ ff1:=complexNormalize ee1
 --R                  c
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.284~~~~~$\displaystyle
 \int{\frac{dx}{x^2\sqrt{ax^2+bx+c}}}$}
 $$\int{\frac{1}{x^2\sqrt{ax^2+bx+c}}}=
 -\frac{\sqrt{ax^2+bx+c}}{cx}-\frac{b}{2c}\int{\frac{1}{x\sqrt{ax^2+bx+c}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 37 of 131
@@ -1280,7 +1280,7 @@ ff:=complexNormalize ee
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.285~~~~~$\displaystyle
 \int{\sqrt{ax^2+bx+c}}~dx$}
@@ -1288,7 +1288,7 @@ $$\int{\sqrt{ax^2+bx+c}}=
 \frac{(2ax+b)\sqrt{ax^2+bx+c}}{4a}+
 \frac{4ac-b^2}{8a}\int{\frac{1}{\sqrt{ax^2+bx+c}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 44 of 131
@@ -1607,7 +1607,7 @@ dd4:=ratDenom cc4
 --R          4a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.286~~~~~$\displaystyle
 \int{x\sqrt{ax^2+bx+c}}~dx$}
@@ -1621,7 +1621,7 @@ $$
 &\displaystyle-\frac{b(4ac-b^2)}{16a^2}\int{\frac{1}{\sqrt{ax^2+bx+c}}}
 \end{array}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 53 of 131
@@ -2189,7 +2189,7 @@ dd4:=ratDenom cc4
 --R              24a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.287~~~~~$\displaystyle
 \int{x^2\sqrt{ax^2+bx+c}}~dx$}
@@ -2197,7 +2197,7 @@ $$\int{x^2\sqrt{ax^2+bx+c}}=
 \frac{6ax-5b}{24a^2}(ax^2+bx+c)^{3/2}+
 \frac{5b^2-4ac}{16a^2}\int{\sqrt{ax^2+bx+c}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 62 of 131
@@ -3326,7 +3326,7 @@ dd4:=ratDenom cc4
 --R            24a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.288~~~~~$\displaystyle
 \int{\frac{\sqrt{ax^2+bx+c}}{x}}~dx$}
@@ -3334,7 +3334,7 @@ $$\int{\frac{\sqrt{ax^2+bx+c}}{x}}=
 \sqrt{ax^2+bx+c}+\frac{b}{2}\int{\frac{1}{\sqrt{ax^2+bx+c}}}
 +c\int{\frac{1}{x\sqrt{ax^2+bx+c}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 71 of 131
@@ -3763,7 +3763,7 @@ ff4:=complexNormalize ee4
 --R                       2
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.289~~~~~$\displaystyle
 \int{\frac{\sqrt{ax^2+bx+c}}{x^2}}~dx$}
@@ -3772,7 +3772,7 @@ $$\int{\frac{\sqrt{ax^2+bx+c}}{x^2}}=
 +a\int{\frac{1}{\sqrt{ax^2+bx+c}}}
 +\frac{b}{2}\int{\frac{1}{x\sqrt{ax^2+bx+c}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 83 of 131
@@ -4230,7 +4230,7 @@ ff4:=complexNormalize ee4
 --R                        4c
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.290~~~~~$\displaystyle
 \int{\frac{dx}{(ax^2+bx+c)^{3/2}}}$}
@@ -4238,7 +4238,7 @@ $$
 \int{\frac{1}{(ax^2+bx+c)^{3/2}}}=
 \frac{2(2ax+b)}{(4ac-b^2)\sqrt{ax^2+bx+c}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 95 of 131
@@ -4290,14 +4290,14 @@ dd:=ratDenom cc
 --R        4a c  - b c
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.291~~~~~$\displaystyle
 \int{\frac{x~dx}{(ax^2+bx+c)^{3/2}}}$}
 $$\int{\frac{x}{(ax^2+bx+c)^{3/2}}}=
 \frac{2(bx+2c)}{(b^2-4ac)\sqrt{ax^2+bx+c}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 99 of 131
@@ -4348,7 +4348,7 @@ dd:=ratDenom cc
 --R          4a c - b
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.292~~~~~$\displaystyle
 \int{\frac{x^2~dx}{(ax^2+bx+c)^{3/2}}}$}
@@ -4356,7 +4356,7 @@ $$\int{\frac{x^2}{(ax^2+bx+c)^{3/2}}}=
 \frac{(2b^2-4ac)x+2bc}{a(4ac-b^2)\sqrt{ax^2+bx+c}}
 +\frac{1}{a}\int{\frac{1}{\sqrt{ax^2+bx+c}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 103 of 131
@@ -4632,7 +4632,7 @@ dd4:=ratDenom cc4
 --R        4a c - a b
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.293~~~~~$\displaystyle
 \int{\frac{dx}{x(ax^2+bx+c)^{3/2}}}$}
@@ -4641,7 +4641,7 @@ $$\int{\frac{1}{x(ax^2+bx+c)^{3/2}}}=
 +\frac{1}{c}\int{\frac{1}{x\sqrt{ax^2+bx+c}}}
 -\frac{b}{2c}\int{\frac{1}{(ax^2+bx+c)^{3/2}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 112 of 131
@@ -4825,7 +4825,7 @@ ff:=complexNormalize ee
 --R                     2c
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.294~~~~~$\displaystyle
 \int{\frac{dx}{x^2(ax^2+bx+c)^{3/2}}}$}
@@ -4838,7 +4838,7 @@ $$\begin{array}{rl}
 &\displaystyle-\frac{3b}{2c^2}\int{\frac{1}{x\sqrt{ax^2+bx+c}}}
 \end{array}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 120 of 131
@@ -5076,7 +5076,7 @@ ff:=complexNormalize ee
 --R                       4c
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.295~~~~~$\displaystyle
 \int{(ax^2+bx+c)^{n+1/2}}~dx$}
@@ -5088,7 +5088,7 @@ $$\begin{array}{rl}
 \int{(ax^2+bx+c)^{n-1/2}}
 \end{array}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 128 of 131    14:295 Axiom cannot compute this integral
@@ -5102,7 +5102,7 @@ aa:=integrate((a*x^2+b*x+c)^(n+1/2),x)
 --R        ++
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.296~~~~~$\displaystyle
 \int{x(ax^2+bx+c)^{n+1/2}}~dx$}
@@ -5110,7 +5110,7 @@ $$\int{x(ax^2+bx+c)^{n+1/2}}=
 \frac{(ax^2+bx+c)^{n+3/2}}{a(2n+3)}-
 \frac{b}{2a}\int{(ax^2+bx+c)^{n+1/2}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 129 of 131    14:296 Axiom cannot compute this integral
@@ -5124,7 +5124,7 @@ aa:=integrate(x*(a*x^2+b*x+c)^(n+1/2),x)
 --R        ++
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.297~~~~~$\displaystyle
 \int{\frac{dx}{(ax^2+bx+c)^{n+1/2}}}$}
@@ -5136,7 +5136,7 @@ $$\begin{array}{rl}
 +\frac{8a(n-1)}{(2n-1)(4ac-b^2)}\int{\frac{1}{(ax^2+bx+c)^{n-1/2}}}
 \end{array}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 130 of 131    14:297 Axiom cannot compute this integral
@@ -5152,7 +5152,7 @@ aa:=integrate(1/(a*x^2+b*x+c)^(n+1/2),x)
 --I             (c + %N b + %N a)
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.298~~~~~$\displaystyle
 \int{\frac{dx}{x(ax^2+bx+c)^{n+1/2}}}$}
@@ -5167,7 +5167,7 @@ $$\begin{array}{rl}
 -\frac{b}{2c}\int{\frac{1}{(ax^2+bx+c)^{n+1/2}}}
 \end{array}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 131 of 131    14:298 Axiom cannot compute this integral
@@ -5186,7 +5186,7 @@ aa:=integrate(1/(x*(a*x^2+b*x+c)^(n+1/2)),x)
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum14.input.pamphlet b/src/input/schaum14.input.pamphlet
index dce0ad7..750d83d 100644
--- a/src/input/schaum14.input.pamphlet
+++ b/src/input/schaum14.input.pamphlet
@@ -13,7 +13,7 @@ $$\int{\frac{1}{x^3+a^3}}=
 \frac{1}{6a^2}\ln\frac{(x+a)^2}{x^2-ax+a^2}
 +\frac{1}{a^2\sqrt{3}}\tan^{-1}\frac{2x-a}{a\sqrt{3}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum14.output
 )set message test on
@@ -68,7 +68,7 @@ dd:=expandLog cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.300~~~~~$\displaystyle
 \int{\frac{x~dx}{x^3+a^3}}$}
@@ -76,7 +76,7 @@ $$\int{\frac{x}{x^3+a^3}}=
 \frac{1}{6a}\ln\frac{x^2-ax+a^2}{(x+a)^2}
 +\frac{1}{a\sqrt{3}}\tan^{-1}\frac{2x-a}{a\sqrt{3}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 5 of 39
@@ -125,14 +125,14 @@ dd:=expandLog cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.301~~~~~$\displaystyle
 \int{\frac{x^2~dx}{x^3+a^3}}$}
 $$\int{\frac{x^2}{x^3+a^3}}=
 \frac{1}{3}\ln(x^3+a^3)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 9 of 39
@@ -162,14 +162,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.302~~~~~$\displaystyle
 \int{\frac{dx}{x(x^3+a^3)}}$}
 $$\int{\frac{1}{x(x^3+a^3)}}=
 \frac{1}{3a^3}\ln\left(\frac{x^3}{x^3+a^3}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 12 of 39
@@ -218,7 +218,7 @@ dd:=expandLog cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.303~~~~~$\displaystyle
 \int{\frac{dx}{x^2(x^3+a^3)}}~dx$}
@@ -226,7 +226,7 @@ $$\int{\frac{1}{x^2(x^3+a^3)}}=
 -\frac{1}{a^3x}-\frac{1}{6a^4}\ln\frac{x^2-ax+a^2}{(x+a)^2}
 -\frac{1}{a^4\sqrt{3}}\tan^{-1}\frac{2x-a}{a\sqrt{3}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 15 of 39
@@ -278,7 +278,7 @@ dd:=expandLog cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.304~~~~~$\displaystyle
 \int{\frac{dx}{(x^3+a^3)^2}}$}
@@ -287,7 +287,7 @@ $$\int{\frac{1}{(x^3+a^3)^2}}=
 +\frac{1}{9a^5}\ln\frac{(x+a)^2}{x^2-ax+a^2}
 +\frac{2}{3a^5\sqrt{3}}\tan^{-1}\frac{2x-a}{a\sqrt{3}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 19 of 39
@@ -343,7 +343,7 @@ dd:=expandLog cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.305~~~~~$\displaystyle
 \int{\frac{x~dx}{(x^3+a^3)^2}}$}
@@ -352,7 +352,7 @@ $$\int{\frac{x}{(x^3+a^3)^2}}=
 +\frac{1}{18a^4}\ln\frac{x^2-ax+a^2}{(x+a)^2}
 +\frac{1}{3a^4\sqrt{3}}\tan^{-1}\frac{2x-a}{a\sqrt{3}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 23 of 39
@@ -408,14 +408,14 @@ dd:=expandLog cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.306~~~~~$\displaystyle
 \int{\frac{x^2~dx}{(x^3+a^3)^2}}$}
 $$\int{\frac{x^2}{(x^3+a^3)^2}}=
 -\frac{1}{3(x^3+a^3)}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 27 of 39
@@ -445,14 +445,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.307~~~~~$\displaystyle
 \int{\frac{dx}{x(x^3+a^3)^2}}$}
 $$\int{\frac{1}{x(x^3+a^3)^2}}=
 \frac{1}{3a^3(x^3+a^3)}+\frac{1}{3a^6}\ln\left(\frac{x^3}{x^3+a^3}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 30 of 39
@@ -501,7 +501,7 @@ dd:=expandLog cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.308~~~~~$\displaystyle
 \int{\frac{dx}{x^2(x^3+a^3)^2}}~dx$}
@@ -509,7 +509,7 @@ $$\int{\frac{1}{x^2(x^3+a^3)^2}}=
 -\frac{1}{a^6x}-\frac{x^2}{3a^6(x^3+a^3)}
 -\frac{4}{3a^6}\int{\frac{x}{x^3+a^3}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 34 of 39
@@ -566,14 +566,14 @@ cc:=aa-bb
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.309~~~~~$\displaystyle
 \int{\frac{x^m~dx}{x^3+a^3}}$}
 $$\int{\frac{x^m}{x^3+a^3}}=
 \frac{x^{m-2}}{m-2}-a^3\int{\frac{x^{m-3}}{x^3+a^3}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 38 of 39     14:309 Axiom cannot compute this integral
@@ -587,14 +587,14 @@ aa:=integrate(x^m/(x^3+a^3),x)
 --I             a  + %L
 --R                                          Type: Union(Expression Integer,...)
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.310~~~~~$\displaystyle
 \int{\frac{dx}{x^n(x^3+a^3)}}$}
 $$\int{\frac{1}{x^n(x^3+a^3)}}=
 \frac{-1}{a^3(n-1)x^{n-1}}-\frac{1}{a^3}\int{\frac{1}{x^{n-3}(x^3+a^3)}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 39 of 39     14:310 Axiom cannot compute this integral
@@ -611,7 +611,7 @@ aa:=integrate(1/(x^n*(x^3+a^3)),x)
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum15.input.pamphlet b/src/input/schaum15.input.pamphlet
index d7f65b6..6b406b5 100644
--- a/src/input/schaum15.input.pamphlet
+++ b/src/input/schaum15.input.pamphlet
@@ -14,7 +14,7 @@ $$\int{\frac{1}{x^4+a^4}}=
 \ln\left(\frac{x^2+ax\sqrt{2}+a^2}{x^2-ax\sqrt{2}+a^2}\right)
 -\frac{1}{2a^3\sqrt{2}}\tan^{-1}\frac{ax\sqrt{2}}{x^2-a^2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum15.output
 )set message test on
@@ -250,14 +250,14 @@ hh:=expandLog gg
 --R                            4a \|2
 --R                                             Type: Expression Complex Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.312~~~~~$\displaystyle
 \int{\frac{x~dx}{x^4+a^4}}$}
 $$\int{\frac{x}{x^4+a^4}}=
 \frac{1}{2a^2}\tan^{-1}\frac{x^2}{a^2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 10 of 65
@@ -295,7 +295,7 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.313~~~~~$\displaystyle
 \int{\frac{x^2~dx}{x^4+a^4}}$}
@@ -304,7 +304,7 @@ $$\int{\frac{x^2}{x^4+a^4}}=
 \ln\left(\frac{x^2-ax\sqrt{2}+a^2}{x^2+ax\sqrt{2}+a^2}\right)
 -\frac{1}{2a\sqrt{2}}\tan^{-1}\frac{ax\sqrt{2}}{x^2-a^2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 13 of 65
@@ -547,14 +547,14 @@ gg:=complexNormalize ff
 --R                        4a\|2
 --R                                             Type: Expression Complex Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.314~~~~~$\displaystyle
 \int{\frac{x^3~dx}{x^4+a^4}}$}
 $$\int{\frac{x^3}{x^4+a^4}}=
 \frac{1}{4}\ln(x^4+a^4)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 21 of 65
@@ -584,14 +584,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.315~~~~~$\displaystyle
 \int{\frac{dx}{x(x^4+a^4)}}~dx$}
 $$\int{\frac{1}{x(x^4+a^4)}}=
 \frac{1}{4a^4}\ln\left(\frac{x^4}{x^4+a^4}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 24 of 65
@@ -640,7 +640,7 @@ dd:=expandLog cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.316~~~~~$\displaystyle
 \int{\frac{dx}{x^2(x^4+a^4)}}$}
@@ -649,7 +649,7 @@ $$\int{\frac{1}{x^2(x^4+a^4)}}=
 \ln\left(\frac{x^2-ax\sqrt{2}+a^2}{x^2+ax\sqrt{2}+a^2}\right)
 +\frac{1}{2a^5\sqrt{2}}\tan^{-1}\frac{ax\sqrt{2}}{x^2-a^2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 28 of 65
@@ -911,14 +911,14 @@ gg:=complexNormalize ff
 --R                        4a \|2
 --R                                             Type: Expression Complex Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.317~~~~~$\displaystyle
 \int{\frac{dx}{x^3(x^4+a^4)}}$}
 $$\int{\frac{1}{x^3(x^4+a^4)}}=
 -\frac{1}{2a^4x^2}-\frac{1}{2a^6}\tan^{-1}\frac{x^2}{a^2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 36 of 65
@@ -956,7 +956,7 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.318~~~~~$\displaystyle
 \int{\frac{dx}{(x^4-a^4)}}$}
@@ -964,7 +964,7 @@ $$\int{\frac{1}{(x^4-a^4)}}=
 \frac{1}{4a^3}\ln\left(\frac{x-a}{x+a}\right)
 -\frac{1}{2a^3}\tan^{-1}\frac{x}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 39 of 65
@@ -1010,14 +1010,14 @@ dd:=expandLog cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.319~~~~~$\displaystyle
 \int{\frac{x~dx}{(x^4-a^4)}}$}
 $$\int{\frac{x}{(x^4-a^4)}}=
 \frac{1}{4a^2}\ln\left(\frac{x^2-a^2}{x^2+a^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 43 of 65
@@ -1066,7 +1066,7 @@ dd:=expandLog cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.320~~~~~$\displaystyle
 \int{\frac{x^2~dx}{x^4-a^4}}$}
@@ -1074,7 +1074,7 @@ $$\int{\frac{x^2}{x^4-a^4}}=
 \frac{1}{4a}\ln\left(\frac{x-a}{x+a}\right)
 +\frac{1}{2a}\tan^{-1}\frac{x}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 47 of 65
@@ -1117,14 +1117,14 @@ dd:=expandLog cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.321~~~~~$\displaystyle
 \int{\frac{x^3~dx}{x^4-a^4}}$}
 $$\int{\frac{x^3}{x^4-a^4}}=
 \frac{1}{4}\ln(x^4-a^4)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 51 of 65
@@ -1154,14 +1154,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.322~~~~~$\displaystyle
 \int{\frac{dx}{x(x^4-a^4)}}$}
 $$\int{\frac{1}{x(x^4-a^4)}}=
 \frac{1}{4a^4}\ln\left(\frac{x^4-a^4}{x^4}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 54 of 65
@@ -1210,7 +1210,7 @@ dd:=expandLog cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.323~~~~~$\displaystyle
 \int{\frac{dx}{x^2(x^4-a^4)}}$}
@@ -1218,7 +1218,7 @@ $$\int{\frac{1}{x^2(x^4-a^4)}}=
 \frac{1}{a^4x}+\frac{1}{4a^5}\ln\left(\frac{x-a}{x+a}\right)
 +\frac{1}{2a^5}\tan^{-1}\frac{x}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 58 of 65
@@ -1264,14 +1264,14 @@ dd:=expandLog cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.324~~~~~$\displaystyle
 \int{\frac{dx}{x^3(x^4-a^4)}}$}
 $$\int{\frac{1}{x^3(x^4-a^4)}}=
 \frac{1}{2a^4x^2}+\frac{1}{4a^6}\ln\left(\frac{x^2-a^2}{x^2+a^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 62 of 65
@@ -1322,7 +1322,7 @@ dd:=expandLog cc
 --E
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum16.input.pamphlet b/src/input/schaum16.input.pamphlet
index d0aeed8..36ab4b9 100644
--- a/src/input/schaum16.input.pamphlet
+++ b/src/input/schaum16.input.pamphlet
@@ -12,7 +12,7 @@
 $$\int{\frac{1}{x(x^n+a^n)}}=
 \frac{1}{na^n}\ln\frac{x^n}{x^n+a^n}
 $$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum16.output
 )set message test on
@@ -75,14 +75,14 @@ ee:=complexNormalize dd
 --R   (5)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.326~~~~~$\displaystyle
 \int{\frac{x^{n-1}~dx}{x^n+a^n}}$}
 $$\int{\frac{x^{n-1}}{x^n+a^n}}=
 \frac{1}{n}\ln(x^n+a^n)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 8 of 45
@@ -130,7 +130,7 @@ dd:=explog cc
 --R   (5)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.327~~~~~$\displaystyle
 \int{\frac{x^m~dx}{(x^n+a^n)^r}}$}
@@ -138,7 +138,7 @@ $$\int{\frac{x^m}{(x^n+a^n)^r}}=
 \int{\frac{x^{m-n}}{(x^n+a^n)^{r-1}}}
 -a^n\int{\frac{x^{m-n}}{(x^n+a^n)^r}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 13 of 45     14:327 Axiom cannot compute this integral
@@ -152,7 +152,7 @@ aa:=integrate(x^m/(x^n+a^n)^r,x)
 --I             (a  + %J )
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.328~~~~~$\displaystyle
 \int{\frac{dx}{x^m(x^n+a^n)^r}}$}
@@ -160,7 +160,7 @@ $$\int{\frac{1}{x^m(x^n+a^n)^r}}=
 \frac{1}{a^n}\int{\frac{1}{x^m(x^n+a^n)^{r-1}}}
 -\frac{1}{a^n}\int{\frac{1}{x^{m-n}(x^n+a^n)^r}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 14 of 45     14:328 Axiom cannot compute this integral
@@ -174,7 +174,7 @@ aa:=integrate(1/(x^m*(x^n+a^n)^r),x)
 --I             %J (a  + %J )
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.329~~~~~$\displaystyle
 \int{\frac{dx}{x\sqrt{x^n+a^n}}}$}
@@ -182,7 +182,7 @@ $$\int{\frac{1}{x\sqrt{x^n+a^n}}}=
 \frac{1}{n\sqrt{a^n}}\ln\left(\frac{\sqrt{x^n+a^n}-\sqrt{a^n}}
 {\sqrt{x^n+a^n}+\sqrt{a^n}}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 15 of 45
@@ -320,14 +320,14 @@ gg1:=explog ff1
 --R               2n\|a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.330~~~~~$\displaystyle
 \int{\frac{dx}{x(x^n-a^n)}}$}
 $$\int{\frac{1}{x(x^n-a^n)}}=
 \frac{1}{na^n}\ln\left(\frac{x^n-a^n}{x^n}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 23 of 45
@@ -414,14 +414,14 @@ ff:=logpow ee
 --R   (8)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.331~~~~~$\displaystyle
 \int{\frac{x^{n-1}dx}{x^n-a^n}}$}
 $$\int{\frac{x^{n-1}}{x^n-a^n}}=
 \frac{1}{n}\ln(x^n-a^n)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 31 of 45
@@ -470,7 +470,7 @@ dd:=explog cc
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.332~~~~~$\displaystyle
 \int{\frac{x^m~dx}{(x^n-a^n)^r}}$}
@@ -478,7 +478,7 @@ $$\int{\frac{x^m}{(x^n-a^n)^r}}=
 a^n\int{\frac{x^{m-n}}{(x^n-a^n)^r}}
 +\int{\frac{x^{m-n}}{(x^n-a^n)^{r-1}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 36 of 45     14:332 Axiom cannot compute this integral
@@ -492,7 +492,7 @@ aa:=integrate(x^m/(x^n-a^n)^r,x)
 --I             (- a  + %J )
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.333~~~~~$\displaystyle
 \int{\frac{dx}{x^m(x^n-a^n)^r}}$}
@@ -500,7 +500,7 @@ $$\int{\frac{1}{x^m(x^n-a^n)^r}}=
 \frac{1}{a^n}\int{\frac{1}{x^{m-n}(x^n-a^n)^r}}
 -\frac{1}{a^n}\int{\frac{1}{x^m(x^n-a^n)^{r-1}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 37 of 45     14:333 Axiom cannot compute this integral
@@ -514,14 +514,14 @@ aa:=integrate(1/(x^m*(x^n-a^n)^r),x)
 --I             %J (- a  + %J )
 --R                                          Type: Union(Expression Integer,...)
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.334~~~~~$\displaystyle
 \int{\frac{dx}{x\sqrt{x^n-a^n}}}$}
 $$\int{\frac{1}{x\sqrt{x^n-a^n}}}=
 \frac{2}{n\sqrt{a^n}}\cos^{-1}\sqrt{\frac{a^n}{x^n}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 38 of 45
@@ -607,7 +607,7 @@ cc2:=aa.2-bb
 --R                            n\|a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.335~~~~~$\displaystyle
 \int{\frac{x^{p-1}~dx}{x^{2m}+a^{2m}}}$ provided $0<p\le 2m$}
@@ -621,7 +621,7 @@ $$\begin{array}{rl}
 \ln\left(x^2+2ax\cos\frac{(2k-1)\pi}{2m}+a^2\right)}
 \end{array}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 42 of 45     14:335 Axiom cannot compute this integral
@@ -635,7 +635,7 @@ aa:=integrate(x^(p-1)/(x^(2*m)+a^(2*m)),x)
 --I             a   + %J
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.336~~~~~$\displaystyle
 \int{\frac{x^{p-1}dx}{x^{2m}-a^{2m}}}$ provided $0<p\le 2m$}
@@ -651,7 +651,7 @@ $$\begin{array}{rl}
 &\displaystyle+\frac{1}{2ma^{2m-p}}\left(\ln(x-a)+(-1)^p\ln(x+a)\right)
 \end{array}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 43 of 45     14:336 Axiom cannot compute this integral
@@ -665,7 +665,7 @@ aa:=integrate(x^(p-1)/(x^(2*m)-a^(2*m)),x)
 --I               a   - %J
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.337~~~~~$\displaystyle
 \int{\frac{x^{p-1}~dx}{x^{2m+1}+a^{2m+1}}}$ provided $0<p\le 2m+1$}
@@ -685,7 +685,7 @@ $$\begin{array}{rl}
 &\displaystyle+\frac{(-1)^{p-1}\ln(x+a)}{(2m+1)a^{2m-p+1}}
 \end{array}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 44 of 45     14:337 Axiom cannot compute this integral
@@ -699,7 +699,7 @@ aa:=integrate(x^(p-1)/(x^(2*m+1)+a^(2*m+1)),x)
 --I             a       + %J
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.338~~~~~$\displaystyle
 \int{\frac{x^{p-1}~dx}{x^{2m+1}-a^{2m+1}}}$ provided $0<p\le 2m+1$}
@@ -721,7 +721,7 @@ $$\begin{array}{rl}
 +\frac{\ln(x-a)}{(2m+1)a^{2m-p+1}}
 \end{array}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 45 of 45     14:338 Axiom cannot compute this integral
@@ -738,7 +738,7 @@ aa:=integrate(x^(p-1)/(x^(2*m+1)-a^(2*m+1)),x)
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum17.input.pamphlet b/src/input/schaum17.input.pamphlet
index f1f4e17..602937e 100644
--- a/src/input/schaum17.input.pamphlet
+++ b/src/input/schaum17.input.pamphlet
@@ -12,7 +12,7 @@
 $$\int{\sin ax}=
 -\frac{\cos{ax}}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum17.output
 )set message test on
@@ -44,14 +44,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.340~~~~~$\displaystyle
 \int{x\sin{ax}~dx}$}
 $$\int{x\sin{ax}}=
 \frac{\sin{ax}}{a^2}-\frac{x\cos{ax}}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 4 of 136
@@ -81,14 +81,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.341~~~~~$\displaystyle
 \int{x^2\sin{ax}~dx}$}
 $$\int{x^2\sin{ax}}=
 \frac{2x}{a^2}\sin{ax}+\left(\frac{2}{a^3}-\frac{x^2}{a}\right)\cos{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 7 of 136
@@ -120,7 +120,7 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.342~~~~~$\displaystyle
 \int{x^3\sin{ax}~dx}$}
@@ -128,7 +128,7 @@ $$\int{x^3\sin{ax}}=
 \left(\frac{3x^2}{a^2}-\frac{6}{a^4}\right)\sin{ax}
 +\left(\frac{6x}{a^3}-\frac{x^3}{a}\right)\cos{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 10 of 136
@@ -160,14 +160,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.343~~~~~$\displaystyle
 \int{\frac{\sin{ax}}{x}}~dx$}
 $$\int{\frac{\sin{ax}}{x}}=
 ax-\frac{(ax)^3}{3\cdot 3!}+\frac{(ax)^5}{5\cdot 5!}-\cdots
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 13 of 136     14:343 Schaums and Axiom agree by definition
@@ -177,14 +177,14 @@ aa:=integrate(sin(x)/x,x)
 --R   (1)  Si(x)
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.344~~~~~$\displaystyle
 \int{\frac{\sin{ax}}{x^2}}~dx$}
 $$\int{\frac{\sin{ax}}{x^2}}=
 -\frac{\sin{ax}}{x}+a\int{\frac{\cos{ax}}{x}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 14 of 136     14:344 Axiom cannot compute this integral
@@ -198,7 +198,7 @@ aa:=integrate(sin(a*x)/x^2,x)
 --I                %I
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.345~~~~~$\displaystyle
 \int{\frac{dx}{\sin{ax}}}$}
@@ -206,7 +206,7 @@ $$\int{\frac{1}{\sin{ax}}}=
 \frac{1}{a}\ln(\csc{ax}-\cot{ax})=
 \frac{1}{a}\ln\tan\frac{ax}{2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 15 of 136
@@ -249,7 +249,7 @@ dd:=complexNormalize cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.346~~~~~$\displaystyle
 \int{\frac{x~dx}{\sin{ax}}}$}
@@ -258,7 +258,7 @@ $$\int{\frac{x}{\sin{ax}}}=
 ax+\frac{(ax)^3}{18}+\frac{7(ax)^5}{1800}+\cdots+
 \frac{2(2^{2n-1}-1)B_n(ax)^{2n+1}}{(2n+1)!}+\cdots\right\}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 19 of 136     14:346 Axiom cannot compute this integral
@@ -271,14 +271,14 @@ aa:=integrate(x/sin(a*x),x)
 --I        ++   sin(%I a)
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.347~~~~~$\displaystyle
 \int{\sin^2{ax}}~dx$}
 $$\int{\sin^2{ax}}=
 \frac{x}{2}-\frac{\sin{2ax}}{4a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 20 of 136
@@ -315,14 +315,14 @@ dd:=complexNormalize cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.348~~~~~$\displaystyle
 \int{x\sin^2{ax}}~dx$}
 $$\int{x\sin^2{ax}}=
 \frac{x^2}{4}-\frac{x\sin{2ax}}{4a}-\frac{\cos{2ax}}{8a^2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 24 of 136
@@ -368,14 +368,14 @@ dd:=complexNormalize cc
 --R          8a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.349~~~~~$\displaystyle
 \int{\sin^3{ax}}~dx$}
 $$\int{\sin^3{ax}}=
 -\frac{\cos{ax}}{a}+\frac{\cos^3{ax}}{3a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 28 of 136
@@ -405,14 +405,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.350~~~~~$\displaystyle
 \int{\sin^4{ax}}~dx$}
 $$\int{\sin^4{ax}}=
 \frac{3x}{8}-\frac{\sin{2ax}}{4a}+\frac{\sin{4ax}}{32a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 31 of 136
@@ -451,14 +451,14 @@ dd:=complexNormalize cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.351~~~~~$\displaystyle
 \int{\frac{dx}{\sin^2{ax}}}$}
 $$\int{\frac{1}{\sin^2{ax}}}=
 -\frac{1}{a}\cot{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 35 of 136
@@ -495,14 +495,14 @@ dd:=complexNormalize cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.352~~~~~$\displaystyle
 \int{\frac{dx}{\sin^3{ax}}}$}
 $$\int{\frac{1}{\sin^3{ax}}}=
 -\frac{\cos{ax}}{2a\sin^2{ax}}+\frac{1}{2a}\ln\tan\frac{ax}{2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 39 of 136
@@ -577,14 +577,14 @@ ee:=complexNormalize dd
 --R   (5)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.353~~~~~$\displaystyle
 \int{\sin{px}\sin{qx}}~dx$}
 $$\int{\sin{px}\sin{qx}}=
 \frac{\sin{(p-q)x}}{2(p-q)}-\frac{\sin{(p+q)x}}{2(p+q)}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 44 of 136
@@ -627,14 +627,14 @@ dd:=complexNormalize cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.354~~~~~$\displaystyle
 \int{\frac{dx}{1-\sin{ax}}}$}
 $$\int{\frac{1}{1-\sin{ax}}}=
 \frac{1}{a}\tan\left(\frac{\pi}{4}+\frac{ax}{2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 48 of 136
@@ -677,7 +677,7 @@ dd:=complexNormalize cc
 --R        a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.355~~~~~$\displaystyle
 \int{\frac{x~dx}{1-\sin{ax}}}$}
@@ -685,7 +685,7 @@ $$\int{\frac{x}{1-\sin{ax}}}=
 \frac{x}{a}\tan\left(\frac{\pi}{4}+\frac{ax}{2}\right)
 +\frac{2}{a^2}\ln~\sin\left(\frac{\pi}{4}-\frac{ax}{2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 52 of 136
@@ -745,14 +745,14 @@ cc:=aa-bb
 --R     a sin(a x) - a cos(a x) - a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.356~~~~~$\displaystyle
 \int{\frac{dx}{1+\sin{ax}}}$}
 $$\int{\frac{1}{1+\sin{ax}}}=
 -\frac{1}{a}\tan\left(\frac{\pi}{4}-\frac{ax}{2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 55 of 136
@@ -804,7 +804,7 @@ dd:=tanrule cc
 --R                    a cos(4)sin(a x) + a cos(4)cos(a x) + a cos(4)
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.357~~~~~$\displaystyle
 \int{\frac{x~dx}{1+\sin{ax}}}$}
@@ -812,7 +812,7 @@ $$\int{\frac{x}{1+\sin{ax}}}=
 -\frac{x}{a}\tan\left(\frac{\pi}{4}-\frac{ax}{2}\right)
 +\frac{2}{a^2}\ln~\sin\left(\frac{\pi}{4}+\frac{ax}{2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 60 of 136
@@ -874,7 +874,7 @@ cc:=aa-bb
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.358~~~~~$\displaystyle
 \int{\frac{dx}{(1-\sin{ax})^2}}$}
@@ -882,7 +882,7 @@ $$\int{\frac{1}{(1-\sin{ax})^2}}=
 \frac{1}{2a}\tan\left(\frac{\pi}{4}+\frac{ax}{2}\right)
 +\frac{1}{6a}\tan^3\left(\frac{\pi}{4}+\frac{ax}{2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 63 of 136
@@ -1122,7 +1122,7 @@ complexNormalize %
 --R         3a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.359~~~~~$\displaystyle
 \int{\frac{dx}{(1+\sin{ax})^2}}$}
@@ -1130,7 +1130,7 @@ $$\int{\frac{1}{(1+\sin{ax})^2}}=
 -\frac{1}{2a}\tan\left(\frac{\pi}{4}-\frac{ax}{2}\right)
 -\frac{1}{6a}\tan^3\left(\frac{\pi}{4}-\frac{ax}{2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 73 of 136
@@ -1379,7 +1379,7 @@ complexNormalize %
 --R           3a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.360~~~~~$\displaystyle
 \int{\frac{dx}{p+q\sin{ax}}}$}
@@ -1396,7 +1396,7 @@ $$\int{\frac{1}{p+q\sin{ax}}}=
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 83 of 136
@@ -1801,7 +1801,7 @@ complexNormalize hh2
 --R   (14)  0
 --R                                    Type: Expression Complex Fraction Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.361~~~~~$\displaystyle
 \int{\frac{dx}{(p+q\sin{ax})^2}}$}
@@ -1809,7 +1809,7 @@ $$\int{\frac{1}{(p+q\sin{ax})^2}}=
 \frac{q\cos{ax}}{a(p^2-q^2)(p+q\sin{ax})}
 +\frac{p}{p^2-q^2}\int{\frac{1}{p+q\sin{ax}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 97 of 136
@@ -2057,14 +2057,14 @@ cc4:=aa.2-bb2
 --R          a p q  - a p
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.362~~~~~$\displaystyle
 \int{\frac{dx}{p^2+q^2\sin^2{ax}}}$}
 $$\int{\frac{1}{p^2+q^2\sin^2{ax}}}=
 \frac{1}{ap\sqrt{p^2+q^2}}\tan^{-1}\frac{\sqrt{p^2+q^2}\tan{ax}}{p}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 105 of 136
@@ -2468,7 +2468,7 @@ ii:=complexNormalize hh
 --R                           2a p q  + 2a p
 --R                                             Type: Expression Complex Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.363~~~~~$\displaystyle
 \int{\frac{dx}{p^2-q^2\sin^2{ax}}}$}
@@ -2484,7 +2484,7 @@ $$\int{\frac{1}{p^2-q^2\sin^2{ax}}}=
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 116 of 136
@@ -2975,7 +2975,7 @@ ii2:=complexNormalize hh2
 --R                               2a p q  - 2a p
 --R                                             Type: Expression Complex Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.364~~~~~$\displaystyle
 \int{x^m\sin{ax}}~dx$}
@@ -2983,7 +2983,7 @@ $$\int{x^m\sin{ax}}=
 -\frac{x^m\cos{ax}}{a}+\frac{mx^{m-1}\sin{ax}}{a^2}
 -\frac{m(m-1)}{a^2}\int{x^{m-2}\sin{ax}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 132 of 136    14:364 Axiom cannot compute this integral
@@ -2996,14 +2996,14 @@ aa:=integrate(x^m*sin(a*x),x)
 --R        ++
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.365~~~~~$\displaystyle
 \int{\frac{\sin{ax}}{x^n}}~dx$}
 $$\int{\frac{\sin{ax}}{x^n}}=
 -\frac{\sin{ax}}{(n-1)x^{n-1}}+\frac{a}{n-1}\int{\frac{\cos{ax}}{x^{n-1}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 133 of 136    14:365 Axiom cannot compute this integral
@@ -3017,14 +3017,14 @@ aa:=integrate(sin(a*x)/x^n,x)
 --I                %I
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.366~~~~~$\displaystyle
 \int{\sin^n{ax}}~dx$}
 $$\int{\sin^n{ax}}=
 -\frac{\sin^{n-1}{ax}\cos{ax}}{an}+\frac{n-1}{n}\int{\sin^{n-2}{ax}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 134 of 136    14:366 Axiom cannot compute this integral
@@ -3037,7 +3037,7 @@ aa:=integrate(sin(a*x)^n,x)
 --R        ++
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.367~~~~~$\displaystyle
 \int{\frac{1}{\sin^n{ax}}}~dx$}
@@ -3045,7 +3045,7 @@ $$\int{\frac{1}{\sin^n{ax}}}=
 \frac{-\cos{ax}}{a(n-1)\sin^{n-1}{ax}}
 +\frac{n-2}{n-1}\int{\frac{1}{\sin^{n-2}{ax}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 135 of 136    14:367 Axiom cannot compute this integral
@@ -3059,7 +3059,7 @@ aa:=integrate(1/(sin(a*x))^n,x)
 --I             sin(%I a)
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.368~~~~~$\displaystyle
 \int{\frac{x~dx}{sin^n{ax}}}$}
@@ -3068,7 +3068,7 @@ $$\int{\frac{x}{sin^n{ax}}}=
 -\frac{1}{a^2(n-1)(n-2)\sin^{n-2}{ax}}
 +\frac{n-2}{n-1}\int{\frac{x}{\sin^{n-2}{ax}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 136 of 136    14:368 Axiom cannot compute this integral
@@ -3085,7 +3085,7 @@ aa:=integrate(x/sin(a*x)^n,x)
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum18.input.pamphlet b/src/input/schaum18.input.pamphlet
index 741c1bc..58ee648 100644
--- a/src/input/schaum18.input.pamphlet
+++ b/src/input/schaum18.input.pamphlet
@@ -12,7 +12,7 @@
 $$\int{\cos ax}=
 \frac{\sin{ax}}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum18.output
 )set message test on
@@ -44,14 +44,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.370~~~~~$\displaystyle
 \int{x\cos{ax}~dx}$}
 $$\int{x\cos{ax}}=
 \frac{\cos{ax}}{a^2}+\frac{x\sin{ax}}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 4 of 127
@@ -81,14 +81,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.371~~~~~$\displaystyle
 \int{x^2\cos{ax}~dx}$}
 $$\int{x^2\cos{ax}}=
 \frac{2x}{a^2}\cos{ax}+\left(\frac{x^2}{a}-\frac{2}{a^3}\right)\sin{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 7 of 127
@@ -120,7 +120,7 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.372~~~~~$\displaystyle
 \int{x^3\cos{ax}~dx}$}
@@ -128,7 +128,7 @@ $$\int{x^3\cos{ax}}=
 \left(\frac{3x^2}{a^2}-\frac{6}{a^4}\right)\cos{ax}
 +\left(\frac{x^3}{a}-\frac{6x}{a^3}\right)\sin{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 10 of 127
@@ -160,7 +160,7 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.373~~~~~$\displaystyle
 \int{\frac{\cos{ax}}{x}}~dx$}
@@ -168,7 +168,7 @@ $$\int{\frac{\cos{ax}}{x}}=
 \ln{x}-\frac{(ax)^2}{2\cdot 2!}+\frac{(ax)^4}{4\cdot 4!}
 -\frac{(ax)^6}{6\cdot 6!}+\cdots
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 13 of 127     14:373 Schaums and Axiom agree by definition
@@ -178,14 +178,14 @@ aa:=integrate(cos(x)/x,x)
 --R   (1)  Ci(x)
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.374~~~~~$\displaystyle
 \int{\frac{\cos{ax}}{x^2}}~dx$}
 $$\int{\frac{\cos{ax}}{x^2}}=
 -\frac{\cos{ax}}{x}-a\int{\frac{\sin{ax}}{x}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 14 of 127     14:374 Axiom cannot compute this integral
@@ -199,7 +199,7 @@ aa:=integrate(cos(a*x)/x^2,x)
 --I                %I
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.375~~~~~$\displaystyle
 \int{\frac{dx}{\cos{ax}}}$}
@@ -207,7 +207,7 @@ $$\int{\frac{1}{\cos{ax}}}=
 \frac{1}{a}\ln(\sec{ax}-\tan{ax})=
 \frac{1}{a}\ln\tan\left(\frac{\pi}{4}+\frac{ax}{2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 15 of 127
@@ -283,7 +283,7 @@ complexNormalize cc1
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.376~~~~~$\displaystyle
 \int{\frac{x~dx}{\cos{ax}}}$}
@@ -293,7 +293,7 @@ $$\int{\frac{x}{\cos{ax}}}=
 \frac{E_n(ax)^{2n+2}}{(2n+2)(2n)!}+\cdots
 \right\}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 21 of 127     14:376 Axiom cannot compute this integral
@@ -306,14 +306,14 @@ aa:=integrate(x/cos(a*x),x)
 --I        ++   cos(%I a)
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.377~~~~~$\displaystyle
 \int{\cos^2{ax}}~dx$}
 $$\int{\cos^2{ax}}=
 \frac{x}{2}+\frac{\sin{2ax}}{4a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 22 of 127
@@ -360,14 +360,14 @@ dd:=cossinrule cc
 --R   (5)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.378~~~~~$\displaystyle
 \int{x\cos^2{ax}}~dx$}
 $$\int{x\cos^2{ax}}=
 \frac{x^2}{4}+\frac{x\sin{2ax}}{4a}+\frac{\cos{2ax}}{8a^2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 27 of 127
@@ -464,14 +464,14 @@ ff:=cossqrrule1 ee
 --R        8a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.379~~~~~$\displaystyle
 \int{\cos^3{ax}}~dx$}
 $$\int{\cos^3{ax}}=
 \frac{\sin{ax}}{a}-\frac{\sin^3{ax}}{3a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 36 of 127
@@ -519,14 +519,14 @@ dd:=cossqrrule cc
 --R   (5)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.380~~~~~$\displaystyle
 \int{\cos^4{ax}}~dx$}
 $$\int{\cos^4{ax}}=
 \frac{3x}{8}+\frac{\sin{2ax}}{4a}+\frac{\sin{4ax}}{32a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 41 of 127
@@ -565,14 +565,14 @@ complexNormalize cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.381~~~~~$\displaystyle
 \int{\frac{dx}{\cos^2{ax}}}$}
 $$\int{\frac{1}{\cos^2{ax}}}=
 \frac{\tan{ax}}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 45 of 127
@@ -618,7 +618,7 @@ dd:=tanrule cc
 --R   (5)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.382~~~~~$\displaystyle
 \int{\frac{dx}{\cos^3{ax}}}$}
@@ -626,7 +626,7 @@ $$\int{\frac{1}{\cos^3{ax}}}=
 \frac{\sin{ax}}{2a\cos^2{ax}}
 +\frac{1}{2a}\ln\tan\left(\frac{\pi}{4}+\frac{ax}{2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 50 of 127
@@ -683,14 +683,14 @@ complexNormalize cc
 --R           2a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.383~~~~~$\displaystyle
 \int{\cos{px}\cos{qx}}~dx$}
 $$\int{\cos{ax}\cos{px}}=
 \frac{\sin{(a-p)x}}{2(a-p)}+\frac{\sin{(a+p)x}}{2(a+p)}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 54 of 127
@@ -732,14 +732,14 @@ complexNormalize cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.384~~~~~$\displaystyle
 \int{\frac{dx}{1-\cos{ax}}}$}
 $$\int{\frac{1}{1-\cos{ax}}}=
 -\frac{1}{a}\cot\frac{ax}{2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 58 of 127
@@ -780,7 +780,7 @@ dd:=complexNormalize cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.385~~~~~$\displaystyle
 \int{\frac{x~dx}{1-\cos{ax}}}$}
@@ -788,7 +788,7 @@ $$\int{\frac{x}{1-\cos{ax}}}=
 -\frac{x}{a}\cot\frac{ax}{2}
 +\frac{2}{a^2}\ln~\sin\frac{ax}{2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 62 of 127
@@ -892,14 +892,14 @@ complexNormalize ee
 --R   (7)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.386~~~~~$\displaystyle
 \int{\frac{dx}{1+\cos{ax}}}$}
 $$\int{\frac{1}{1+\cos{ax}}}=
 \frac{1}{a}\tan\frac{ax}{2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 69 of 127
@@ -939,7 +939,7 @@ complexNormalize cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.387~~~~~$\displaystyle
 \int{\frac{x~dx}{1+\cos{ax}}}$}
@@ -947,7 +947,7 @@ $$\int{\frac{x}{1+\cos{ax}}}=
 \frac{x}{a}\tan\frac{ax}{2}
 +\frac{2}{a^2}\ln~\cos\frac{ax}{2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 73 of 127
@@ -1015,7 +1015,7 @@ complexNormalize dd
 --R   (5)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.388~~~~~$\displaystyle
 \int{\frac{dx}{(1-\cos{ax})^2}}$}
@@ -1023,7 +1023,7 @@ $$\int{\frac{1}{(1-\cos{ax})^2}}=
 -\frac{1}{2a}\cot\frac{ax}{2}
 -\frac{1}{6a}\cot^3\frac{ax}{2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 78 of 127
@@ -1068,7 +1068,7 @@ complexNormalize cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.389~~~~~$\displaystyle
 \int{\frac{dx}{(1+\cos{ax})^2}}$}
@@ -1076,7 +1076,7 @@ $$\int{\frac{1}{(1+\cos{ax})^2}}=
 \frac{1}{2a}\tan\frac{ax}{2}
 +\frac{1}{6a}\tan^3\frac{ax}{2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 82 of 127
@@ -1124,7 +1124,7 @@ complexNormalize cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.390~~~~~$\displaystyle
 \int{\frac{dx}{p+q\cos{ax}}}$}
@@ -1142,7 +1142,7 @@ $$\int{\frac{1}{p+q\cos{ax}}}=
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 86 of 127
@@ -1294,7 +1294,7 @@ cc4:=aa.2-bb2
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.391~~~~~$\displaystyle
 \int{\frac{dx}{(p+q\cos{ax})^2}}$}
@@ -1302,7 +1302,7 @@ $$\int{\frac{1}{(p+q\cos{ax})^2}}=
 \frac{q\sin{ax}}{a(q^2-p^2)(p+q\cos{ax})}
 -\frac{p}{q^2-p^2}\int{\frac{1}{p+q\cos{ax}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 93 of 127
@@ -1482,14 +1482,14 @@ cc4:=aa.2-bb2
 --R   (8)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.392~~~~~$\displaystyle
 \int{\frac{dx}{p^2+q^2\cos^2{ax}}}$}
 $$\int{\frac{1}{p^2+q^2\cos^2{ax}}}=
 \frac{1}{ap\sqrt{p^2+q^2}}\tan^{-1}\frac{p\tan{ax}}{\sqrt{p^2+q^2}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 101 of 127
@@ -1752,7 +1752,7 @@ complexNormalize ff
 --R                                    Type: Expression Complex Fraction Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.393~~~~~$\displaystyle
 \int{\frac{dx}{p^2-q^2\cos^2{ax}}}$}
@@ -1768,7 +1768,7 @@ $$\int{\frac{1}{p^2-q^2\cos^2{ax}}}=
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 109 of 127
@@ -2190,7 +2190,7 @@ hh2:=complexNormalize gg2
 --R     a p q  - a p
 --R                                    Type: Expression Complex Fraction Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.394~~~~~$\displaystyle
 \int{x^m\cos{ax}}~dx$}
@@ -2198,7 +2198,7 @@ $$\int{x^m\cos{ax}}=
 \frac{x^m\sin{ax}}{a}+\frac{mx^{m-1}}{a^2}\cos{ax}
 -\frac{m(m-1)}{a^2}\int{x^{m-2}\cos{ax}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 123 of 127    14:394 Axiom cannot compute this integral
@@ -2211,14 +2211,14 @@ aa:=integrate(x^m*cos(a*x),x)
 --R        ++
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.395~~~~~$\displaystyle
 \int{\frac{\cos{ax}}{x^n}}~dx$}
 $$\int{\frac{\cos{ax}}{x^n}}=
 -\frac{\cos{ax}}{(n-1)x^{n-1}}-\frac{a}{n-1}\int{\frac{\sin{ax}}{x^{n-1}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 124 of 127    14:395 Axiom cannot compute this integral
@@ -2232,14 +2232,14 @@ aa:=integrate(cos(a*x)/x^n,x)
 --I                %I
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.396~~~~~$\displaystyle
 \int{\cos^n{ax}}~dx$}
 $$\int{\cos^n{ax}}=
 \frac{\sin{ax}\cos^{n-1}{ax}}{an}+\frac{n-1}{n}\int{\cos^{n-2}{ax}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 125 of 127    14:396 Axiom cannot compute this integral
@@ -2252,7 +2252,7 @@ aa:=integrate(cos(a*x)^n,x)
 --R        ++
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.397~~~~~$\displaystyle
 \int{\frac{1}{\cos^n{ax}}}~dx$}
@@ -2260,7 +2260,7 @@ $$\int{\frac{1}{\cos^n{ax}}}=
 \frac{\sin{ax}}{a(n-1)\cos^{n-1}{ax}}
 +\frac{n-2}{n-1}\int{\frac{1}{\cos^{n-2}{ax}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 126 of 127    14:397 Axiom cannot compute this integral
@@ -2274,7 +2274,7 @@ aa:=integrate(1/(cos(a*x))^n,x)
 --I             cos(%I a)
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.398~~~~~$\displaystyle
 \int{\frac{x~dx}{cos^n{ax}}}$}
@@ -2283,7 +2283,7 @@ $$\int{\frac{x}{cos^n{ax}}}=
 -\frac{1}{a^2(n-1)(n-2)\cos^{n-2}{ax}}
 +\frac{n-2}{n-1}\int{\frac{x}{\cos^{n-2}{ax}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 127 of 127    14:398 Axiom cannot compute this integral
@@ -2300,7 +2300,7 @@ aa:=integrate(x/cos(a*x)^n,x)
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum19.input.pamphlet b/src/input/schaum19.input.pamphlet
index d57b3c4..05f19ac 100644
--- a/src/input/schaum19.input.pamphlet
+++ b/src/input/schaum19.input.pamphlet
@@ -12,7 +12,7 @@
 $$\int{\sin{ax}\cos{ax}}=
 \frac{\sin^2{ax}}{2a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum19.output
 )set message test on
@@ -66,14 +66,14 @@ dd:=cossqrrule cc
 --R          2a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.400~~~~~$\displaystyle
 \int{\sin{px}\cos{qx}}~dx$}
 $$\int{\sin{px}\cos{qx}}=
 -\frac{cos(p-q)x}{2(p-q)}-\frac{cos(p+q)x}{2(p+q)}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 6 of 185
@@ -116,14 +116,14 @@ complexNormalize cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.401~~~~~$\displaystyle
 \int{\sin^n{ax}\cos{ax}}~dx$ provided $n \ne -1$}
 $$\int{\sin^n{ax}\cos{ax}}=
 \frac{\sin^{n+1}{ax}}{(n+1)a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 10 of 185
@@ -181,14 +181,14 @@ ee:=complexNormalize dd
 --R   (6)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.402~~~~~$\displaystyle
 \int{\cos^n{ax}*sin{ax}}~dx$ provided $n \ne -1$}
 $$\int{\cos^n{ax}*sin{ax}}=
 -\frac{\cos^{n+1}{ax}}{(n+1)a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 16 of 185
@@ -246,14 +246,14 @@ ee:=complexNormalize dd
 --R   (6)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.403~~~~~$\displaystyle
 \int{\sin^2{ax}\cos^2{ax}}$}
 $$\int{\sin^2{ax}\cos^2{ax}}=
 \frac{x}{8}-\frac{\sin{4ax}}{32a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 22 of 185
@@ -292,14 +292,14 @@ dd:=complexNormalize cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.404~~~~~$\displaystyle
 \int{\frac{dx}{\sin{ax}\cos{ax}}}$}
 $$\int{\frac{1}{\sin{ax}\cos{ax}}}=
 \frac{1}{a}\ln~\tan{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 26 of 185
@@ -362,14 +362,14 @@ ee:=expandLog dd
 --R              a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.405~~~~~$\displaystyle
 \int{\frac{dx}{\sin^2{ax}\cos{ax}}}$}
 $$\int{\frac{1}{\sin^2{ax}\cos{ax}}}=
 \frac{1}{a}\ln~\tan\left(\frac{\pi}{4}+\frac{ax}{2}\right)-\frac{1}{a\sin{ax}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 32 of 185
@@ -467,14 +467,14 @@ ff:=complexNormalize %
 --R            a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.406~~~~~$\displaystyle
 \int{\frac{dx}{\sin{ax}\cos^2{ax}}}$}
 $$\int{\frac{1}{\sin{ax}\cos^2{ax}}}=
 \frac{1}{a}\ln~\tan\frac{ax}{2}+\frac{1}{a\cos{ax}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 39 of 185
@@ -554,14 +554,14 @@ ff:=complexNormalize ee
 --R        a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.407~~~~~$\displaystyle
 \int{\frac{dx}{\sin^2{ax}\cos^2{ax}}}$}
 $$\int{\frac{1}{\sin^2{ax}\cos^2{ax}}}=
 -\frac{2\cot{2ax}}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 46 of 185
@@ -619,14 +619,14 @@ ee:=complexNormalize dd
 --R   (6)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.408~~~~~$\displaystyle
 \int{\frac{\sin^2{ax}}{\cos{ax}}}~dx$}
 $$\int{\frac{\sin^2{ax}}{\cos{ax}}}=
 -\frac{\sin{ax}}{a}+\frac{1}{a}\ln~\tan\left(\frac{ax}{2}+\frac{\pi}{4}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 52 of 185
@@ -719,14 +719,14 @@ ff:=complexNormalize ee
 --R            a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.409~~~~~$\displaystyle
 \int{\frac{\cos^2{ax}}{\sin{ax}}}~dx$}
 $$\int{\frac{\cos^2{ax}}{\sin{ax}}}=
 \frac{\cos{ax}}{a}+\frac{1}{a}\ln~\tan{\frac{ax}{2}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 59 of 185
@@ -804,7 +804,7 @@ ff:=complexNormalize ee
 --R   (7)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.410~~~~~$\displaystyle
 \int{\frac{dx}{\cos{ax}(1\pm\sin{ax})}}$}
@@ -812,7 +812,7 @@ $$\int{\frac{1}{\cos{ax}(1\pm\sin{ax})}}=
 \mp\frac{1}{2a(1\pm\sin{ax})}
 +\frac{1}{2a}\ln~\tan\left(\frac{ax}{2}+\frac{\pi}{4}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 66 of 185
@@ -1009,14 +1009,14 @@ ff:=complexNormalize ee
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.411~~~~~$\displaystyle
 \int{\frac{dx}{\sin{ax}(1\pm\cos{ax})}}$}
 $$\int{\frac{1}{\sin{ax}(1\pm\cos{ax})}}=
 \pm\frac{1}{2a(1\pm\cos{ax})}+\frac{1}{2a}\ln~\tan\frac{ax}{2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 80 of 185
@@ -1178,14 +1178,14 @@ ff:=complexNormalize ee
 --R        4a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.412~~~~~$\displaystyle
 \int{\frac{dx}{\sin{ax}\pm\cos{ax}}}$}
 $$\int{\frac{1}{\sin{ax}\pm\cos{ax}}}=
 \frac{1}{a\sqrt{2}}\ln~\tan\left(\frac{ax}{2}\pm\frac{\pi}{8}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 94 of 185
@@ -1294,14 +1294,14 @@ complexNormalize cc
 --R                2a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.413~~~~~$\displaystyle
 \int{\frac{\sin{ax}~dx}{\sin{ax}\pm\cos{ax}}}$}
 $$\int{\frac{\sin{ax}}{\sin{ax}\pm\cos{ax}}}=
 \frac{x}{2}\mp\frac{1}{2a}\ln(\sin{ax}\pm\cos{ax})
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 102 of 185
@@ -1396,14 +1396,14 @@ dd:=expandLog cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.414~~~~~$\displaystyle
 \int{\frac{cos{ax}~dx}{\sin{ax}\pm{\cos{ax}}}}$}
 $$\int{\frac{cos{ax}}{\sin{ax}\pm{\cos{ax}}}}=
 \pm\frac{x}{2}+\frac{1}{2a}\ln(sin{ax}\pm\cos{ax})
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 111 of 185
@@ -1498,14 +1498,14 @@ dd:=expandLog cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.415~~~~~$\displaystyle
 \int{\frac{\sin{ax}~dx}{p+q\cos{ax}}}$}
 $$\int{\frac{\sin{ax}}{p+q\cos{ax}}}=
 -\frac{1}{aq}\ln(p+q\cos{ax})
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 120 of 185
@@ -1557,14 +1557,14 @@ ee:=complexNormalize dd
 --R           a q
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.416~~~~~$\displaystyle
 \int{\frac{\cos{ax}~dx}{p+q\sin{ax}}}$}
 $$\int{\frac{\cos{ax}}{p+q\sin{ax}}}=
 \frac{1}{aq}\ln(p+q\sin{ax})
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 125 of 185
@@ -1605,14 +1605,14 @@ dd:=expandLog cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.417~~~~~$\displaystyle
 \int{\frac{\sin{ax}~dx}{(p+q\cos{ax})^n}}$}
 $$\int{\frac{\sin{ax}}{(p+q\cos{ax})^n}}=
 \frac{1}{aq(n-1)(p+q\cos{ax})^{n-1}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 129 of 185
@@ -1672,14 +1672,14 @@ ee:=complexNormalize dd
 --R   (6)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.418~~~~~$\displaystyle
 \int{\frac{\cos{ax}~dx}{(p+q\sin{ax})^n}}$}
 $$\int{\frac{\cos{ax}}{(p+q\sin{ax})^n}}=
 \frac{-1}{aq(n-1)(p+q\sin{ax})^{n-1}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 135 of 185
@@ -1739,14 +1739,14 @@ ee:=complexNormalize dd
 --R   (6)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.419~~~~~$\displaystyle
 \int{\frac{dx}{p\sin{ax}+q\cos{ax}}}$}
 $$\int{\frac{1}{p\sin{ax}+q\cos{ax}}}=
 \frac{1}{a\sqrt{p^2+q^2}}\ln~\tan\left(\frac{ax+\tan^{-1}(q/p)}{2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 141 of 185
@@ -1842,7 +1842,7 @@ ee:=ratDenom dd
 --R                        a q  + a p
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.420~~~~~$\displaystyle
 \int{\frac{dx}{p\sin{ax}+q\cos{ax}+r}}$}
@@ -1860,7 +1860,7 @@ $$\int{\frac{1}{p\sin{ax}+q\cos{ax}+r}}=
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 146 of 185
@@ -2079,14 +2079,14 @@ dd2:=normalize cc2
 --R   (8)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.421~~~~~$\displaystyle
 \int{\frac{dx}{p\sin{ax}+q(1+\cos{ax})}}$}
 $$\int{\frac{1}{p\sin{ax}+q(1+\cos{ax})}}=
 \frac{1}{ap}\ln\left(q+p\tan{\frac{ax}{2}}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 154 of 185
@@ -2169,7 +2169,7 @@ ff:=complexNormalize ee
 --R   (7)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.422~~~~~$\displaystyle
 \int{\frac{dx}{p\sin{ax}+q\cos{ax}\pm\sqrt{p^2+q^2}}}$}
@@ -2177,7 +2177,7 @@ $$\int{\frac{1}{p\sin{ax}+q\cos{ax}\pm\sqrt{p^2+q^2}}}=
 \frac{-1}{a\sqrt{p^2+q^2}}
 \tan\left(\frac{\pi}{4}\mp\frac{ax+\tan^{-1}{(q/p)}}{2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 161 of 185
@@ -2485,14 +2485,14 @@ ee:=ratDenom dd
 --R            a p q  + a p
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.423~~~~~$\displaystyle
 \int{\frac{dx}{p^2\sin^2{ax}+q^2\cos^2{ax}}}$}
 $$\int{\frac{1}{p^2\sin^2{ax}+q^2\cos^2{ax}}}=
 \frac{1}{apq}\tan^{-1}\left(\frac{p\tan{ax}}{q}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 171 of 185
@@ -2546,14 +2546,14 @@ dd:=normalize cc
 --E
 
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.424~~~~~$\displaystyle
 \int{\frac{dx}{p^2\sin^2{ax}-q^2\cos^2{ax}}}$}
 $$\int{\frac{1}{p^2\sin^2{ax}-q^2\cos^2{ax}}}=
 \frac{1}{2apq}\ln\left(\frac{p\tan{ax}-q}{p\tan{ax}+q}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 175 of 185
@@ -2637,7 +2637,7 @@ ff:=complexNormalize ee
 --R         2a p q
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.425~~~~~$\displaystyle
 \int{\sin^m{ax}\cos^n{ax}}~dx$}
@@ -2654,7 +2654,7 @@ $$\int{\sin^m{ax}\cos^n{ax}}=
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 182 of 185    14:425 Axiom cannot compute this integral
@@ -2667,7 +2667,7 @@ aa:=integrate(sin(a*x)^m*cos(a*x)^n,x)
 --R        ++
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.426~~~~~$\displaystyle
 \int{\frac{\sin^m{ax}}{\cos^n{ax}}}~dx$}
@@ -2688,7 +2688,7 @@ $$\int{\frac{\sin^m{ax}}{\cos^n{ax}}}=
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 183 of 185    14:426 Axiom cannot compute this integral
@@ -2702,7 +2702,7 @@ aa:=integrate(sin(a*x)^m/cos(a*x)^n,x)
 --I             cos(%H a)
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.427~~~~~$\displaystyle
 \int{\frac{\cos^m{ax}}{\sin^n{ax}}}~dx$}
@@ -2723,7 +2723,7 @@ $$\int{\frac{\cos^m{ax}}{\sin^n{ax}}}=
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 184 of 185    14:427 Axiom cannot compute this integral
@@ -2737,7 +2737,7 @@ aa:=integrate(cos(a*x)^m/sin(a*x)^n,x)
 --I             sin(%H a)
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.428~~~~~$\displaystyle
 \int{\frac{dx}{\sin^m{ax}\cos^n{ax}}}$}
@@ -2754,7 +2754,7 @@ $$\int{\frac{1}{\sin^m{ax}\cos^n{ax}}}
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 185 of 185    14:428 Axiom cannot compute this integral
@@ -2771,7 +2771,7 @@ aa:=integrate(1/(sin(a*x)^m*cos(a*x)^n),x)
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum2.input.pamphlet b/src/input/schaum2.input.pamphlet
index a1e897e..b599ed3 100644
--- a/src/input/schaum2.input.pamphlet
+++ b/src/input/schaum2.input.pamphlet
@@ -12,7 +12,7 @@
 $$\int{\frac{1}{\sqrt{ax+b}}}=
 \frac{2\sqrt{ax+b}}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum2.output
 )set message test on
@@ -48,14 +48,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.85~~~~~$\displaystyle
 \int{\frac{x~dx}{\sqrt{ax+b}}}$}
 $$\int{\frac{x}{\sqrt{ax+b}}}=
 \frac{2(ax-2b)}{3a^2}\sqrt{ax+b}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 4 of 98
@@ -89,14 +89,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.86~~~~~$\displaystyle
 \int{\frac{x^2~dx}{\sqrt{ax+b}}}$}
 $$\int{\frac{x}{\sqrt{ax+b}}}=
 \frac{2(3a^2x^2-4abx+8b^2)}{15a^2}\sqrt{ax+b}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 7 of 98
@@ -130,7 +130,7 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.87~~~~~$\displaystyle
 \int{\frac{dx}{x\sqrt{ax+b}}}$}
@@ -147,7 +147,7 @@ $$\int{\frac{1}{x\sqrt{ax+b}}}=
 $$
 
 Note: the first answer assumes $b > 0$ and the second assumes $b < 0$.
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 10 of 98
@@ -163,9 +163,9 @@ aa:=integrate(1/(x*sqrt(a*x+b)),x)
 --R                         \|b                             \|- b
 --R                                     Type: Union(List Expression Integer,...)
 --E 
-@
+\end{chunk}
 Cleary Spiegel's first answer assumes $b > 0$:
-<<*>>=
+\begin{chunk}{*}
 --S 11 of 98
 bb1:=1/sqrt(b)*log((sqrt(a*x+b)-sqrt(b))/(sqrt(a*x+b)+sqrt(b)))
 --R 
@@ -180,9 +180,9 @@ bb1:=1/sqrt(b)*log((sqrt(a*x+b)-sqrt(b))/(sqrt(a*x+b)+sqrt(b)))
 --R                 \|b
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 So we try the difference of the two results
-<<*>>=
+\begin{chunk}{*}
 --S 12 of 98
 cc11:=aa.1-bb1
 --R
@@ -196,12 +196,12 @@ cc11:=aa.1-bb1
 --R                                      \|b
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 But the results don't simplify to 0. So we try some other tricks.
 
 Since both functions are of the form log(f(x))/sqrt(b) we extract
 the f(x) from each. First we get the function from Axiom's first answer:
-<<*>>=
+\begin{chunk}{*}
 --S 13 of 98
 ff:=exp(aa.1*sqrt(b))
 --R
@@ -211,9 +211,9 @@ ff:=exp(aa.1*sqrt(b))
 --R                       x
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 and we get the same form from Spiegel's answer
-<<*>>=
+\begin{chunk}{*}
 --S 14 of 98
 gg:=exp(bb1*sqrt(b))
 --R
@@ -224,13 +224,13 @@ gg:=exp(bb1*sqrt(b))
 --R        \|a x + b  + \|b
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 We can change Spiegel's form into Axiom's form because they differ by
 the constant a*sqrt(b). To see this we multiply the numerator and
 denominator by $1 == (sqrt(a*x+b) - sqrt(b))/(sqrt(a*x+b) - sqrt(b))$.
 
 First we multiply the numerator by $(sqrt(a*x+b) - sqrt(b))$
-<<*>>=
+\begin{chunk}{*}
 --S 15 of 98
 gg1:=gg*(sqrt(a*x+b) - sqrt(b))
 --R
@@ -241,9 +241,9 @@ gg1:=gg*(sqrt(a*x+b) - sqrt(b))
 --R              \|a x + b  + \|b
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 Now we multiply the denominator by $(sqrt(a*x+b) - sqrt(b))$
-<<*>>=
+\begin{chunk}{*}
 --S 16 of 98
 gg2:=gg1/(sqrt(a*x+b) - sqrt(b))
 --R
@@ -253,9 +253,9 @@ gg2:=gg1/(sqrt(a*x+b) - sqrt(b))
 --R                     a x
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 and now we multiply by the integration constant $a*sqrt(b)$
-<<*>>=
+\begin{chunk}{*}
 --S 17 of 98
 gg3:=gg2*(a*sqrt(b))
 --R
@@ -265,21 +265,21 @@ gg3:=gg2*(a*sqrt(b))
 --R                       x
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 and when we difference this with ff, the Axiom answer we get:
-<<*>>=
+\begin{chunk}{*}
 --S 18 of 98     14:87a Schaums and Axiom differ by a constant
 ff-gg3
 --R
 --R   (9)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 So the constant of integration difference is $a*sqrt(b)$
 
 Now we look at the second equations. We difference Axiom's second answer
 from Spiegel's answer:
-<<*>>=
+\begin{chunk}{*}
 --S 19 of 98
 t1:=aa.2-bb1
 --R
@@ -293,21 +293,21 @@ t1:=aa.2-bb1
 --R                                  \|- b \|b
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 and again they do not simplify to zero. But we can show that both answers
 differ by a constant because the derivative is zero:
-<<*>>=
+\begin{chunk}{*}
 --S 20 of 98
 D(t1,x)
 --R
 --R   (11)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 Rather than find the constant this time we will differentiate both
 answers and compare them with the original equation.
-<<*>>=
+\begin{chunk}{*}
 --S 21 of 98
 target:=1/(x*sqrt(a*x+b))
 --R
@@ -317,9 +317,9 @@ target:=1/(x*sqrt(a*x+b))
 --R         x\|a x + b
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 and we select the second Axiom solution
-<<*>>=
+\begin{chunk}{*}
 --S 22 of 98
 aa2:=aa.2
 --R
@@ -332,9 +332,9 @@ aa2:=aa.2
 --R                    \|- b
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 take its derivative
-<<*>>=
+\begin{chunk}{*}
 --S 23 of 98
 ad2:=D(aa2,x)
 --R
@@ -344,22 +344,22 @@ ad2:=D(aa2,x)
 --R         x\|a x + b
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 When we take the difference of Axiom's input and the derivative of the
 output we see:
-<<*>>=
+\begin{chunk}{*}
 --S 24 of 98
 ad2-target
 --R
 --R   (15)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 Thus the original equation and Axiom's derivative of the integral are equal.
 
 Now we do the same with Spiegel's answer. We take the derivative of his
 answer.
-<<*>>=
+\begin{chunk}{*}
 --S 25 of 98
 ab1:=D(bb1,x)
 --R
@@ -370,16 +370,16 @@ ab1:=D(bb1,x)
 --R         x\|b \|a x + b  + a x  + b x
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 and we difference it from the original equation
-<<*>>=
+\begin{chunk}{*}
 --S 26 of 98     14:87b Schaums and Axiom differ by a constant
 ab1-target
 --R
 --R   (17)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 Thus the original equation and Spiegel's derivative of the integral are equal.
 
 So we can conclude that both second answers are correct although they differ
@@ -390,7 +390,7 @@ by a constant of integration.
 $$\int{\frac{1}{x^2\sqrt{ax+b}}}=
 -\frac{\sqrt{ax+b}}{bx}-\frac{a}{2b}~\int{\frac{1}{x\sqrt{ax+b}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 27 of 98
@@ -414,11 +414,11 @@ aa:=integrate(1/(x^2*sqrt(a*x+b)),x)
 --R                      b x\|- b
 --R                                     Type: Union(List Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 In order to write down the book answer we need to first take the
 integral which has two results
-<<*>>=
+\begin{chunk}{*}
 --S 28 of 98
 dd:=integrate(1/(x*sqrt(a*x+b)),x)
 --R 
@@ -432,10 +432,10 @@ dd:=integrate(1/(x*sqrt(a*x+b)),x)
 --R                         \|b                             \|- b
 --R                                     Type: Union(List Expression Integer,...)
 --E
-@
+\end{chunk}
 and derive two results for the book answer. The first result assumes
 $b > 0$
-<<*>>=
+\begin{chunk}{*}
 --S 29 of 98
 bb1:=-sqrt(a*x+b)/(b*x)-a/(2*b)*dd.1
 --R 
@@ -449,9 +449,9 @@ bb1:=-sqrt(a*x+b)/(b*x)-a/(2*b)*dd.1
 --R                                  2b x\|b
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 and the second result assumes $b < 0$.
-<<*>>=
+\begin{chunk}{*}
 --S 30 of 98
 bb2:=-sqrt(a*x+b)/(b*x)-a/(2*b)*dd.2
 --R 
@@ -465,11 +465,11 @@ bb2:=-sqrt(a*x+b)/(b*x)-a/(2*b)*dd.2
 --R                          b x\|- b
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 So we compute the difference of Axiom's first result with Spiegel's
 first result
-<<*>>=
+\begin{chunk}{*}
 --S 31 of 98
 cc11:=bb1-aa.1
 --R
@@ -488,20 +488,20 @@ cc11:=bb1-aa.1
 --R     2b\|b
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 we compute its derivative
-<<*>>=
+\begin{chunk}{*}
 --S 32 of 98
 D(cc11,x)
 --R
 --R   (6)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 and we can see that the answers differ by a constant, the constant of
 integration. So Axiom's first answer should differentiate back to the target
 equation.
-<<*>>=
+\begin{chunk}{*}
 --S 33 of 98
 target:=1/(x^2*sqrt(a*x+b))
 --R
@@ -511,9 +511,9 @@ target:=1/(x^2*sqrt(a*x+b))
 --R        x \|a x + b
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 We differentiate Axiom's first answer
-<<*>>=
+\begin{chunk}{*}
 --S 34 of 98
 ad1:=D(aa.1,x)
 --R
@@ -524,18 +524,18 @@ ad1:=D(aa.1,x)
 --R        (2a b x  + 2b x )\|a x + b  + (a x  + 3a b x  + 2b x )\|b
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 and subtract it from the target equation
-<<*>>=
+\begin{chunk}{*}
 --S 35 of 98
 ad1-target
 --R
 --R   (9)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 and now we do the same with first Spiegel's answer:
-<<*>>=
+\begin{chunk}{*}
 --S 36 of 98
 bd1:=D(bb1,x)
 --R
@@ -546,22 +546,22 @@ bd1:=D(bb1,x)
 --R         (2a b x  + 2b x )\|a x + b  + (- a x  - 3a b x  - 2b x )\|b
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 and we subtract it from the target
-<<*>>=
+\begin{chunk}{*}
 --S 37 of 98
 bd1-target
 --R
 --R   (11)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 so we know that the two first answers are both correct and that their
 integrals differ by a constant.
 
 Now we look at the second answers. We difference the answers and can
 see immediately that they are equal.
-<<*>>=
+\begin{chunk}{*}
 --S 38 of 98     14:88 Schaums and Axiom differ by a constant
 cc22:=bb2-aa.2
 --R 
@@ -569,14 +569,14 @@ cc22:=bb2-aa.2
 --R   (12)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.89~~~~~$\displaystyle
 \int{\sqrt{ax+b}~dx}$}
 $$\int{\sqrt{ax+b}}=
 \frac{2\sqrt{(ax+b)^3}}{3a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 39 of 98
@@ -589,8 +589,8 @@ aa:=integrate(sqrt(a*x+b),x)
 --R                  3a
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 --S 40 of 98
 bb:=(2*sqrt((a*x+b)^3))/(3*a)
 --R 
@@ -602,8 +602,8 @@ bb:=(2*sqrt((a*x+b)^3))/(3*a)
 --R                       3a
 --R                                                     Type: Expression Integer
 --E
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 --S 41 of 98
 cc:=aa-bb
 --R
@@ -614,9 +614,9 @@ cc:=aa-bb
 --R                                    3a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 Since this didn't simplify we could check each answer using the derivative
-<<*>>=
+\begin{chunk}{*}
 --S 42 of 98
 target:=sqrt(a*x+b)
 --R
@@ -624,9 +624,9 @@ target:=sqrt(a*x+b)
 --R   (4)  \|a x + b
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 We take the derivative of Axiom's answer
-<<*>>=
+\begin{chunk}{*}
 --S 43 of 98
 t1:=D(aa,x)
 --R
@@ -636,18 +636,18 @@ t1:=D(aa,x)
 --R        \|a x + b
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 And we subtract the target from the derivative of Axiom's answer
-<<*>>=
+\begin{chunk}{*}
 --S 44 of 98
 t1-target
 --R
 --R   (6)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 So they are equal. Now we do the same with Spiegel's answer
-<<*>>=
+\begin{chunk}{*}
 --S 45 of 98
 t2:=D(bb,x)
 --R
@@ -659,9 +659,9 @@ t2:=D(bb,x)
 --R        \|a x  + 3a b x  + 3a b x + b
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 The numerator is
-<<*>>=
+\begin{chunk}{*}
 --S 46 of 98
 nn:=(a*x+b)^2
 --R
@@ -669,8 +669,8 @@ nn:=(a*x+b)^2
 --R   (8)  a x  + 2a b x + b
 --R                                                     Type: Polynomial Integer
 --E
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 --S 47 of 98
 mm:=(a*x+b)^3
 --R
@@ -678,9 +678,9 @@ mm:=(a*x+b)^3
 --R   (9)  a x  + 3a b x  + 3a b x + b
 --R                                                     Type: Polynomial Integer
 --E
-@
+\end{chunk}
 which expands to Spiegel's version.
-<<*>>=
+\begin{chunk}{*}
 --S 48 of 98     14:89 Schaums and Axiom differ by a constant
 result=nn/sqrt(mm)
 --R
@@ -692,7 +692,7 @@ result=nn/sqrt(mm)
 --R                 \|a x  + 3a b x  + 3a b x + b
 --R                                            Type: Equation Expression Integer
 --E
-@
+\end{chunk}
 and this reduces to $\sqrt{ax+b}$
 
 \section{\cite{1}:14.90~~~~~$\displaystyle
@@ -700,7 +700,7 @@ and this reduces to $\sqrt{ax+b}$
 $$\int{x\sqrt{ax+b}}=
 \frac{2(3ax-2b)}{15a^2}~\sqrt{(ax+b)^3}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 49 of 98
@@ -750,7 +750,7 @@ dd:=rootSimp cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.91~~~~~$\displaystyle
 \int{x^2\sqrt{ax+b}~dx}$}
@@ -758,7 +758,7 @@ $$\int{x^2\sqrt{ax+b}}=
 \frac{2(15a^2x^2-12abx+8b^2)}{105a^2}~\sqrt{(a+bx)^3}
 $$
 Note: the sqrt term is almost certainly $\sqrt{(ax+b)}$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 53 of 98
@@ -802,12 +802,12 @@ cc:=aa-bb
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 Notice that if we factor the numerator of 'aa' we get an expression that
 differs from schaums on by the order of the variables in the square root.
 (We can square the term (a*x+b) and drag it under the square root to get
 the cubic term). It appears that Schaums has a typo.
-<<*>>=
+\begin{chunk}{*}
 --S 56 of 98
 factor numer aa
 --R
@@ -815,14 +815,14 @@ factor numer aa
 --R   (4)  2(a x + b)(15a x  - 12a b x + 8b )\|a x + b
 --RType: Factored SparseMultivariatePolynomial(Integer,Kernel Expression Integer)
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.92~~~~~$\displaystyle
 \int{\frac{\sqrt{ax+b}}{x}~dx}$}
 $$\int{\frac{\sqrt{ax+b}}{x}}=
 2\sqrt{ax+b}+b~\int{\frac{1}{x\sqrt{ax+b}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 57 of 98
@@ -950,14 +950,14 @@ dd22:=ratDenom cc22
 --R   (9)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.93~~~~~$\displaystyle
 \int{\frac{\sqrt{ax+b}}{x^2}~dx}$}
 $$\int{\frac{\sqrt{ax+b}}{x^2}}=
 -\frac{\sqrt{ax+b}}{x}+\frac{a}{2}~\int{\frac{1}{x\sqrt{ax+b}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 65 of 98
@@ -1069,7 +1069,7 @@ cc22:=bb2-aa.2
 --R   (8)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.94~~~~~$\displaystyle
 \int{\frac{x^m}{\sqrt{ax+b}}~dx}$}
@@ -1077,7 +1077,7 @@ $$\int{\frac{x^m}{\sqrt{ax+b}}}=
 \frac{2x^m\sqrt{ax+b}}{(2m+1)a}-\frac{2mb}{(2m+1)a}
 ~\int{\frac{x^{m-1}}{\sqrt{ax+b}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 73 of 98     14:94 Axiom cannot do this integral
@@ -1091,7 +1091,7 @@ aa:=integrate(x^m/sqrt(a*x+b),x)
 --I             \|b + %L a
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.95~~~~~$\displaystyle
 \int{\frac{dx}{x^m\sqrt{ax+b}}}$}
@@ -1099,7 +1099,7 @@ $$\int{\frac{1}{x^m\sqrt{ax+b}}}=
 -\frac{\sqrt{ax+b}}{(m-1)bx^{m-1}}-\frac{(2m-3)a}{(2m-2)b}
 ~\int{\frac{1}{x^{m-1}\sqrt{ax+b}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 74 of 98     14:95 Axiom cannot do this integral
@@ -1113,7 +1113,7 @@ aa:=integrate(1/(x^m*sqrt(a*x+b)),x)
 --I             %L \|b + %L a
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.96~~~~~$\displaystyle
 \int{x^m\sqrt{ax+b}~dx}$}
@@ -1121,7 +1121,7 @@ $$\int{x^m\sqrt{ax+b}}=
 \frac{2x^m}{(2m+3)a}(ax+b)^{3/2}
 -\frac{2mb}{(2m+3)a}~\int{x^{m-1}\sqrt{ax+b}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 75 of 98     14:96 Axiom cannot do this integral
@@ -1134,7 +1134,7 @@ aa:=integrate(x^m*sqrt(a*x+b),x)
 --R        ++
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.97~~~~~$\displaystyle
 \int{\frac{\sqrt{ax+b}}{x^m}~dx}$}
@@ -1142,7 +1142,7 @@ $$\int{\frac{\sqrt{ax+b}}{x^m}}=
 -\frac{\sqrt{ax+b}}{(m-1)x^{m-1}}
 +\frac{a}{2(m-1)}~\int{\frac{1}{x^{m-1}\sqrt{ax+b}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 76 of 98     14:97 Axiom cannot do this integral
@@ -1156,7 +1156,7 @@ aa:=integrate(sqrt(a*x+b)/x^m,x)
 --I                 %L
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.98~~~~~$\displaystyle
 \int{\frac{\sqrt{ax+b}}{x^m}~dx}$}
@@ -1165,7 +1165,7 @@ $$\int{\frac{\sqrt{ax+b}}{x^m}}=
 -\frac{(2m-5)a}{(2m-2)b}~\int{\frac{\sqrt{ax+b}}{x^{m-1}}}
 $$
 Note: 14.98 is the same as 14.97
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 77 of 98     14:98 Axiom cannot do this integral
@@ -1179,14 +1179,14 @@ aa:=integrate(sqrt(a*x+b)/x^m,x)
 --I                 %L
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.99~~~~~$\displaystyle
 \int{(ax+b)^{m/2}~dx}$}
 $$\int{(ax+b)^{m/2}}=
 \frac{2(ax+b)^{(m+2)/2}}{a(m+2)}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 78 of 98
@@ -1254,7 +1254,7 @@ ee:=complexNormalize dd
 --R   (6)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.100~~~~~$\displaystyle
 \int{x(ax+b)^{m/2}~dx}$}
@@ -1262,7 +1262,7 @@ $$\int{x(ax+b)^{m/2}}=
 \frac{2(ax+b)^{(m+4)/2}}{a^2(m+4)}
 -\frac{2b(ax+b)^{(m+2)/2}}{a^2(m+2)}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 84 of 98
@@ -1346,7 +1346,7 @@ ee:=complexNormalize dd
 --R   (6)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.101~~~~~$\displaystyle
 \int{x^2(ax+b)^{m/2}~dx}$}
@@ -1355,7 +1355,7 @@ $$\int{x^2(ax+b)^{m/2}}=
 -\frac{4b(ax+b)^{(m+4)/2}}{a^3(m+4)}
 +\frac{2b^2(ax+b)^{(m+2)/2}}{a^3(m+2)}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 90 of 98
@@ -1467,7 +1467,7 @@ ee:=complexNormalize dd
 --R   (6)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.102~~~~~$\displaystyle
 \int{\frac{(ax+b)^{m/2}}{x}~dx}$}
@@ -1475,7 +1475,7 @@ $$\int{\frac{(ax+b)^{m/2}}{x}}=
 \frac{2(ax+b)^{m/2}}{m}
 +b~\int{\frac{(ax+b)^{(m-2)/2}}{x}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 96 of 98     14:102 Axiom cannot do this integral
@@ -1490,14 +1490,14 @@ aa:=integrate((a*x+b)^(m/2)/x,x)
 --I        ++        %L
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 \section{\cite{1}:14.103~~~~~$\displaystyle
 \int{\frac{(ax+b)^{m/2}}{x^2}~dx}$}
 $$\int{\frac{(ax+b)^{m/2}}{x^2}}=
 -\frac{(ax+b)^{(m+2)/2}}{bx}
 +\frac{ma}{2b}~\int{\frac{(ax+b)^{m/2}}{x}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 97 of 98     14:103 Axiom cannot do this integral
@@ -1513,14 +1513,14 @@ aa:=integrate((a*x+b)^(m/2)/x^2,x)
 --I                 %L
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 \section{\cite{1}:14.104~~~~~$\displaystyle
 \int{\frac{dx}{x(ax+b)^{m/2}}}$}
 $$\int{\frac{1}{x(ax+b)^{m/2}}}=
 \frac{2}{(m-2)b(ax+b)^{(m-2)/2}}
 +\frac{1}{b}~\int{\frac{1}{x(ax+b)^{(m-2)/2}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 98 of 98     14:104 Axiom cannot do this integral
@@ -1539,7 +1539,7 @@ aa:=integrate(1/(x*(a*x+b)^(m/2)),x)
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum20.input.pamphlet b/src/input/schaum20.input.pamphlet
index 0693acd..f7f2114 100644
--- a/src/input/schaum20.input.pamphlet
+++ b/src/input/schaum20.input.pamphlet
@@ -13,7 +13,7 @@ $$\int{\tan{ax}}=
 -\frac{1}{a}\ln~\cos{ax}=
 \frac{1}{a}\ln~\sec{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum20.output
 )set message test on
@@ -105,14 +105,14 @@ ff1:=sincossqrrule ee1
 --R   (9)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.430~~~~~$\displaystyle
 \int{\tan^2{ax}}~dx$}
 $$\int{\tan^2{ax}}=
 \frac{\tan{ax}}{x}-x
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 10 of 56
@@ -140,14 +140,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.431~~~~~$\displaystyle
 \int{\tan^3{ax}}~dx$}
 $$\int{\tan^3{ax}}=
 \frac{\tan^2{ax}}{2a}+\frac{1}{a}\ln~\cos{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 13 of 56
@@ -227,14 +227,14 @@ ff:=sincossqrrule ee
 --R   (8)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.432~~~~~$\displaystyle
 \int{\tan^n{ax}\sec^2{ax}}~dx$}
 $$\int{\tan^n{ax}\sec^2{ax}}=
 \frac{\tan^{n+1}{ax}}{(n+1)a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 21 of 56
@@ -317,14 +317,14 @@ ff:=complexNormalize ee
 --R   (8)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.433~~~~~$\displaystyle
 \int{\frac{\sec^2{ax}}{\tan{ax}}}~dx$}
 $$\int{\frac{\sec^2{ax}}{\tan{ax}}}=
 \frac{1}{a}\ln~\tan{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 29 of 56
@@ -376,14 +376,14 @@ ee:=complexNormalize dd
 --R              a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.434~~~~~$\displaystyle
 \int{\frac{dx}{\tan{ax}}}~dx$}
 $$\int{\frac{1}{\tan{ax}}}=
 \frac{1}{a}\ln~\sin{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 34 of 56
@@ -422,7 +422,7 @@ complexNormalize cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.435~~~~~$\displaystyle
 \int{x\tan{ax}}~dx$}
@@ -430,7 +430,7 @@ $$\int{x\tan{ax}}=
 \frac{1}{a^2}\left\{\frac{(ax)^3}{3}+\frac{(ax)^5}{15}+\frac{2(ax)^7}{105}
 +\cdots+\frac{2^{2n}(2^{2n}-1)B_n(ax)^{2n+1}}{(2n+1)!}+\cdots\right\}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 38 of 56     14:435 Axiom cannot compute this integral
@@ -443,7 +443,7 @@ aa:=integrate(x*tan(a*x),x)
 --R        ++
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.436~~~~~$\displaystyle
 \int{\frac{\tan{ax}}{x}}~dx$}
@@ -451,7 +451,7 @@ $$\int{\frac{\tan{ax}}{x}}=
 ax+\frac{(ax)^3}{9}+\frac{2(ax)^5}{75}+\cdots
 +\frac{2^{2n}(2^{2n}-1)B_n(ax)^{2n-1}}{(2n-1)(2n)!}+\cdots
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 39 of 56     14:436 Axiom cannot compute this integral
@@ -464,14 +464,14 @@ aa:=integrate(tan(a*x)/x,x)
 --I        ++       %I
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.437~~~~~$\displaystyle
 \int{x\tan^2{ax}}~dx$}
 $$\int{x\tan^2{ax}}=
 \frac{x\tan{ax}}{a}+\frac{1}{a^2}\ln~\cos{ax}-\frac{x^2}{2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 40 of 56
@@ -556,14 +556,14 @@ ff:=sincossqrrule ee
 --R   (8)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.438~~~~~$\displaystyle
 \int{\frac{dx}{p+q\tan{ax}}}~dx$}
 $$\int{\frac{1}{p+q\tan{ax}}}=
 \frac{px}{p^2+q^2}+\frac{q}{a(p^2+q^2)}\ln(q\sin{ax}+p\cos{ax})
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 48 of 56
@@ -655,14 +655,14 @@ ff:=sincossqrrule ee
 --R   (8)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.439~~~~~$\displaystyle
 \int{\tan^n{ax}}~dx$}
 $$\int{\tan^n{ax}}=
 \frac{\tan^{n-1}{ax}}{(n-1)a}-\int{\tan^{n-2}{ax}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 56 of 56     14:439 Axiom cannot compute this integral
@@ -678,7 +678,7 @@ aa:=integrate(tan(a*x)^n,x)
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum21.input.pamphlet b/src/input/schaum21.input.pamphlet
index 85f235b..8ea00c9 100644
--- a/src/input/schaum21.input.pamphlet
+++ b/src/input/schaum21.input.pamphlet
@@ -12,7 +12,7 @@
 $$\int{\cot{ax}}=
 \frac{1}{a}\ln\sin{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum21.output
 )set message test on
@@ -66,14 +66,14 @@ ee:=complexNormalize dd
 --R   (5)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.441~~~~~$\displaystyle
 \int{\cot^2{ax}}~dx$}
 $$\int{\cot^2{ax}}=
 -\frac{\cot{ax}}{a}-x
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 6 of 53
@@ -128,14 +128,14 @@ ee:=complexNormalize dd
 --R   (6)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.442~~~~~$\displaystyle
 \int{\cot^3{ax}}~dx$}
 $$\int{\cot^3{ax}}=
 -\frac{\cot^2{ax}}{2a}-\frac{1}{a}\ln\sin{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 12 of 53
@@ -243,14 +243,14 @@ ff:=complexNormalize ee
 --R   (7)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.443~~~~~$\displaystyle
 \int{\cot^n{ax}\csc^2{ax}}~dx$}
 $$\int{\cot^n{ax}\csc^2{ax}}=
 -\frac{\cot^{n+1}{ax}}{(n+1)a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 19 of 53
@@ -333,14 +333,14 @@ ff:=complexNormalize ee
 --R   (8)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.444~~~~~$\displaystyle
 \int{\frac{\csc^2{ax}}{\cot{ax}}}~dx$}
 $$\int{\frac{\csc^2{ax}}{\cot{ax}}}=
 -\frac{1}{a}\ln\cot{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 27 of 53
@@ -403,14 +403,14 @@ ee:=expandLog dd
 --R              a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.445~~~~~$\displaystyle
 \int{\frac{dx}{\cot{ax}}}~dx$}
 $$\int{\frac{1}{\cot{ax}}}=
 -\frac{1}{a}\ln\cos{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 33 of 53
@@ -460,7 +460,7 @@ ee:=complexNormalize dd
 --R   (5)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.446~~~~~$\displaystyle
 \int{x\cot{ax}}~dx$}
@@ -469,7 +469,7 @@ $$\int{x\cot{ax}}=
 -\frac{(ax)^3}{9}-\frac{(ax)^5}{225}
 -\cdots-\frac{2^{2n}B_n(ax)^{2n+1}}{(2n+1)!}-\cdots\right\}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 38 of 53     14:446 Axiom cannot compute this integral
@@ -482,7 +482,7 @@ aa:=integrate(x*cot(a*x),x)
 --R        ++
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.447~~~~~$\displaystyle
 \int{\frac{\cot{ax}}{x}}~dx$}
@@ -490,7 +490,7 @@ $$\int{\frac{\cot{ax}}{x}}=
 -\frac{1}{ax}-\frac{ax}{3}-\frac{(ax)^3}{135}-\cdots
 -\frac{2^{2n}B_n(ax)^{2n-1}}{(2n-1)(2n)!}-\cdots
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 39 of 53     14:447 Axiom cannot compute this integral
@@ -503,14 +503,14 @@ aa:=integrate(cot(a*x)/x,x)
 --I        ++       %I
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.448~~~~~$\displaystyle
 \int{x\cot^2{ax}}~dx$}
 $$\int{x\cot^2{ax}}=
 -\frac{x\cot{ax}}{a}+\frac{1}{a^2}\ln\sin{ax}-\frac{x^2}{2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 40 of 53
@@ -581,14 +581,14 @@ ee:=complexNormalize dd
 --R   (5)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.449~~~~~$\displaystyle
 \int{\frac{dx}{p+q\cot{ax}}}~dx$}
 $$\int{\frac{1}{p+q\cot{ax}}}=
 \frac{px}{p^2+q^2}-\frac{q}{a(p^2+q^2)}\ln(p\sin{ax}+q\cos{ax})
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 45 of 53
@@ -687,14 +687,14 @@ ff:=expandLog %
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.450~~~~~$\displaystyle
 \int{\cot^n{ax}}~dx$}
 $$\int{\cot^n{ax}}=
 -\frac{\cot^{n-1}{ax}}{(n-1)a}-\int{\cos^{n-2}{ax}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 53 of 53     14:450 Axiom cannot compute this integral
@@ -710,7 +710,7 @@ aa:=integrate(cot(a*x)^n,x)
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum22.input.pamphlet b/src/input/schaum22.input.pamphlet
index e2040e7..fbaf6a5 100644
--- a/src/input/schaum22.input.pamphlet
+++ b/src/input/schaum22.input.pamphlet
@@ -13,7 +13,7 @@ $$\int{\sec{ax}}=
 \frac{1}{a}\ln(\sec{ax}+\tan{ax})=
 \frac{1}{a}\ln\tan\left(\frac{ax}{2}+\frac{\pi}{4}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum22.output
 )set message test on
@@ -197,14 +197,14 @@ ff2:=complexNormalize ee2
 --R             a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.452~~~~~$\displaystyle
 \int{\sec^2{ax}}~dx$}
 $$\int{\sec^2{ax}}=
 \frac{\tan{ax}}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 15 of 52
@@ -250,14 +250,14 @@ dd:=tanrule cc
 --R   (5)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.453~~~~~$\displaystyle
 \int{\sec^3{ax}}~dx$}
 $$\int{\sec^3{ax}}=
 \frac{\sec{ax}\tan{ax}}{2a}+\frac{1}{2a}\ln(\sec{ax}+\tan{ax})
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 20 of 52
@@ -384,14 +384,14 @@ gg:=complexNormalize ff
 --R           2a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.454~~~~~$\displaystyle
 \int{\sec^n{ax}\tan{ax}}~dx$}
 $$\int{\sec^n{ax}\tan{ax}}=
 \frac{\sec^n{ax}}{na}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 29 of 52
@@ -440,14 +440,14 @@ normalize cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.455~~~~~$\displaystyle
 \int{\frac{dx}{\sec{ax}}}~dx$}
 $$\int{\frac{1}{\sec{ax}}}=
 \frac{\sin{ax}}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 33 of 52
@@ -475,7 +475,7 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.456~~~~~$\displaystyle
 \int{x\sec{ax}}~dx$}
@@ -483,7 +483,7 @@ $$\int{x\sec{ax}}=
 \frac{1}{a^2}\left\{\frac{(ax)^2}{2}+\frac{(ax)^4}{8}+\frac{5(ax)^6}{144}
 +\cdots+\frac{E_n(ax)^{2n+2}}{(2n+2)(2n)!}+\cdots\right\}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 36 of 52     14:456 Axiom cannot compute this integral
@@ -496,7 +496,7 @@ aa:=integrate(x*sec(a*x),x)
 --R        ++
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.457~~~~~$\displaystyle
 \int{\frac{\sec{ax}}{x}}~dx$}
@@ -504,7 +504,7 @@ $$\int{\frac{\sec{ax}}{x}}=
 \ln{x}+\frac{(ax)^2}{4}+\frac{5(ax)^4}{96}+\frac{61(ax)^6}{4320}
 +\cdots+\frac{E_n(ax)^{2n}}{(2n)(2n)!}+\cdots
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 37 of 52     14:457 Axiom cannot compute this integral
@@ -517,14 +517,14 @@ aa:=integrate(sec(a*x)/x,x)
 --I        ++       %N
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.458~~~~~$\displaystyle
 \int{x\sec^2{ax}}~dx$}
 $$\int{x\sec^2{ax}}=
 \frac{x}{a}\tan{ax}+\frac{1}{a^2}\ln\cos{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 38 of 52
@@ -598,14 +598,14 @@ ee:=expandLog dd
 --R                 a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.459~~~~~$\displaystyle
 \int{\frac{dx}{q+p\sec{ax}}}~dx$}
 $$\int{\frac{1}{q+p\sec{ax}}}=
 \frac{x}{q}-\frac{p}{q}\int{\frac{dx}{p+q\cos{ax}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 44 of 52
@@ -762,7 +762,7 @@ cc4:=aa.2-bb2
 --R   (8)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.460~~~~~$\displaystyle
 \int{\sec^n{ax}}~dx$}
@@ -770,7 +770,7 @@ $$\int{\sec^n{ax}}=
 \frac{\sec^{n-2}{ax}\tan{ax}}{a(n-1)}
 +\frac{n-2}{n-1}\int{\sec^{n-2}{ax}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 52 of 52     14:460 Axiom cannot compute this integral
@@ -786,7 +786,7 @@ aa:=integrate(sec(a*x)^n,x)
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum23.input.pamphlet b/src/input/schaum23.input.pamphlet
index a2ed1fd..95ceb47 100644
--- a/src/input/schaum23.input.pamphlet
+++ b/src/input/schaum23.input.pamphlet
@@ -13,7 +13,7 @@ $$\int{\csc{ax}}=
 \frac{1}{a}\ln(\csc{ax}-\cot{ax})=
 \frac{1}{a}\ln\tan{\frac{ax}{2}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum23.output
 )set message test on
@@ -173,14 +173,14 @@ ff2:=complexNormalize ee2
 --R   (15)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.462~~~~~$\displaystyle
 \int{\csc^2{ax}}~dx$}
 $$\int{\csc^2{ax}}=
 -\frac{\cot{ax}}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 16 of 55
@@ -226,14 +226,14 @@ dd:=cotrule cc
 --R   (5)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.463~~~~~$\displaystyle
 \int{\csc^3{ax}}~dx$}
 $$\int{\csc^3{ax}}=
 -\frac{\csc{ax}\cot{ax}}{2a}+\frac{1}{2a}\ln\tan{\frac{ax}{2}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 21 of 55
@@ -401,14 +401,14 @@ hh:=complexNormalize gg
 --R   (11)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.464~~~~~$\displaystyle
 \int{\csc^n{ax}\cot{ax}}~dx$}
 $$\int{\csc^n{ax}\cot{ax}}=
 -\frac{csc^n{ax}}{na}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 32 of 55
@@ -458,14 +458,14 @@ normalize cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.465~~~~~$\displaystyle
 \int{\frac{dx}{\csc{ax}}}~dx$}
 $$\int{\frac{1}{\csc{ax}}}=
 -\frac{\cos{ax}}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 36 of 55
@@ -493,7 +493,7 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.466~~~~~$\displaystyle
 \int{x\csc{ax}}~dx$}
@@ -501,7 +501,7 @@ $$\int{x\csc{ax}}=
 \frac{1}{a^2}\left\{ax+\frac{(ax)^3}{18}+\frac{7(ax)^5}{1800}
 +\cdots+\frac{2(2^{2n-1}-1)B_n(ax)^{2n+1}}{(2n+1)!}+\cdots\right\}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 39 of 55     14:466 Axiom cannot compute this integral
@@ -514,7 +514,7 @@ aa:=integrate(x*csc(a*x),x)
 --R        ++
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.467~~~~~$\displaystyle
 \int{\frac{\csc{ax}}{x}}~dx$}
@@ -522,7 +522,7 @@ $$\int{\frac{\csc{ax}}{x}}=
 -\frac{1}{ax}+\frac{(ax)}{6}+\frac{7(ax)^3}{1800}
 +\cdots+\frac{2(2^{2n-1}-1)B_n(ax)^{2n-1}}{(2n-1)(2n)!}+\cdots
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 40 of 55     14:467 Axiom cannot compute this integral
@@ -535,14 +535,14 @@ aa:=integrate(csc(a*x)/x,x)
 --I        ++       %H
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.468~~~~~$\displaystyle
 \int{x\csc^2{ax}}~dx$}
 $$\int{x\csc^2{ax}}=
 -\frac{x\cot{ax}}{a}+\frac{1}{a^2}\ln\sin{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 41 of 55
@@ -615,14 +615,14 @@ ee:=expandLog dd
 --R            a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.469~~~~~$\displaystyle
 \int{\frac{dx}{q+p\csc{ax}}}~dx$}
 $$\int{\frac{1}{q+p\csc{ax}}}=
 \frac{x}{q}-\frac{p}{q}\int{\frac{1}{p+q\sin{ax}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 47 of 55
@@ -841,7 +841,7 @@ cc4:=aa.2-bb2
 --R   (8)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.470~~~~~$\displaystyle
 \int{\csc^n{ax}}~dx$}
@@ -849,7 +849,7 @@ $$\int{\csc^n{ax}}=
 -\frac{\csc^{n-2}{ax}\cot{ax}}{a(n-1)}
 +\frac{n-2}{n-1}\int{\csc^{n-2}{ax}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 55 of 55     14:470 Axiom cannot compute this integral
@@ -865,7 +865,7 @@ aa:=integrate(csc(a*x)^n,x)
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum24.input.pamphlet b/src/input/schaum24.input.pamphlet
index 3aaa620..27ce255 100644
--- a/src/input/schaum24.input.pamphlet
+++ b/src/input/schaum24.input.pamphlet
@@ -12,7 +12,7 @@
 $$\int{\sin^{-1}{\frac{x}{a}}}=
 x\sin^{-1}{\frac{x}{a}}+\sqrt{a^2-x^2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum24.output
 )set message test on
@@ -58,7 +58,7 @@ cc:=aa-bb
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.472~~~~~$\displaystyle
 \int{x\sin^{-1}{\frac{x}{a}}}~dx$}
@@ -66,7 +66,7 @@ $$\int{x\sin^{-1}{\frac{x}{a}}}=
 \left(\frac{x^2}{2}-\frac{a^2}{4}\right)\sin^{-1}{\frac{x}{a}}
 +\frac{x\sqrt{a^2-x^2}}{4}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 4 of 146
@@ -110,16 +110,16 @@ cc:=aa-bb
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 Here we try to understand why we cannot find a simplification
 that makes these two expressions equal. If the expressions were
 equal then we could use them as functions, substitute floating
 point values and expect the same numeric results. So we try that here.
-<<*>>=
+\begin{chunk}{*}
 )clear all
-@
+\end{chunk}
 This is the initial integrand.
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 146
 t1:=x*asin(x/a)
 --R
@@ -128,9 +128,9 @@ t1:=x*asin(x/a)
 --R               a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 This is the integral result provided by Axiom.
-<<*>>=
+\begin{chunk}{*}
 --S 8 of 146
 t2:=integrate(t1,x)
 --R
@@ -144,9 +144,9 @@ t2:=integrate(t1,x)
 --R                                8
 --R                                          Type: Union(Expression Integer,...)
 --E
-@
+\end{chunk}
 This is the derivative of the integral computed by Axiom
-<<*>>=
+\begin{chunk}{*}
 --S 9 of 146
 t3:=D(t2,x)
 --R
@@ -160,9 +160,9 @@ t3:=D(t2,x)
 --R                     2
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 This is the integral result provided by Schaums
-<<*>>=
+\begin{chunk}{*}
 --S 10 of 146
 t4:=(x^2/2-a^2/4)*asin(x/a)+(x*sqrt(a^2-x^2))/4
 --R
@@ -174,10 +174,10 @@ t4:=(x^2/2-a^2/4)*asin(x/a)+(x*sqrt(a^2-x^2))/4
 --R                        4
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 This is the derivative of the integral of the original function
 according to Schaums.
-<<*>>=
+\begin{chunk}{*}
 --S 11 of 146
 t5:=D(t4,x)
 --R
@@ -197,9 +197,9 @@ t5:=D(t4,x)
 --R                                          \|    a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 Now we create a function for computing the integrand's values.
-<<*>>=
+\begin{chunk}{*}
 --S 12 of 146
 f:=makeFloatFunction(t1,x,a)
 --I   Compiling function %BF with type (DoubleFloat,DoubleFloat) -> 
@@ -208,9 +208,9 @@ f:=makeFloatFunction(t1,x,a)
 --I   (6)  theMap(MKBCFUNC;binaryFunction;SM;2!0,120)
 --R                             Type: ((DoubleFloat,DoubleFloat) -> DoubleFloat)
 --E
-@
+\end{chunk}
 Now we create a function for computing Axiom's values for its integrand.
-<<*>>=
+\begin{chunk}{*}
 --S 13 of 146
 axiom:=makeFloatFunction(t3,x,a)
 --I   Compiling function %BJ with type (DoubleFloat,DoubleFloat) -> 
@@ -219,9 +219,9 @@ axiom:=makeFloatFunction(t3,x,a)
 --I   (7)  theMap(MKBCFUNC;binaryFunction;SM;2!0,996)
 --R                             Type: ((DoubleFloat,DoubleFloat) -> DoubleFloat)
 --E
-@
+\end{chunk}
 Now we create a function for computing Schams values for its integrand.
-<<*>>=
+\begin{chunk}{*}
 --S 14 of 146
 schaums:=makeFloatFunction(t5,x,a)
 --I   Compiling function %BK with type (DoubleFloat,DoubleFloat) -> 
@@ -230,14 +230,14 @@ schaums:=makeFloatFunction(t5,x,a)
 --I   (8)  theMap(MKBCFUNC;binaryFunction;SM;2!0,62)
 --R                             Type: ((DoubleFloat,DoubleFloat) -> DoubleFloat)
 --E
-@
+\end{chunk}
 And now we compute the floating point values for each function
 and compare the results. As can be clearly seen, the Axiom result
 lies on a different branch cut from the Schaums result and the
 functions are only equal within the branch cut range. This is a
 generic problem with all of the inverse functions that are
 multi-valued.
-<<*>>=
+\begin{chunk}{*}
 --S 15 of 146     14:472 Schaums and Axiom agree (modulo branch cuts)
 [ [f(i::Float,i::Float+1.0::Float)::Float,axiom(i::Float,i::Float+1.0::Float)::Float,schaums(i::Float,i::Float+1.0::Float)::Float] for i in 1..4]
 --R
@@ -248,14 +248,14 @@ multi-valued.
 --R    [3.7091808720 064496363,- 2.5740044351 731374839,3.7091808720 064500804]]
 --R                                                        Type: List List Float
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.473~~~~~$\displaystyle
 \int{x^2\sin^{-1}\frac{x}{a}}~dx$}
 $$\int{x^2\sin^{-1}\frac{x}{a}}=
 \frac{x^3}{3}\sin^{-1}\frac{x}{a}+\frac{(x^2+2a^2)\sqrt{a^2-x^2}}{9}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 16 of 146
@@ -298,7 +298,7 @@ cc:=aa-bb
 --R                          6
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.474~~~~~$\displaystyle
 \int{\frac{\sin^{-1}(x/a)}{x}}~dx$}
@@ -307,7 +307,7 @@ $$\int{\frac{\sin^{-1}(x/a)}{x}}=
 +\frac{1\cdot 3(x/a)^5}{2\cdot 4\cdot 5\cdot 5}
 +\frac{1\cdot 3\cdot 5(x/a)^7}{2\cdot 4\cdot 6\cdot 7\cdot 7}+\cdots
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 19 of 146     14:474 Axiom cannot compute this integral
@@ -321,7 +321,7 @@ aa:=integrate(asin(x/a)/x,x)
 --I        ++      %H
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.475~~~~~$\displaystyle
 \int{\frac{\sin^{-1}{(x/a)}}{x^2}}~dx$}
@@ -329,7 +329,7 @@ $$\int{\frac{\sin^{-1}{(x/a)}}{x^2}}=
 -\frac{\sin^{-1}(x/a)}{x}
 -\frac{1}{a}\ln\left(\frac{a+\sqrt{a^2-x^2}}{x}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 20 of 146
@@ -379,14 +379,14 @@ cc:=aa-bb
 --R     2a x
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.476~~~~~$\displaystyle
 \int{\left(sin^{-1}\frac{x}{a}\right)^2}~dx$}
 $$\int{\left(sin^{-1}\frac{x}{a}\right)^2}=
 x\left(\sin^{-1}\frac{x}{a}\right)^2-2x+2\sqrt{a^2-x^2}\sin^{-1}\frac{x}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 23 of 146
@@ -433,14 +433,14 @@ cc:=aa-bb
 --R     4
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.477~~~~~$\displaystyle
 \int{\cos^{-1}\frac{x}{a}}~dx$}
 $$\int{\cos^{-1}\frac{x}{a}}=
 x\cos^{-1}\frac{x}{a}-\sqrt{a^2-x^2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 26 of 146
@@ -481,7 +481,7 @@ cc:=aa-bb
 --R                         2
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.478~~~~~$\displaystyle
 \int{x\cos^{-1}\frac{x}{a}}~dx$}
@@ -489,7 +489,7 @@ $$\int{x\cos^{-1}\frac{x}{a}}=
 \left(\frac{x^2}{2}-\frac{a^2}{4}\right)\cos^{-1}\frac{x}{a}
 -\frac{x\sqrt{a^2-x^2}}{4}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 29 of 146
@@ -532,14 +532,14 @@ cc:=aa-bb
 --R                                  8
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.479~~~~~$\displaystyle
 \int{x^2\cos^{-1}\frac{x}{a}}~dx$}
 $$\int{x^2\cos^{-1}\frac{x}{a}}=
 \frac{x^3}{3}\cos^{-1}\frac{x}{a}-\frac{(x^2+2a^2)\sqrt{a^2-x^2}}{9}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 32 of 146
@@ -582,14 +582,14 @@ cc:=aa-bb
 --R                         6
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.480~~~~~$\displaystyle
 \int{\frac{\cos^{-1}(x/a)}{x}}~dx$}
 $$\int{\frac{\cos^{-1}(x/a)}{x}}=
 \frac{x}{2}\ln{x}-\int{\frac{\sin^{-1}(x/a)}{x}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 35 of 146     14:480 Axiom cannot compute this integral
@@ -603,14 +603,14 @@ aa:=integrate(acos(x/a)/x,x)
 --I        ++      %H
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.481~~~~~$\displaystyle
 \int{\frac{\cos^{-1}(x/a)}{x^2}}~dx$}
 $$\int{\frac{\cos^{-1}(x/a)}{x^2}}=
 -\frac{\cos^{-1}(x/a)}{x}+\frac{1}{a}\ln\left(\frac{a+\sqrt{a^2-x^2}}{x}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 36 of 146
@@ -660,14 +660,14 @@ cc:=aa-bb
 --R     2a x
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.482~~~~~$\displaystyle
 \int{\left(\cos^{-1}\frac{x}{a}\right)^2}~dx$}
 $$\int{\left(\cos^{-1}\frac{x}{a}\right)^2}=
 x\left(\cos^{-1}\frac{x}{a}\right)^2-2x-2\sqrt{a^2-x^2}\cos^{-1}\frac{x}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 39 of 146
@@ -714,14 +714,14 @@ cc:=aa-bb
 --R     4
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.483~~~~~$\displaystyle
 \int{\tan^{-1}\frac{x}{a}}~dx$}
 $$\int{\tan^{-1}\frac{x}{a}}=
 x\tan^{-1}\frac{x}{a}-\frac{a}{2}\ln(x^2+a^2)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 42 of 146
@@ -792,14 +792,14 @@ ee:=expandLog dd
 --R              2
 --R                                             Type: Expression Complex Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.484~~~~~$\displaystyle
 \int{x\tan^{-1}\frac{x}{a}}~dx$}
 $$\int{x\tan^{-1}\frac{x}{a}}=
 \frac{1}{2}(x^2+a^2)\tan^{-1}\frac{x}{a}-\frac{ax}{2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 48 of 146     14:484 Axiom cannot compute this integral
@@ -812,14 +812,14 @@ aa:=integrate(x*tan(x/a),x)
 --R        ++           a
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.485~~~~~$\displaystyle
 \int{x^2\tan^{-1}\frac{x}{a}}~dx$}
 $$\int{x^2\tan^{-1}\frac{x}{a}}=
 \frac{x^3}{3}\tan^{-1}\frac{x}{a}-\frac{ax^2}{6}+\frac{a^3}{6}\ln(x^2+a^2)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 49 of 146
@@ -857,14 +857,14 @@ cc:=aa-bb
 --R                       6
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.486~~~~~$\displaystyle
 \int{\frac{\tan^{-1}(x/a)}{x}}~dx$}
 $$\int{\frac{\tan^{-1}(x/a)}{x}}=
 \frac{x}{a}-\frac{(x/a)^3}{3^2}+\frac{(x/a)^5}{5^2}-\frac{(x/a)^7}{7^2}+\cdots
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 52 of 146     14:486 Axiom cannot compute this integral
@@ -878,7 +878,7 @@ aa:=integrate(atan(x/a)/x,x)
 --I        ++      %H
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.487~~~~~$\displaystyle
 \int{\frac{\tan^{-1}(x/a)}{x^2}}~dx$}
@@ -886,7 +886,7 @@ $$\int{\frac{\tan^{-1}(x/a)}{x^2}}=
 -\frac{1}{x}\tan^{-1}\frac{x}{a}
 -\frac{1}{2a}\ln\left(\frac{x^2+a^2}{x^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 53 of 146
@@ -968,14 +968,14 @@ ee:=expandLog dd
 --R               2x
 --R                                             Type: Expression Complex Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.488~~~~~$\displaystyle
 \int{\cot^{-1}\frac{x}{a}}~dx$}
 $$\int{\cot^{-1}\frac{x}{a}}=
 x\cot^{-1}\frac{x}{a}+\frac{a}{2}\ln(x^2+a^2)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 59 of 146
@@ -1068,14 +1068,14 @@ ff:=expandLog %
 --R   (8)  0
 --R                                             Type: Expression Complex Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.489~~~~~$\displaystyle
 \int{x\cot^{-1}\frac{x}{a}}~dx$}
 $$\int{x\cot^{-1}\frac{x}{a}}=
 \frac{1}{2}(x^2+a^2)\cot^{-1}\frac{x}{a}+\frac{ax}{2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 67 of 146
@@ -1168,14 +1168,14 @@ ff:=expandLog ee
 --R   (8)  0
 --R                                             Type: Expression Complex Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.490~~~~~$\displaystyle
 \int{x^2\cot^{-1}\frac{x}{a}}~dx$}
 $$\int{x^2\cot^{-1}\frac{x}{a}}=
 \frac{x^3}{3}\cot^{-1}\frac{x}{a}+\frac{ax^2}{6}-\frac{a^3}{6}\ln(x^2+a^2)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 75 of 146
@@ -1268,14 +1268,14 @@ ff:=expandLog ee
 --R   (8)  0
 --R                                             Type: Expression Complex Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.491~~~~~$\displaystyle
 \int{\frac{\cot^{-1}(x/a)}{x}}~dx$}
 $$\int{\frac{\cot^{-1}(x/a)}{x}}=
 \frac{\pi}{2}\ln{x}-\int{\frac{\tan^{-1}(x/a)}{x}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 83 of 146     14:491 Axiom cannot compute this integral
@@ -1289,14 +1289,14 @@ aa:=integrate(acot(x/a)/x,x)
 --I        ++      %H
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.492~~~~~$\displaystyle
 \int{\frac{\cot^{-1}(x/a)}{x^2}}~dx$}
 $$\int{\frac{\cot^{-1}(x/a)}{x^2}}=
 -\frac{cot^{-1}(x/a)}{x}+\frac{1}{2a}\ln\left(\frac{x^2+a^2}{x^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 84 of 146
@@ -1406,7 +1406,7 @@ ff:=expandLog ee
 --R   (8)  0
 --R                                             Type: Expression Complex Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.493~~~~~$\displaystyle
 \int{\sec^{-1}\frac{x}{a}}~dx$}
@@ -1423,7 +1423,7 @@ x\sec^{-1}\frac{x}{a}+a\ln(x+\sqrt{x^2-a^2})
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 92 of 146
@@ -1513,7 +1513,7 @@ cc2:=aa-bb2
 --R     2
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.494~~~~~$\displaystyle
 \int{x\sec^{-1}\frac{x}{a}}~dx$}
@@ -1530,7 +1530,7 @@ $$\int{x\sec^{-1}\frac{x}{a}}=
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 97 of 146
@@ -1601,7 +1601,7 @@ cc2:=aa-bb2
 --R                                        4
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.495~~~~~$\displaystyle
 \int{x^2\sec^{-1}\frac{x}{a}}~dx$}
@@ -1625,7 +1625,7 @@ $$\int{x^2\sec^{-1}\frac{x}{a}}=
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 102 of 146
@@ -1731,7 +1731,7 @@ cc2:=aa-bb2
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.496~~~~~$\displaystyle
 \int{\frac{\sec^{-1}(x/a)}{x}}~dx$}
@@ -1740,7 +1740,7 @@ $$\int{\frac{\sec^{-1}(x/a)}{x}}=
 +\frac{1\cdot 3(a/x)^5}{2\cdot 4\cdot 5\cdot 5}
 +\frac{1\cdot 3\cdot 5(a/x)^7}{2\cdot 4\cdot 6\cdot 7\cdot 7}+\cdots
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 107 of 146    14:496 Axiom cannot compute this integral
@@ -1754,7 +1754,7 @@ aa:=integrate(asec(x/a)/x,x)
 --I        ++      %H
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.497~~~~~$\displaystyle
 \int{\frac{\sec^{-1}(x/a)}{x^2}}~dx$}
@@ -1771,7 +1771,7 @@ $$\int{\frac{\sec^{-1}(x/a)}{x^2}}=
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 108 of 146
@@ -1853,7 +1853,7 @@ cc2:=aa-bb2
 --R     2a x\|2
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.498~~~~~$\displaystyle
 \int{\csc^{-1}\frac{x}{a}}~dx$}
@@ -1870,7 +1870,7 @@ x\csc^{-1}\frac{x}{a}-a\ln(x+\sqrt{x^2-a^2})
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 113 of 146
@@ -1961,7 +1961,7 @@ cc2:=aa-bb2
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.499~~~~~$\displaystyle
 \int{x\csc^{-1}\frac{x}{a}}~dx$}
@@ -1978,7 +1978,7 @@ $$\int{x\csc^{-1}\frac{x}{a}}=
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 118 of 146
@@ -2049,7 +2049,7 @@ cc2:=aa-bb2
 --R                                         4
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.500~~~~~$\displaystyle
 \int{x^2\csc^{-1}\frac{x}{a}}~dx$}
@@ -2073,7 +2073,7 @@ $$\int{x^2\csc^{-1}\frac{x}{a}}=
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 123 of 146
@@ -2178,7 +2178,7 @@ cc2:=aa-bb2
 --R     6
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.501~~~~~$\displaystyle
 \int{\frac{\csc^{-1}(x/a)}{x}}~dx$}
@@ -2187,7 +2187,7 @@ $$\int{\frac{\csc^{-1}(x/a)}{x}}=
 +\frac{1\cdot 3(a/x)^5}{2\cdot 4\cdot 5\cdot 5}
 +\frac{1\cdot 3\cdot 5(a/x)^7}{2\cdot 4\cdot 6\cdot 7\cdot 7}+\cdots\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 128 of 146    14:501 Axiom cannot compute this integral
@@ -2201,7 +2201,7 @@ aa:=integrate(acsc(x/a)/x,x)
 --I        ++      %H
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.502~~~~~$\displaystyle
 \int{\frac{\csc^{-1}(x/a)}{x^2}}~dx$}
@@ -2218,7 +2218,7 @@ $$\int{\frac{\csc^{-1}(x/a)}{x^2}}=
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 129 of 146
@@ -2302,14 +2302,14 @@ cc2:=aa-bb2
 --R     2a x\|2
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.503~~~~~$\displaystyle
 \int{x^m\sin^{-1}\frac{x}{a}}~dx$}
 $$\int{x^m\sin^{-1}\frac{x}{a}}=
 \frac{x^{m+1}}{m+1}\sin^{-1}\frac{x}{a}-\frac{1}{m+1}\int{\frac{x^{m+1}}{\sqrt{a^2-x^2}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 134 of 146    14:503 Axiom cannot compute this integral
@@ -2322,14 +2322,14 @@ aa:=integrate(x^m*asin(x/a),x)
 --R        ++         a
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.504~~~~~$\displaystyle
 \int{x^m\cos^{-1}\frac{x}{a}}~dx$}
 $$\int{x^m\cos^{-1}\frac{x}{a}}=
 \frac{x^{m+1}}{m+1}\cos^{-1}\frac{x}{a}+\frac{1}{m+1}\int{\frac{x^{m+1}}{\sqrt{a^2-x^2}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 135 of 146    14:504 Axiom cannot compute this integral
@@ -2342,7 +2342,7 @@ aa:=integrate(x^m*acos(x/a),x)
 --R        ++         a
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.505~~~~~$\displaystyle
 \int{x^m\tan^{-1}\frac{x}{a}}~dx$}
@@ -2355,7 +2355,7 @@ form solution to the problem. However, the t1 integral below does
 not have a closed form solution. Note that we did not return a
 result for the prior two integrals, nor for the next integral. They
 have the same form but are expressed in terms of asin, acos, and acot.
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 136 of 146
@@ -2374,14 +2374,14 @@ aa:=integrate(x*m*atan(x/a),x)
 --S 137 of 146
 t1:=integrate(x^(m+1)/(x^2+a^2),x)
 --E
-@
+\end{chunk}
 Since we cannot get a closed form version of the prior integral
 we proceed to try to prove that Axiom got a correct answer. We
 do this by computing the derivate of 'aa' above and finding the
 difference from the original formula.
 
 So first we generate the derivative:
-<<*>>=
+\begin{chunk}{*}
 
 --S 138 of 146
 bb:=D(aa,x)
@@ -2394,9 +2394,9 @@ bb:=D(aa,x)
 --R                  2
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 Then we input the original expression
-<<*>>=
+\begin{chunk}{*}
 --S 139 of 146
 aa1:=x*m*atan(x/a)
 --R
@@ -2405,9 +2405,9 @@ aa1:=x*m*atan(x/a)
 --R                 a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 Now we take their difference
-<<*>>=
+\begin{chunk}{*}
 --S 140 of 146
 dd:=aa1-bb
 --R
@@ -2419,9 +2419,9 @@ dd:=aa1-bb
 --R                        2
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 Now we input the atan transformation
-<<*>>=
+\begin{chunk}{*}
 --S 141 of 146
 atanrule:=rule(atan(x) == -%i/2*log((1+%i*x)/(1-%i*x)))
 --R
@@ -2432,9 +2432,9 @@ atanrule:=rule(atan(x) == -%i/2*log((1+%i*x)/(1-%i*x)))
 --R                             2
 --R        Type: RewriteRule(Integer,Complex Integer,Expression Complex Integer)
 --E
-@
+\end{chunk}
 And apply the transformation to the difference
-<<*>>=
+\begin{chunk}{*}
 --S 142 of 146
 ee:=atanrule dd
 --R
@@ -2447,9 +2447,9 @@ ee:=atanrule dd
 --R                                    4
 --R                                             Type: Expression Complex Integer
 --E
-@
+\end{chunk}
 And now we simplify
-<<*>>=
+\begin{chunk}{*}
 --S 143 of 146    14:505 SCHAUMS AND AXIOM DISAGREE? (branch cuts?)
 ff:=expandLog ee
 --R
@@ -2458,7 +2458,7 @@ ff:=expandLog ee
 --R                 2
 --R                                             Type: Expression Complex Integer
 --E
-@
+\end{chunk}
 And we get the surprising result that they are not equal.
 In fact, they differ by a complex value depending on x.
 Likely there is a branch-cut issue lurking somewhere.
@@ -2469,7 +2469,7 @@ $$\int{x^m\cot^{-1}\frac{x}{a}}=
 \frac{x^{m+1}}{m+1}\cot^{-1}\frac{x}{a}
 +\frac{a}{m+1}\int{\frac{x^{m+1}}{x^2+a^2}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 144 of 146    14:506 Axiom cannot compute this integral
@@ -2482,7 +2482,7 @@ aa:=integrate(x^m*acot(x/a),x)
 --R        ++         a
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.507~~~~~$\displaystyle
 \int{x^m\sec^{-1}\frac{x}{a}}~dx$}
@@ -2499,7 +2499,7 @@ $$\int{x^m\sec^{-1}\frac{x}{a}}=
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 145 of 146    14:507 Axiom cannot compute this integral
@@ -2512,7 +2512,7 @@ aa:=integrate(x^m*asec(x/a),x)
 --R        ++         a
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.508~~~~~$\displaystyle
 \int{x^m\csc^{-1}\frac{x}{a}}~dx$}
@@ -2529,7 +2529,7 @@ $$\int{x^m\csc^{-1}\frac{x}{a}}=
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 146 of 146    14:508 Axiom cannot compute this integral
@@ -2545,7 +2545,7 @@ aa:=integrate(x^m*acsc(x/a),x)
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum25.input.pamphlet b/src/input/schaum25.input.pamphlet
index 5a28a8d..ed61ae9 100644
--- a/src/input/schaum25.input.pamphlet
+++ b/src/input/schaum25.input.pamphlet
@@ -12,7 +12,7 @@
 $$\int{e^{ax}}=
 \frac{e^{ax}}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum25.output
 )set message test on
@@ -45,14 +45,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.510~~~~~$\displaystyle
 \int{xe^{ax}}~dx$}
 $$\int{xe^{ax}}=
 \frac{e^{ax}}{x}\left(x-\frac{1}{a}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 4 of 40
@@ -83,14 +83,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.511~~~~~$\displaystyle
 \int{x^2e^{ax}}~dx$}
 $$\int{x^2e^{ax}}=
 \frac{e^{ax}}{x}\left(x^2-\frac{2x}{a}+\frac{2}{a^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 7 of 40
@@ -121,7 +121,7 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.512~~~~~$\displaystyle
 \int{x^ne^{ax}}~dx$}
@@ -137,7 +137,7 @@ $$\begin{array}{rl}
 &\hbox{\hskip 5cm}{\rm\ if\ }n={\rm positive integer}
 \end{array}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 10 of 40     14:512 Axiom cannot compute this integral
@@ -150,7 +150,7 @@ aa:=integrate(x^n*%e^(a*x),x)
 --R                                          Type: Union(Expression Integer,...)
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.513~~~~~$\displaystyle
 \int{\frac{e^{ax}}{x}}~dx$}
@@ -158,7 +158,7 @@ $$\int{\frac{e^{ax}}{x}}=
 \ln{x}+\frac{ax}{1\cdot 1!}+\frac{(ax)^2}{2\cdot 2!}
 +\frac{(ax)^3}{3\cdot 3!}+\cdots
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 11 of 40     14:513 Schaums and Axiom agree by definition
@@ -167,14 +167,14 @@ aa:=integrate(%e^(a*x)/x,x)
 --R   (1)  Ei(a x)
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.514~~~~~$\displaystyle
 \int{\frac{e^{ax}}{x^n}}~dx$}
 $$\int{\frac{e^{ax}}{x^n}}=
 \frac{-e^{ax}}{(n-1)x^{n-1}}+\frac{a}{n-1}\int{\frac{e^{ax}}{x^{n-1}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 12 of 40     14:514 Axiom cannot compute this integral
@@ -187,14 +187,14 @@ aa:=integrate(%e^(a*x)/x^n,x)
 --I               %I
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.515~~~~~$\displaystyle
 \int{\frac{dx}{p+qe^{ax}}}~dx$}
 $$\int{\frac{1}{p+qe^{ax}}}=
 \frac{x}{p}-\frac{1}{ap}\ln(p+qe^{ax})
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 13 of 40
@@ -223,14 +223,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.516~~~~~$\displaystyle
 \int{\frac{dx}{(p+qe^{ax})^2}}~dx$}
 $$\int{\frac{dx}{(p+qe^{ax})^2}}=
 \frac{x}{p^2}+\frac{1}{ap(p+qe^{ax})}-\frac{1}{ap^2}\ln(p+qe^{ax})
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 16 of 40
@@ -261,7 +261,7 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.517~~~~~$\displaystyle
 \int{\frac{dx}{pe^{ax}+qe^{ax}}}~dx$}
@@ -277,7 +277,7 @@ $$\int{\frac{dx}{pe^{ax}+qe^{ax}}}=
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 19 of 40
@@ -388,14 +388,14 @@ cc4:=aa.2-bb2
 --R                             2a\|- p q \|p q
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.518~~~~~$\displaystyle
 \int{e^{ax}\sin{bx}}~dx$}
 $$\int{e^{ax}\sin{bx}}=
 \frac{e^{ax}(a\sin{bx}-b\cos{bx})}{a^2+b^2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 26 of 40
@@ -426,14 +426,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.519~~~~~$\displaystyle
 \int{e^{ax}\cos{bx}}~dx$}
 $$\int{e^{ax}\cos{bx}}=
 \frac{e^{ax}(a\cos{bx}-b\sin{bx})}{a^2+b^2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 29 of 40
@@ -464,7 +464,7 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.520~~~~~$\displaystyle
 \int{xe^{ax}\sin{bx}}~dx$}
@@ -472,7 +472,7 @@ $$\int{xe^{ax}\sin{bx}}=
 \frac{xe^{ax}(a\sin{bx}-b\cos{bx})}{a^2+b^2}
 -\frac{e^{ax}\left((a^2-b^2)\sin{bx}-2ab\cos{bx}\right)}{(a^2+b^2)^2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 32 of 40
@@ -505,7 +505,7 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.521~~~~~$\displaystyle
 \int{xe^{ax}\cos{bx}}~dx$}
@@ -513,7 +513,7 @@ $$\int{xe^{ax}\cos{bx}}=
 \frac{xe^{ax}(a\cos{bx}-b\sin{bx})}{a^2+b^2}
 -\frac{e^{ax}\left((a^2-b^2)\cos{bx}-2ab\sin{bx}\right)}{(a^2+b^2)^2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 35 of 40
@@ -546,14 +546,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.522~~~~~$\displaystyle
 \int{e^{ax}\ln{x}}~dx$}
 $$\int{e^{ax}\ln{x}}=
 \frac{e^{ax}\ln{x}}{a}-\frac{1}{a}\int{\frac{e^{ax}}{x}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 38 of 40     14:522 Schaums and Axiom agree by definition
@@ -565,7 +565,7 @@ aa:=integrate(%e^(a*x)*log(x),x)
 --R                  a
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.523~~~~~$\displaystyle
 \int{e^{ax}\sin^n{bx}}~dx$}
@@ -573,7 +573,7 @@ $$\int{e^{ax}\sin^n{bx}}=
 \frac{e^{ax}\sin^{n-1}{bx}}{a^2+n^2b^2}(a\sin{bx}-nb\cos{bx})
 +\frac{n(n-1)b^2}{a^2+n^2b^2}\int{e^{ax}\sin^{n-2}{bx}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 39 of 40     14:523 Axiom cannot compute this integral
@@ -585,7 +585,7 @@ aa:=integrate(%e^(a*x)*sin(b*x)^n,x)
 --R        ++
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.524~~~~~$\displaystyle
 \int{e^{ax}\cos^n{bx}}~dx$}
@@ -593,7 +593,7 @@ $$\int{e^{ax}\cos^n{bx}}=
 \frac{e^{ax}\cos^{n-1}{bx}}{a^2+n^2b^2}(a\cos{bx}-nb\sin{bx})
 +\frac{n(n-1)b^2}{a^2+n^2b^2}\int{e^{ax}\cos^{n-2}{bx}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 40 of 40     14:524 Axiom cannot compute this integral
@@ -608,7 +608,7 @@ aa:=integrate(%e^(a*x)*cos(b*x)^n,x)
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum26.input.pamphlet b/src/input/schaum26.input.pamphlet
index dae509e..5f63104 100644
--- a/src/input/schaum26.input.pamphlet
+++ b/src/input/schaum26.input.pamphlet
@@ -12,7 +12,7 @@
 $$\int{ln x}=
 x\ln{x}-x
 $$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum26.output
 )set message test on
@@ -40,14 +40,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.526~~~~~$\displaystyle
 \int{x\ln{x}}~dx$}
 $$\int{x\ln{x}}=
 \frac{x^2}{2}\left(\ln{x}-\frac{1}{2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 4 of 43
@@ -77,14 +77,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.527~~~~~$\displaystyle
 \int{x^m\ln{x}}~dx$}
 $$\int{x^m\ln{x}}=
 \frac{x^{m+1}}{m+1}\left(\ln{x}-\frac{1}{m+1}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 7 of 43
@@ -146,14 +146,14 @@ ee:=complexNormalize dd
 --R   (6)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.528~~~~~$\displaystyle
 \int{\frac{\ln{x}}{x}}~dx$}
 $$\int{\frac{\ln{x}}{x}}=
 \frac{1}{2}\ln^2{x}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 13 of 43
@@ -183,14 +183,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.529~~~~~$\displaystyle
 \int{\frac{\ln{x}}{x^2}}~dx$}
 $$\int{\frac{\ln{x}}{x^2}}=
 -\frac{\ln{x}}{x}-\frac{1}{x}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 16 of 43
@@ -218,14 +218,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.530~~~~~$\displaystyle
 \int{\ln^2{x}}~dx$}
 $$\int{\ln^2{x}}=
 x\ln^2{x}-2x\ln{x}+2x
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 19 of 43
@@ -251,14 +251,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.531~~~~~$\displaystyle
 \int{\frac{\ln^n{x}}{x}}~dx$}
 $$\int{\frac{\ln^n{x}}{x}}=
 \frac{ln^{n+1}{x}}{n+1}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 22 of 43
@@ -316,14 +316,14 @@ ee:=complexNormalize dd
 --R   (6)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.532~~~~~$\displaystyle
 \int{\frac{dx}{x\ln{x}}}$}
 $$\int{\frac{1}{x\ln{x}}}=
 \ln(\ln{x})
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 28 of 43
@@ -348,7 +348,7 @@ cc:=aa-bb
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.533~~~~~$\displaystyle
 \int{\frac{dx}{\ln{x}}}$}
@@ -356,7 +356,7 @@ $$\int{\frac{1}{\ln{x}}}=
 \ln(\ln{x})+\ln{x}+\frac{\ln^2{x}}{2\cdot 2!}
 +\frac{\ln^3{x}}{3\cdot 3!}+\cdots
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 31 of 43     14:533 Schaums and Axiom agree by definition
@@ -366,7 +366,7 @@ aa:=integrate(1/log(x),x)
 --R   (1)  li(x)
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.534~~~~~$\displaystyle
 \int{\frac{x^m}{\ln{x}}}~dx$}
@@ -374,7 +374,7 @@ $$\int{\frac{x^m}{\ln{x}}}=
 \ln(\ln{x})+(m+1)\ln{x}+\frac{(m+1)^2\ln^2{x}}{2\cdot 2!}
 +\frac{(m+1)^3\ln^3{x}}{3\cdot 3!}+\cdots
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 32 of 43     14:534 Axiom cannot compute this integral
@@ -387,14 +387,14 @@ aa:=integrate(x^m/log(x),x)
 --I        ++   log(%I)
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.535~~~~~$\displaystyle
 \int{\ln^n{x}}~dx$}
 $$\int{\ln^n{x}}=
 x\ln^n{x}-n\int{\ln^{n-1}{x}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 33 of 43     14:535 Axiom cannot compute this integral
@@ -407,14 +407,14 @@ aa:=integrate(log(x)^n,x)
 --R        ++
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.536~~~~~$\displaystyle
 \int{x^m\ln^n{x}}~dx$}
 $$\int{x^m\ln^n{x}}=
 \frac{x^{m+1}\ln^n{x}}{m+1}-\frac{n}{m+1}\int{x^m\ln^{n-1}{x}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 34 of 43     14:536 Axiom cannot compute this integral
@@ -427,14 +427,14 @@ aa:=integrate(x^m*log(x)^n,x)
 --R        ++
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.537~~~~~$\displaystyle
 \int{\ln{(x^2+a^2)}}~dx$}
 $$\int{\ln{(x^2+a^2)}}=
 x\ln(x^2+a^2)-2x+2a\tan^{-1}\frac{x}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 35 of 43
@@ -462,14 +462,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.538~~~~~$\displaystyle
 \int{\ln(x^2-a^2)}~dx$}
 $$\int{\ln(x^2-a^2)}=
 x\ln(x^2-a^2)-2x+a\ln\left(\frac{x+a}{x-a}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 38 of 43
@@ -505,7 +505,7 @@ dd:=expandLog cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.539~~~~~$\displaystyle
 \int{x^m\ln(x^2\pm a^2)}~dx$}
@@ -513,7 +513,7 @@ $$\int{x^m\ln(x^2\pm a^2)}=
 \frac{x^{m-1}\ln(x^2\pm a^2)}{m+1}
 -\frac{2}{m+1}\int{\frac{x^{m+2}}{x^2\pm a^2}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 42 of 43
@@ -542,7 +542,7 @@ aa:=integrate(x^m*log(x^2-a^2),x)
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum27.input.pamphlet b/src/input/schaum27.input.pamphlet
index d1186c6..e0476f7 100644
--- a/src/input/schaum27.input.pamphlet
+++ b/src/input/schaum27.input.pamphlet
@@ -12,7 +12,7 @@
 $$\int{\sinh{ax}}=
 \frac{\cosh{ax}}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum27.output
 )set message test on
@@ -43,14 +43,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.541~~~~~$\displaystyle
 \int{x\sinh{ax}}~dx$}
 $$\int{x\sinh{ax}}=
 \frac{x*\cosh{ax}}{a}-\frac{\sinh{ax}}{a^2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 4 of 84
@@ -80,14 +80,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.542~~~~~$\displaystyle
 \int{x^2\sinh{ax}}~dx$}
 $$\int{x^2\sinh{ax}}=
 \left(\frac{x^2}{a}+\frac{2}{a^3}\right)\cosh{ax}-\frac{2x}{a^2}\sinh{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 7 of 84
@@ -119,14 +119,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.543~~~~~$\displaystyle
 \int{\frac{\sinh{ax}}{x}}~dx$}
 $$\int{\frac{\sinh{ax}}{x}}=
 ax+\frac{(ax)^3}{3\cdot 3!}+\frac{(ax)^5}{5\cdot 5!}+\cdots
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 10 of 84     14:543 Axiom cannot compute this integral
@@ -139,14 +139,14 @@ aa:=integrate(sinh(a*x)/x,x)
 --I        ++       %N
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.544~~~~~$\displaystyle
 \int{\frac{\sinh{ax}}{x^2}}~dx$}
 $$\int{\frac{\sinh{ax}}{x^2}}=
 -\frac{\sinh{ax}}{x}+\int{\frac{\cosh{ax}}{x}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 11 of 84     14:544 Axiom cannot compute this integral
@@ -160,14 +160,14 @@ aa:=integrate(sinh(a*x)/x^2,x)
 --I                 %N
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.545~~~~~$\displaystyle
 \int{\frac{dx}{\sinh{ax}}}~dx$}
 $$\int{\frac{1}{\sinh{ax}}}=
 \frac{1}{a}\ln\tanh{\frac{ax}{2}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 12 of 84
@@ -204,7 +204,7 @@ cc:=aa-bb
 --R     a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.546~~~~~$\displaystyle
 \int{\frac{x~dx}{\sinh{ax}}}~dx$}
@@ -212,7 +212,7 @@ $$\int{\frac{x}{\sinh{ax}}}=
 \frac{1}{a^2}\left\{ax-\frac{(ax)^3}{18}+\frac{7(ax)^5}{1800}-\cdots
 +\frac{2(-1)^n(2^{2n-1})B_n(ax)^{2n+1}}{(2n+1)!}+\cdots\right\}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 15 of 84     14:546 Axiom cannot compute this integral
@@ -225,14 +225,14 @@ aa:=integrate(x/sinh(a*x),x)
 --I        ++   sinh(%N a)
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.547~~~~~$\displaystyle
 \int{\sinh^2{ax}}~dx$}
 $$\int{\sinh^2{ax}}=
 \frac{\sinh{ax}\cosh{ax}}{2a}-\frac{x}{2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 16 of 84
@@ -260,14 +260,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.548~~~~~$\displaystyle
 \int{x\sinh^2{ax}}~dx$}
 $$\int{x\sinh^2{ax}}=
 \frac{x*\sinh{2ax}}{4a}-\frac{\cosh{2ax}}{8a^2}-\frac{x^2}{4}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 19 of 84
@@ -362,14 +362,14 @@ ff:=sinhcoshrule ee
 --R   (9)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.549~~~~~$\displaystyle
 \int{\frac{dx}{\sinh^2{ax}}}~dx$}
 $$\int{\frac{1}{\sinh^2{ax}}}=
 -\frac{\coth{ax}}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 28 of 84
@@ -534,14 +534,14 @@ kk:=sinhcoshrule jj
 --R         a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.550~~~~~$\displaystyle
 \int{\sinh{ax}\sinh{px}}~dx$}
 $$\int{\sinh{ax}\sinh{px}}=
 \frac{\sinh(a+p)x}{2(a+p)}-\frac{\sinh(a-p)x}{2(a-p)}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 45 of 84
@@ -584,14 +584,14 @@ cc:=aa-bb
 --R     (2p  - 2a )sinh(a x)  + (- 2p  + 2a )cosh(a x)
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.551~~~~~$\displaystyle
 \int{\sinh{ax}\sin{px}}~dx$}
 $$\int{\sinh{ax}\sin{px}}=
 \frac{a\cosh{ax}\sin{px}-p\sinh{ax}\cos{px}}{a^2+p^2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 48 of 84
@@ -676,14 +676,14 @@ ee:=coshsqrrule dd
 --R   (7)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.552~~~~~$\displaystyle
 \int{\sinh{ax}\cos{px}}~dx$}
 $$\int{\sinh{ax}\cos{px}}=
 \frac{a\cosh{ax}\cos{px}+p\sinh{ax}\sin{px}}{a^2+p^2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 55 of 84
@@ -768,7 +768,7 @@ ee:=coshsqrrule dd
 --R   (7)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.553~~~~~$\displaystyle
 \int{\frac{dx}{p+q\sinh{ax}}}~dx$}
@@ -776,7 +776,7 @@ $$\int{\frac{1}{p+q\sinh{ax}}}=
 \frac{1}{a\sqrt{p^2+q^2}}
 \ln\left(\frac{qe^{ax}+p-\sqrt{p^2+q^2}}{qe^{ax}+p+\sqrt{p^2+q^2}}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 62 of 84
@@ -862,7 +862,7 @@ cc:=aa-bb
 --R     a\|q  + p
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.554~~~~~$\displaystyle
 \int{\frac{dx}{(p+q\sinh{ax})^2}}~dx$}
@@ -870,7 +870,7 @@ $$\int{\frac{1}{(p+q\sinh{ax})^2}}=
 \frac{-q\cosh{ax}}{a(p^2+q^2)(p+q\sinh{ax})}
 +\frac{p}{p^2+q^2}\int{\frac{1}{p+q\sinh{ax}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 65 of 84
@@ -1015,7 +1015,7 @@ cc:=aa-bb
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.555~~~~~$\displaystyle
 \int{\frac{dx}{p^2+q^2\sinh^2{ax}}}$}
@@ -1031,7 +1031,7 @@ $$\int{\frac{1}{p^2+q^2\sinh^2{ax}}}=
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 69 of 84
@@ -1271,7 +1271,7 @@ cc4:=aa.2-bb2
 --R     2a p\|- q  + p  \|q  - p
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.556~~~~~$\displaystyle
 \int{\frac{dx}{p^2-q^2\sinh^2{ax}}}~dx$}
@@ -1279,7 +1279,7 @@ $$\int{\frac{1}{p^2-q^2\sinh^2{ax}}}=
 \frac{1}{2ap\sqrt{p^2+q^2}}\ln\left(\frac{p+\sqrt{p^2+q^2}\tanh{ax}}
 {p-\sqrt{p^2+q^2}\tanh{ax}}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 76 of 84
@@ -1452,14 +1452,14 @@ cc2:=aa.2-bb
 --R     2a p\|q  - p  \|q  + p
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.557~~~~~$\displaystyle
 \int{x^m\sinh{ax}}~dx$}
 $$\int{x^m\sinh{ax}}=
 \frac{x^m\cosh{ax}}{a}-\frac{m}{a}\int{x^{m-1}\cosh{ax}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 80 of 84     14:557 Axiom cannot compute this integral
@@ -1472,14 +1472,14 @@ aa:=integrate(x^m*sinh(a*x),x)
 --R        ++
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.558~~~~~$\displaystyle
 \int{\sinh^n}~dx$}
 $$\int{\sinh^n}=
 \frac{\sinh^{n-1}{ax}\cosh{ax}}{an}-\frac{n-1}{n}\int{\sinh^{n-2}{ax}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 81 of 84     14:558 Axiom cannot compute this integral
@@ -1492,14 +1492,14 @@ aa:=integrate(sinh(a*x)^n,x)
 --R        ++
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.559~~~~~$\displaystyle
 \int{\frac{\sinh{ax}}{x^n}}~dx$}
 $$\int{\frac{\sinh{ax}}{x^n}}=
 \frac{-\sinh{ax}}{(n-1)x^{n-1}}+\frac{a}{n-1}\int{\frac{\cosh{ax}}{n^{n-1}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 82 of 84     14:559 Axiom cannot compute this integral
@@ -1513,7 +1513,7 @@ aa:=integrate(sinh(a*x)/x^n,x)
 --R                                          Type: Union(Expression Integer,...)
 --E 
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.560~~~~~$\displaystyle
 \int{\frac{dx}{\sinh^n{ax}}}~dx$}
@@ -1521,7 +1521,7 @@ $$\int{\frac{1}{\sinh^n{ax}}}=
 \frac{-\cosh{ax}}{a(n-1)\sinh^{n-1}{ax}}
 -\frac{n-2}{n-1}\int{\frac{1}{\sinh^{n-2}{ax}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 83 of 84     14:560 Axiom cannot compute this integral
@@ -1535,7 +1535,7 @@ aa:=integrate(1/sinh(a*x)^n,x)
 --I             sinh(%N a)
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.561~~~~~$\displaystyle
 \int{\frac{x~dx}{\sinh^n{ax}}}~dx$}
@@ -1544,7 +1544,7 @@ $$\int{\frac{x}{\sinh^n{ax}}}=
 -\frac{1}{a^2(n-1)(n-2)\sinh^{n-2}{ax}}
 -\frac{n-2}{n-1}\int{\frac{x}{\sinh^{n-2}{ax}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 84 of 84     14:561 Axiom cannot compute this integral
@@ -1561,7 +1561,7 @@ aa:=integrate(x/sinh(a*x)^n,x)
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum28.input.pamphlet b/src/input/schaum28.input.pamphlet
index ad9581b..d4c5fa2 100644
--- a/src/input/schaum28.input.pamphlet
+++ b/src/input/schaum28.input.pamphlet
@@ -12,7 +12,7 @@
 $$\int{\cosh{ax}}=
 \frac{\sinh{ax}}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum28.output
 )set message test on
@@ -44,14 +44,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.563~~~~~$\displaystyle
 \int{x\cosh{ax}}~dx$}
 $$\int{x\cosh{ax}}=
 \frac{x\sinh{ax}}{a}-\frac{\cosh{ax}}{a^2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 4 of 139
@@ -81,14 +81,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.564~~~~~$\displaystyle
 \int{x^2\cosh{ax}}~dx$}
 $$\int{x^2\cosh{ax}}=
 -\frac{2x\cosh{ax}}{a^2}+\left(\frac{x^2}{a}+\frac{2}{a^3}\right)\sinh{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 7 of 139
@@ -120,7 +120,7 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.565~~~~~$\displaystyle
 \int{\frac{\cosh{ax}}{x}}~dx$}
@@ -129,7 +129,7 @@ $$\int{\frac{\cosh{ax}}{x}}=
 +\frac{(ax)^4}{4\cdot 4!}
 +\frac{(ax)^6}{6\cdot 6!}+\cdots
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 10 of 139     14:565 Axiom cannot compute this integral
@@ -142,14 +142,14 @@ aa:=integrate(cosh(a*x)/x,x)
 --I        ++       %N
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.566~~~~~$\displaystyle
 \int{\frac{\cosh{ax}}{x^2}}~dx$}
 $$\int{\frac{\cosh{ax}}{x^2}}=
 -\frac{\cosh{ax}}{x}+a\int{\frac{\sinh{ax}}{a}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 11 of 139     14:566 Axiom cannot compute this integral
@@ -163,14 +163,14 @@ aa:=integrate(cosh(a*x)/x^2,x)
 --I                 %N
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.567~~~~~$\displaystyle
 \int{\frac{dx}{\cosh{ax}}}~dx$}
 $$\int{\frac{1}{\cosh{ax}}}=
 \frac{2}{a}\tan^{-1}e^{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 12 of 139
@@ -209,7 +209,7 @@ dd:=complexNormalize cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.568~~~~~$\displaystyle
 \int{\frac{x~dx}{\cosh{ax}}}~dx$}
@@ -217,7 +217,7 @@ $$\int{\frac{x}{\cosh{ax}}}=
 \frac{1}{a^2}\left\{\frac{(ax)^2}{2}-\frac{(ax)^4}{8}+\frac{5(ax)^6}{144}
 +\cdots+\frac{(-1)^nE_n(ax)^{2n+2}}{(2n+2)(2n)!}+\cdots\right\}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 16 of 139     14:568 Axiom cannot compute this integral
@@ -230,7 +230,7 @@ aa:=integrate(x/cosh(a*x),x)
 --I        ++   cosh(%N a)
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.569~~~~~$\displaystyle
 \int{\cosh^2{ax}}~dx$}
@@ -241,7 +241,7 @@ Note that the Schaums print edition (1968 printing 3) has a typo:
 $$\int{\cosh^2{ax}}=
 \frac{x}{2}+\frac{\sinh{ax}\cosh{ax}}{2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 17 of 139
@@ -270,14 +270,14 @@ cc:=aa-bb
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.570~~~~~$\displaystyle
 \int{x\cosh^2{ax}}~dx$}
 $$\int{x\cosh^2{ax}}=
 \frac{x^2}{4}+\frac{x\sinh{2ax}}{4a}-\frac{\cosh{2ax}}{8a^2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 20 of 139
@@ -372,14 +372,14 @@ ff:=sinhcoshrule ee
 --R   (9)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.571~~~~~$\displaystyle
 \int{\frac{dx}{\cosh^2{ax}}}~dx$}
 $$\int{\frac{1}{\cosh^2{ax}}}=
 \frac{\tanh{ax}}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 29 of 139
@@ -421,14 +421,14 @@ dd:=complexNormalize cc
 --R          a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.572~~~~~$\displaystyle
 \int{\cosh{ax}\cosh{px}}~dx$}
 $$\int{\cosh{ax}\cosh{px}}=
 \frac{\sinh(a-p)x}{2(a-p)}+\frac{\sinh(a+p)x}{2(a+p)}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 33  of 139
@@ -541,14 +541,14 @@ ff:=sinhcoshrule ee
 --R     2p  - 2a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.573~~~~~$\displaystyle
 \int{\cosh{ax}\sin{px}}~dx$}
 $$\int{\cosh{ax}\sin{px}}=
 \frac{a\sinh{ax}\sin{px}-p\cosh{ax}\cos{px}}{a^2+p^2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 42 of 139
@@ -632,14 +632,14 @@ ee:=sinhsqrrule dd
 --R   (7)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.574~~~~~$\displaystyle
 \int{\cosh{ax}\cos{px}}~dx$}
 $$\int{\cosh{ax}\cos{px}}=
 \frac{a\sinh{ax}\cos{px}+p\cosh{ax}\sin{px}}{a^2+p^2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 49 of 139
@@ -723,14 +723,14 @@ ee:=sinhsqrrule dd
 --R   (7)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.575~~~~~$\displaystyle
 \int{\frac{dx}{\cosh{ax}+1}}$}
 $$\int{\frac{1}{\cosh{ax}+1}}=
 \frac{1}{a}\tanh{\frac{ax}{2}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 56 of 139
@@ -848,14 +848,14 @@ gg:=coshcoshrule ff
 --R           a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.576~~~~~$\displaystyle
 \int{\frac{dx}{\cosh{ax}-1}}$}
 $$\int{\frac{1}{\cosh{ax}-1}}=
 -\frac{1}{a}\coth{\frac{ax}{2}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 67 of 139
@@ -973,14 +973,14 @@ gg:=coshcoshrule ff
 --R         a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.577~~~~~$\displaystyle
 \int{\frac{x~dx}{\cosh{ax}+1}}~dx$}
 $$\int{\frac{x}{\cosh{ax}+1}}=
 \frac{x}{a}\tanh\frac{ax}{2}-\frac{2}{a^2}\ln\cosh\frac{ax}{2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 78 of 139
@@ -1171,14 +1171,14 @@ complexNormalize gg
 --R              a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.578~~~~~$\displaystyle
 \int{\frac{x~dx}{\cosh{ax}-1}}$}
 $$\int{\frac{x}{\cosh{ax}-1}}
 -\frac{x}{a}\coth\frac{ax}{2}+\frac{2}{a^2}\ln\sinh\frac{ax}{2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 90 of 139
@@ -1369,14 +1369,14 @@ hh:=complexNormalize gg
 --R            a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.579~~~~~$\displaystyle
 \int{\frac{dx}{(\cosh{ax}+1)^2}}$}
 $$\int{\frac{1}{(\cosh{ax}+1)^2}}=
 \frac{1}{2a}\tanh{\frac{ax}{2}}-\frac{1}{6a}\tanh^3{\frac{ax}{2}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 102 of 139
@@ -1449,14 +1449,14 @@ cc:=aa-bb
 --R       18a cosh(a x)  + 18a cosh(a x) + 6a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.580~~~~~$\displaystyle
 \int{\frac{dx}{(\cosh{ax}-1)^2}}$}
 $$\int{\frac{1}{(\cosh{ax}-1)^2}}=
 \frac{1}{2a}\coth{\frac{ax}{2}}-\frac{1}{6a}\coth^3{\frac{ax}{2}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 105 of 139
@@ -1528,7 +1528,7 @@ cc:=aa-bb
 --R       - 18a cosh(a x)  + 18a cosh(a x) - 6a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.581~~~~~$\displaystyle
 \int{\frac{dx}{p+q\cosh{ax}}}$}
@@ -1544,7 +1544,7 @@ $$\int{\frac{1}{p+q\cosh{ax}}}=
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 108 of 139
@@ -1741,7 +1741,7 @@ cc4:=aa.2-bb2
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.582~~~~~$\displaystyle
 \int{\frac{dx}{(p+q\cosh{ax})^2}}~dx$}
@@ -1749,7 +1749,7 @@ $$\int{\frac{1}{(p+q\cosh{ax})^2}}=
 \frac{q\sinh{ax}}{a(q^2-p^2)(p+q\cosh{ax})}
 -\frac{p}{q^2-p^2}\int{\frac{1}{p+q\cosh{ax}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 115 of 139
@@ -2235,7 +2235,7 @@ cc4:=aa.2-bb2
 --R       (a q  + a p q  - 2a p )cosh(a x) + a p q  - a p q
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.583~~~~~$\displaystyle
 \int{\frac{dx}{p^2-q^2\cosh^2{ax}}}$}
@@ -2251,7 +2251,7 @@ $$\int{\frac{1}{p^2-q^2\cosh^2{ax}}}=
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 123 of 139
@@ -2534,7 +2534,7 @@ cc4:=aa.2-bb2
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.584~~~~~$\displaystyle
 \int{\frac{dx}{p^2+q^2\cosh^2{ax}}}$}
@@ -2550,7 +2550,7 @@ $$\int{\frac{1}{p^2+q^2\cosh^2{ax}}}=
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 130 of 139
@@ -2734,14 +2734,14 @@ cc2:=aa-bb2
 --R     2a p\|q  + p
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.585~~~~~$\displaystyle
 \int{x^m\cosh{ax}}~dx$}
 $$\int{x^m\cosh{ax}}=
 \frac{x^m\sinh{ax}}{a}-\frac{m}{a}\int{x^{m-1}\sinh{ax}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 135 of 139    14:585 Axiom cannot compute this integral
@@ -2754,14 +2754,14 @@ aa:=integrate(x^m*cosh(a*x),x)
 --R        ++
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.586~~~~~$\displaystyle
 \int{\cosh^n{ax}}~dx$}
 $$\int{\cosh^n{ax}}=
 \frac{\cosh^{n-1}{ax}\sinh{ax}}{an}+\frac{n-1}{n}\int{\cosh^{n-2}{ax}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 136 of 139    14:586 Axiom cannot compute this integral
@@ -2774,7 +2774,7 @@ aa:=integrate(cosh(a*x)^n,x)
 --R        ++
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.587~~~~~$\displaystyle
 \int{\frac{\cosh{ax}}{x^n}}~dx$}
@@ -2782,7 +2782,7 @@ $$\int{\frac{\cosh{ax}}{x^n}}=
 \frac{-\cosh{ax}}{(n-1)x^{n-1}}
 +\frac{a}{n-1}\int{\frac{\sinh{ax}}{x^{n-1}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 137 of 139    14:587 Axiom cannot compute this integral
@@ -2796,7 +2796,7 @@ aa:=integrate(cosh(a*x)/x^n,x)
 --I                 %N
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.588~~~~~$\displaystyle
 \int{\frac{dx}{\cosh^n{ax}}}~dx$}
@@ -2804,7 +2804,7 @@ $$\int{\frac{1}{\cosh^n{ax}}}=
 \frac{\sinh{ax}}{a(n-1)\cosh^{n-1}{ax}}
 +\frac{n-2}{n-1}\int{\frac{1}{\cosh^{n-2}{ax}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 138 of 139    14:588 Axiom cannot compute this integral
@@ -2818,7 +2818,7 @@ aa:=integrate(1/cosh(a*x)^n,x)
 --I             cosh(%N a)
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.589~~~~~$\displaystyle
 \int{\frac{x}{\cosh^n{ax}}}~dx$}
@@ -2827,7 +2827,7 @@ $$\int{\frac{x}{\cosh^n{ax}}}=
 +\frac{1}{(n-1)(n-2)a^2\cosh^{n-2}{ax}}
 +\frac{n-2}{n-1}\int{\frac{x}{\cosh^{n-2}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 139 of 139    14:589 Axiom cannot compute this integral
@@ -2844,7 +2844,7 @@ aa:=integrate(1/cosh(a*x)^n,x)
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum29.input.pamphlet b/src/input/schaum29.input.pamphlet
index 1259c24..88e5b65 100644
--- a/src/input/schaum29.input.pamphlet
+++ b/src/input/schaum29.input.pamphlet
@@ -12,7 +12,7 @@
 $$\int{\sinh{ax}\cosh{ax}}=
 \frac{\sinh^2{ax}}{2a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum29.output
 )set message test on
@@ -86,14 +86,14 @@ ee:=coshsqrrule dd
 --R        4a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.591~~~~~$\displaystyle
 \int{\sinh{px}\cosh{qx}}~dx$}
 $$\int{\sinh{px}\cosh{qx}}=
 \frac{\cosh(p+q)x}{2(p+q)}+\frac{\cosh(p-q)x}{2(p-q)}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 8 of 81
@@ -135,14 +135,14 @@ cc:=aa-bb
 --R     (2q  - 2p )sinh(p x)  + (- 2q  + 2p )cosh(p x)
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.592~~~~~$\displaystyle
 \int{\sinh^n{ax}\cosh{ax}}~dx$}
 $$\int{\sinh^n{ax}\cosh{ax}}=
 \frac{\sinh^{n+1}{ax}}{(n+1)a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 11 of 81
@@ -178,14 +178,14 @@ cc:=aa-bb
 --R     (a n + a)sinh(a x)  + (- a n - a)cosh(a x)
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.593~~~~~$\displaystyle
 \int{\cosh^n{ax}\sinh{ax}}~dx$}
 $$\int{\cosh^n{ax}\sinh{ax}}=
 \frac{\cosh^{n+1}{ax}}{(n+1)a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 14 of 81
@@ -222,14 +222,14 @@ cc:=aa-bb
 --R     (a n + a)sinh(a x)  + (- a n - a)cosh(a x)
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.594~~~~~$\displaystyle
 \int{\sinh^2{ax}\cosh^2{ax}}~dx$}
 $$\int{\sinh^2{ax}\cosh^2{ax}}=
 \frac{\sinh{4ax}}{32a}-\frac{x}{8}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 17 of 81
@@ -258,14 +258,14 @@ cc:=complexNormalize(aa-bb)
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.595~~~~~$\displaystyle
 \int{\frac{dx}{\sinh{ax}\cosh{ax}}}$}
 $$\int{\frac{1}{\sinh{ax}\cosh{ax}}}=
 \frac{1}{a}\ln\tanh{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 20 of 81
@@ -340,14 +340,14 @@ ff:=expandLog ee
 --R   (7)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.596~~~~~$\displaystyle
 \int{\frac{dx}{\sinh^2{ax}\cosh{ax}}}$}
 $$\int{\frac{1}{\sinh^2{ax}\cosh{ax}}}=
 -\frac{1}{a}\tan^{-1}\sinh{ax}-\frac{{\rm csch~}{ax}}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 27 of 81
@@ -396,14 +396,14 @@ cc:=aa-bb
 --R     a sinh(a x)  + 2a cosh(a x)sinh(a x) + a cosh(a x)  - a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.597~~~~~$\displaystyle
 \int{\frac{dx}{\sinh{ax}\cosh^2{ax}}}$}
 $$\int{\frac{1}{\sinh{ax}\cosh^2{ax}}}=
 \frac{{\rm sech~}{ax}}{a}+\frac{1}{a}\ln\tanh{\frac{ax}{2}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 30 of 81
@@ -693,14 +693,14 @@ jj:=complexNormalize ii
 --R   (15)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.598~~~~~$\displaystyle
 \int{\frac{dx}{\sinh^2{ax}\cosh^2{ax}}}$}
 $$\int{\frac{1}{\sinh^2{ax}\cosh^2{ax}}}=
 -\frac{2\coth{2ax}}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 45 of 81
@@ -748,14 +748,14 @@ cc:=aa-bb
 --R       4a cosh(a x) sinh(a x) + a cosh(a x)  - a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.599~~~~~$\displaystyle
 \int{\frac{\sinh^2{ax}}{\cosh{ax}}}~dx$}
 $$\int{\frac{\sinh^2{ax}}{\cosh{ax}}}~dx=
 \frac{\sinh{ax}}{a}-\frac{1}{a}\tan^{-1}\sinh{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 48 of 81
@@ -794,14 +794,14 @@ cc:=aa-bb
 --R     2a sinh(a x) + 2a cosh(a x)
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.600~~~~~$\displaystyle
 \int{\frac{\cosh^2{ax}}{\sinh{ax}}}~dx$}
 $$\int{\frac{\cosh^2{ax}}{\sinh{ax}}}=
 \frac{\cosh{ax}}{a}+\frac{1}{a}\ln\tanh{\frac{ax}{2}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 51 of 81
@@ -851,7 +851,7 @@ cc:=aa-bb
 --R     2a sinh(a x) + 2a cosh(a x)
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.601~~~~~$\displaystyle
 \int{\frac{dx}{\cosh{ax}(1+\sinh{ax})}}$}
@@ -859,7 +859,7 @@ $$\int{\frac{1}{\cosh{ax}(1+\sinh{ax})}}=
 \frac{1}{2a}\ln\left(\frac{1+\sinh{ax}}{\cosh{ax}}\right)
 +\frac{1}{a}\tan^{-1}{e^{ax}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 54 of 81
@@ -957,14 +957,14 @@ gg:=complexNormalize ff
 --R   (8)  0
 --R                                             Type: Expression Complex Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.602~~~~~$\displaystyle
 \int{\frac{dx}{\sinh{ax}(\cosh{ax}+1)}}$}
 $$\int{\frac{1}{\sinh{ax}(\cosh{ax}+1)}}=
 \frac{1}{2a}\ln\tanh\frac{ax}{2}+\frac{1}{2a(\cosh{ax}+1)}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 62 of 81
@@ -1190,14 +1190,14 @@ gg:=complexNormalize ff
 --R   (10)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.603~~~~~$\displaystyle
 \int{\frac{dx}{\sinh{ax}(\cosh{ax}-1)}}$}
 $$\int{\frac{1}{\sinh{ax}(\cosh{ax}-1)}}=
 -\frac{1}{2a}\ln\tanh\frac{ax}{2}-\frac{1}{2a(cosh{ax}-1)}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 72 of 81
@@ -1421,7 +1421,7 @@ gg:=complexNormalize ff
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum3.input.pamphlet b/src/input/schaum3.input.pamphlet
index 83a9eb1..e75e20b 100644
--- a/src/input/schaum3.input.pamphlet
+++ b/src/input/schaum3.input.pamphlet
@@ -10,7 +10,7 @@
 \section{\cite{1}:14.105~~~~~$\displaystyle\int{\frac{dx}{(ax+b)(px+q)}}$}
 $$\int{\frac{1}{(ax+b)(px+q)}}=
 \frac{1}{bp-aq}~\ln\left(\frac{px+q}{ax+b}\right)$$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum3.output
 )set message test on
@@ -85,12 +85,12 @@ ee:=logmul dd
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.106~~~~~$\displaystyle\int{\frac{x~dx}{(ax+b)(px+q)}}$}
 $$\int{\frac{x}{(ax+b)(px+q)}}=
 \frac{1}{bp-aq}\left\{\frac{b}{a}~\ln(ax+b)-\frac{q}{p}~\ln(px+q)\right\}$$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 8 of 28
@@ -122,14 +122,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.107~~~~~$\displaystyle\int{\frac{dx}{(ax+b)^2(px+q)}}$}
 $$\int{\frac{1}{(ax+b)^2(px+q)}}=
 \frac{1}{bp-aq}
 \left\{\frac{1}{ax+b}+
 \frac{p}{bp-aq}~\ln\left(\frac{px+q}{ax+b}\right)\right\}$$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 11 of 28
@@ -185,7 +185,7 @@ dd:=divlog cc
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.108~~~~~$\displaystyle\int{\frac{x~dx}{(ax+b)^2(px+q)}}$}
 $$\int{\frac{x}{(ax+b)^2(px+q)}}=
@@ -193,7 +193,7 @@ $$\int{\frac{x}{(ax+b)^2(px+q)}}=
 \left\{\frac{q}{bp-aq}
 ~\ln\left(\frac{ax+b}{px+q}\right)-\frac{b}{a(ax+b)}\right\}$$
 
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 16 of 28
@@ -250,14 +250,14 @@ dd:=divlog cc
 --R   (5)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.109~~~~~$\displaystyle
 \int{\frac{x^2~dx}{(ax+b)^2(px+q)}}$}
 $$\int{\frac{x^2}{(ax+b)^2(px+q)}}=$$
 $$\frac{b^2}{(bp-aq)a^2(ax+b)}+\frac{1}{(bp-aq)^2}
 \left\{\frac{q^2}{p}~\ln(px+q)+\frac{b(bp-2aq)}{a^2}~\ln(ax+b)\right\}$$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 21 of 28
@@ -300,14 +300,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.110~~~~~$\displaystyle\int{\frac{dx}{(ax+b)^m(px+q)^n}}$}
 $$\int{\frac{1}{(ax+b)^m(px+q)^n}}=$$
 $$\frac{-1}{(n-1)(bp-aq)}
 \left\{\frac{1}{(ax+b)^{m-1}(px+q)^{n-1}}+
 a(m+n-2)~\int{\frac{1}{(ax+b)^m(px+q)^{n-1}}}\right\}$$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 24 of 28     14:110 Axiom cannot do this integral
@@ -322,10 +322,10 @@ aa:=integrate(1/((a*x+b)^m*(p*x+q)^n),x)
 --R                                          Type: Union(Expression Integer,...)
 --E 
 
-@
+\end{chunk}
 \section{\cite{1}:14.111~~~~~$\displaystyle\int{\frac{ax+b}{px+q}~dx}$}
 $$\int{\frac{ax+b}{px+q}}=\frac{ax}{p}+\frac{bp-aq}{p^2}~\ln(px+q)$$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 25 of 28
@@ -357,7 +357,7 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.112~~~~~$\displaystyle\int{\frac{(ax+b)^m}{(px+q)^n}~dx}$}
 $$\int{\frac{(ax+b)^m}{(px+q)^n}}=\left\{
@@ -371,7 +371,7 @@ $$\int{\frac{(ax+b)^m}{(px+q)^n}}=\left\{
 \int{\frac{(ax+b)^{m-1}}{(px+q)^{n-1}}}\right\}
 \end{array}
 \right.$$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 28 of 28     14:112 Axiom cannot do this integral
@@ -385,10 +385,10 @@ aa:=integrate((a*x+b)^m/(p*x+q)^n,x)
 --I             (q + %L p)
 --R                                          Type: Union(Expression Integer,...)
 --E
-<<*>>=
+\begin{chunk}{*}
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum30.input.pamphlet b/src/input/schaum30.input.pamphlet
index 1f2983c..a8fcd7f 100644
--- a/src/input/schaum30.input.pamphlet
+++ b/src/input/schaum30.input.pamphlet
@@ -12,7 +12,7 @@
 $$\int{\tanh{ax}}=
 \frac{1}{a}\ln\cosh{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum30.output
 )set message test on
@@ -68,14 +68,14 @@ ee:=complexNormalize dd
 --R                  a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.605~~~~~$\displaystyle
 \int{\tanh^2{ax}}~dx$}
 $$\int{\tanh^2{ax}}=
 x-\frac{\tanh{ax}}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 6 of 46
@@ -123,14 +123,14 @@ dd:=tanhrule cc
 --R        a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.606~~~~~$\displaystyle
 \int{\tanh^3{ax}}~dx$}
 $$\int{\tanh^3{ax}}=
 \frac{1}{a}\ln\cosh{ax}-\frac{\tanh^2{ax}}{2a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 11 of 46
@@ -230,14 +230,14 @@ cc:=aa-bb
 --R       2a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.607~~~~~$\displaystyle
 \int{\tanh^n{ax}{{\rm ~sech}^2{ax}}}~dx$}
 $$\int{\tanh^n{ax}{{\rm ~sech}^2{ax}}}=
 \frac{\tanh^{n+1}{ax}}{(n+1)a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 14 of 46
@@ -276,14 +276,14 @@ cc:=aa-bb
 --R     (a n + a)cosh(a x)
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.608~~~~~$\displaystyle
 \int{\frac{{\rm sech}^2{ax}}{\tanh{ax}}}~dx$}
 $$\int{\frac{{\rm sech}^2{ax}}{\tanh{ax}}}=
 \frac{1}{a}\ln\tanh{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 17 of 46
@@ -354,14 +354,14 @@ ee:=expandLog dd
 --R   (6)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.609~~~~~$\displaystyle
 \int{\frac{dx}{\tanh{ax}}}~dx$}
 $$\int{\frac{1}{\tanh{ax}}}=
 \frac{1}{a}\ln\sinh{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 23 of 46
@@ -413,7 +413,7 @@ ee:=complexNormalize dd
 --R                  a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.610~~~~~$\displaystyle
 \int{x\tanh{ax}}~dx$}
@@ -422,7 +422,7 @@ $$\int{x\tanh{ax}}=
 \frac{(ax)^3}{3}-\frac{(ax)^5}{15}+\frac{2(ax)^7}{105}-\cdots
 \frac{(-1)^{n-1}2^{2n}(2^{2n}-1)B_n(ax)^{2n+1}}{(2n+1)!}+\cdots\right\}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 28 of 46     14:610 Axiom cannot compute this integral
@@ -435,14 +435,14 @@ aa:=integrate(x*tanh(a*x),x)
 --R        ++
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.611~~~~~$\displaystyle
 \int{x\tanh^2{ax}}~dx$}
 $$\int{x\tanh^2{ax}}=
 \frac{x^2}{2}-\frac{x\tanh{ax}}{a}+\frac{1}{a^2}\ln\cosh{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 29 of 46
@@ -620,7 +620,7 @@ hh:=complexNormalize gg
 --R                   a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.612~~~~~$\displaystyle
 \int{\frac{\tanh{ax}}{x}}~dx$}
@@ -628,7 +628,7 @@ $$\int{\frac{\tanh{ax}}{x}}=
 ax-\frac{(ax)^3}{9}+\frac{2(ax)^5}{75}-\cdots
 \frac{(-1)^{n-1}2^{2n}(2^{2n}-1)B_n(ax)^{2n-1}}{(2n-1)(2n)!}+\cdots
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 40 of 46     14:612 Axiom cannot compute this integral
@@ -641,14 +641,14 @@ aa:=integrate(tanh(a*x)/x,x)
 --I        ++       %O
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.613~~~~~$\displaystyle
 \int{\frac{dx}{p+q\tanh{ax}}}~dx$}
 $$\int{\frac{1}{p+q\tanh{ax}}}=
 \frac{px}{p^2-q^2}-\frac{q}{a(p^2-q^2)}\ln(q\sinh{ax}+p\cosh{ax})
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 41 of 46
@@ -711,14 +711,14 @@ ee:=complexNormalize dd
 --R              a q  - a p
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.614~~~~~$\displaystyle
 \int{\tanh^n{ax}}~dx$}
 $$\int{\tanh^n{ax}}=
 \frac{-\tanh^{n-1}{ax}}{a(n-1)}+\int{\tanh^{n-2}{ax}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 46 of 46     14:614 Axiom cannot compute this integral
@@ -734,7 +734,7 @@ aa:=integrate(tanh(a*x)^n,x)
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum31.input.pamphlet b/src/input/schaum31.input.pamphlet
index 07de8d1..c8b5f05 100644
--- a/src/input/schaum31.input.pamphlet
+++ b/src/input/schaum31.input.pamphlet
@@ -12,7 +12,7 @@
 $$\int{\coth{ax}}=
 \frac{1}{a}\ln\sinh{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum31.output
 )set message test on
@@ -68,14 +68,14 @@ ee:=complexNormalize dd
 --R                  a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.616~~~~~$\displaystyle
 \int{\coth^2{ax}}~dx$}
 $$\int{\coth^2{ax}}=
 x-\frac{\coth{ax}}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 6 of 46
@@ -114,14 +114,14 @@ dd:=complexNormalize cc
 --R        a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.617~~~~~$\displaystyle
 \int{\coth^3{ax}}~dx$}
 $$\int{\coth^3{ax}}=
 \frac{1}{a}\ln\sinh{ax}-\frac{\coth^2{ax}}{2a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 10 of 46
@@ -221,14 +221,14 @@ cc:=aa-bb
 --R       2a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.618~~~~~$\displaystyle
 \int{\coth^n{ax}{{\rm ~csch}^2{ax}}}~dx$}
 $$\int{\coth^n{ax}{{\rm ~csch}^2{ax}}}=
 -\frac{\coth^{n+1}{ax}}{(n+1)a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 13 of 46
@@ -289,14 +289,14 @@ ee:=complexNormalize dd
 --R   (5)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.619~~~~~$\displaystyle
 \int{\frac{{\rm csch}^2{ax}}{\coth{ax}}}~dx$}
 $$\int{\frac{{\rm csch}^2{ax}}{\coth{ax}}}=
 -\frac{1}{a}\ln\coth{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 18 of 46
@@ -347,14 +347,14 @@ ee:=complexNormalize dd
 --R   (5)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.620~~~~~$\displaystyle
 \int{\frac{dx}{\coth{ax}}}~dx$}
 $$\int{\frac{1}{\coth{ax}}}=
 \frac{1}{a}\ln\cosh{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 23 of 46
@@ -406,7 +406,7 @@ ee:=complexNormalize dd
 --R                  a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.621~~~~~$\displaystyle
 \int{x\coth{ax}}~dx$}
@@ -415,7 +415,7 @@ $$\int{x\coth{ax}}=
 ax+\frac{(ax)^3}{9}-\frac{(ax)^5}{225}+\cdots
 \frac{(-1)^{n-1}2^{2n}B_n(ax)^{2n+1}}{(2n+1)!}+\cdots\right\}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 28 of 46     14:621 Axiom cannot compute this integral
@@ -428,14 +428,14 @@ aa:=integrate(x*coth(a*x),x)
 --R        ++
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.622~~~~~$\displaystyle
 \int{x\coth^2{ax}}~dx$}
 $$\int{x\coth^2{ax}}=
 \frac{x^2}{2}-\frac{x\coth{ax}}{a}+\frac{1}{a^2}\ln\sinh{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 29 of 46
@@ -611,7 +611,7 @@ hh:=complexNormalize gg
 --R                   a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.623~~~~~$\displaystyle
 \int{\frac{\coth{ax}}{x}}~dx$}
@@ -619,7 +619,7 @@ $$\int{\frac{\coth{ax}}{x}}=
 -\frac{1}{ax}+\frac{(ax)}{3}-\frac{(ax)^3}{135}+\cdots
 \frac{(-1)^{n}2^{2n}B_n(ax)^{2n-1}}{(2n-1)(2n)!}+\cdots
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 40 of 46     14:623 Axiom cannot compute this integral
@@ -632,14 +632,14 @@ aa:=integrate(coth(a*x)/x,x)
 --I        ++       %O
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.624~~~~~$\displaystyle
 \int{\frac{dx}{p+q\coth{ax}}}~dx$}
 $$\int{\frac{1}{p+q\coth{ax}}}=
 \frac{px}{p^2-q^2}-\frac{q}{a(p^2-q^2)}\ln(p\sinh{ax}+q\cosh{ax})
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 41 of 46
@@ -702,14 +702,14 @@ ee:=complexNormalize dd
 --R              a q  - a p
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.625~~~~~$\displaystyle
 \int{\coth^n{ax}}~dx$}
 $$\int{\coth^n{ax}}=
 -\frac{\coth^{n-1}{ax}}{a(n-1)}+\int{\coth^{n-1}{ax}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 46 of 46     14:625 Axiom cannot compute this integral
@@ -725,7 +725,7 @@ aa:=integrate(coth(a*x)^n,x)
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum32.input.pamphlet b/src/input/schaum32.input.pamphlet
index d873882..e3be807 100644
--- a/src/input/schaum32.input.pamphlet
+++ b/src/input/schaum32.input.pamphlet
@@ -12,7 +12,7 @@
 $$\int{{\rm sech~}{ax}}=
 \frac{2}{a}\tanh^{-1}{e^{ax}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum32.output
 )set message test on
@@ -92,14 +92,14 @@ ff:=complexNormalize ee
 --R   (7)  0
 --R                                             Type: Expression Complex Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.627~~~~~$\displaystyle
 \int{{\rm sech}^2~{ax}}~dx$}
 $$\int{{\rm sech}^2~{ax}}=
 \frac{\tanh{ax}}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 8 of 52
@@ -197,14 +197,14 @@ gg:=complexNormalize ff
 --R           a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.628~~~~~$\displaystyle
 \int{{\rm sech}^3~{ax}}~dx$}
 $$\int{{\rm sech}^3~{ax}}=
 \frac{{\rm sech}~{ax}~\tanh{ax}}{2a}+\frac{1}{2a}\tan^{-1}{\rm ~sech~}{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 18 of 52
@@ -292,14 +292,14 @@ cc:=aa-bb
 --R       2a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.629~~~~~$\displaystyle
 \int{{\rm sech}^n~{ax}~{\tanh{ax}}}~dx$}
 $$\int{{\rm sech~}^n{ax}~{\tanh{ax}}}=
 -\frac{{\rm sech~}^{n}{ax}}{na}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 21 of 52
@@ -414,14 +414,14 @@ ff:=complexNormalize ee
 --R   (7)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.630~~~~~$\displaystyle
 \int{\frac{dx}{{\rm sech~}{ax}}}~dx$}
 $$\int{\frac{1}{{\rm sech~}{ax}}}=
 \frac{{\rm sech}~{ax}}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 28 of 52
@@ -449,7 +449,7 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.631~~~~~$\displaystyle
 \int{x{\rm ~sech~}{ax}}~dx$}
@@ -458,7 +458,7 @@ $$\int{x{\rm ~sech~}{ax}}=
 \frac{(ax)^2}{2}-\frac{(ax)^4}{8}+\frac{5(ax)^6}{144}+\cdots
 \frac{(-1)^{n}E_n(ax)^{2n+2}}{(2n+2)(2n)!}+\cdots\right\}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 31 of 52     14:631 Axiom cannot compute this integral
@@ -471,14 +471,14 @@ aa:=integrate(x*sech(a*x),x)
 --R        ++
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.632~~~~~$\displaystyle
 \int{x~{\rm sech}^2~{ax}}~dx$}
 $$\int{x~{\rm sech}^2~{ax}}=
 \frac{x\tanh{ax}}{a}-\frac{1}{a^2}\ln\cosh{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 32 of 52
@@ -655,7 +655,7 @@ hh:=complexNormalize gg
 --R                  a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.633~~~~~$\displaystyle
 \int{\frac{{\rm sech~}{ax}}{x}}~dx$}
@@ -663,7 +663,7 @@ $$\int{\frac{{\rm sech~}{ax}}{x}}=
 \ln{x}-\frac{(ax)^2}{4}+\frac{5(ax)^4}{96}-\frac{61(ax)^6}{4320}+\cdots
 \frac{(-1)^{n}E_n(ax)^{2n}}{2n(2n)!}+\cdots
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 43 of 52     14:633 Axiom cannot compute this integral
@@ -676,14 +676,14 @@ aa:=integrate(sech(a*x)/x,x)
 --I        ++       %O
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.634~~~~~$\displaystyle
 \int{\frac{dx}{q+p{\rm ~sech~}{ax}}}~dx$}
 $$\int{\frac{1}{q+p{\rm ~sech~}{ax}}}=
 \frac{x}{q}-\frac{p}{q}\int{\frac{dx}{p+q\cosh{ax}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 44 of 52
@@ -965,7 +965,7 @@ cc4:=aa.2-bb2
 --R   (8)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.635~~~~~$\displaystyle
 \int{{\rm sech}^n~{ax}}~dx$}
@@ -973,7 +973,7 @@ $$\int{{\rm sech}^n~{ax}}=
 \frac{{\rm sech}^{n-2}~{ax}~\tanh{ax}}{a(n-1)}
 +\frac{n-2}{n-1}\int{{\rm sech}^{n-2}~{ax}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 52 of 52     14:635 Axiom cannot compute this integral
@@ -989,7 +989,7 @@ aa:=integrate(sech(a*x)^n,x)
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum33.input.pamphlet b/src/input/schaum33.input.pamphlet
index afceadf..056c76d 100644
--- a/src/input/schaum33.input.pamphlet
+++ b/src/input/schaum33.input.pamphlet
@@ -12,7 +12,7 @@
 $$\int{{\rm csch~}{ax}}=
 \frac{1}{a}\ln\tanh{\frac{ax}{2}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum33.output
 )set message test on
@@ -60,14 +60,14 @@ dd:=complexNormalize cc
 --R   (4)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.637~~~~~$\displaystyle
 \int{{\rm csch}^2~{ax}}~dx$}
 $$\int{{\rm csch}^2~{ax}}=
 -\frac{\coth{ax}}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 5 of 49
@@ -104,14 +104,14 @@ cc:=aa-bb
 --R     a sinh(a x)  + 2a cosh(a x)sinh(a x) + a cosh(a x)  - a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.638~~~~~$\displaystyle
 \int{{\rm csch}^3~{ax}}~dx$}
 $$\int{{\rm csch}^3~{ax}}=
 -\frac{{\rm csch~}{ax}\coth{ax}}{2a}-\frac{1}{2a}\ln\tanh\frac{ax}{2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 8 of 49
@@ -216,14 +216,14 @@ cc:=aa-bb
 --R       2a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.639~~~~~$\displaystyle
 \int{{\rm csch}^n~{ax}~{\coth{ax}}}~dx$}
 $$\int{{\rm csch~}^n{ax}~{\coth{ax}}}=
 -\frac{{\rm csch~}^{n}{ax}}{na}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 11 of 49
@@ -440,14 +440,14 @@ ii:=complexNormalize hh
 --R   (13)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.640~~~~~$\displaystyle
 \int{\frac{dx}{{\rm csch~}{ax}}}~dx$}
 $$\int{\frac{1}{{\rm csch~}{ax}}}=
 \frac{1}{a}{\rm cosh}~{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 24 of 49
@@ -475,7 +475,7 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.641~~~~~$\displaystyle
 \int{x{\rm ~csch~}{ax}}~dx$}
@@ -484,7 +484,7 @@ $$\int{x{\rm ~csch~}{ax}}=
 ax-\frac{(ax)^3}{18}+\frac{7(ax)^5}{1800}+\cdots+
 \frac{2(-1)^n(2^{2n-1}-1)B_n(ax)^{2n+1}}{(2n+1)!}+\cdots\right\}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 27 of 49     14:641 Axiom cannot compute this integral
@@ -497,14 +497,14 @@ aa:=integrate(x*csch(a*x),x)
 --R        ++
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.642~~~~~$\displaystyle
 \int{x~{\rm csch}^2~{ax}}~dx$}
 $$\int{x~{\rm csch}^2~{ax}}=
 -\frac{x\coth{ax}}{a}+\frac{1}{a^2}\ln\sinh{ax}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 28 of 49
@@ -676,7 +676,7 @@ hh:=complexNormalize gg
 --R                   a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.643~~~~~$\displaystyle
 \int{\frac{{\rm csch~}{ax}}{x}}~dx$}
@@ -684,7 +684,7 @@ $$\int{\frac{{\rm csch~}{ax}}{x}}=
 -\frac{1}{ax}-\frac{ax}{6}+\frac{7(ax)^3}{1080}+\cdots
 \frac{(-1)^n2(2^{2n-1}-1)B_n(ax)^{2n-1}}{(2n-1)(2n)!}+\cdots
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 39 of 49     14:643 Axiom cannot compute this integral
@@ -697,14 +697,14 @@ aa:=integrate(csch(a*x)/x,x)
 --I        ++       %O
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.644~~~~~$\displaystyle
 \int{\frac{dx}{q+p{\rm ~csch~}{ax}}}~dx$}
 $$\int{\frac{1}{q+p{\rm ~csch~}{ax}}}=
 \frac{x}{q}-\frac{p}{q}\int{\frac{dx}{p+q\sinh{ax}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 40 of 49
@@ -987,7 +987,7 @@ ff:=complexNormalize ee
 --R          a q\|q  + p
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.645~~~~~$\displaystyle
 \int{{\rm csch}^n~{ax}}~dx$}
@@ -995,7 +995,7 @@ $$\int{{\rm csch}^n~{ax}}=
 \frac{-{\rm csch}^{n-2}~{ax}~\coth{ax}}{a(n-1)}
 -\frac{n-2}{n-1}\int{{\rm csch}^{n-2}~{ax}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 49 of 49     14:645 Axiom cannot compute this integral
@@ -1011,7 +1011,7 @@ aa:=integrate(csch(a*x)^n,x)
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum34.input.pamphlet b/src/input/schaum34.input.pamphlet
index ae4b665..c0aa4fe 100644
--- a/src/input/schaum34.input.pamphlet
+++ b/src/input/schaum34.input.pamphlet
@@ -12,7 +12,7 @@
 $$\int{\sinh^{-1}\frac{x}{a}}=
 x\sinh^{-1}\frac{x}{a}-\sqrt{x^2+a^2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum34.output
 )set message test on
@@ -97,7 +97,7 @@ ff:=rootSimp ee
 --R   (7)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.647~~~~~$\displaystyle
 \int{x\sinh^{-1}\frac{x}{a}}~dx$}
@@ -105,7 +105,7 @@ $$\int{x\sinh^{-1}\frac{x}{a}}=
 \left(\frac{x^2}{2}+\frac{a^2}{4}\right)\sinh^{-1}\frac{x}{a}
 -\frac{x\sqrt{x^2+a^2}}{4}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 8 of 156
@@ -199,14 +199,14 @@ ff:=rootSimp ee
 --R   (7)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.648~~~~~$\displaystyle
 \int{x^2\sinh^{-1}\frac{x}{a}}~dx$}
 $$\int{x^2\sinh^{-1}\frac{x}{a}}=
 \frac{x^3}{3}\sinh^{-1}\frac{x}{a}+\frac{(2a^2-x^2)\sqrt{x^2+a^2}}{9}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 15 of 156
@@ -300,7 +300,7 @@ ff:=rootSimp ee
 --R   (7)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.649~~~~~$\displaystyle
 \int{\frac{\sinh^{-1}(x/a)}{x}}~dx$}
@@ -327,7 +327,7 @@ x<-a\\
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 22 of 156     14:649 Axiom cannot compute this integral
@@ -341,7 +341,7 @@ aa:=integrate(asinh(x/a)/x,x)
 --I        ++       %P
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.650~~~~~$\displaystyle
 \int{\frac{\sinh^{-1}(x/a)}{x^2}}~dx$}
@@ -349,7 +349,7 @@ $$\int{\frac{\sinh^{-1}(x/a)}{x^2}}=
 -\frac{\sinh^{-1}(x/a)}{x}
 -\frac{1}{a}\ln\left(\frac{a+\sqrt{x^2+a^2}}{x}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 23 of 156
@@ -477,7 +477,7 @@ gg:=complexNormalize ff
 --R              a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.651~~~~~$\displaystyle
 \int{\cosh^{-1}\frac{x}{a}}~dx$}
@@ -492,7 +492,7 @@ x\cosh^{-1}(x/a)+\sqrt{x^2-a^2},\quad\cosh^{-1}\frac{x}{a} < 0\\
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 31 of 156
@@ -604,7 +604,7 @@ ff1:=rootSimp ee1
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.652~~~~~$\displaystyle
 \int{x\cosh^{-1}\frac{x}{a}}~dx$}
@@ -621,7 +621,7 @@ $$\int{x\cosh^{-1}\frac{x}{a}}=
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 40 of 156
@@ -752,7 +752,7 @@ ff1:=rootSimp ee1
 --R   (9)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.653~~~~~$\displaystyle
 \int{x^2\cosh^{-1}\frac{x}{a}}~dx$}
@@ -769,7 +769,7 @@ $$\int{x^2\cosh^{-1}\frac{x}{a}}=
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 49 of 156
@@ -900,7 +900,7 @@ ff1:=rootSimp ee1
 --R   (9)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.654~~~~~$\displaystyle
 \int{\frac{\cosh^{-1}(x/a)}{x}}~dx$}
@@ -916,7 +916,7 @@ $$\int{\frac{\cosh^{-1}(x/a)}{x}}=
 \quad -{\rm if\ }\cosh^{-1}(x/a)<0,
 \end{array}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 58 of 156     14:654 Axiom cannot compute this integral
@@ -930,7 +930,7 @@ aa:=integrate(acosh(x/a)/x,x)
 --I        ++       %P
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.655~~~~~$\displaystyle
 \int{\frac{\cosh^{-1}(x/a)}{x^2}}~dx$}
@@ -945,7 +945,7 @@ $$\int{\frac{\cosh^{-1}(x/a)}{x^2}}=
 \quad +{\rm if\ }\cosh^{-1}(x/a)<0,
 \end{array}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 59 of 156
@@ -1023,14 +1023,14 @@ cc2:=aa-bb2
 --R     a x
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.656~~~~~$\displaystyle
 \int{\tanh^{-1}\frac{x}{a}}~dx$}
 $$\int{\tanh^{-1}\frac{x}{a}}=
 x\tanh^{-1}\frac{x}{a}+\frac{a}{2}\ln(a^2-x^2)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 64 of 156
@@ -1096,14 +1096,14 @@ ee:=complexNormalize dd
 --R             2
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.657~~~~~$\displaystyle
 \int{x*\tanh^{-1}\frac{x}{a}}~dx$}
 $$\int{x*\tanh^{-1}\frac{x}{a}}=
 \frac{ax}{2}+\frac{1}{2}(x^2-a^2)\tanh^{-1}\frac{x}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 70 of 156
@@ -1157,7 +1157,7 @@ dd:=atanhrule cc
 --R   (5)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.658~~~~~$\displaystyle
 \int{x^2\tanh^{-1}\frac{x}{a}}~dx$}
@@ -1165,7 +1165,7 @@ $$\int{x^2\tanh^{-1}\frac{x}{a}}=
 \frac{ax^2}{6}+\frac{x^3}{3}\tanh^{-1}\frac{x}{a}
 +\frac{a^3}{6}\ln(a^2-x^2)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 75 of 156
@@ -1232,14 +1232,14 @@ ee:=complexNormalize dd
 --R             6
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.659~~~~~$\displaystyle
 \int{\frac{\tanh^{-1}(x/a)}{a}}~dx$}
 $$\int{\frac{\tanh^{-1}(x/a)}{a}}=
 \frac{x}{a}+\frac{(x/a)^3}{3^2}+\frac{(x/a)^5}{5^2}+\cdots
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 81 of 156     14:659 Axiom cannot compute this integral
@@ -1253,14 +1253,14 @@ aa:=integrate(atanh(x/a)/x,x)
 --I        ++       %P
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.660~~~~~$\displaystyle
 \int{\frac{tanh^{-1}(x/a)}{x^2}}~dx$}
 $$\int{\frac{tanh^{-1}(x/a)}{x^2}}=
 -\frac{\tanh^{-1}(x/a)}{x}+\frac{1}{2a}\ln\left(\frac{x^2}{a^2-x^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 82 of 156
@@ -1338,7 +1338,7 @@ ee:=expandLog dd
 --R             2a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.661~~~~~$\displaystyle
 \int{\coth^{-1}\frac{x}{a}}~dx$}
@@ -1350,7 +1350,7 @@ Note that it appears there is a typo in Schaums (1968 printing 4).
 $$\int{\coth^{-1}\frac{x}{a}}=
 x\coth^{-1}{x/a}+\frac{a}{2}\ln(x^2-a^2)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 88 of 156
@@ -1404,14 +1404,14 @@ dd:=acothrule cc
 --R   (5)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.662~~~~~$\displaystyle
 \int{x\coth^{-1}\frac{x}{a}}~dx$}
 $$\int{x\coth^{-1}\frac{x}{a}}=
 \frac{ax}{2}+\frac{1}{2}(x^2-a^2)\coth^{-1}\frac{x}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 93 of 156
@@ -1465,7 +1465,7 @@ dd:=acothrule cc
 --R   (5)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.663~~~~~$\displaystyle
 \int{x^2\coth^{-1}\frac{x}{a}}~dx$}
@@ -1473,7 +1473,7 @@ $$\int{x^2\coth^{-1}\frac{x}{a}}=
 \frac{ax^2}{6}+\frac{x^3}{3}\coth^{-1}\frac{x}{a}
 +\frac{a^3}{6}\ln(x^2-a^2)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 98 of 156
@@ -1527,14 +1527,14 @@ dd:=acothrule cc
 --R   (5)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.664~~~~~$\displaystyle
 \int{\frac{\coth^{-1}(x/a)}{x}}~dx$}
 $$\int{\frac{\coth^{-1}(x/a)}{x}}=
 -\left(\frac{a}{x}+\frac{(a/x)^3}{3^2}+\frac{(a/x)^5}{5^2}+\cdots\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 103 of 156    14:664 Axiom cannot compute this integral
@@ -1548,14 +1548,14 @@ aa:=integrate(acoth(x/a)/x,x)
 --I        ++       %P
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.665~~~~~$\displaystyle
 \int{\frac{\coth^{-1}(x/a)}{x^2}}~dx$}
 $$\int{\frac{\coth^{-1}(x/a)}{x^2}}=
 -\frac{\coth^{-1}(x/a)}{x}+\frac{1}{2a}\ln\left(\frac{x^2}{x^2-a^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 104 of 156
@@ -1627,7 +1627,7 @@ ee:=expandLog dd
 --R   (6)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.666~~~~~$\displaystyle
 \int{{\rm sech}^{-1}\frac{x}{a}}~dx$}
@@ -1642,7 +1642,7 @@ x{\rm ~sech}^{-1}(x/a)-a\sin^{-1}(x/a),\quad{\rm sech}^{-1}(x/a)<0\\
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 110 of 156
@@ -1840,11 +1840,11 @@ ii1:=complexNormalize hh1
 --R                                             Type: Expression Complex Integer
 --E
 
-@
+\end{chunk}
 Note that Axiom has a built-in assumption about the sign of asech(x/a).
 We can see this if we simplify the cc2 value and show that it differs
 by a complex value of x.
-<<*>>=
+\begin{chunk}{*}
 --S 124 of 156
 dd2:=asechrule cc2
 --R
@@ -1954,7 +1954,7 @@ ii2:=complexNormalize hh2
 --R                                             Type: Expression Complex Integer
 --E
 
-@
+\end{chunk}
 Thus we can conjecture that solutions that show up with x in only the
 imaginary part do so when the assumption of the sign of an inverse
 function differs.
@@ -1974,7 +1974,7 @@ $$\int{x{\rm ~sech}^{-1}\frac{x}{a}}=
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 130 of 156
@@ -2104,7 +2104,7 @@ ff1:=rootSimp ee1
 --R           2
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.668~~~~~$\displaystyle
 \int{\frac{{\rm sech}^{-1}(x/a)}{x}}~dx$}
@@ -2126,7 +2126,7 @@ $$
 
 This is a interesting result since Axiom gives a closed form 
 solution to the problem but Schaums gives a series solution.
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 139 of 156    14:668 Axiom cannot compute this integral
@@ -2140,7 +2140,7 @@ aa:=integrate(asech(x/a)/x,x)
 --I        ++       %P
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.669~~~~~$\displaystyle
 \int{{\rm csch}^{-1}\frac{x}{a}}~dx$}
@@ -2148,7 +2148,7 @@ $$\int{{\rm csch}^{-1}\frac{x}{a}}=
 x{\rm ~csch}^{-1}\frac{x}{a}\pm a\sinh^{-1}\frac{x}{a}
 \quad +{\rm if\ }x>0, -{\rm if\ }x<0
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 140 of 156
@@ -2204,7 +2204,7 @@ cc2:=aa-bb2
 --R                                          x                  a            a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.670~~~~~$\displaystyle
 \int{x{\rm ~csch}^{-1}\frac{x}{a}}~dx$}
@@ -2212,7 +2212,7 @@ $$\int{x{\rm ~csch}^{-1}\frac{x}{a}}=
 \frac{x^2}{2}{\rm ~csch}^{-1}\frac{x}{a}\pm \frac{a\sqrt{x^2+a^2}}{2}
 \quad +{\rm if\ }x>0, -{\rm if\ }x<0
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 145 of 156
@@ -2287,7 +2287,7 @@ cc2:=aa-bb2
 --R     2\|x  + a   - 2x
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.671~~~~~$\displaystyle
 \int{\frac{{\rm csch}^{-1}(x/a)}{x}}~dx$}
@@ -2314,7 +2314,7 @@ $$
 
 Schaums gives 3 different series expansions for this integral
 but Axiom has computed a closed form.
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 150 of 156    14:671 Axiom cannot compute this integral
@@ -2329,7 +2329,7 @@ aa:=integrate(acsch(x/a)/x,x)
 --R                                          Type: Union(Expression Integer,...)
 --E 
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.672~~~~~$\displaystyle
 \int{x^m\sinh^{-1}\frac{x}{a}}~dx$}
@@ -2337,7 +2337,7 @@ $$\int{x^m\sinh^{-1}\frac{x}{a}}=
 \frac{x^{m+1}}{m+1}\sinh^{-1}\frac{x}{a}
 -\frac{1}{m+1}\int{\frac{x^{m+1}}{\sqrt{x^2+a^2}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 151 of 156    14:672 Axiom cannot compute this integral
@@ -2350,7 +2350,7 @@ aa:=integrate(x^m*asinh(x/a),x)
 --R        ++          a
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.673~~~~~$\displaystyle
 \int{x^m\cosh^{-1}\frac{x}{a}}~dx$}
@@ -2369,7 +2369,7 @@ $$\int{x^m\cosh^{-1}\frac{x}{a}}=
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 152 of 156    14:673 Axiom cannot compute this integral
@@ -2382,7 +2382,7 @@ aa:=integrate(x^m*acosh(x/a),x)
 --R        ++          a
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.674~~~~~$\displaystyle
 \int{x^m\tanh^{-1}\frac{x}{a}}~dx$}
@@ -2390,7 +2390,7 @@ $$\int{x^m\tanh^{-1}\frac{x}{a}}=
 \frac{x^{m+1}}{m+1}\tanh^{-1}\frac{x}{a}
 -\frac{a}{m+1}\int{\frac{x^{m+1}}{a^2-x^2}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 153 of 156    14:674 Axiom cannot compute this integral
@@ -2403,7 +2403,7 @@ aa:=integrate(x^m*atanh(x/a),x)
 --R        ++          a
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.675~~~~~$\displaystyle
 \int{x^m\coth^{-1}\frac{x}{a}}~dx$}
@@ -2411,7 +2411,7 @@ $$\int{x^m\coth^{-1}\frac{x}{a}}=
 \frac{x^{m+1}}{m+1}\coth^{-1}\frac{x}{a}
 -\frac{a}{m+1}\int{\frac{x^{m+1}}{a^2-x^2}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 154 of 156    14:675 Axiom cannot compute this integral
@@ -2424,7 +2424,7 @@ aa:=integrate(x^m*acoth(x/a),x)
 --R        ++          a
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.676~~~~~$\displaystyle
 \int{x^m{\rm ~sech}^{-1}\frac{x}{a}}~dx$}
@@ -2443,7 +2443,7 @@ $$\int{x^m{\rm ~sech}^{-1}\frac{x}{a}}=
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 155 of 156    14:676 Axiom cannot compute this integral
@@ -2456,7 +2456,7 @@ aa:=integrate(x^m*asech(x/a),x)
 --R        ++          a
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.677~~~~~$\displaystyle
 \int{x^m{\rm ~csch}^{-1}\frac{x}{a}}~dx$}
@@ -2466,7 +2466,7 @@ $$\int{x^m{\rm ~csch}^{-1}\frac{x}{a}}=
 \quad+{\rm if\ }x>0
 ~-{\rm if\ }x<0
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 156 of 156    14:677 Axiom cannot compute this integral
@@ -2482,7 +2482,7 @@ aa:=integrate(x^m*acsch(x/a),x)
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum4.input.pamphlet b/src/input/schaum4.input.pamphlet
index e110709..9895fbc 100644
--- a/src/input/schaum4.input.pamphlet
+++ b/src/input/schaum4.input.pamphlet
@@ -10,7 +10,7 @@
 \section{\cite{1}:14.113~~~~~$\displaystyle\int{\frac{px+q}{\sqrt{ax+b}}}~dx$}
 $$\int{\frac{px+q}{\sqrt{ax+b}}}=
 \frac{2(apx+3aq-2bp)}{3a^2}\sqrt{ax+b}$$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum4.output
 )set message test on
@@ -46,7 +46,7 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.114~~~~~$\displaystyle
 \int{\frac{dx}{(px+q)\sqrt{ax+b}}}$}
@@ -59,7 +59,7 @@ $$\int{\frac{1}{(px+q)\sqrt{ax+b}}}=
 \end{array}
 \right.
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 4 of 25
@@ -238,7 +238,7 @@ cc4:=aa2-bb2
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.115~~~~~$\displaystyle\int{\frac{\sqrt{ax+b}}{px+q}}~dx$}
 $$\int{\frac{\sqrt{ax+b}}{px+q}}=
@@ -250,7 +250,7 @@ $$\int{\frac{\sqrt{ax+b}}{px+q}}=
 \tan^{-1}\sqrt{\frac{p(ax+b)}{aq-bp}}
 \end{array}
 \right.$$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 13 of 25
@@ -426,14 +426,14 @@ cc4:=aa2-bb2
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.116~~~~~$\displaystyle\int{(px+b)^n\sqrt{ax+b}}~dx$}
 $$\int{(px+b)^n\sqrt{ax+b}}=
 \frac{2(px+q)^{n+1}\sqrt{ax+b}}{(2n+3)p}+\frac{bp-aq}{(2n+3)p}
 \int{\frac{(px+q)^n}{\sqrt{ax+b}}}$$
 
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 22 of 25     14:116 Axiom cannot compute this integral
@@ -446,7 +446,7 @@ aa:=integrate((p*x+q)^n*sqrt(a*x+b),x)
 --R        ++
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.117~~~~~$\displaystyle
 \int{\frac{dx}{(px+b)^n\sqrt{ax+b}}}$}
@@ -455,7 +455,7 @@ $$\int{\frac{1}{(px+b)^n\sqrt{ax+b}}}=
 \frac{(2n-3)a}{2(n-1)(aq-bp)}
 \int{\frac{1}{(px+q)^{n-1}\sqrt{ax+b}}}$$
 
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 23 of 25     14:117 Axiom cannot compute this integral
@@ -469,7 +469,7 @@ aa:=integrate(1/((p*x+q)^n*sqrt(a*x+b)),x)
 --I             (q + %L p) \|b + %L a
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.118~~~~~$\displaystyle
 \int{\frac{(px+q)^n}{\sqrt{ax+b}}}~dx$}
@@ -477,7 +477,7 @@ $$\int{\frac{(px+q)^n}{\sqrt{ax+b}}}=
 \frac{2(px+q)^n\sqrt{ax+b}}{(2n+1)a}+
 \frac{2n(aq-bp)}{(2n+1)a}
 \int{\frac{(px+q)^{n-1}}{\sqrt{ax+b}}}$$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 24 of 25     14:118 Axiom cannot compute this integral
@@ -491,14 +491,14 @@ aa:=integrate((p*x+q)^n/sqrt(a*x+b),x)
 --I             \|b + %L a
 --R                                          Type: Union(Expression Integer,...)
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.119~~~~~$\displaystyle
 \int{\frac{\sqrt{ax+b}}{(px+q)^n}}~dx$}
 $$\int{\frac{\sqrt{ax+b}}{(px+q)^n}}=
 \frac{-\sqrt{ax+b}}{(n-1)p(px+q)^{n-1}}+
 \frac{a}{2(n-1)p}\int{\frac{1}{(px+q)^{n-1}\sqrt{ax+b}}}$$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 25 of 25     14:119 Axiom cannot compute this integral
@@ -515,7 +515,7 @@ aa:=integrate(sqrt(a*x+b)/(p*x+q)^n,x)
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum5.input.pamphlet b/src/input/schaum5.input.pamphlet
index 957f727..3a7f1b6 100644
--- a/src/input/schaum5.input.pamphlet
+++ b/src/input/schaum5.input.pamphlet
@@ -16,7 +16,7 @@ $$\int{\frac{1}{\sqrt{(ax+b)(px+q)}}}=
 \frac{2}{\sqrt{-ap}}\tan^{-1}\sqrt{\frac{-p(ax+b)}{a(px+b)}}
 \end{array}
 \right.$$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum5.output
 )set message test on
@@ -205,7 +205,7 @@ cc4:=aa2-bb2
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.121~~~~~$\displaystyle
 \int{\frac{x~dx}{\sqrt{(ax+b)(px+q)}}}$}
@@ -213,7 +213,7 @@ $$\int{\frac{x}{\sqrt{(ax+b)(px+q)}}}=
 \frac{\sqrt{(ax+b)(px+q)}}{ap}-\frac{bp+aq}{2ap}
 \int{\frac{1}{\sqrt{(ax+b)(px+q)}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 10 of 45
@@ -466,14 +466,14 @@ cc:=aa-bb
 --R     ]
 --R                                              Type: Vector Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.122~~~~~$\displaystyle\int{\sqrt{(ax+b)(px+q)}}~dx$}
 $$\int{\sqrt{(ax+b)(px+q)}}=
 \frac{2apx+bp+aq}{4ap}\sqrt{(ax+b)(px+q)}-
 \frac{(bp-aq)^2}{8ap}\int{\frac{1}{\sqrt{(ax+b)(px+q)}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 15 of 45
@@ -623,9 +623,9 @@ aa:=integrate(sqrt((a*x+b)*(p*x+q)),x)
 --R     ]
 --R                                     Type: Union(List Expression Integer,...)
 --E
-@
+\end{chunk}
 Since there are two parts to the aa variable we split them: 
-<<*>>=
+\begin{chunk}{*}
 --S 16 of 45
 aa1:=aa.1
 --R
@@ -775,10 +775,10 @@ aa2:=aa.2
 --R         \|- a p
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 We break the books answer into 3 parts, the first term, the coefficient
 of the second term, and the integral.
-<<*>>=
+\begin{chunk}{*}
 --S 18 of 45
 bba:=((2*a*p*x+b*p+a*q)/(4*a*p))*sqrt((a*x+b)*(p*x+q))
 --R
@@ -830,9 +830,9 @@ bbc:=integrate(1/sqrt((a*x+b)*(p*x+q)),x)
 --R                               \|- a p
 --R                                     Type: Union(List Expression Integer,...)
 --E
-@
+\end{chunk}
 Since the integral has two parts, we break them apart
-<<*>>=
+\begin{chunk}{*}
 --S 21 of 45
 bbc1:=bbc.1
 --R
@@ -867,9 +867,9 @@ bbc2:=bbc.2
 --R                                   \|- a p
 --R                                                     Type: Expression Integer
 --E
-@ 
+\end{chunk} 
 And now we construct the two bb answers based on the integral parts
-<<*>>=
+\begin{chunk}{*}
 --S 23 of 45
 bb1:=bba+bbb*bbc1
 --R
@@ -919,10 +919,10 @@ bb2:=bba+bbb*bbc2
 --R     4a p\|- a p
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 So there are 4 possible combinations that might yield an answer.
 We construct all four.
-<<*>>=
+\begin{chunk}{*}
 --S 25 of 45
 cc1:=aa1-bb1
 --R
@@ -1255,14 +1255,14 @@ cc4:=aa2-bb2
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.123~~~~~$\displaystyle\int{\sqrt{\frac{px+q}{ax+b}}}~dx$}
 $$\int{\sqrt{\frac{px+q}{ax+b}}}=
 \frac{\sqrt{(ax+b)(px+q)}}{a}+\frac{aq-bp}{2a}
 \int{\frac{1}{\sqrt{(ax+b)(px+q)}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 29 of 45
@@ -1601,14 +1601,14 @@ cc4:=aa2-bb2
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.124~~~~~$\displaystyle
 \int{\frac{dx}{(px+q)\sqrt{(ax+b)(px+q)}}}~dx$}
 $$\int{\frac{1}{(px+q)\sqrt{(ax+b)(px+q)}}}=
 \frac{2\sqrt{ax+b}}{(aq-bp)\sqrt{px+q}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 43 of 45
@@ -1657,7 +1657,7 @@ cc:=aa-bb
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum6.input.pamphlet b/src/input/schaum6.input.pamphlet
index 0516829..cd5d210 100644
--- a/src/input/schaum6.input.pamphlet
+++ b/src/input/schaum6.input.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \section{\cite{1}:14.125~~~~~$\displaystyle\int{\frac{dx}{x^2+a^2}}$}
 $$\int{\frac{1}{x^2+a^2}}=\frac{1}{a}\tan^{-1}\frac{x}{a}$$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum6.output
 )set message test on
@@ -46,11 +46,11 @@ cc:=aa-bb
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.126~~~~~$\displaystyle\int{\frac{x~dx}{x^2+a^2}}$}
 $$\int{\frac{x}{x^2+a^2}}=\frac{1}{2}\ln(x^2+a^2)$$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 4 of 68
@@ -80,11 +80,11 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.127~~~~~$\displaystyle\int{\frac{x^2~dx}{x^2+a^2}}$}
 $$\int{\frac{x^2}{x^2+a^2}}=x-a\tan^{-1}\frac{x}{a}$$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 7 of 68
@@ -113,12 +113,12 @@ cc:=aa-bb
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.128~~~~~$\displaystyle\int{\frac{x^3~dx}{x^2+a^2}}$}
 $$\int{\frac{x^3}{x^2+a^2}}=\frac{x^2}{2}-\frac{a^2}{2}\ln(x^2+a^2)$$
 
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 10 of 68
@@ -148,13 +148,13 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.129~~~~~$\displaystyle\int{\frac{dx}{x(x^2+a^2)}}$}
 $$\int{\frac{1}{x(x^2+a^2)}}=
 \frac{1}{2a^2}\ln\left(\frac{x^2}{x^2+a^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 13 of 68
@@ -232,13 +232,13 @@ ee:=logpow dd
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.130~~~~~$\displaystyle\int{\frac{dx}{x^2(x^2+a^2)}}$}
 $$\int{\frac{1}{x^2(x^2+a^2)}}=
 -\frac{1}{a^2x}-\frac{1}{a^3}\tan^{-1}\frac{x}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 20 of 68
@@ -273,13 +273,13 @@ cc:=aa-bb
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.131~~~~~$\displaystyle\int{\frac{dx}{x^3(x^2+a^2)}}$}
 $$\int{\frac{1}{x^3(x^2+a^2)}}=
 -\frac{1}{2a^2x^2}-\frac{1}{2a^4}\ln\left(\frac{x^2}{x^2+a^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 23 of 68
@@ -357,13 +357,13 @@ ee:=logpow dd
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.132~~~~~$\displaystyle\int{\frac{dx}{(x^2+a^2)^2}}$}
 $$\int{\frac{1}{(x^2+a^2)^2}}=
 \frac{x}{2a^2(x^2+a^2)}+\frac{1}{2a^3}\tan^{-1}\frac{x}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 30 of 68
@@ -398,13 +398,13 @@ cc:=aa-bb
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.133~~~~~$\displaystyle\int{\frac{x~dx}{(x^2+a^2)^2}}$}
 $$\int{\frac{x}{(x^2+a^2)^2}}=
 \frac{-1}{2(x^2+a^2)}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 33 of 68
@@ -434,13 +434,13 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.134~~~~~$\displaystyle\int{\frac{x^2dx}{(x^2+a^2)^2}}$}
 $$\int{\frac{x^2}{(x^2+a^2)^2}}=
 \frac{-x}{2(x^2+a^2)}+\frac{1}{2a}\tan^{-1}\frac{x}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 36 of 68
@@ -474,13 +474,13 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.135~~~~~$\displaystyle\int{\frac{x^3dx}{(x^2+a^2)^2}}$}
 $$\int{\frac{x^3}{(x^2+a^2)^2}}=
 \frac{a^2}{2(x^2+a^2)}+\frac{1}{2}\ln(x^2+a^2)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 39 of 68
@@ -512,13 +512,13 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.136~~~~~$\displaystyle\int{\frac{dx}{x(x^2+a^2)^2}}$}
 $$\int{\frac{1}{x(x^2+a^2)^2}}=
 \frac{1}{2a^2(x^2+a^2)}+\frac{1}{2a^4}\ln\left(\frac{x^2}{x^2+a^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 42 of 68
@@ -595,13 +595,13 @@ ee:=logpow dd
 --R   (7)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.137~~~~~$\displaystyle\int{\frac{dx}{x^2(x^2+a^2)^2}}$}
 $$\int{\frac{1}{x^2(x^2+a^2)^2}}=
 -\frac{1}{a^4x}-\frac{x}{2a^4(x^2+a^2)}-\frac{3}{2a^5}\tan^{-1}\frac{x}{a}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 49 of 68
@@ -634,14 +634,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.138~~~~~$\displaystyle\int{\frac{dx}{x^3(x^2+a^2)^2}}$}
 $$\int{\frac{1}{x^3(x^2+a^2)^2}}=
 -\frac{1}{2a^4x^2}-\frac{1}{2a^4(x^2+a^2)}-
 \frac{1}{a^6}\ln\left(\frac{x^2}{x^2+a^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 52 of 68
@@ -719,14 +719,14 @@ ee:=logpow dd
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.139~~~~~$\displaystyle\int{\frac{dx}{(x^2+a^2)^n}}$}
 $$\int{\frac{1}{(x^2+a^2)^n}}=
 \frac{x}{2(n-1)a^2(x^2+a^2)^{n-1}}+\frac{2n-3}{(2n-2)a^2}
 \int{\frac{1}{(x^2+a^2)^{n-1}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 59 of 68     14:139 Axiom cannot do this integral
@@ -740,13 +740,13 @@ aa:=integrate(1/((x^2+a^2)^n),x)
 --I             (a  + %L )
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.140~~~~~$\displaystyle\int{\frac{x~dx}{(x^2+a^2)^n}}$}
 $$\int{\frac{x}{(x^2+a^2)^n}}=
 \frac{-1}{2(n-1)(x^2+a^2)^{n-1}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 60 of 68
@@ -810,14 +810,14 @@ ee:=complexNormalize dd
 --R   (6)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.141~~~~~$\displaystyle\int{\frac{dx}{x(x^2+a^2)^n}}$}
 $$\int{\frac{1}{x(x^2+a^2)^n}}=
 \frac{1}{2(n-1)a^2(x^2+a^2)^{n-1}}+\frac{1}{a^2}
 \int{\frac{1}{x(x^2+a^2)^{n-1}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 66 of 68     14:141 Axiom cannot do this integral
@@ -831,14 +831,14 @@ aa:=integrate(1/(x*(x^2+a^2)^n),x)
 --I             %L (a  + %L )
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.142~~~~~$\displaystyle\int{\frac{x^mdx}{(x^2+a^2)^n}}$}
 $$\int{\frac{x^m}{(x^2+a^2)^n}}=
 \int{\frac{x^{m-2}}{(x^2+a^2)^{n-1}}} -
 a^2\int{\frac{x^{m-2}}{(x^2+a^2)^n}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 67 of 68     14:142 Axiom cannot do this integral
@@ -852,14 +852,14 @@ aa:=integrate(x^m/((x^2+a^2)^n),x)
 --I             (a  + %L )
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.143~~~~~$\displaystyle\int{\frac{dx}{x^m(x^2+a^2)^n}}$}
 $$\int{\frac{1}{x^m(x^2+a^2)^n}}=
 \frac{1}{a^2}\int{\frac{1}{x^m(x^2+a^2)^{n-1}}}-
 \frac{1}{a^2}\int{\frac{1}{x^{m-2}(x^2+a^2)^n}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 68 of 68     14:143 Axiom cannot do this integral
@@ -876,7 +876,7 @@ aa:=integrate(1/(x^m*(x^2+a^2)^n),x)
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum7.input.pamphlet b/src/input/schaum7.input.pamphlet
index b3eb346..da7e6c5 100644
--- a/src/input/schaum7.input.pamphlet
+++ b/src/input/schaum7.input.pamphlet
@@ -10,7 +10,7 @@
 \section{\cite{1}:14.144~~~~~$\displaystyle\int{\frac{dx}{x^2-a^2}}$}
 $$\int{\frac{1}{x^2-a^2}}=\frac{1}{2a}\ln\left(\frac{x-a}{x+a}\right)$$
 $$\int{\frac{1}{x^2-a^2}}=-\frac{1}{a}\coth^{-1}\frac{x}{a}$$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum7.output
 )set message test on
@@ -65,11 +65,11 @@ dd:=divlog cc
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.145~~~~~$\displaystyle\int{\frac{x~dx}{x^2-a^2}}$}
 $$\int{\frac{x}{x^2-a^2}}=\frac{1}{2}\ln(x^2-a^2)$$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 6 of 80
@@ -100,11 +100,11 @@ cc:=aa-bb
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.146~~~~~$\displaystyle\int{\frac{x^2~dx}{x^2-a^2}}$}
 $$\int{\frac{x^2}{x^2-a^2}}=x+\frac{a}{2}\ln\left(\frac{x-a}{x+a}\right)$$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 9 of 80
@@ -155,12 +155,12 @@ dd:=divlog cc
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.147~~~~~$\displaystyle\int{\frac{x^3~dx}{x^2-a^2}}$}
 $$\int{\frac{x^3}{x^2-a^2}}=\frac{x^2}{2}+\frac{a^2}{2}\ln(x^2-a^2)$$
 
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 14 of 80
@@ -191,13 +191,13 @@ cc:=aa-bb
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.148~~~~~$\displaystyle\int{\frac{dx}{x(x^2-a^2)}}$}
 $$\int{\frac{1}{x(x^2-a^2)}}=
 \frac{1}{2a^2}\ln\left(\frac{x^2-a^2}{x^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 17 of 80
@@ -275,13 +275,13 @@ ee:=logpow dd
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.149~~~~~$\displaystyle\int{\frac{dx}{x^2(x^2-a^2)}}$}
 $$\int{\frac{1}{x^2(x^2-a^2)}}=
 \frac{1}{a^2x}+\frac{1}{2a^3}\ln\left(\frac{x-a}{x+a}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 24 of 80
@@ -335,13 +335,13 @@ dd:=divlog cc
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.150~~~~~$\displaystyle\int{\frac{dx}{x^3(x^2-a^2)}}$}
 $$\int{\frac{1}{x^3(x^2-a^2)}}=
 \frac{1}{2a^2x^2}-\frac{1}{2a^4}\ln\left(\frac{x^2}{x^2-a^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 29 of 80
@@ -415,13 +415,13 @@ cc:=aa-t2
 --R   (7)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.151~~~~~$\displaystyle\int{\frac{dx}{(x^2-a^2)^2}}$}
 $$\int{\frac{1}{(x^2-a^2)^2}}=
 \frac{-x}{2a^2(x^2-a^2)}-\frac{1}{4a^3}\ln\left(\frac{x-a}{x+a}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 36 of 80
@@ -476,13 +476,13 @@ dd:=divlog cc
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.152~~~~~$\displaystyle\int{\frac{x~dx}{(x^2-a^2)^2}}$}
 $$\int{\frac{x}{(x^2-a^2)^2}}=
 \frac{-1}{2(x^2-a^2)}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 41 of 80
@@ -513,13 +513,13 @@ cc:=aa-bb
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.153~~~~~$\displaystyle\int{\frac{x^2dx}{(x^2-a^2)^2}}$}
 $$\int{\frac{x^2}{(x^2-a^2)^2}}=
 \frac{-x}{2(x^2-a^2)}+\frac{1}{4a}\ln\left(\frac{x-a}{x+a}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 44 of 80
@@ -573,13 +573,13 @@ dd:=divlog cc
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.154~~~~~$\displaystyle\int{\frac{x^3dx}{(x^2-a^2)^2}}$}
 $$\int{\frac{x^3}{(x^2-a^2)^2}}=
 \frac{-a^2}{2(x^2-a^2)}+\frac{1}{2}\ln(x^2-a^2)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 49 of 80
@@ -612,13 +612,13 @@ cc:=aa-bb
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.155~~~~~$\displaystyle\int{\frac{dx}{x(x^2-a^2)^2}}$}
 $$\int{\frac{1}{x(x^2-a^2)^2}}=
 \frac{-1}{2a^2(x^2-a^2)}+\frac{1}{2a^4}\ln\left(\frac{x^2}{x^2-a^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 52 of 80
@@ -696,14 +696,14 @@ ee:=logpow dd
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.156~~~~~$\displaystyle\int{\frac{dx}{x^2(x^2-a^2)^2}}$}
 $$\int{\frac{1}{x^2(x^2-a^2)^2}}=
 -\frac{1}{a^4x}-\frac{x}{2a^4(x^2-a^2)}-
 \frac{3}{4a^5}\ln\left(\frac{x-a}{x+a}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 59 of 80
@@ -757,14 +757,14 @@ dd:=divlog cc
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.157~~~~~$\displaystyle\int{\frac{dx}{x^3(x^2-a^2)^2}}$}
 $$\int{\frac{1}{x^3(x^2-a^2)^2}}=
 -\frac{1}{2a^4x^2}-\frac{1}{2a^4(x^2-a^2)}+
 \frac{1}{a^6}\ln\left(\frac{x^2}{x^2-a^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 64 of 80
@@ -842,14 +842,14 @@ ee:=logpow dd
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.158~~~~~$\displaystyle\int{\frac{dx}{(x^2-a^2)^n}}$}
 $$\int{\frac{1}{(x^2-a^2)^n}}=
 \frac{-x}{2(n-1)a^2(x^2-a^2)^{n-1}}-
 \frac{2n-3}{(2n-2)a^2}\int{\frac{1}{(x^2-a^2)^{n-1}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 71 of 80     14:158 Axiom cannot do this integral
@@ -863,13 +863,13 @@ aa:=integrate(1/((x^2-a^2)^n),x)
 --I             (- a  + %L )
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.159~~~~~$\displaystyle\int{\frac{x~dx}{(x^2-a^2)^n}}$}
 $$\int{\frac{x}{(x^2-a^2)^n}}=
 \frac{-1}{2(n-1)(x^2-a^2)^{n-1}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 72 of 80
@@ -933,14 +933,14 @@ ee:=complexNormalize dd
 --R   (6)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.160~~~~~$\displaystyle\int{\frac{dx}{x(x^2-a^2)^n}}$}
 $$\int{\frac{1}{x(x^2-a^2)^n}}=
 \frac{-1}{2(n-1)a^2(x^2-a^2)^{n-1}}-
 \frac{1}{a^2}\int{\frac{1}{x(x^2-a^2)^{n-1}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 78 of 80     14:160 Axiom cannot compute this integral
@@ -954,14 +954,14 @@ aa:=integrate(1/(x*(x^2-a^2)^n),x)
 --I             %L (- a  + %L )
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.161~~~~~$\displaystyle\int{\frac{x^mdx}{(x^2-a^2)^n}}$}
 $$\int{\frac{x^m}{(x^2-a^2)^n}}=
 \int{\frac{x^{m-2}}{(x^2-a^2)^{n-1}}}+
 a^2\int\frac{x^{m-2}}{(x^2-a^2)^n}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 79 of 80     14:161 Axiom cannot compute this integral
@@ -975,14 +975,14 @@ aa:=integrate(x^m/((x^2-a^2)^n),x)
 --I             (- a  + %L )
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.162~~~~~$\displaystyle\int{\frac{dx}{x^m(x^2-a^2)^n}}$}
 $$\int{\frac{1}{x^m(x^2-a^2)^n}}=
 \frac{1}{a^2}\int{\frac{1}{x^{m-2}(x^2-a^2)^n}}-
 \frac{1}{a^2}\int{\frac{1}{x^m(x^2-a^2)^{n-1}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 80 of 80     14:162 Axiom cannot compute this integral
@@ -999,7 +999,7 @@ aa:=integrate(1/(x^m*(x^2-a^2)^n),x)
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum8.input.pamphlet b/src/input/schaum8.input.pamphlet
index b00fd18..2a404f0 100644
--- a/src/input/schaum8.input.pamphlet
+++ b/src/input/schaum8.input.pamphlet
@@ -10,7 +10,7 @@
 \section{\cite{1}:14.163~~~~~$\displaystyle\int{\frac{dx}{a^2-x^2}}$}
 $$\int{\frac{1}{a^2-x^2}}=\frac{1}{2a}\ln\left(\frac{a-x}{a+x}\right)$$
 $$\int{\frac{1}{a^2-x^2}}=-\frac{1}{a}\coth^{-1}\frac{x}{a}$$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum8.output
 )set message test on
@@ -83,11 +83,11 @@ ee:=logminus dd
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.164~~~~~$\displaystyle\int{\frac{x~dx}{a^2-x^2}}$}
 $$\int{\frac{x}{a^2-x^2}}=-\frac{1}{2}\ln(a^2-x^2)$$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 8 of 99
@@ -137,11 +137,11 @@ dd:=logminus1 cc
 --R            2
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.165~~~~~$\displaystyle\int{\frac{x^2~dx}{a^2-x^2}}$}
 $$\int{\frac{x^2}{a^2-x^2}}=-x+\frac{a}{2}\ln\left(\frac{a+x}{a-x}\right)$$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 13 of 99
@@ -209,12 +209,12 @@ ee:=logminusa dd
 --R             2
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.166~~~~~$\displaystyle\int{\frac{x^3~dx}{a^2-x^2}}$}
 $$\int{\frac{x^3}{a^2-x^2}}=-\frac{x^2}{2}-\frac{a^2}{2}\ln(a^2-x^2)$$
 
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 20 of 99
@@ -266,13 +266,13 @@ dd:=logminus1b cc
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.167~~~~~$\displaystyle\int{\frac{dx}{x(a^2-x^2)}}$}
 $$\int{\frac{1}{x(a^2-x^2)}}=
 \frac{1}{2a^2}\ln\left(\frac{x^2}{a^2-x^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 25 of 99
@@ -352,13 +352,13 @@ ee:=logpowminus dd
 --R             2a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.168~~~~~$\displaystyle\int{\frac{dx}{x^2(a^2-x^2)}}$}
 $$\int{\frac{1}{x^2(a^2-x^2)}}=
 \frac{1}{a^2x}+\frac{1}{2a^3}\ln\left(\frac{a+x}{a-x}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 32 of 99
@@ -432,13 +432,13 @@ ee:=logminus dd
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.169~~~~~$\displaystyle\int{\frac{dx}{x^3(a^2-x^2)}}$}
 $$\int{\frac{1}{x^3(a^2-x^2)}}=
 -\frac{1}{2a^2x^2}+\frac{1}{2a^4}\ln\left(\frac{x^2}{a^2-x^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 39 of 99
@@ -516,13 +516,13 @@ dd:=logminuspow cc
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.170~~~~~$\displaystyle\int{\frac{dx}{(a^2-x^2)^2}}$}
 $$\int{\frac{1}{(a^2-x^2)^2}}=
 \frac{x}{2a^2(a^2-x^2)}+\frac{1}{4a^3}\ln\left(\frac{a+x}{a-x}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 46 of 99
@@ -596,13 +596,13 @@ dd:=logminus cc
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.171~~~~~$\displaystyle\int{\frac{x~dx}{(a^2-x^2)^2}}$}
 $$\int{\frac{x}{(a^2-x^2)^2}}=
 \frac{1}{2(a^2-x^2)}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 53 of 99
@@ -633,13 +633,13 @@ cc:=aa-bb
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.172~~~~~$\displaystyle\int{\frac{x^2dx}{(a^2-x^2)^2}}$}
 $$\int{\frac{x^2}{(a^2-x^2)^2}}=
 \frac{x}{2(a^2-x^2)}-\frac{1}{4a}\ln\left(\frac{a+x}{a-x}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 56 of 99
@@ -710,13 +710,13 @@ dd:=logminus2 cc
 --R           4a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.173~~~~~$\displaystyle\int{\frac{x^3dx}{(a^2-x^2)^2}}$}
 $$\int{\frac{x^3}{(a^2-x^2)^2}}=
 \frac{a^2}{2(a^2-x^2)}+\frac{1}{2}\ln(a^2-x^2)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 63 of 99
@@ -769,13 +769,13 @@ dd:=logminus3 cc
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.174~~~~~$\displaystyle\int{\frac{dx}{x(a^2-x^2)^2}}$}
 $$\int{\frac{1}{x(a^2-x^2)^2}}=
 \frac{1}{2a^2(a^2-x^2)}+\frac{1}{2a^4}\ln\left(\frac{x^2}{a^2-x^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 68 of 99
@@ -853,14 +853,14 @@ dd:=logpowminus cc
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.175~~~~~$\displaystyle\int{\frac{dx}{x^2(a^2-x^2)^2}}$}
 $$\int{\frac{1}{x^2(a^2-x^2)^2}}=
 -\frac{1}{a^4x}+\frac{x}{2a^4(a^2-x^2)}+
 \frac{3}{4a^5}\ln\left(\frac{a+x}{a-x}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 75 of 99
@@ -945,14 +945,14 @@ ee:=logminusb dd
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.176~~~~~$\displaystyle\int{\frac{dx}{x^3(a^2-x^2)^2}}$}
 $$\int{\frac{1}{x^3(a^2-x^2)^2}}=
 \frac{1}{2a^4x^2}+\frac{1}{2a^4(a^2-x^2)}+
 \frac{1}{a^6}\ln\left(\frac{x^2}{a^2-x^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 83 of 99
@@ -1030,14 +1030,14 @@ dd:=logpowminus cc
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.177~~~~~$\displaystyle\int{\frac{dx}{(a^2-x^2)^n}}$}
 $$\int{\frac{1}{(a^2-x^2)^n}}=
 \frac{x}{2(n-1)a^2(a^2-x^2)^{n-1}}+
 \frac{2n-3}{(2n-2)a^2}\int{\frac{1}{(a^2-x^2)^{n-1}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 90 of 99     14:177 Axiom cannot do this integration
@@ -1051,13 +1051,13 @@ aa:=integrate(1/((a^2-x^2)^n),x)
 --I             (a  - %L )
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.178~~~~~$\displaystyle\int{\frac{x~dx}{(a^2-x^2)^n}}$}
 $$\int{\frac{x}{(a^2-x^2)^n}}=
 \frac{1}{2(n-1)(a^2-x^2)^{n-1}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 91 of 99
@@ -1122,14 +1122,14 @@ ee:=complexNormalize dd
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.179~~~~~$\displaystyle\int{\frac{dx}{x(a^2-x^2)^n}}$}
 $$\int{\frac{1}{x(a^2-x^2)^n}}=
 \frac{1}{2(n-1)a^2(a^2-x^2)^{n-1}}+
 \frac{1}{a^2}\int{\frac{1}{x(a^2-x^2)^{n-1}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 97 of 99     14:179 Axiom cannot integrate this expression
@@ -1143,14 +1143,14 @@ aa:=integrate(1/(x*(a^2-x^2)^n),x)
 --I             %L (a  - %L )
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.180~~~~~$\displaystyle\int{\frac{x^mdx}{(a^2-x^2)^n}}$}
 $$\int{\frac{x^m}{(a^2-x^2)^n}}=
 a^2\int\frac{x^{m-2}}{(a^2-x^2)^n}-
 \int{\frac{x^{m-2}}{(a^2-x^2)^{n-1}}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 98 of 99     14:180 Axiom cannot integrate this expression
@@ -1164,14 +1164,14 @@ aa:=integrate(x^m/((a^2-x^2)^n),x)
 --I             (a  - %L )
 --R                                          Type: Union(Expression Integer,...)
 --E 
-@
+\end{chunk}
 
 \section{\cite{1}:14.181~~~~~$\displaystyle\int{\frac{dx}{x^m(a^2-x^2)^n}}$}
 $$\int{\frac{1}{x^m(a^2-x^2)^n}}=
 \frac{1}{a^2}\int{\frac{1}{x^m(a^2-x^2)^{n-1}}}+
 \frac{1}{a^2}\int{\frac{1}{x^{m-2}(a^2-x^2)^n}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 99 of 99     14:181 Axiom cannot integrate this expression
@@ -1188,7 +1188,7 @@ aa:=integrate(1/(x^m*(a^2-x^2)^n),x)
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/schaum9.input.pamphlet b/src/input/schaum9.input.pamphlet
index 8cbc33c..95d7a12 100644
--- a/src/input/schaum9.input.pamphlet
+++ b/src/input/schaum9.input.pamphlet
@@ -10,7 +10,7 @@
 \section{\cite{1}:14.182~~~~~$\displaystyle\int{\frac{dx}{\sqrt{x^2+a^2}}}$}
 $$\int{\frac{1}{\sqrt{x^2+a^2}}}=\ln\left(x+\sqrt{x^2+a^2}\right)$$
 $$\int{\frac{1}{\sqrt{x^2+a^2}}}=\sinh^{-1}\frac{x}{a}$$
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool schaum9.output
 )set message test on
@@ -53,12 +53,12 @@ dd:=complexNormalize cc
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 This is equal to $-\log(a^2)$ but Axiom cannot prove it.
 
 \section{\cite{1}:14.183~~~~~$\displaystyle\int{\frac{x~dx}{\sqrt{x^2+a^2}}}$}
 $$\int{\frac{x}{\sqrt{x^2+a^2}}}=\sqrt{x^2+a^2}$$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 5 of 110
@@ -90,14 +90,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.184~~~~~$\displaystyle
 \int{\frac{x^2~dx}{\sqrt{x^2+a^2}}}$}
 $$\int{\frac{x^2}{\sqrt{x^2+a^2}}}=
 \frac{x\sqrt{x^2+a^2}}{2}-\frac{a^2}{2}\ln\left(x+\sqrt{x^2+a^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 8 of 110
@@ -158,14 +158,14 @@ dd:=logmul1 cc
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.185~~~~~$\displaystyle
 \int{\frac{x^3~dx}{\sqrt{x^2+a^2}}}$}
 $$\int{\frac{x^3}{\sqrt{x^2+a^2}}}=
 \frac{(x^2+a^2)^{3/2}}{3}-a^2\sqrt{x^2+a^2}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 13 of 110
@@ -199,13 +199,13 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.186~~~~~$\displaystyle\int{\frac{dx}{x\sqrt{x^2+a^2}}}$}
 $$\int{\frac{1}{x\sqrt{x^2+a^2}}}=
 -\frac{1}{a}\ln\left(\frac{a+\sqrt{x^2+a^2}}{x}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 16 of 110
@@ -270,14 +270,14 @@ ee:=complexNormalize dd
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.187~~~~~$\displaystyle
 \int{\frac{dx}{x^2\sqrt{x^2+a^2}}}$}
 $$\int{\frac{1}{x^2\sqrt{x^2+a^2}}}=
 -\frac{\sqrt{x^2+a^2}}{a^2x}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 21 of 110
@@ -314,14 +314,14 @@ cc:=aa-bb
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.188~~~~~$\displaystyle\int{\frac{dx}{x^3\sqrt{x^2+a^2}}}$}
 $$\int{\frac{1}{x^3\sqrt{x^2+a^2}}}=
 -\frac{\sqrt{x^2+a^2}}{2a^2x^2}+\frac{1}{2a^3}
 \ln\left(\frac{a+\sqrt{x^2+a^2}}{x}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 24 of 110
@@ -401,13 +401,13 @@ ee:=complexNormalize dd
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.189~~~~~$\displaystyle\int{\sqrt{x^2+a^2}}~dx$}
 $$\int{\sqrt{x^2+a^2}}=
 \frac{x\sqrt{x^2+a^2}}{2}+\frac{a^2}{2}\ln\left(x+\sqrt{x^2+a^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 29 of 110
@@ -461,13 +461,13 @@ dd:=complexNormalize cc
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.190~~~~~$\displaystyle\int{x\sqrt{x^2+a^2}}~dx$}
 $$\int{x\sqrt{x^2+a^2}}=
 \frac{(x^2+a^2)^{3/2}}{3}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 33 of 110
@@ -501,7 +501,7 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.191~~~~~$\displaystyle
 \int{x^2\sqrt{x^2+a^2}}~dx$}
@@ -509,7 +509,7 @@ $$\int{x^2\sqrt{x^2+a^2}}=
 \frac{x(x^2+a^2)^{3/2}}{4}-\frac{a^2x\sqrt{x^2+a^2}}{8}-
 \frac{a^4}{8}\ln\left(x+\sqrt{x^2+a^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 36 of 110
@@ -562,14 +562,14 @@ dd:=complexNormalize cc
 --R            8
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.192~~~~~$\displaystyle
 \int{x^3\sqrt{x^2+a^2}}~dx$}
 $$\int{x^3\sqrt{x^2+a^2}}=
 \frac{(x^2+a^2)^{5/2}}{5}-\frac{a^2(x^2+a^2)^{3/2}}{3}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 40 of 110
@@ -607,14 +607,14 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.193~~~~~$\displaystyle
 \int{\frac{\sqrt{x^2+a^2}}{x}}~dx$}
 $$\int{\frac{\sqrt{x^2+a^2}}{x}}=
 \sqrt{x^2+a^2}-a\ln\left(\frac{a+\sqrt{x^2+a^2}}{x}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 43 of 110
@@ -683,14 +683,14 @@ ee:=complexNormalize dd
 --R   (5)  - a log(- 1)
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.194~~~~~$\displaystyle
 \int{\frac{\sqrt{x^2+a^2}}{x^2}}~dx$}
 $$\int{\frac{\sqrt{x^2+a^2}}{x^2}}=
 -\frac{\sqrt{x^2+a^2}}{x}+\ln\left(x+\sqrt{x^2+a^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 48 of 110
@@ -735,7 +735,7 @@ dd:=complexNormalize cc
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.195~~~~~$\displaystyle
 \int{\frac{\sqrt{x^2+a^2}}{x^3}}~dx$}
@@ -743,7 +743,7 @@ $$\int{\frac{\sqrt{x^2+a^2}}{x^3}}=
 -\frac{\sqrt{x^2+a^2}}{2x^2}-\frac{1}{2a}
 \ln\left(\frac{a+\sqrt{x^2+a^2}}{x}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 52 of 110
@@ -819,13 +819,13 @@ ee:=complexNormalize dd
 --R             2a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.196~~~~~$\displaystyle\int{\frac{dx}{(x^2+a^2)^{3/2}}}$}
 $$\int{\frac{1}{(x^2+a^2)^{3/2}}}=
 \frac{x}{a^2\sqrt{x^2+a^2}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 57 of 110
@@ -860,14 +860,14 @@ cc:=aa-bb
 --R        a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.197~~~~~$\displaystyle
 \int{\frac{x~dx}{(x^2+a^2)^{3/2}}}$}
 $$\int{\frac{x}{(x^2+a^2)^{3/2}}}=
 \frac{-1}{\sqrt{x^2+a^2}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 60 of 110
@@ -902,14 +902,14 @@ cc:=aa-bb
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.198~~~~~$\displaystyle
 \int{\frac{x^2dx}{(x^2+a^2)^{3/2}}}$}
 $$\int{\frac{x^2}{(x^2+a^2)^{3/2}}}=
 \frac{-x}{\sqrt{x^2+a^2}}+\ln\left(x+\sqrt{x^2+a^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 63 of 110
@@ -955,14 +955,14 @@ dd:=complexNormalize cc
 --R   (4)  - log(a ) - 1
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.199~~~~~$\displaystyle
 \int{\frac{x^3dx}{(x^2+a^2)^{3/2}}}$}
 $$\int{\frac{x^3}{(x^2+a^2)^{3/2}}}=
 \sqrt{x^2+a^2}+\frac{a^2}{\sqrt{x^2+a^2}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 67 of 110
@@ -997,7 +997,7 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.200~~~~~$\displaystyle
 \int{\frac{dx}{x(x^2+a^2)^{3/2}}}$}
@@ -1005,7 +1005,7 @@ $$\int{\frac{1}{x(x^2+a^2)^{3/2}}}=
 \frac{1}{a^2\sqrt{x^2+a^2}}-
 \frac{1}{a^3}\ln\left(\frac{a+\sqrt{x^2+a^2}}{x}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 70 of 110
@@ -1082,14 +1082,14 @@ ee:=complexNormalize dd
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.201~~~~~$\displaystyle
 \int{\frac{dx}{x^2(x^2+a^2)^{3/2}}}$}
 $$\int{\frac{1}{x^2(x^2+a^2)^{3/2}}}=
 -\frac{\sqrt{x^2+a^2}}{a^4x}-\frac{x}{a^4\sqrt{x^2+a^2}}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 75 of 110
@@ -1125,7 +1125,7 @@ cc:=aa-bb
 --R          a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.202~~~~~$\displaystyle
 \int{\frac{dx}{x^3(x^2+a^2)^{3/2}}}$}
@@ -1134,7 +1134,7 @@ $$\int{\frac{1}{x^3(x^2+a^2)^{3/2}}}=
 \frac{3}{2a^4\sqrt{x^2+a^2}}+
 \frac{3}{2a^5}\ln\left(\frac{a+\sqrt{x^2+a^2}}{x}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 78 of 110
@@ -1220,14 +1220,14 @@ ee:=complexNormalize dd
 --R           2a
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.203~~~~~$\displaystyle\int{(x^2+a^2)^{3/2}}~dx$}
 $$\int{(x^2+a^2)^{3/2}}=
 \frac{x(x^2+a^2)^{3/2}}{4}+\frac{3a^2x\sqrt{x^2+a^2}}{8}+
 \frac{3}{8}a^4\ln\left(x+\sqrt{x^2+a^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 83 of 110
@@ -1282,11 +1282,11 @@ dd:=complexNormalize cc
 --R               8
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.204~~~~~$\displaystyle\int{x(x^2+a^2)^{3/2}}~dx$}
 $$\int{x(x^2+a^2)^{3/2}}=\frac{(x^2+a^2)^{5/2}}{5}$$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 87 of 110
@@ -1324,7 +1324,7 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.205~~~~~$\displaystyle\int{x^2(x^2+a^2)^{3/2}}~dx$}
 $$\int{x^2(x^2+a^2)^{3/2}}=
@@ -1332,7 +1332,7 @@ $$\int{x^2(x^2+a^2)^{3/2}}=
 \frac{a^4x\sqrt{x^2+a^2}}{16}-
 \frac{a^6}{16}\ln\left(x+\sqrt{x^2+a^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 90 of 110
@@ -1395,13 +1395,13 @@ dd:=complexNormalize cc
 --R            16
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.206~~~~~$\displaystyle\int{x^3(x^2+a^2)^{3/2}}~dx$}
 $$\int{x^3(x^2+a^2)^{3/2}}=
 \frac{(x^2+a^2)^{7/2}}{7}-\frac{a^2(x^2+a^2)^{5/2}}{5}
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 94 of 110
@@ -1451,7 +1451,7 @@ cc:=aa-bb
 --R   (3)  0
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.207~~~~~$\displaystyle
 \int{\frac{(x^2+a^2)^{3/2}}{x}}~dx$}
@@ -1459,7 +1459,7 @@ $$\int{\frac{(x^2+a^2)^{3/2}}{x}}=
 \frac{(x^2+a^2)^{3/2}}{3}+a^2\sqrt{x^2+a^2}-
 a^3\ln\left(\frac{a+\sqrt{x^2+a^2}}{x}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 97 of 110
@@ -1535,7 +1535,7 @@ ee:=complexNormalize dd
 --R   (5)  - a log(- 1)
 --R                                                     Type: Expression Integer
 --E
-@
+\end{chunk}
 
 \section{\cite{1}:14.208~~~~~$\displaystyle
 \int{\frac{(x^2+a^2)^{3/2}}{x^2}}~dx$}
@@ -1543,7 +1543,7 @@ $$\int{\frac{(x^2+a^2)^{3/2}}{x^2}}=
 -\frac{(x^2+a^2)^{3/2}}{x}+\frac{3x\sqrt{x^2+a^2}}{2}+
 \frac{3}{2}a^2\ln\left(x+\sqrt{x^2+a^2}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 102 of 110
@@ -1597,7 +1597,7 @@ dd:=complexNormalize cc
 --R                                                     Type: Expression Integer
 --E
 
-@
+\end{chunk}
 
 \section{\cite{1}:14.209~~~~~$\displaystyle
 \int{\frac{(x^2+a^2)^{3/2}}{x^3}}~dx$}
@@ -1605,7 +1605,7 @@ $$\int{\frac{(x^2+a^2)^{3/2}}{x^3}}=
 -\frac{(x^2+a^2)^{3/2}}{2x^2}+\frac{3}{2}\sqrt{x^2+a^2}-
 \frac{3}{2}a\ln\left(\frac{a+\sqrt{x^2+a^2}}{x}\right)
 $$
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 106 of 110
@@ -1690,7 +1690,7 @@ ee:=complexNormalize dd
 
 )spool
 )lisp (bye)
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/scherk.input.pamphlet b/src/input/scherk.input.pamphlet
index 3d35323..be4d7dd 100644
--- a/src/input/scherk.input.pamphlet
+++ b/src/input/scherk.input.pamphlet
@@ -10,17 +10,17 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool scherk.output
 )set message test on
 )set message auto off
 )clear all
 
-@
+\end{chunk}
 \begin{verbatim}
 Scherk's minimal surface.
 Defined by:
@@ -30,16 +30,16 @@ by Michael Spivak, Publish Or Persih, Berkeley, 1979, pp 249-252.
 \end{verbatim}
 
 Off set for a single piece of Scherk's minimal surface
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 7
 (xOffset, yOffset):DoubleFloat
 --R 
 --R                                                                   Type: Void
 --E 1
 
-@
+\end{chunk}
 DrawScherk's minimal surface on an m by n patch.
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 7
 drawScherk(m,n) ==
   free xOffset, yOffset
@@ -55,9 +55,9 @@ drawScherk(m,n) ==
 --R                                                                   Type: Void
 --E 2
 
-@
+\end{chunk}
 The four patches which make up a single piece of Scherk's minimal surface.
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 7
 scherk1(u,v) ==
   x := cos(u)/exp(v)
@@ -90,10 +90,10 @@ scherk4(u,v) ==
 --R                                                                   Type: Void
 --E 6
 
-@
+\end{chunk}
 We draw the surface by breaking it into 4 patches, and drawing them
 into a single space.
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 7
 drawOneScherk(s) ==
   makeObject(scherk1, -%pi/2..%pi/2, 0..%pi/2,  space == s, _
@@ -111,7 +111,7 @@ drawOneScherk(s) ==
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/scope.input.pamphlet b/src/input/scope.input.pamphlet
index 557aa0a..a5a88bd 100644
--- a/src/input/scope.input.pamphlet
+++ b/src/input/scope.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool scope.output
 )set message test on
@@ -57,7 +57,7 @@ showbug1()
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/seccsc.input.pamphlet b/src/input/seccsc.input.pamphlet
index ccdcdea..82eb21f 100644
--- a/src/input/seccsc.input.pamphlet
+++ b/src/input/seccsc.input.pamphlet
@@ -16,7 +16,7 @@ is the argument of sec(x), ranging from 0.01 to 1.60. The
 second column is the reference value of sec from the book
 Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
 Dover Publications, Inc. New York 1965. pp186-188
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool seccsc.output
 )set message test on
@@ -349,13 +349,13 @@ Dover Publications, Inc. New York 1965. pp186-188
 --R    [1.6,- 34.2471356,- 34.2471356100 18689204,- 0.100186892 E -7]]
 --R                                                        Type: List List Float
 --E 1
-@
+\end{chunk}
 In the following table there are 4 columns. The first column
 is the argument of csc(x), ranging from 0.01 to 1.60. The
 second column is the reference value of csc from the book
 Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
 Dover Publications, Inc. New York 1965. pp186-188
-<<*>>=
+\begin{chunk}{*}
 
 --S 2 of 2
 [[0.01,100.0016667,csc(0.01),csc(0.01)-100.0016667],_
@@ -687,7 +687,7 @@ Dover Publications, Inc. New York 1965. pp186-188
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
diff --git a/src/input/seg.input.pamphlet b/src/input/seg.input.pamphlet
index 2062d29..b8313bd 100644
--- a/src/input/seg.input.pamphlet
+++ b/src/input/seg.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool seg.output
 )set message test on
@@ -101,7 +101,7 @@ expand l
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/segbind.input.pamphlet b/src/input/segbind.input.pamphlet
index 92bbe34..875726e 100644
--- a/src/input/segbind.input.pamphlet
+++ b/src/input/segbind.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool segbind.output
 )set message test on
@@ -79,7 +79,7 @@ segment(sb)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/series.input.pamphlet b/src/input/series.input.pamphlet
index 4fcdc70..f64bddb 100644
--- a/src/input/series.input.pamphlet
+++ b/src/input/series.input.pamphlet
@@ -10,22 +10,22 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool series.output
 )set message test on
 )set message auto off
 )clear all
 
-@
+\end{chunk}
 \section{Expression To Power Series}
 We compute series expansions of various functions using EXPR2UPS.
 
 Test functions in EXPR2UPS:
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 17
 xT := taylor(x)
 --R 
@@ -248,7 +248,7 @@ series(log(cot(x)),x = %pi/2)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/series2.input.pamphlet b/src/input/series2.input.pamphlet
index fd3990e..22850a0 100644
--- a/src/input/series2.input.pamphlet
+++ b/src/input/series2.input.pamphlet
@@ -10,24 +10,24 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool series2.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 \section{Expression To Power Series}
 We compute series expansions of various functions using EXPR2UPS and STTF.
 
 \subsection{Power series expansions around branch points}
 Well not really, since we have $x^2$, not x.  Otherwise, our series
 expansions would have fractional powers.
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 38
 f1 := taylor(1 - x**2,x = 0)
 --R 
@@ -932,7 +932,7 @@ map(normalize,csch %)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/sersolve.input.pamphlet b/src/input/sersolve.input.pamphlet
index 2d3ed69..34cbc1b 100644
--- a/src/input/sersolve.input.pamphlet
+++ b/src/input/sersolve.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool sersolve.output
 )set message test on
@@ -129,7 +129,7 @@ x * cos(y) + exp(x)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/set.input.pamphlet b/src/input/set.input.pamphlet
index b282edb..b48fd89 100644
--- a/src/input/set.input.pamphlet
+++ b/src/input/set.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool set.output
 )set message test on
@@ -187,7 +187,7 @@ b0
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/setcmd.input.pamphlet b/src/input/setcmd.input.pamphlet
index 43983d4..4f706ac 100644
--- a/src/input/setcmd.input.pamphlet
+++ b/src/input/setcmd.input.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool setcmd.output
 )set message test on
@@ -2483,7 +2483,7 @@
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/sincos.input.pamphlet b/src/input/sincos.input.pamphlet
index f5b34c6..665f043 100644
--- a/src/input/sincos.input.pamphlet
+++ b/src/input/sincos.input.pamphlet
@@ -17,7 +17,7 @@ second column is the reference value of sin from the book
 Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
 Dover Publications, Inc. New York 1965. pp142-173
 
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool sincos.output
 )set message test on
@@ -349,14 +349,14 @@ Dover Publications, Inc. New York 1965. pp142-173
 --R    [1.6,0.9995736030 4150516434,0.9995736030 4150516434,0.0]]
 --R                                                        Type: List List Float
 --E 1
-@
+\end{chunk}
 In the following table there are 4 columns. The first column
 is the argument of cos(x), ranging from 0.00 to 1.60. The
 second column is the reference value of sin from the book
 Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
 Dover Publications, Inc. New York 1965. pp142-173
 
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 2
 [[0.01,0.99995000041666527778026,cos(0.01),cos(0.01)-(0.99995000041666527778026)],_
 [0.02,0.99980000666657777841270,cos(0.02),cos(0.02)-(0.99980000666657777841270)],_
@@ -687,7 +687,7 @@ Dover Publications, Inc. New York 1965. pp142-173
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} Abramowitz and Stegun,``Handbook of Mathematical Functions'',
diff --git a/src/input/sincosex.input.pamphlet b/src/input/sincosex.input.pamphlet
index 7375e2c..0236722 100644
--- a/src/input/sincosex.input.pamphlet
+++ b/src/input/sincosex.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool sincosex.output
 )set message test on
@@ -42,7 +42,7 @@ sinCosExpand := rule
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/sinhcosh.input.pamphlet b/src/input/sinhcosh.input.pamphlet
index 9fb4c9a..2f0a7c1 100644
--- a/src/input/sinhcosh.input.pamphlet
+++ b/src/input/sinhcosh.input.pamphlet
@@ -16,7 +16,7 @@ second column is the reference value of sinh from the book
 Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
 Dover Publications, Inc. New York 1965. pp213-216
 
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool sinhcosh.output
 )set message test on
@@ -431,14 +431,14 @@ Dover Publications, Inc. New York 1965. pp213-216
 --R    [2.0,3.626860408,3.6268604078 470187677,- 0.152981232 E -9]]
 --R                                                        Type: List List Float
 --E 1
-@
+\end{chunk}
 In the following table there are 4 columns. The first column
 is the argument of cosh, ranging from 0.00 to 2.00. The
 second column is the reference value of sinh from the book
 Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
 Dover Publications, Inc. New York 1965. pp213-216
 
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 2
 [[0.00,1.000000000,cosh(0.00),cosh(0.00)-1.000000000],_
 [0.01,1.000050000,cosh(0.01),cosh(0.01)-1.000050000],_
@@ -850,7 +850,7 @@ Dover Publications, Inc. New York 1965. pp213-216
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/sininv.input.pamphlet b/src/input/sininv.input.pamphlet
index ed90c5d..3a16ab3 100644
--- a/src/input/sininv.input.pamphlet
+++ b/src/input/sininv.input.pamphlet
@@ -9,10 +9,9 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
--- @(#)sininv.input	1.1    89/09/07  20:55:20
+\begin{chunk}{*}
 draw(sin inv x,x = -1.03..3)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/sinsin.input.pamphlet b/src/input/sinsin.input.pamphlet
index 0cdcf03..df01da4 100644
--- a/src/input/sinsin.input.pamphlet
+++ b/src/input/sinsin.input.pamphlet
@@ -9,10 +9,9 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
--- @(#)sinsin.input	1.1    89/09/07  20:55:22
+\begin{chunk}{*}
 draw(sin(x) * sin(y),x = 0..2*%pi, y = 0..2*%pi)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/sinsin2.input.pamphlet b/src/input/sinsin2.input.pamphlet
index cecaf07..ae50fb8 100644
--- a/src/input/sinsin2.input.pamphlet
+++ b/src/input/sinsin2.input.pamphlet
@@ -9,9 +9,9 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 draw(sin(x) * sin(y),x = 20*%pi..22*%pi, y = 20*%pi..22*%pi)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/sint.input.pamphlet b/src/input/sint.input.pamphlet
index 5f53fd3..942075e 100644
--- a/src/input/sint.input.pamphlet
+++ b/src/input/sint.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool sint.output
 )set message test on
@@ -109,7 +109,7 @@ shift(31,-1)$SingleInteger
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/skew.input.pamphlet b/src/input/skew.input.pamphlet
index 553a939..6132abc 100644
--- a/src/input/skew.input.pamphlet
+++ b/src/input/skew.input.pamphlet
@@ -10,22 +10,22 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool skew.output
 )set message test on
 )set message auto off
 )clear all
 
-@
+\end{chunk}
 Make sure that LALG, EAB, ANTISYM are loaded
 
 We will look at the deRham complex of Euclidean 3-space and use 
 coordinates (x,y,z).
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 36
 lv:List Symbol := [x,y,z]
 --R 
@@ -34,14 +34,14 @@ lv:List Symbol := [x,y,z]
 --R                                                            Type: List Symbol
 --E 1
 
-@
+\end{chunk}
 Next is our ring of functions.  We can have functions of any
 number of variables, but since we've chosen to work with ordinary
 Euclidean 3-space, an expression like f(x,t,r,y,u,z) will be treated 
 as a parameterized function of (x,y,z) and will be considered to be 
 constant in the variables t,r,u.  We choose expressions with integer 
 coefficients in this example.
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 36
 macro coefRing == Integer
 --R 
@@ -56,10 +56,10 @@ R := Expression coefRing
 --R                                                                 Type: Domain
 --E 3
 
-@
+\end{chunk}
 The declaration for the deRham complex takes arguments a ring coefRing
 and a list of variables (lv is of type List Symbol).
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 36
 der := DERHAM(coefRing,lv)
 --R 
@@ -68,9 +68,9 @@ der := DERHAM(coefRing,lv)
 --R                                                                 Type: Domain
 --E 4
 
-@
+\end{chunk}
 Here are some functions chosen at random.
-<<*>>=
+\begin{chunk}{*}
 
 --S 5 of 36
 f:R:=x**2*y*z-5*x**3*y**2*z**5
@@ -99,10 +99,10 @@ h:R:=x*y*z-2*x**3*y*z**2
 --R                                                     Type: Expression Integer
 --E 7
 
-@
+\end{chunk}
 The multiplicative basis elements for the exterior algebra over R are
 defined here.  
-<<*>>=
+\begin{chunk}{*}
 
 --S 8 of 36
 dx :der := generator(1)
@@ -128,9 +128,9 @@ dz :der := generator(3)
 --R                                         Type: DeRhamComplex(Integer,[x,y,z])
 --E 10
 
-@
+\end{chunk}
 A nice alternate for the assignments above is
-<<*>>=
+\begin{chunk}{*}
 --S 11 of 36
 [dx,dy,dz] := [generator(i)$der for i in 1..3]
 --R 
@@ -139,9 +139,9 @@ A nice alternate for the assignments above is
 --R                                    Type: List DeRhamComplex(Integer,[x,y,z])
 --E 11
 
-@
+\end{chunk}
 Now some 1-forms chosen at random.
-<<*>>=
+\begin{chunk}{*}
 --S 12 of 36
 alpha:der := f*dx + g*dy + h*dz
 --R 
@@ -163,9 +163,9 @@ beta:der  := cos(tan(x*y*z)+x*y*z)*dx + x*dy
 --R                                         Type: DeRhamComplex(Integer,[x,y,z])
 --E 13
 
-@
+\end{chunk}
 We know that $exteriorDifferential^2 = 0$, let's see that:
-<<*>>=
+\begin{chunk}{*}
 --S 14 of 36
 exteriorDifferential alpha
 --R 
@@ -190,18 +190,18 @@ exteriorDifferential %
 --R                                         Type: DeRhamComplex(Integer,[x,y,z])
 --E 15
 
-@
+\end{chunk}
 exteriorDifferential is long, let's shorten that.
-<<*>>=
+\begin{chunk}{*}
 --S 16 of 36
 macro exD == exteriorDifferential
 --R 
 --R                                                                   Type: Void
 --E 16
 
-@
+\end{chunk}
 We know that exD is a (graded) derivation, let's see that:
-<<*>>=
+\begin{chunk}{*}
 --S 17 of 36
 gamma := alpha * beta
 --R 
@@ -240,9 +240,9 @@ delta := exD gamma
 --R                                         Type: DeRhamComplex(Integer,[x,y,z])
 --E 18
 
-@
+\end{chunk}
 Need the ``-'' because alpha is a 1-form and 1 is odd.
-<<*>>=
+\begin{chunk}{*}
 --S 19 of 36
 epsilon := exD(alpha)*beta - alpha * exD(beta)
 --R 
@@ -276,9 +276,9 @@ delta - epsilon
 --R                                         Type: DeRhamComplex(Integer,[x,y,z])
 --E 20
 
-@
+\end{chunk}
 We define some operators.
-<<*>>=
+\begin{chunk}{*}
 --S 21 of 36
 a:BOP := operator('a)
 --R 
@@ -303,9 +303,9 @@ c:BOP := operator('c)
 --R                                                          Type: BasicOperator
 --E 23
 
-@
+\end{chunk}
 Now some indeterminate one and two forms.
-<<*>>=
+\begin{chunk}{*}
 --S 24 of 36
 alpha := a(x,y,z) * dx + b(x,y,z) * dy + c(x,y,z) * dz
 --R 
@@ -322,9 +322,9 @@ beta  := a(x,y,z) * dx * dy + b(x,y,z) * dx * dz + c(x,y,z) * dy * dz
 --R                                         Type: DeRhamComplex(Integer,[x,y,z])
 --E 25
 
-@
+\end{chunk}
 The ``gradient''.
-<<*>>=
+\begin{chunk}{*}
 --S 26 of 36
 totalDifferential(a(x,y,z))$der
 --R 
@@ -334,9 +334,9 @@ totalDifferential(a(x,y,z))$der
 --R                                         Type: DeRhamComplex(Integer,[x,y,z])
 --E 26
 
-@
+\end{chunk}
 The ``curl''.
-<<*>>=
+\begin{chunk}{*}
 --S 27 of 36
 exD alpha
 --R 
@@ -350,9 +350,9 @@ exD alpha
 --R                                         Type: DeRhamComplex(Integer,[x,y,z])
 --E 27
 
-@
+\end{chunk}
 The ``divergence''.
-<<*>>=
+\begin{chunk}{*}
 --S 28 of 36
 exD beta
 --R 
@@ -362,9 +362,9 @@ exD beta
 --R                                         Type: DeRhamComplex(Integer,[x,y,z])
 --E 28
 
-@
+\end{chunk}
 Note that the deRham complex is an algebra with 1.
-<<*>>=
+\begin{chunk}{*}
 --S 29 of 36
 id:der := 1
 --R 
@@ -373,13 +373,13 @@ id:der := 1
 --R                                         Type: DeRhamComplex(Integer,[x,y,z])
 --E 29
 
-@
+\end{chunk}
 Now some parameterized functions (and fomrs -- left as an exercise).
 Note how the system keeps track of where your coordinate functions 
 are located in expressions.  By multiplying the expressions below by
 1 in the deRham complex, we automatically convert them to 0-forms,
 i.e., functions on our space.
-<<*>>=
+\begin{chunk}{*}
 --S 30 of 36
 g1:der := a([x,t,y,u,v,z,e]) * id
 --R 
@@ -426,11 +426,11 @@ exD h1
 --R                                         Type: DeRhamComplex(Integer,[x,y,z])
 --E 33
 
-@
+\end{chunk}
 Now note that we can find the coefficient of some basis term in
 any form (the basis in this case consists of the 8 forms
 1,   dx, dx, dz,    dx dy, dx dz, dy dz,   dx dy dz.
-<<*>>=
+\begin{chunk}{*}
 --S 34 of 36
 coefficient(gamma, dx*dy)
 --R 
@@ -458,7 +458,7 @@ coefficient(g1,id)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/slowint.input.pamphlet b/src/input/slowint.input.pamphlet
index a1cdcf7..ba8dff9 100644
--- a/src/input/slowint.input.pamphlet
+++ b/src/input/slowint.input.pamphlet
@@ -10,19 +10,19 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool slowint.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 Test intalg.spad
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 5
 k := 7/5
 --R 
@@ -136,7 +136,7 @@ integrate(f,m)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/solvetra.input.pamphlet b/src/input/solvetra.input.pamphlet
index dc400fe..8754c60 100644
--- a/src/input/solvetra.input.pamphlet
+++ b/src/input/solvetra.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool solvetra.output
 )set message test on
@@ -646,7 +646,7 @@ solve(asinh(x)+acoth(x)-2,x)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/space3.input.pamphlet b/src/input/space3.input.pamphlet
index 85dac5e..397066e 100644
--- a/src/input/space3.input.pamphlet
+++ b/src/input/space3.input.pamphlet
@@ -10,19 +10,19 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool space3.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 Test for ThreeSpace domain
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 185
 space := create3Space()$(ThreeSpace DoubleFloat)
 --R 
@@ -1557,7 +1557,7 @@ sub := subspace(space1)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/spadprof.input.pamphlet b/src/input/spadprof.input.pamphlet
index d1ff6eb..3c840be 100644
--- a/src/input/spadprof.input.pamphlet
+++ b/src/input/spadprof.input.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
  
 -- This file is read on start-up by the Scratchpad system.  It is
 -- most commonly used to customize the user's environment via the
@@ -35,7 +35,7 @@
 -- make the highlighting characters go away
 )set mess high off
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/spiral.input.pamphlet b/src/input/spiral.input.pamphlet
index 6c1cddd..87f0ad5 100644
--- a/src/input/spiral.input.pamphlet
+++ b/src/input/spiral.input.pamphlet
@@ -9,10 +9,9 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
--- @(#)spiral.input	1.1    89/09/07  20:55:24
+\begin{chunk}{*}
 draw(t/100,t = 0..100,[coordinates polar])
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/sqmatrix.input.pamphlet b/src/input/sqmatrix.input.pamphlet
index c1c2247..3167aa6 100644
--- a/src/input/sqmatrix.input.pamphlet
+++ b/src/input/sqmatrix.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool sqmatrix.output
 )set message test on
@@ -83,7 +83,7 @@ p::SquareMatrix(2, ?)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/sqrt3.input.pamphlet b/src/input/sqrt3.input.pamphlet
index c26ec49..58b7a85 100644
--- a/src/input/sqrt3.input.pamphlet
+++ b/src/input/sqrt3.input.pamphlet
@@ -10,8 +10,8 @@ A demo involving the algebraic number $\sqrt{3}$.
 \eject
 \tableofcontents
 \eject
-@
-<<*>>=
+
+\begin{chunk}{*}
 )set break resume
 )spool sqrt3.output
 )set message test on
@@ -242,7 +242,7 @@ numeric t - approximate(s,10^-30)::Float
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/sregset.input.pamphlet b/src/input/sregset.input.pamphlet
index 739d904..994c266 100644
--- a/src/input/sregset.input.pamphlet
+++ b/src/input/sregset.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool sregset.output
 )set message test on
@@ -233,7 +233,7 @@ toseSquareFreePart(pol,tower)$pack
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/stbl.input.pamphlet b/src/input/stbl.input.pamphlet
index 9ad4d01..5a39b40 100644
--- a/src/input/stbl.input.pamphlet
+++ b/src/input/stbl.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool stbl.output
 )set message test on
@@ -77,7 +77,7 @@ entries t
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/stream.input.pamphlet b/src/input/stream.input.pamphlet
index d136ba6..ea63fb4 100644
--- a/src/input/stream.input.pamphlet
+++ b/src/input/stream.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool stream.output
 )set message test on
@@ -114,7 +114,7 @@ fibs 20
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/stream2.input.pamphlet b/src/input/stream2.input.pamphlet
index d586f32..24faac6 100644
--- a/src/input/stream2.input.pamphlet
+++ b/src/input/stream2.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool stream2.output
 )set message test on
@@ -541,7 +541,7 @@ n:=5
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/streams.input.pamphlet b/src/input/streams.input.pamphlet
index d2f0922..b17283a 100644
--- a/src/input/streams.input.pamphlet
+++ b/src/input/streams.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool streams.output
 )set message test on
@@ -24,10 +24,10 @@
  
 )set streams showall on
  
-@
+\end{chunk}
 At least 5 stream elements will be evaluated.
 The stream of integers starting at 1.
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 26
 a := [i for i in 1..]
 --R 
@@ -44,9 +44,9 @@ b := [i+1 for i in a]
 --R                                                 Type: Stream PositiveInteger
 --E 2
 
-@
+\end{chunk}
 Select the 20th element
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 26
 b.20
 --R 
@@ -55,9 +55,9 @@ b.20
 --R                                                        Type: PositiveInteger
 --E 3
 
-@
+\end{chunk}
 The first 20 elements of b (and a) are evaluated
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 26
 b
 --R 
@@ -74,9 +74,9 @@ a
 --R                                                 Type: Stream PositiveInteger
 --E 5
 
-@
+\end{chunk}
 The first 10 elements of a
-<<*>>=
+\begin{chunk}{*}
 --S 6 of 26
 first(a,10)
 --R 
@@ -85,9 +85,9 @@ first(a,10)
 --R                                                 Type: Stream PositiveInteger
 --E 6
 
-@
+\end{chunk}
 All except the first 10 elements of a
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 26
 rest(a,10)
 --R 
@@ -96,9 +96,9 @@ rest(a,10)
 --R                                                 Type: Stream PositiveInteger
 --E 7
 
-@
+\end{chunk}
 The stream of odd integers
-<<*>>=
+\begin{chunk}{*}
 --S 8 of 26
 [i for i in a | odd? i]
 --R 
@@ -107,9 +107,9 @@ The stream of odd integers
 --R                                                 Type: Stream PositiveInteger
 --E 8
 
-@
+\end{chunk}
 Combining two streams
-<<*>>=
+\begin{chunk}{*}
 --S 9 of 26
 c := [[i,j] for i in a for j in b]
 --R 
@@ -118,9 +118,9 @@ c := [[i,j] for i in a for j in b]
 --R                                            Type: Stream List PositiveInteger
 --E 9
 
-@
+\end{chunk}
 Selecting the first from each pair
-<<*>>=
+\begin{chunk}{*}
 --S 10 of 26
 [first i for i in c]
 --R 
@@ -131,9 +131,9 @@ Selecting the first from each pair
 
 )set streams calculate 10
 
-@ 
+\end{chunk} 
 concat(a,b) concatenates streams a and b, better if a is finite
-<<*>>=
+\begin{chunk}{*}
 --S 11 of 26
 concat([i for i in a while i<7],a)
 --R 
@@ -175,9 +175,9 @@ d := [upto n for n in a]
 --R                                                  Type: Stream Stream Integer
 --E 15
 
-@
+\end{chunk}
 concat flattens a stream of streams into a one level stream
-<<*>>=
+\begin{chunk}{*}
 --S 16 of 26
 concat d
 --R 
@@ -186,9 +186,9 @@ concat d
 --R                                                         Type: Stream Integer
 --E 16
 
-@
+\end{chunk}
 The sum of a finite stream
-<<*>>=
+\begin{chunk}{*}
 --S 17 of 26
 reduce(0,_+$INT,first(a,10))
 --R 
@@ -197,9 +197,9 @@ reduce(0,_+$INT,first(a,10))
 --R                                                        Type: PositiveInteger
 --E 17
 
-@
+\end{chunk}
 A stream of cumulative sums
-<<*>>=
+\begin{chunk}{*}
 --S 18 of 26
 scan(0,_+$INT,a)
 --R 
@@ -228,10 +228,10 @@ ff(x)==[x.1+x.2,x.1]
 --R                                                                   Type: Void
 --E 21
 
-@
+\end{chunk}
 generate(f,x) operates on an A->A function f and an initial A, x
 to produce the stream x,f x,f(f x),...
-<<*>>=
+\begin{chunk}{*}
 --S 22 of 26
 fibs := generate(ff,[1,1])
 --R 
@@ -285,7 +285,7 @@ generate(mplm,mt)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/string.input.pamphlet b/src/input/string.input.pamphlet
index dc84f8d..435bfad 100644
--- a/src/input/string.input.pamphlet
+++ b/src/input/string.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool string.output
 )set message test on
@@ -300,7 +300,7 @@ position(hexDigit(), "underground", 1)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/strtbl.input.pamphlet b/src/input/strtbl.input.pamphlet
index 2acb645..a7ca931 100644
--- a/src/input/strtbl.input.pamphlet
+++ b/src/input/strtbl.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool strtbl.output
 )set message test on
@@ -48,7 +48,7 @@ for key in keys t repeat output [key, t.key]
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/summation.input.pamphlet b/src/input/summation.input.pamphlet
index 0c20d98..bf55ce3 100644
--- a/src/input/summation.input.pamphlet
+++ b/src/input/summation.input.pamphlet
@@ -13,7 +13,7 @@ This is bug 7057: summation is ambiguous.
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool summation.output
 )set message test on
@@ -94,7 +94,7 @@ sum(operator(f) (i)+1,i=1..n)^3
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/symbol.input.pamphlet b/src/input/symbol.input.pamphlet
index 0f13542..80ed48b 100644
--- a/src/input/symbol.input.pamphlet
+++ b/src/input/symbol.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool symbol.output
 )set message test on
@@ -221,7 +221,7 @@ scripts N
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/synonym.input.pamphlet b/src/input/synonym.input.pamphlet
index e8b01cc..8e852ed 100644
--- a/src/input/synonym.input.pamphlet
+++ b/src/input/synonym.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991-94.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 
 -- This file contains the standard system defined system command
 -- synonyms for the Axiom system. It is normally read into
@@ -74,7 +74,7 @@
 -- )synonym  wd           what domains
 -- )synonym  wp           what packages
 -- )synonym  ws           what synonyms
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/synonym2.input.pamphlet b/src/input/synonym2.input.pamphlet
index 72d86ab..9f43a2e 100644
--- a/src/input/synonym2.input.pamphlet
+++ b/src/input/synonym2.input.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 -- This file contains the standard system defined system command
 -- synonyms for the Scratchpad II system. It is normally read into
 -- the system by adding the line
@@ -81,7 +81,7 @@
 )synonym  wp           what packages
 )synonym  ws           what synonyms
 --)synonym  x            system editarb
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/t111293.input.pamphlet b/src/input/t111293.input.pamphlet
index 3233d8f..863d69e 100644
--- a/src/input/t111293.input.pamphlet
+++ b/src/input/t111293.input.pamphlet
@@ -10,21 +10,21 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool t111293.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 This file tests things fixed on or about Nov 12, 1993
 
 unions and records in function position
-<<*>>= 
+\begin{chunk}{*}
 --S 1 of 13
 y := operator y
 --R 
@@ -57,9 +57,9 @@ solve(deq, y, x).basis
 
 )clear all
 
-@
+\end{chunk}
 Other objects in function position
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 13
 f := sin
 --R 
@@ -147,7 +147,7 @@ sin(4)$Expression(Integer)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/table.input.pamphlet b/src/input/table.input.pamphlet
index 6aba394..e09fbb3 100644
--- a/src/input/table.input.pamphlet
+++ b/src/input/table.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool table.output
 )set message test on
@@ -166,7 +166,7 @@ count(s: String +-> prefix?("Hard", s), t)
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/tanatan.input.pamphlet b/src/input/tanatan.input.pamphlet
index 291a2b8..6c7449f 100644
--- a/src/input/tanatan.input.pamphlet
+++ b/src/input/tanatan.input.pamphlet
@@ -8,21 +8,21 @@
 \end{abstract}
 \eject
 \tableofcontents
-\eject
+
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool tanatan.output
 )set message test on
 )set message auto off
 )clear all
 
-@
+\end{chunk}
 Here's an equation
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 9
 eq:=2*tan(x)+2*tan(2*x)
 --R 
@@ -31,9 +31,9 @@ eq:=2*tan(x)+2*tan(2*x)
 --R                                                     Type: Expression Integer
 --E 1
 
-@
+\end{chunk}
 Solve it
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 9
 thesols:=solve(eq,x)
 --R 
@@ -44,9 +44,9 @@ thesols:=solve(eq,x)
 --R                                       Type: List Equation Expression Integer
 --E 2
 
-@
+\end{chunk}
 Verify the solutions
-<<*>>=
+\begin{chunk}{*}
 --S 3 of 9
 theproofs:=[eval(eq,i) for i in thesols]
 --R 
@@ -55,10 +55,10 @@ theproofs:=[eval(eq,i) for i in thesols]
 --R                                                Type: List Expression Integer
 --E 3
 
-@
+\end{chunk}
 Problem with simplification of tan(n*atan(y))
 Get the  tower for each expression
-<<*>>=
+\begin{chunk}{*}
 --S 4 of 9
 thetowers:=[tower i for i in theproofs];
 --R 
@@ -78,10 +78,10 @@ thetans:LIST LIST Record(i:INT,k:KERNEL EXPR INT,z:List Equation EXPR INT)
 --R                                                                   Type: Void
 --E 6
 
-@
+\end{chunk}
 Apply pattern-matching to find tan(n*atan(y))
 and construct the structures needed
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 9
 thetans:=_
  [[construct(j,i.j,Is(argument(i.j).1,n * atan(y))) for j in 1..#i_
@@ -92,9 +92,9 @@ thetans:=_
 --RType: List List Record(i: Integer,k: Kernel Expression Integer,z: List Equation Expression Integer)
 --E 7
 
-@
+\end{chunk}
 Construct the evaluation rules for tan(n*atan(y)) -> tanNa(a,n)
-<<*>>=
+\begin{chunk}{*}
 --S 8 of 9
 thesubs:=_
   [construct([j.k for j in thetans.i],_
@@ -106,9 +106,9 @@ thesubs:=_
 --RType: List Record(a: List Kernel Expression Integer,b: List Expression Integer)
 --E 8
 
-@
+\end{chunk}
 Apply the evaluation rules
-<<*>>=
+\begin{chunk}{*}
 --S 9 of 9
 thezeros:=[eval(i,j.a,j.b) for i in theproofs for j in thesubs]
 --R 
@@ -119,7 +119,7 @@ thezeros:=[eval(i,j.a,j.b) for i in theproofs for j in thesubs]
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/tancot.input.pamphlet b/src/input/tancot.input.pamphlet
index 457405b..69b2590 100644
--- a/src/input/tancot.input.pamphlet
+++ b/src/input/tancot.input.pamphlet
@@ -16,7 +16,7 @@ is the argument of tan(x), ranging from 0.01 to 1.60. The
 second column is the reference value of tan from the book
 Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
 Dover Publications, Inc. New York 1965. pp186-188
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool tancot.output
 )set message test on
@@ -349,13 +349,13 @@ Dover Publications, Inc. New York 1965. pp186-188
 --R    [1.6,- 34.2325327,- 34.2325327355 57417056,- 0.3555741705 7 E -7]]
 --R                                                        Type: List List Float
 --E 1
-@
+\end{chunk}
 In the following table there are 4 columns. The first column
 is the argument of tan(x), ranging from 0.01 to 1.60. The
 second column is the reference value of tan from the book
 Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
 Dover Publications, Inc. New York 1965. pp186-188
-<<*>>=
+\begin{chunk}{*}
 
 --S 2 of 2
 [[0.01,99.9966666,cot(0.01),cot(0.01)-(99.9966666)],_
@@ -687,7 +687,7 @@ Dover Publications, Inc. New York 1965. pp186-188
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
diff --git a/src/input/tanhcoth.input.pamphlet b/src/input/tanhcoth.input.pamphlet
index 8b7371c..52493dc 100644
--- a/src/input/tanhcoth.input.pamphlet
+++ b/src/input/tanhcoth.input.pamphlet
@@ -16,7 +16,7 @@ second column is the reference value of tanh from the book
 Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
 Dover Publications, Inc. New York 1965. pp213-216
 
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool tanhcoth.output
 )set message test on
@@ -431,14 +431,14 @@ Dover Publications, Inc. New York 1965. pp213-216
 --R    [2.0,0.96402758,0.9640275800 7581688395,0.7581688395 E -10]]
 --R                                                        Type: List List Float
 --E 1
-@
+\end{chunk}
 In the following table there are 4 columns. The first column
 is the argument of coth, ranging from 0.01 to 2.00. The
 second column is the reference value of coth from the book
 Abramowitz and Stegun, ``Handbook of Mathematical Functions'',
 Dover Publications, Inc. New York 1965. pp213-216
 
-<<*>>=
+\begin{chunk}{*}
 --S 2 of 2
 [[0.01,100.0033333,coth(0.01),coth(0.01)-100.003333],_
 [0.02,50.0066665,coth(0.02),coth(0.02)-50.0066665],_
@@ -849,7 +849,7 @@ Dover Publications, Inc. New York 1965. pp213-216
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 
 \eject
 \begin{thebibliography}{99}
diff --git a/src/input/tbagg.input.pamphlet b/src/input/tbagg.input.pamphlet
index 5455683..5bfe4c8 100644
--- a/src/input/tbagg.input.pamphlet
+++ b/src/input/tbagg.input.pamphlet
@@ -9,7 +9,7 @@ Equality testing was broken in TableAggregate (TBAGG)
 \end{abstract}
 \eject
 \tableofcontents
-\eject
+
 The equality function int TableAggregate used to read:
 \begin{verbatim}
      s:% = t:% ==
@@ -31,7 +31,7 @@ fall thru to the ``true'' case. This is fixed by calling the return function.
 	 (e := search(k, t)) case "failed" or (e::Entry) ^= s.k => return false
        true
 \end{verbatim}
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool tbagg.output
 )set message test on
@@ -85,7 +85,7 @@ t3:=construct([[y,"iy"]$R])$T
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/test.input.pamphlet b/src/input/test.input.pamphlet
index e4f29ea..bcdd661 100644
--- a/src/input/test.input.pamphlet
+++ b/src/input/test.input.pamphlet
@@ -11,19 +11,19 @@ File of recently fixed interpreter bugs
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )spool test.output
 )set message test on
 )set message auto off
 )set break resume
 
-@ 
+\end{chunk} 
 Eval a polynomial with EXPR substitution values.
 Fixed by SCM, verified on 10/30/90
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 1 of 188
@@ -51,9 +51,9 @@ eq2:= eval(eq1,[x= xdot*cos(t) - ydot*sin(t), y=xdot*sin(t) + ydot*cos(t)])
 --R                                                     Type: Expression Integer
 --E 2
 
-@
+\end{chunk}
 UTS coercions.  Fixed by SCM, verified on 10/30/90
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 3 of 188
@@ -151,9 +151,9 @@ eval(s,1)
 --R                                                           Type: Stream Float
 --E 8
 
-@
+\end{chunk}
 Another bug, fixed by adding UPXS2 package,
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 9 of 188
@@ -220,9 +220,9 @@ s - a*x
 --R                        Type: UnivariatePuiseuxSeries(Expression Integer,x,0)
 --E 11
 
-@
+\end{chunk}
 Grand finale, just fixed on 3/23/91
-<<*>>=
+\begin{chunk}{*}
 
 --S 12 of 188
 eval(s, 1.0)
@@ -262,9 +262,9 @@ eval(s, 1.0)
 --R                                                Type: Stream Expression Float
 --E 12
 
-@
+\end{chunk}
 Generalized resolve. Fixed (enhanced) by SCM in 3/23/91
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 13 of 188
@@ -311,9 +311,9 @@ eval(3**x, x=0.5)
 --R                                                       Type: Expression Float
 --E 17
 
-@
+\end{chunk}
 Overloading interpreter maps on arity. Fixed by SCM, verified on 10/30/90
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 18 of 188
@@ -365,9 +365,9 @@ f(1,x)
 --R                                                     Type: Polynomial Integer
 --E 23
 
-@
+\end{chunk}
 Targetted function requiring a coercion. Fixed by SCM, verified on 10/30/90
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 24 of 188
@@ -381,9 +381,9 @@ series(n +-> bernoulli(n)/factorial(n), t=0)
 --R                        Type: UnivariatePuiseuxSeries(Expression Integer,t,0)
 --E 24
 
-@
+\end{chunk}
 In-homogeneous list mapping. Fixed by SCM, verified on 10/30/90
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 25 of 188
@@ -415,9 +415,9 @@ map(f, l)
 --R                                                  Type: List Fraction Integer
 --E 28
 
-@
+\end{chunk}
 Function args to interpreter functions. Fixed by SCM, verified on 10/30/90
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 29 of 188
@@ -448,10 +448,10 @@ u f
 --R                                                        Type: PositiveInteger
 --E 32
 
-@
+\end{chunk}
 Category modemap requiring a field to be constructed.
 Fixed by SCM, verified on 10/30/90
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 33 of 188
@@ -463,10 +463,10 @@ groebner [x**2 - y, y**3+1]
 --R                                                Type: List Polynomial Integer
 --E 33
 
-@
+\end{chunk}
 Operations requiring polynomials, passed variables.
 Fixed by SCM, verified on 10/30/90
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 34 of 188
@@ -479,9 +479,9 @@ factor x
 
 --draw(x, x=-1..1)
 
-@
+\end{chunk}
 Bracket parsing and empty-set types. Fixed by SCM, verified on 10/30/90
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 35 of 188
@@ -512,10 +512,10 @@ union(brace [], brace [1,2])   -- union({}, {1,2})
 --R                                                    Type: Set PositiveInteger
 --E 38
 
-@
+\end{chunk}
 Shouldn't work, but no longer bombs the interpreter.
 Fixed by SCM, verified on 10/30/90
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 )set mes test off
@@ -530,9 +530,9 @@ map(variable, [x,y])
 
 )set mes test on
 
-@
+\end{chunk}
 Recursive map type analysis bug. Fixed by SCM, verified on 10/30/90
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 )set fun recur off
@@ -565,9 +565,9 @@ pp(-1,x) -- should be 1/(x-1)
 --R                                   Type: Fraction Polynomial Fraction Integer
 --E 42
 
-@
+\end{chunk}
 Interpret-code mode for iterators is broken
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 43 of 188
@@ -639,9 +639,9 @@ f 3
 --R                                                                   Type: Void
 --E 46
 
-@
+\end{chunk}
 Test interpreter list destructuring
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 47 of 188
@@ -675,9 +675,9 @@ mp(x, [1,2,-3, 4])
 --R                                                     Type: Polynomial Integer
 --E 49
 
-@
+\end{chunk}
 Tests compilation of recursive functions
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 50 of 188
@@ -734,9 +734,9 @@ f5 n == if n=0 or n=1 then 1 else f5(n-1)+f5(n-2)
 --R                                                   Type: List PositiveInteger
 --E 55
 
-@
+\end{chunk}
 Input of GDMP types. Fixed by SCM on 1/22/91
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 56 of 188
@@ -748,9 +748,9 @@ g: GDMP([x,y], INT, DIRPROD(2, NNI)) := x**2 + y
 --RType: GeneralDistributedMultivariatePolynomial([x,y],Integer,DirectProduct(2,NonNegativeInteger))
 --E 56
 
-@
+\end{chunk}
 Has test with variables. Fixed by SCM on 1/22/91
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 57 of 188
@@ -769,9 +769,9 @@ i has Algebra(i)
 --R                                                                Type: Boolean
 --E 58
 
-@
+\end{chunk}
 Returns in functions. Fixed by SCM on 1/22/91
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 59 of 188
@@ -798,9 +798,9 @@ f(-2) -- should be -2
 --R                                                                Type: Integer
 --E 61
 
-@
+\end{chunk}
 resolveTT not returning Any. Fixed by SCM 1/30/91
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 62 of 188
@@ -865,9 +865,9 @@ m = [[1,2],[2,3]]  -- Should return type EQ POLY SQMATRIX(2, INT)
 
 )set mes test on
 
-@
+\end{chunk}
 Passing type variables to )show
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 66 of 188
@@ -993,9 +993,9 @@ t := MPOLY([x,y], INT)
 --R
 --E 67
 
-@
+\end{chunk}
 Caching nullary functions
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 68 of 188
@@ -1026,9 +1026,9 @@ u
 --R In general, functions will cache no returned values.
 --E 71
 
-@
+\end{chunk}
 Interpreter Only mode on collects. Fixed by SCM on 3/1/91
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 72 of 188
@@ -1060,9 +1060,9 @@ factorp(x**2+x+5,7,1)
 --R                                   Type: List UnivariatePolynomial(x,Integer)
 --E 74
 
-@
+\end{chunk}
 Using "by" with segments. Fixed by SCM on 2/14/91
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 75 of 188
@@ -1084,9 +1084,9 @@ for i in b by 2 repeat output i
 --R                                                                   Type: Void
 --E 76
 
-@
+\end{chunk}
 DMP resolve bug. Fixed by SCM 3/7/91
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 77 of 188
@@ -1144,9 +1144,9 @@ arnborg5l: List DMP([x,y,z,t,u],RN):=[a51,a52,a53,a54,a55];
 --R   Type: List DistributedMultivariatePolynomial([x,y,z,t,u],Fraction Integer)
 --E 84
 
-@
+\end{chunk}
 Construct in interpret-only mode. Fixed by SCM on 3/7/91
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 85 of 188
@@ -1168,9 +1168,9 @@ factorp(x**2+x+5,7,1)
 --R                                   Type: List UnivariatePolynomial(x,Integer)
 --E 86
 
-@
+\end{chunk}
 Return in interpret-only mode. fixed by SCM 3/11/91
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 87 of 188
@@ -1194,9 +1194,9 @@ f 3
 --R                                                        Type: PositiveInteger
 --E 88
 
-@
+\end{chunk}
 Incorrect handling of type of returns. fixed by SCM 3/11/91
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 89 of 188
@@ -1217,9 +1217,9 @@ f 3
 --R                                                        Type: PositiveInteger
 --E 90
 
-@
+\end{chunk}
 SquareMatrix coercion bug. Fixed by SCM on 4/3/91
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 91 of 188
@@ -1242,9 +1242,9 @@ s::SQMATRIX(2, FRAC INT)
 --R                                       Type: SquareMatrix(2,Fraction Integer)
 --E 92
 
-@
+\end{chunk}
 SquareMatric resolve bug
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 93 of 188
@@ -1287,9 +1287,9 @@ s**3
 --R                                     Type: Polynomial SquareMatrix(2,Integer)
 --E 96
 
-@
+\end{chunk}
 Parsing bug. Fixed by BURGE on 4/18/91
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 97 of 188
@@ -1300,9 +1300,9 @@ Parsing bug. Fixed by BURGE on 4/18/91
 --R                                                                Type: Integer
 --E 97
 
-@
+\end{chunk}
 \# in constructor arguemnt list bug. Fixed by SCM on 4/9/91
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 98 of 188
@@ -1322,9 +1322,9 @@ coefficient(f, degree f)
 --R                                                        Type: PositiveInteger
 --E 99
 
-@
+\end{chunk}
 Retract from EXPR to POLY. fixed by SCM and SUTOR on 5/1/91
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 100 of 188
@@ -1343,9 +1343,9 @@ x+1::EXPR INT
 --R                                                     Type: Polynomial Integer
 --E 101
 
-@
+\end{chunk}
 Fixed by SCM in May
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 102 of 188
@@ -1356,9 +1356,9 @@ solve([[1,2],[2,3]],[-2,3])
 --RType: Record(particular: Union(Vector Fraction Integer,"failed"),basis: List Vector Fraction Integer)
 --E 102
 
-@
+\end{chunk}
 Fixed by several people over a period of time
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 103 of 188
@@ -1371,9 +1371,9 @@ eval(m**2, m=[[1,2],[2,3]])
 --R                                     Type: Polynomial SquareMatrix(2,Integer)
 --E 103
 
-@
+\end{chunk}
 Filtering various illegal declarations
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 )set mes test off
@@ -1395,9 +1395,9 @@ w: RF INT
 
 )set mes test on
 
-@
+\end{chunk}
 Correct representation of length 1 records
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 106 of 188
@@ -1408,9 +1408,9 @@ r:Record(a: INT) := [1]
 --R                                                     Type: Record(a: Integer)
 --E 106
 
-@
+\end{chunk}
 Fast generation of POLY FLOAT graphics code
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 107 of 188
@@ -1443,9 +1443,9 @@ p: POLY FLOAT := (x-1)**30
 
 --draw(p, x=-1..1)
 
-@
+\end{chunk}
 Case broken in interpreter. fixed by SCM in early 1991
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 108 of 188
@@ -1481,9 +1481,9 @@ sayBranch(x)
 --R      does not belong to a union.
 --E 111
 
-@
+\end{chunk}
 Bug in evaluateType. fixed by SCM in May 1991
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 112 of 188
@@ -1518,9 +1518,9 @@ factor g
 --RType: Factored DistributedMultivariatePolynomial([x,y],Fraction Polynomial Integer)
 --E 114
 
-@
+\end{chunk}
 Bug in resolveTTSpecial. Fixed by SCM 6/2/91
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 115 of 188
@@ -1549,9 +1549,9 @@ h(u:DoubleFloat, v:DoubleFloat):DoubleFloat == u+cos(v)
 
 --draw(surface(f,g,h), 0..4, 0..2*%pi)
 
-@
+\end{chunk}
 Check for package calling from categories. fixed by SCM 6/4/91
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 )set mes test off
@@ -1566,9 +1566,9 @@ Check for package calling from categories. fixed by SCM 6/4/91
 
 )set mes test on
 
-@
+\end{chunk}
 UnivariateSeries coercions. Fixed by SCM 6/20/91
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 119 of 188
@@ -1606,9 +1606,9 @@ s - sin(a*x)
 --R                        Type: UnivariatePuiseuxSeries(Expression Integer,x,0)
 --E 121
 
-@
+\end{chunk}
 Complex \& AlgebraicNumber coercions. fixed by SCM 6/91
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 122 of 188
@@ -1665,9 +1665,9 @@ sin(x/sqrt(2))
 --R                                                     Type: Expression Integer
 --E 127
 
-@
+\end{chunk}
 Bug in resolve. fixed by SCM 8/12/91
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 )set msg test off
@@ -1694,9 +1694,9 @@ primaryDecomp xx
 
 )set msg test on
 
-@
+\end{chunk}
 Functions with ADEFs were broken. fixed by SCM 8/9/91
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 129 of 188
@@ -1752,9 +1752,9 @@ w(-1)
 --R
 --E 134
 
-@
+\end{chunk}
 Coerces RN to PF and POLY to EXPR. fixed by SCM 8/9/91
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 135 of 188
@@ -1794,9 +1794,9 @@ b:: EXPR FLOAT
 --R                                                       Type: Expression Float
 --E 138
 
-@
+\end{chunk}
 Minivector use in coercion functions.
-<<*>>=
+\begin{chunk}{*}
 )clear all
  
 --S 139 of 188
@@ -1827,9 +1827,9 @@ f('abc,3)
 --R                                                                 Type: Symbol
 --E 141
 
-@
+\end{chunk}
 Coercing undeclared maps to Mapping types. fixed by SCM 9/3/91
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 142 of 188
@@ -1871,9 +1871,9 @@ eval(y, 'f, foo)
 --R                                                     Type: Expression Integer
 --E 145
 
-@
+\end{chunk}
 Package calling constants. fixed by SCM 9/3/91
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 146 of 188
@@ -1884,16 +1884,16 @@ init()$(PF 3)
 --R                                                           Type: PrimeField 3
 --E 146
 
-@
+\end{chunk}
 Passing ADEFs to functions which require specific mapping types.
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --draw((x,y) +-> x**2 - y**2, -1..1, -1..1)
 
-@
+\end{chunk}
 DP bug.  Don't know where this came from, but its fixed. DP makes problems:
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 147 of 188
@@ -1937,9 +1937,9 @@ sup(e1,e1)
 --R                                    Type: DirectProduct(3,NonNegativeInteger)
 --E 151
 
-@
+\end{chunk}
 If you give to many infos to the Interpreter it has problems.
-<<*>>=
+\begin{chunk}{*}
 
 --S 152 of 188
 sup(e1,e1)$DirectProduct(3,NonNegativeInteger)
@@ -1996,10 +1996,10 @@ sum
 --R                                                        Type: PositiveInteger
 --E 157
 
-@
+\end{chunk}
 interpOnly mode left things in an incosistent state if it failed twice.
 fixed by SCM
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 158 of 188
@@ -2076,9 +2076,9 @@ splitPoly(numer g,k) -- this is a correct call
 --R   Type: List SparseMultivariatePolynomial(Integer,Kernel Expression Integer)
 --E 162
 
-@
+\end{chunk}
 Scoping of lambda variables. fixed by SCM in March, 1992
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 163 of 188
@@ -2100,11 +2100,11 @@ f 3
 --R                                                            Type: DoubleFloat
 --E 164
 
-@
+\end{chunk}
 Coercing undeclared interpreter function to mapping type with
 target which need to be coerced.
 fixed by SCM in March, 1992
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 165 of 188
@@ -2129,9 +2129,9 @@ series(f, x=0)
 --R                        Type: UnivariatePuiseuxSeries(Expression Integer,x,0)
 --E 166
 
-@
+\end{chunk}
 Rule dependencies with dependencies on the operator position.
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 167 of 188
@@ -2263,10 +2263,10 @@ x1       -- (****)
 --R                                            Type: Fraction Polynomial Integer
 --E 180
 
-@
+\end{chunk}
 Look for immediate data in operator position. 
 fixed in March 1992 by SCM and RSS
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 181 of 188
@@ -2277,10 +2277,10 @@ fixed in March 1992 by SCM and RSS
 --R                                                                 Type: String
 --E 181
 
-@
+\end{chunk}
 Global variables that change type in a loop.
 fixed by SCM
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 182 of 188
@@ -2333,9 +2333,9 @@ f(3.4)
 --R                                                                  Type: Float
 --E 186
 
-@
+\end{chunk}
 Returns in sequences. fixed by SCM
-<<*>>=
+\begin{chunk}{*}
 )clear all
 
 --S 187 of 188
@@ -2358,7 +2358,7 @@ t 1
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/tetra.input.pamphlet b/src/input/tetra.input.pamphlet
index 5b37429..b850b6b 100644
--- a/src/input/tetra.input.pamphlet
+++ b/src/input/tetra.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 -- Sierpinsky's Tetrahedron
 
 -- Bring DH matrices into the environment
@@ -77,7 +77,7 @@ makeTetrahedron(sp, dh, color) ==
   polygon(sp, [w1, w3, w4])
   polygon(sp, [w2, w3, w4])
   void()
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/textfile.input.pamphlet b/src/input/textfile.input.pamphlet
index 99fd036..8a86aed 100644
--- a/src/input/textfile.input.pamphlet
+++ b/src/input/textfile.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool textfile.output
 )set message test on
@@ -103,7 +103,7 @@ close! f2
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/tknot.input.pamphlet b/src/input/tknot.input.pamphlet
index 707a426..37a0e3f 100644
--- a/src/input/tknot.input.pamphlet
+++ b/src/input/tknot.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 -- Create a (p,q) torus-knot with radius r around the curve.
 -- The formula was derived by Larry Lambe.
 
@@ -44,7 +44,7 @@ torusKnot(p:DFLOAT, q:DFLOAT, r:DFLOAT, uSteps:PI, tSteps:PI):VIEW3D ==
                var2Steps == tSteps)
 
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/torus.input.pamphlet b/src/input/torus.input.pamphlet
index 24f30c7..58e1030 100644
--- a/src/input/torus.input.pamphlet
+++ b/src/input/torus.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool torus.output
 )set message test on
@@ -60,7 +60,7 @@ makeViewport3D(torus,"torus")$VIEW3D
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/tree.input.pamphlet b/src/input/tree.input.pamphlet
index cd613a3..48932e5 100644
--- a/src/input/tree.input.pamphlet
+++ b/src/input/tree.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool tree.output
 )set message test on
@@ -299,7 +299,7 @@ btourn invert a
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/triglim.input.pamphlet b/src/input/triglim.input.pamphlet
index 1e4aa21..05bd069 100644
--- a/src/input/triglim.input.pamphlet
+++ b/src/input/triglim.input.pamphlet
@@ -10,24 +10,24 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool triglim.output
 )set message test on
 )set message auto off
 )clear all
 
-@
+\end{chunk}
 \section{Limits involving trig and inverse trig functions}
 Some of these limits were taken from bug reports submitted before
 changes were made to limit and related series packages.
 
 In each case, the argument to 'atan' has a pole and the left-hand
 and right-hand limits differ
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 6
 limit(atan(1/sin(x)),x = 0)
 --R 
@@ -68,10 +68,10 @@ limit(atan(sin(x)/(cos(x) + a)),x = acos(-a))
 --RType: Union(Record(leftHandLimit: Union(OrderedCompletion Expression Integer,"failed"),rightHandLimit: Union(OrderedCompletion Expression Integer,"failed")),...)
 --E 4
 
-@
+\end{chunk}
 We'll get these next two if sqrt(1 - a**2) is considered to be
 positive by SIGNEF
-<<*>>=
+\begin{chunk}{*}
 --S 5 of 6
 limit(atan(1/(cos(x) + a)),x = acos(-a))
 --R 
@@ -94,7 +94,7 @@ limit(atan(1/(sin(x) + a)),x = asin(-a))
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/tschirn.input.pamphlet b/src/input/tschirn.input.pamphlet
index 8ad71ab..2e428a3 100644
--- a/src/input/tschirn.input.pamphlet
+++ b/src/input/tschirn.input.pamphlet
@@ -9,10 +9,9 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
--- @(#)tschirn.input	1.1    89/09/07  20:55:26
+\begin{chunk}{*}
 draw(curve(3*(t**2-3),t*(t**2-3)),t = -3..3, [title "Tschirnhausen's Cubic"])
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/tsetcatbutcher.input.pamphlet b/src/input/tsetcatbutcher.input.pamphlet
index d3ed945..9902f53 100644
--- a/src/input/tsetcatbutcher.input.pamphlet
+++ b/src/input/tsetcatbutcher.input.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 
 -----------------------------------------------------------------------------
 --% Domains Definitions
@@ -73,7 +73,7 @@ zeroSetSplit(lp)$ST
 lmpack := LAZM3PK(R,E,V,P,T,ST);
 
 zeroSetSplit(lp,false)$lmpack
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/tsetcatchemical.input.pamphlet b/src/input/tsetcatchemical.input.pamphlet
index c452f68..e2e7c56 100644
--- a/src/input/tsetcatchemical.input.pamphlet
+++ b/src/input/tsetcatchemical.input.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 -----------------------------------------------------------------------------
 --% Domains Definitions
 -----------------------------------------------------------------------------
@@ -62,7 +62,7 @@ zeroSetSplit(lp)$T
 
 zeroSetSplit(lp,false)$T
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/tsetcatvermeer.input.pamphlet b/src/input/tsetcatvermeer.input.pamphlet
index 0f138fa..ee1efbd 100644
--- a/src/input/tsetcatvermeer.input.pamphlet
+++ b/src/input/tsetcatvermeer.input.pamphlet
@@ -10,19 +10,19 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool tsetcatvermeer.output
 )set message test on
 )set message auto off
 )clear all
  
-@
+\end{chunk}
 \section{Domains Definitions}
-<<*>>=
+\begin{chunk}{*}
 --S 1 of 21
 ls : List Symbol := [w,v,u,y,x];
 --R 
@@ -65,9 +65,9 @@ LP := List(P);
 --R                                                                 Type: Domain
 --E 6
 
-@
+\end{chunk}
 \section{Initialisations}
-<<*>>=
+\begin{chunk}{*}
 --S 7 of 21
 x: P := 'x;
 --R 
@@ -269,7 +269,7 @@ zeroSetSplit(lp,false)$T
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/tutchap1.input.pamphlet b/src/input/tutchap1.input.pamphlet
index 778f488..606bf17 100644
--- a/src/input/tutchap1.input.pamphlet
+++ b/src/input/tutchap1.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool tutchap1.output
 )set message test on
@@ -189,7 +189,7 @@ c : PositiveInteger := 3
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/tutchap2.input.pamphlet b/src/input/tutchap2.input.pamphlet
index 2fcb523..5f92eb7 100644
--- a/src/input/tutchap2.input.pamphlet
+++ b/src/input/tutchap2.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1996.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 solve(3*x=x+2)
 x
 solve(3*x - 1 = 0)
@@ -105,7 +105,7 @@ l2 := map(x +-> x^2,l1)
 BE(n) == taylor((1+x)^n, x=0)
 BE(5)
 BE(6)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/tutchap3.input.pamphlet b/src/input/tutchap3.input.pamphlet
index 7ddc0bf..d08de25 100644
--- a/src/input/tutchap3.input.pamphlet
+++ b/src/input/tutchap3.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1996.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 D(x^2,x)
 D(sin x,x)
 D(sin(log(x/tan(x))),x)
@@ -95,7 +95,7 @@ solve((numerator f) :: POLY INT,1/100000)
 eval(ii,T0=rhs first %) :: EXPR Complex Integer
 complexForm %
 % :: EXPR Float        
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/tutchap4.input.pamphlet b/src/input/tutchap4.input.pamphlet
index 98cc4d3..b388196 100644
--- a/src/input/tutchap4.input.pamphlet
+++ b/src/input/tutchap4.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1996.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 s := operator 's
 solve(D(s(t),t,2) = -k^2*s(t), s, t)
 solve(D(s(t),t,2) = -k^2*s(t), s, t=0, [A, 0])
@@ -35,7 +35,7 @@ function(S1,'s1,'t)
 s1(1)
 function(S2,'s2,'t)
 s2(0.1)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/tutchap67.input.pamphlet b/src/input/tutchap67.input.pamphlet
index f730cf8..3c7396e 100644
--- a/src/input/tutchap67.input.pamphlet
+++ b/src/input/tutchap67.input.pamphlet
@@ -8,13 +8,13 @@
 \end{abstract}
 \eject
 \tableofcontents
-\eject
+
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1996.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 (vecA,vecB) : Vector Integer
 vecA := vector [3,0,4]
 vecB := vector [2,4,-2]
@@ -162,7 +162,7 @@ index := first sort((i,j)+->abs coefs.i > abs coefs.j, expand(1..9))
 epses.5
 coefs.5
 sort((i,j)+->abs i > abs j, coefs).2
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/typetower.input.pamphlet b/src/input/typetower.input.pamphlet
index e6e6db8..dee5659 100644
--- a/src/input/typetower.input.pamphlet
+++ b/src/input/typetower.input.pamphlet
@@ -10,12 +10,12 @@ This page demonstrates some features of Axiom.
 \eject
 \tableofcontents
 \eject
-@
+
 Let's begin with the construction of a polynomial ring $R$ in the
 indeterminate $z$ with coefficients from the ring $S$ of square
 matrices with entries that are polynomials $P=F[x]$ where $F$ is
 the Galois field with 3 elements.
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )spool typetower.output
 )set message test on
@@ -55,10 +55,10 @@ R:=UnivariatePolynomial(z,S)
 --R                                                                 Type: Domain
 --E 4
 
-@
+\end{chunk}
 Ok, now we have the type $R$. Let's construct an element. We start
 with constructing some coefficients first.
-<<*>>=
+\begin{chunk}{*}
 
 --S 5 of 17
 s1:S:=matrix [[2*x+1,x^2-1],[0,x-1]]
@@ -82,9 +82,9 @@ s2:=transpose s1
 --R                   Type: SquareMatrix(2,UnivariatePolynomial(x,PrimeField 3))
 --E 6
 
-@
+\end{chunk}
 And now we build the polynomial
-<<*>>=
+\begin{chunk}{*}
 
 --S 7 of 17
 r:R:=z^2+s1*z+s2
@@ -97,9 +97,9 @@ r:R:=z^2+s1*z+s2
 --RType: UnivariatePolynomial(z,SquareMatrix(2,UnivariatePolynomial(x,PrimeField 3)))
 --E 7
 
-@
+\end{chunk}
 Of course, since we work in characteristic 3, the following sum must be zero
-<<*>>=
+\begin{chunk}{*}
 --S 8 of 17
 r+2*r
 --R 
@@ -108,11 +108,11 @@ r+2*r
 --RType: UnivariatePolynomial(z,SquareMatrix(2,UnivariatePolynomial(x,PrimeField 3)))
 --E 8
 
-@
+\end{chunk}
 Note that this is not the integer 0, but it is still a polynomial of type $R$.
 Asking for the degree of $r$ is no problem, because $R$ is a univariate 
 polynomial ring.
-<<*>>=
+\begin{chunk}{*}
 
 --S 9 of 17
 degree r
@@ -122,9 +122,9 @@ degree r
 --R                                                        Type: PositiveInteger
 --E 9
 
-@
+\end{chunk}
 So let's see what happens if we multiply $r$ by itself.
-<<*>>=
+\begin{chunk}{*}
 
 --S 10 of 17
 r2:=r*r
@@ -145,9 +145,9 @@ r2:=r*r
 --RType: UnivariatePolynomial(z,SquareMatrix(2,UnivariatePolynomial(x,PrimeField 3)))
 --E 10
 
-@
+\end{chunk}
 Well, of course there is a common factor of $r_2$ and $r$. Can Axiom find it?
-<<*>>=
+\begin{chunk}{*}
 
 --S 11 of 17
 gcd(r2,r)
@@ -170,7 +170,7 @@ gcd(r2,r)
 --R      or "$" to specify which version of the function you need.
 --E 11
 
-@
+\end{chunk}
 Ooops. What does that say?
 \begin{verbatim}
   Cannot find a definition or applicable library operation named gcd
@@ -181,7 +181,7 @@ simply apply Euclid's algorithm. Axiom simply stops by telling you
 that there is no applicable operation.
 
 Of course, Axiom can compute a gcd of univariate polynmials.
-<<*>>=
+\begin{chunk}{*}
 
 --S 12 of 17
 p1:=s1(1,1)
@@ -208,9 +208,9 @@ gcd(p1,p2)
 --R          Type: UnivariatePolynomial(p2,UnivariatePolynomial(x,PrimeField 3))
 --E 14
 
-@
+\end{chunk}
 Ok, let us do that again
-<<*>>=
+\begin{chunk}{*}
 
 --S 15 of 17
 q1:UP(x,INT):=2*x+1
@@ -237,16 +237,16 @@ gcd(q1,q2)
 --R                                        Type: UnivariatePolynomial(x,Integer)
 --E 17
 
-@
+\end{chunk}
 Nice! Depending on where I compute these polynomials either they have
 a common factor or are coprime. Well, it all depends on the underlying
 ring, of course.
-<<*>>=
+\begin{chunk}{*}
 
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/typo.input.pamphlet b/src/input/typo.input.pamphlet
index a3283fe..45a880b 100644
--- a/src/input/typo.input.pamphlet
+++ b/src/input/typo.input.pamphlet
@@ -9,10 +9,9 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
--- @(#)typo.input	1.1    89/09/07  20:55:28
+\begin{chunk}{*}
 draw(curve(cos(7*t)*sin(t),sin(7*t)*cos(t)), t = 0..2*%pi)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/uniseg.input.pamphlet b/src/input/uniseg.input.pamphlet
index 61ad73a..f23af6a 100644
--- a/src/input/uniseg.input.pamphlet
+++ b/src/input/uniseg.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool uniseg.output
 )set message test on
@@ -93,7 +93,7 @@ expand [1, 3, 10..15, 100..]
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/unittest1.input.pamphlet b/src/input/unittest1.input.pamphlet
index 0c6bac5..bda2198 100644
--- a/src/input/unittest1.input.pamphlet
+++ b/src/input/unittest1.input.pamphlet
@@ -10,7 +10,7 @@ Unit test the user level commands
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )sys rm -f unittest1.output
 )spool unittest1.output
@@ -1238,11 +1238,11 @@ Unit test the user level commands
 --R The current setting is -TPD 
 --E 70
 
-@
+\end{chunk}
 The kernel protect option has been disabled and will shortly be
 removed altogether. It was created because the CCL implementation
 hard coded some internal functions so they could not be changed.
-<<*>>=
+\begin{chunk}{*}
 
 --S 71 of 97
 )set kernel
@@ -1536,7 +1536,7 @@ hard coded some internal functions so they could not be changed.
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/unittest2.input.pamphlet b/src/input/unittest2.input.pamphlet
index 09899d6..abb27c5 100644
--- a/src/input/unittest2.input.pamphlet
+++ b/src/input/unittest2.input.pamphlet
@@ -10,7 +10,7 @@ Unit test the user level commands
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )sys rm -f unittest2.output
 )spool unittest2.output
@@ -539,11 +539,14 @@ Unit test the user level commands
 --RValue = NIL
 --E 86
 
+\end{chunk}
+This generates non-printing characters
+\begin{verbatim}
 --S 87 of 237
-)lisp (identity |$RTspecialCharacters|)
---R 
---IValue = (Ú ¿ À Ù ³ Ä "â" [ ] { } Â Á ´ Ã Å |\\|)
+--)lisp (identity |$RTspecialCharacters|)
 --E 87
+\end{verbatim}
+\begin{chunk}{*}
 
 --S 88 of 237
 )lisp (identity *standard-input*)
@@ -1498,7 +1501,7 @@ Unit test the user level commands
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/unittest3.input.pamphlet b/src/input/unittest3.input.pamphlet
index bd6c15c..8498811 100644
--- a/src/input/unittest3.input.pamphlet
+++ b/src/input/unittest3.input.pamphlet
@@ -10,7 +10,7 @@ Unit test the user level commands
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )sys rm -f unittest3.output
 )spool unittest3.output
@@ -512,11 +512,10 @@ Unit test the user level commands
 --RValue = 50
 --E 75
 
-@
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/unittest4.input.pamphlet b/src/input/unittest4.input.pamphlet
index 0bf8616..e9723a3 100644
--- a/src/input/unittest4.input.pamphlet
+++ b/src/input/unittest4.input.pamphlet
@@ -10,16 +10,16 @@ Unit test the $+->$ syntax changes
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 )set break resume
 )sys rm -f unittest4.output
 )spool unittest4.output
 )set mes auto off
 )clear all
 
-@
+\end{chunk}
 Unit tests of $+->$ syntax change to gcdPolynomial in FRAC
-<<*>>=
+\begin{chunk}{*}
 
 --S 1 of 4
 gcdPolynomial((3*x^2+6)::SUP(FRAC(INT)),(9*x^3+12)::SUP(FRAC(INT)))$FRAC(POLY(INT))
@@ -56,7 +56,7 @@ gcdPolynomial((3*x^2+6)::SUP(FRAC(INT)),(9*x^3+12)::SUP(FRAC(INT)))$FRAC(POLY(IN
 )spool
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/up.input.pamphlet b/src/input/up.input.pamphlet
index 4a4a428..1d7a877 100644
--- a/src/input/up.input.pamphlet
+++ b/src/input/up.input.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 
 -- Input generated from UnivariatePolynomialXmpPage
 )clear all
@@ -50,7 +50,7 @@ t : UP(a1,FRAC POLY INT)
 t := a1**2 - a1/b2 + (b1**2-b1)/(b2+3)
 u : FRAC POLY INT := t
 u :: UP(b1,?)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/vector.input.pamphlet b/src/input/vector.input.pamphlet
index b173069..1334892 100644
--- a/src/input/vector.input.pamphlet
+++ b/src/input/vector.input.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 
 -- Input generated from VectorXmpPage
 )clear all
@@ -25,7 +25,7 @@ v * 7
 w : VECTOR INT := vector([2,3,4,5,6])
 v + w
 v - w
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/vectors.input.pamphlet b/src/input/vectors.input.pamphlet
index fc6acef..9e900ac 100644
--- a/src/input/vectors.input.pamphlet
+++ b/src/input/vectors.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 
 )r arrows
 clipValue :SF :=  6
@@ -63,7 +63,7 @@ drawComplex(f, realRange, imagRange) ==
     llp := cons(reverse! lp, llp)
   llp := reverse! llp
   makeViewport3D(mesh(llp), "Complex Function")$VIEW3D
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/viewdef.input.pamphlet b/src/input/viewdef.input.pamphlet
index d9fc38a..8fd983b 100644
--- a/src/input/viewdef.input.pamphlet
+++ b/src/input/viewdef.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1994.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 -- test for ViewDefaultsPackage package
 
 --Operations to set 2D graph defaults:
@@ -80,7 +80,7 @@ viewWriteAvailable()
 viewWriteDefault(["PIXMAP","POSTSCRIPT"])
 
 viewWriteDefault()
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/void.input.pamphlet b/src/input/void.input.pamphlet
index 87fcfa4..bf05973 100644
--- a/src/input/void.input.pamphlet
+++ b/src/input/void.input.pamphlet
@@ -10,10 +10,10 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1991.
-@
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 )set break resume
 )spool void.output
 )set message test on
@@ -55,7 +55,7 @@ b : Fraction Integer
 )spool 
 )lisp (bye)
  
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/wester.input.pamphlet b/src/input/wester.input.pamphlet
index 82a8a08..13ed2c6 100644
--- a/src/input/wester.input.pamphlet
+++ b/src/input/wester.input.pamphlet
@@ -10,11 +10,11 @@
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1996.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 
 
 -- ----------[ A x i o m ]----------
@@ -388,7 +388,7 @@ outputAsFortran('p = p)
 true and false
 x or (not x)
 --x or y or (x and y)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/wiggle.input.pamphlet b/src/input/wiggle.input.pamphlet
index 0ffb8f0..fc6904a 100644
--- a/src/input/wiggle.input.pamphlet
+++ b/src/input/wiggle.input.pamphlet
@@ -9,10 +9,9 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
--- @(#)wiggle.input	1.1    89/09/07  20:55:30
+\begin{chunk}{*}
 draw(cos(x*y),x = -3..3, y = -3..3)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/wutset.input.pamphlet b/src/input/wutset.input.pamphlet
index bdbafb0..98bec89 100644
--- a/src/input/wutset.input.pamphlet
+++ b/src/input/wutset.input.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 
 -- Input generated from WuWenTsunTriangularSetXmpPage
 )clear all
@@ -30,7 +30,7 @@ p3 := x ** 10 - t
 lp := [p1, p2, p3]
 characteristicSet(lp)$T
 zeroSetSplit(lp)$T
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/xpoly.input.pamphlet b/src/input/xpoly.input.pamphlet
index 6a3353f..560282d 100644
--- a/src/input/xpoly.input.pamphlet
+++ b/src/input/xpoly.input.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 )cl all
 
 poly := XPolynomial(Integer)
@@ -26,7 +26,7 @@ Word := OrderedFreeMonoid Symbol
 w: Word := x*y**2
 rquo(qr,w)
 sh(pr,w::poly)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/xpr.input.pamphlet b/src/input/xpr.input.pamphlet
index 0f95be1..e4c9b0b 100644
--- a/src/input/xpr.input.pamphlet
+++ b/src/input/xpr.input.pamphlet
@@ -8,8 +8,8 @@
 \end{abstract}
 \eject
 \tableofcontents
-\eject
-<<*>>=
+
+\begin{chunk}{*}
 )cl all
 
 Word := OrderedFreeMonoid(Symbol)
@@ -27,7 +27,7 @@ m3: M := m2**2
 pm:poly1   := m1*x + m2*y + m3*z - 2/3
 qm:poly1 := pm - m1*x
 qm**3
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/zdsolve.input.pamphlet b/src/input/zdsolve.input.pamphlet
index a146621..153af79 100644
--- a/src/input/zdsolve.input.pamphlet
+++ b/src/input/zdsolve.input.pamphlet
@@ -8,8 +8,8 @@
 \end{abstract}
 \eject
 \tableofcontents
-\eject
-<<*>>=
+
+\begin{chunk}{*}
 
 R := Integer
 ls : List Symbol := [x,y,z,t]
@@ -23,7 +23,7 @@ triangSolve(lp)$pack
 univariateSolve(lp)$pack
 lr := realSolve(lp)$pack
 # lr
-[[approximate(r,1/1000000) for r in point] for point in lr]
+[ [approximate(r,1/1000000) for r in point] for point in lr]
 lpr := positiveSolve(lp)$pack
 f0 := x**3 + y + z + t- 1
 f1 := x + y**3 + z + t -1
@@ -39,7 +39,7 @@ lr2 := realSolve(lf)$pack
 #lr2
 lpr2 := positiveSolve(lf)$pack
 [approximate(r,1/10**21)::Float for r in lpr2.1]
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/zimmer.input.pamphlet b/src/input/zimmer.input.pamphlet
index 8876be8..bf5a824 100644
--- a/src/input/zimmer.input.pamphlet
+++ b/src/input/zimmer.input.pamphlet
@@ -12,11 +12,11 @@ Conference on Computer Algebra.
 \tableofcontents
 \eject
 \section{License}
-<<license>>=
+\begin{chunk}{license}
 --Copyright The Numerical Algorithms Group Limited 1996.
-@
-<<*>>=
-<<license>>
+\end{chunk}
+\begin{chunk}{*}
+\getchunk{license}
 )set break resume
 
 -- First Order Equations
@@ -385,7 +385,7 @@ odes := [D(y1 x,x) = -1/(x*(x^2 + 1))*y1(x) + 1/(x^2*(x^2 + 1))*y2(x)+1/x,
          D(y2 x,x) = -x^2/(x^2 + 1)*y1(x) + (2*x^2+1)/x/(x^2+1)*y2(x)+1]
 solve(odes,[y1,y2],x)
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/input/zlindep.input.pamphlet b/src/input/zlindep.input.pamphlet
index d088b7f..6f0a4b5 100644
--- a/src/input/zlindep.input.pamphlet
+++ b/src/input/zlindep.input.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 
 -- Input generated from IntegerLinearDependenceXmpPage
 )clear all
@@ -22,7 +22,7 @@ linearlyDependentOverZ? vector [m1, m2, m3]
 c := linearDependenceOverZ vector [m1, m2, m3]
 c.1 * m1 + c.2 * m2 + c.3 * m3
 solveLinearlyOverQ(vector [m1, m3], m2)
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/interp/Makefile.pamphlet b/src/interp/Makefile.pamphlet
index c2d9a16..b014e1c 100644
--- a/src/interp/Makefile.pamphlet
+++ b/src/interp/Makefile.pamphlet
@@ -174,9 +174,6 @@ contains forward references for {\bf boot} code. The {\bf setq.lisp}
 file contains constant initialization code which gains nothing
 by being compiled.
 
-Another exception is gclweb.lisp. This file contains lisp to extract
-code from literate documents. It is not a literate document.
-
 The file http.lisp contains code to enable browser-based hyperdoc
 and graphics.
 <<environment>>=
@@ -197,7 +194,7 @@ OBJS= ${OUT}/vmlisp.${O}      ${OUT}/hash.${O} \
       ${OUT}/g-boot.${O}      ${OUT}/g-cndata.${O} \
       ${OUT}/g-error.${O}     ${OUT}/g-opt.${O} \
       ${OUT}/g-timer.${O}     ${OUT}/g-util.${O} \
-      ${OUT}/gclweb.${O}      ${OUT}/ggreater.${O}    \
+      ${OUT}/ggreater.${O}    \
       ${OUT}/http.${O} \
       ${OUT}/i-analy.${O} \
       ${OUT}/i-code.${O}      ${OUT}/i-coerce.${O} \
@@ -3767,28 +3764,6 @@ ${DOC}/g-util.boot.dvi: ${IN}/g-util.boot.pamphlet
 
 @
 
-\subsection{gclweb.lisp}
-<<gclweb.o (OUT from MID)>>=
-${OUT}/gclweb.${O}: ${MID}/gclweb.lisp
-	@ echo 367 making ${OUT}/gclweb.${O} from ${MID}/gclweb.lisp
-	@ ( cd ${MID} ; \
-	  if [ -z "${NOISE}" ] ; then \
-	   echo '(progn  (compile-file "${MID}/gclweb.lisp"' \
-             ':output-file "${OUT}/gclweb.${O}") (${BYE}))' | ${DEPSYS} ; \
-	  else \
-	   echo '(progn  (compile-file "${MID}/gclweb.lisp"' \
-             ':output-file "${OUT}/gclweb.${O}") (${BYE}))' | ${DEPSYS} \
-             >${TMP}/trace ; \
-	  fi )
-
-@
-<<gclweb.lisp (MID from IN)>>=
-${MID}/gclweb.lisp: ${IN}/gclweb.lisp
-	@ echo 368 making ${MID}/gclweb.lisp from ${IN}/gclweb.lisp
-	@( cp ${IN}/gclweb.lisp ${MID}/gclweb.lisp )
-
-@
-
 \subsection{http.lisp}
 <<http.o (OUT from MID)>>=
 ${OUT}/http.${O}: ${MID}/http.lisp
@@ -8249,9 +8224,6 @@ clean:
 <<g-util.clisp (MID from IN)>>
 <<g-util.boot.dvi (DOC from IN)>>
 
-<<gclweb.o (OUT from MID)>>
-<<gclweb.lisp (MID from IN)>>
-
 <<http.o (OUT from MID)>>
 <<http.lisp (MID from IN)>>
 
diff --git a/src/interp/debugsys.lisp.pamphlet b/src/interp/debugsys.lisp.pamphlet
index 9bfa8e2..0e911f8 100644
--- a/src/interp/debugsys.lisp.pamphlet
+++ b/src/interp/debugsys.lisp.pamphlet
@@ -115,7 +115,6 @@ loaded by hand we need to establish a value.
       (thesymb "/int/interp/g-opt.clisp")
       (thesymb "/int/interp/g-timer.clisp")
       (thesymb "/int/interp/g-util.clisp")
-      (thesymb "/int/interp/gclweb.lisp")
       (thesymb "/int/interp/ggreater.lisp")
       (thesymb "/int/interp/i-analy.clisp")
       (thesymb "/int/interp/i-code.clisp")
diff --git a/src/interp/gclweb.lisp b/src/interp/gclweb.lisp
deleted file mode 100644
index 9cce2dd..0000000
--- a/src/interp/gclweb.lisp
+++ /dev/null
@@ -1,175 +0,0 @@
-(in-package "BOOT")
-;;; This program will extract the source code from a literate file
-
-;;; The *chunkhash* variable will hold the hash table of chunks.
-
-(defvar *chunkhash* nil)
-
-;  (tangle "clweb.pamphlet" "<<*>>")  <== noweb syntax
-;  (tangle "clweb.pamphlet "*")       <== latex syntax (default)
-;  (tangle "clweb.pamphlet" "clweb.chunk" "clweb.spadfile")
-
-;;; tangle takes the name of a file and the chunk to expand
-;;; If the third argument is a string then it names the output file.
-
-;;; This routine looks at the first character of the chunk name.
-;;; If it is a $<$ character then we assume noweb syntax otherwise
-;;; we assume latex syntax.
-;;; 
-(defun tangle (filename topchunk &optional file)
- (let ((noweb (char= (schar topchunk 0) #\<)))
-  (setq *chunkhash* (make-hash-table :test #'equal))
-  (gcl-hashchunks (gcl-read-file filename) noweb)
-  (if (and file (stringp file))
-   (with-open-file (out file :direction :output)
-    (gcl-expand topchunk out))
-   (gcl-expand topchunk t))))
-
-;;; gcl-read-file
-;;;
-;;; This would be read-sequence in ansi common lisp. Here we read
-;;; a line, push it onto a stack and then reverse the stack. The
-;;; net effect is a list of strings, one per line of the file.
-
-(defun gcl-read-file (streamname)
- (let (result)
-  (with-open-file (stream (open streamname))
-   (do (line eof)
-      ((eq line 'done) (nreverse result))
-    (multiple-value-setq (line eof) (read-line stream nil 'done)) 
-    (unless (eq line 'done) (push line result))))))
-
-;;; gcl-hashchunks gathers the chunks and puts them in the hash table
-;;;
-;;; if we find the chunk syntax and it is a
-;;;   define ==> parse the chunkname and start gathering lines onto a stack
-;;;   end    ==> push the completed list of lines into a stack of chunks
-;;;              already in the hash table
-;;;   otherwise ==> if we are gathering, push the line onto the stack
-
-;;; a hash table entry is a list of lists such as
-;;; (("6" "5") ("4" "3") ("2" "1"))
-;;; each of the sublists is a set of lines in reverse (stack) order
-;;; each sublist is a single chunk of lines. 
-;;; there is a new sublist for each reuse of the same chunkname
-
-;;; If the noweb argument is non-nil we assume that we are parsing
-;;; using the noweb syntax. A nil argument implies latex syntax.
-
-(defun gcl-hashchunks (lines noweb)
- (let (type name chunkname oldchunks chunk gather)
-  (dolist (line lines)
-   (if noweb
-    (multiple-value-setq (type name) (ischunk-noweb line))
-    (multiple-value-setq (type name) (ischunk-latex line)))
-   (cond
-    ((eq type 'define)
-      (setq chunkname name)
-      (setq gather t))
-    ((eq type 'end)
-      ;(format t "name= ~a chunk=~s~%" chunkname chunk)
-      (setq oldchunks (gethash chunkname *chunkhash*))
-      (setf (gethash chunkname *chunkhash*) (push chunk oldchunks))
-      (setq gather nil)
-      (setq chunk nil))
-     (gather 
-      (push line chunk))))))
-
-;;; gcl-expand will recursively expand chunks in the hash table
-;;; 
-;;; latex chunk names are just the chunkname itself e.g. chunkname
-;;; noweb chunk names include the delimiters, e.g: <<chunkname>>
-
-;;; a hash table entry is a list of lists such as
-;;; (("6" "5") ("4" "3") ("2" "1"))
-;;; so to process the chunk we reverse the main list and
-;;; for each sublist we reverse the sublist and process the lines
-
-;;; if a chunk name reference is encountered in a line we call expand
-;;; recursively to expand the inner chunkname.
-
-(defun gcl-expand (chunk file)
- (let ((chunklist (gethash chunk *chunkhash*)) type name)
-  (dolist (chunk (reverse chunklist))
-   (dolist (line (reverse chunk))
-    (multiple-value-setq (type name) (ischunk-latex line))
-    (if (eq type 'refer) 
-      (gcl-expand name)
-      (format file "~a~%" line))))))
-
-;;; There is a built-in assumption (in the ischunk-* functions)
-;;; that the chunks occur on separate lines and that the indentation
-;;; of the chunk reference has no meaning.
-;;;
-;;; ischunk-latex  recognizes chunk names in latex convention
-;;;
-;;; There are 3 cases to recognize:
-;;;  \begin{chunk}{thechunkname}  ==> 'define thechunkname
-;;;  \end{chunk}                  ==> 'end nil
-;;;  \chunk{thechunkname}         ==> 'refer thechunkname
-
-(defun ischunk-latex (line)
- (let ((len (length line)) 
-       (mark (search "chunk" line))
-       (point 0)
-       name preline postline)
-  (when mark
-   (cond
-    ((setq mark (search "\\begin{chunk}{" line)) ; recognize define
-      (setq point (position #\} line :start (+ mark 14)))
-      (cond
-       ((null point) (values nil nil))
-       ((= point 0)  (values nil nil))
-       (t
-         (setq name (subseq line (+ mark 14) point)) 
-         ;(print (list 'define name))
-         (values 'define name))))
-    ((setq mark (search "\end{chunk}" line))     ; recognize end
-       ;(print (list 'end nil))
-       (values 'end nil))
-    ((setq mark (search "\chunk{" line))         ; recognize reference
-      (setq point (position #\} line :start (+ mark 6)))
-      (cond
-       ((null point) (values nil nil))
-       ((= point 0)  (values nil nil))
-       (t
-         (setq name (subseq line (+ mark 6) point)) 
-         ;(print (list 'refer name))
-         (values 'refer name))))
-    (t (values nil nil))))))
-  
-;;; ischunk-noweb recognizes chunk names using the noweb convention
-;;;
-;;; There are 3 cases to recognize:
-;;;  <<thechunkname>>=  ==> 'define thechunkname
-;;;  @                  ==> 'end nil
-;;;  <<thechunkname>>   ==> 'refer thechunkname
-
-(defun ischunk-noweb (line)
- (let ((len (length line)) (mark (position #\> line)) (point 0))
-  (cond
-   ((and mark                    ; recognize define
-         (> len (+ mark 2))
-         (char= #\< (schar line 0))
-         (char= #\< (schar line 1))
-         (char= #\> (schar line (+ mark 1)))
-         (char= #\= (schar line (+ mark 2))))
-     ;(print (list 'define (subseq line 0 (+ mark 2))))
-     (values 'define (subseq line 0 (+ mark 2))))
-   ((and mark                    ; recognize reference
-         (> len (+ mark 1))
-         (char= #\> (schar line (+ mark 1))))
-     (setq point (position #\< line))
-     (if
-      (and point
-           (< point (- mark 2))
-           (char= #\< (schar line (+ point 1))))
-        (values 'refer (subseq line point (+ mark 2)))
-        (values 'noise nil)))
-    ((and (> len 0)                ; end chunk
-          (char= #\@ (schar line 0)))
-      (values 'end nil))
-    (t (values nil nil)))))
-  
- 
-
diff --git a/src/interp/sys-pkg.lisp.pamphlet b/src/interp/sys-pkg.lisp.pamphlet
index 9a56b7c..7064101 100644
--- a/src/interp/sys-pkg.lisp.pamphlet
+++ b/src/interp/sys-pkg.lisp.pamphlet
@@ -461,6 +461,7 @@ provides support for compiler code.
 (lisp:import '(vmlisp::make-input-filename))
 (lisp:import '(vmlisp::libstream-dirname))
 (lisp:import '(user::spad-save))
+(lisp:import '(user::tangle))
 (lisp:import '(vmlisp::eqcar))
 (lisp:export '(boot::eqcar))
 
diff --git a/src/scripts/tex/axiom.sty b/src/scripts/tex/axiom.sty
old mode 100755
new mode 100644
index 3581b97..51c2266
--- a/src/scripts/tex/axiom.sty
+++ b/src/scripts/tex/axiom.sty
@@ -1,19 +1,28 @@
 % axiom.sty -- LaTeX support for Axiom
 % DON'T edit this file!  Use src/doc/axiom.sty.pamphlet instead.
+\usepackage{verbatim}
 
-\usepackage{alltt}
+\chardef\atcode=\catcode`\@
+\catcode`\@=11
+\renewcommand{\verbatim@font}{\ttfamily\small}
+\catcode`\@=\atcode
 
 \newenvironment{chunk}[1]{%   we need the chunkname as an argument
-\noindent%                    make sure we are in column 1
-{\small $<<${#1}$>>=$}%       <<some random string>>=
-\begin{alltt}%                use the verbatim
-\small}%                      with a small font
-{\end{alltt}%                 the end{chunk} ends the verbatim
-\par{}%                       we add a newline
-\noindent{}%                  start in column 1
-@%                            put an @
-\par%                         and a newline
-\normalsize}%                 and return to the rest of the document
+{\ }\newline\noindent%                    make sure we are in column 1
+%{\small $\backslash{}$begin\{chunk\}\{{\bf #1}\}}% alternate begin mark
+\hbox{\hskip 2.0cm}{\bf --- #1 ---}%      mark the beginning
+\verbatim}%                               say exactly what we see
+{\endverbatim%                            process \end{chunk}
+\par{}%                                   we add a newline
+\noindent{}%                              start in column 1
+\hbox{\hskip 2.0cm}{\bf ----------}%      mark the end
+%$\backslash{}$end\{chunk\}%              alternate end mark (commented)
+\par%                                     and a newline
+\normalsize\noindent}%                    and return to the document
+
+\providecommand{\getchunk}[1]{%
+\noindent%
+{\small $\backslash{}$begin\{chunk\}\{{\bf #1}\}}}% mark the reference
 
 {\obeyspaces\AtBeginDocument{\global\let =\ }} % from texbook, p 381
 \def\nwopt@nomargintag{\let\nwmargintag=\@gobble}
