diff --git a/books/bookvol9.pamphlet b/books/bookvol9.pamphlet
index d26fcd9..070f10c 100644
--- a/books/bookvol9.pamphlet
+++ b/books/bookvol9.pamphlet
@@ -7307,7 +7307,7 @@ An angry JHD - August 15th., 1984
\calls{setqSingle}{profileRecord}
\calls{setqSingle}{consProplistOf}
\calls{setqSingle}{removeEnv}
-\calls{setqSingle}{addBinding}
+\seebook{setqSingle}{addBinding}{5}
\calls{setqSingle}{isDomainForm}
\calls{setqSingle}{isDomainInScope}
\calls{setqSingle}{stackWarning}
@@ -11140,6 +11140,72 @@ loop
\chapter{Utility Functions}
+\defmacro{pop-stack-1}
+\calls{pop-stack-1}{reduction-value}
+\calls{pop-stack-1}{Pop-Reduction}
+\begin{chunk}{defmacro pop-stack-1}
+(defmacro pop-stack-1 () '(reduction-value (Pop-Reduction)))
+
+\end{chunk}
+
+\defmacro{pop-stack-2}
+\calls{pop-stack-2}{stack-push}
+\calls{pop-stack-2}{reduction-value}
+\calls{pop-stack-2}{Pop-Reduction}
+\begin{chunk}{defmacro pop-stack-2}
+(defmacro pop-stack-2 ()
+ `(let* ((top (Pop-Reduction)) (next (Pop-Reduction)))
+ (stack-push top Reduce-Stack)
+ (reduction-value next)))
+
+\end{chunk}
+
+\defmacro{pop-stack-3}
+\calls{pop-stack-3}{stack-push}
+\calls{pop-stack-3}{reduction-value}
+\calls{pop-stack-3}{Pop-Reduction}
+\begin{chunk}{defmacro pop-stack-3}
+(defmacro pop-stack-3 ()
+ `(let* ((top (Pop-Reduction)) (next (Pop-Reduction)) (nnext (Pop-Reduction)))
+ (stack-push next Reduce-Stack)
+ (stack-push top Reduce-Stack)
+ (reduction-value nnext)))
+
+\end{chunk}
+
+\defmacro{pop-stack-4}
+\calls{pop-stack-4}{stack-push}
+\calls{pop-stack-4}{reduction-value}
+\calls{pop-stack-4}{Pop-Reduction}
+\begin{chunk}{defmacro pop-stack-4}
+(defmacro pop-stack-4 ()
+ `(let* ((top (Pop-Reduction))
+ (next (Pop-Reduction))
+ (nnext (Pop-Reduction))
+ (nnnext (Pop-Reduction)))
+ (stack-push nnext Reduce-Stack)
+ (stack-push next Reduce-Stack)
+ (stack-push top Reduce-Stack)
+ (reduction-value nnnext)))
+
+\end{chunk}
+
+\defmacro{nth-stack}
+\calls{nth-stack}{stack-store}
+\calls{nth-stack}{reduction-value}
+\begin{chunk}{defmacro nth-stack}
+(defmacro nth-stack (x)
+ `(reduction-value (nth (1- ,x) (stack-store Reduce-Stack))))
+
+\end{chunk}
+
+\defun{Pop-Reduction}{Pop-Reduction}
+\calls{Pop-Reduction}{stack-pop}
+\begin{chunk}{defun Pop-Reduction}
+(defun Pop-Reduction () (stack-pop Reduce-Stack))
+
+\end{chunk}
+
\defun{addclose}{addclose}
\calls{addclose}{suffix}
\begin{chunk}{defun addclose}
@@ -12263,9 +12329,9 @@ And the {\bf s-process} function which returns a parsed version of the input.
\defun{spad}{spad}
\catches{spad}{spad-reader}
-\calls{spad}{addBinding}
-\calls{spad}{makeInitialModemapFrame}
-\calls{spad}{init-boot/spad-reader}
+\seebook{spad}{addBinding}{5}
+\seebook{spad}{makeInitialModemapFrame}{5}
+\seebook{spad}{init-boot/spad-reader}{5}
\calls{spad}{initialize-preparse}
\calls{spad}{preparse}
\calls{spad}{PARSE-NewExpr}
@@ -14010,6 +14076,11 @@ if \verb|$InteractiveMode| then use a null outputstream
\getchunk{defmacro bang}
\getchunk{defmacro must}
+\getchunk{defmacro nth-stack}
+\getchunk{defmacro pop-stack-1}
+\getchunk{defmacro pop-stack-2}
+\getchunk{defmacro pop-stack-3}
+\getchunk{defmacro pop-stack-4}
\getchunk{defmacro star}
\getchunk{defun action}
@@ -14280,6 +14351,7 @@ if \verb|$InteractiveMode| then use a null outputstream
\getchunk{defun parseTransform}
\getchunk{defun parseVCONS}
\getchunk{defun parseWhere}
+\getchunk{defun Pop-Reduction}
\getchunk{defun postAdd}
\getchunk{defun postAtom}
\getchunk{defun postAtSign}
diff --git a/changelog b/changelog
index 63afb50..6822dda 100644
--- a/changelog
+++ b/changelog
@@ -1,5 +1,10 @@
+20110204 tpd src/axiom-website/patches.html 20110204.02.tpd.patch
+20110204 tpd src/interp/parsing.lisp treeshake compiler
+20110204 tpd src/scripts/tex/axiom.sty add seebook
+20110204 tpd src/doc/axiom.sty add seebook
+20110204 tpd books/bookvol9 add seebook changes
20110204 tpd src/axiom-website/patches.html 20110204.01.tpd.patch
-20110204 tpd src/axiom-website/download.html add binaries
+20110204 tpd src/axiom-website/download.html add binaries
20110202 tpd src/axiom-website/patches.html 20110202.01.tpd.patch
20110202 tpd src/interp/vmlisp.lisp remove extra end{chunk}
20110201 tpd src/axiom-website/patches.html 20110201.01.tpd.patch
diff --git a/src/axiom-website/patches.html b/src/axiom-website/patches.html
index 03e7e67..93a427f 100644
--- a/src/axiom-website/patches.html
+++ b/src/axiom-website/patches.html
@@ -3389,5 +3389,7 @@ src/axiom-website/download.html update the download page
src/interp/vmlisp.lisp remove extra end{chunk}
20110204.01.tpd.patch
src/axiom-website/download.html add binaries
+20110204.02.tpd.patch
+books/bookvol9 add seebook changes, treeshake compiler