diff --git a/books/bookvol9.pamphlet b/books/bookvol9.pamphlet
index 9663d36..efb4172 100644
--- a/books/bookvol9.pamphlet
+++ b/books/bookvol9.pamphlet
@@ -8375,6 +8375,38 @@ of the symbol being parsed. The original list read:
\end{chunk}
+\defun{postBlockItem}{postBlockItem}
+\calls{postBlockItem}{postTran}
+\begin{chunk}{defun postBlockItem}
+(defun |postBlockItem| (x)
+ (let ((tmp1 t) tmp2 y tt z)
+ (setq x (|postTran| x))
+ (if
+ (and (pairp x) (eq (qcar x) '|@Tuple|)
+ (progn
+ (and (pairp (qcdr x))
+ (progn (setq tmp2 (reverse (qcdr x))) t)
+ (pairp tmp2)
+ (progn
+ (and (pairp (qcar tmp2)) (eq (qcar (qcar tmp2)) '|:|)
+ (progn
+ (and (pairp (qcdr (qcar tmp2)))
+ (progn
+ (setq y (qcar (qcdr (qcar tmp2))))
+ (and (pairp (qcdr (qcdr (qcar tmp2))))
+ (eq (qcdr (qcdr (qcdr (qcar tmp2)))) nil)
+ (progn (setq tt (qcar (qcdr (qcdr (qcar tmp2))))) t)))))))
+ (progn (setq z (qcdr tmp2)) t)
+ (progn (setq z (nreverse z)) T)))
+ (do ((tmp6 nil (null tmp1)) (tmp7 z (cdr tmp7)) (x nil))
+ ((or tmp6 (atom tmp7)) tmp1)
+ (setq x (car tmp7))
+ (setq tmp1 (and tmp1 (identp x)))))
+ (cons '|:| (cons (cons 'listof (append z (list y))) (list tt)))
+ x)))
+
+\end{chunk}
+
\defplist{@}{postAtSign}
\begin{chunk}{postvars}
(eval-when (eval load)
@@ -9182,6 +9214,15 @@ of the symbol being parsed. The original list read:
\end{chunk}
+\defun{removeSuperfluousMapping}{removeSuperfluousMapping}
+\begin{chunk}{defun removeSuperfluousMapping}
+(defun |removeSuperfluousMapping| (sig1)
+ (if (and (pairp sig1) (pairp (qcar sig1)) (eq (qcar (qcar sig1)) '|Mapping|))
+ (cons (cdr (qcar sig1)) (qcdr sig1))
+ sig1))
+
+\end{chunk}
+
\defun{killColons}{killColons}
\calls{killColons}{killColons}
\begin{chunk}{defun killColons}
@@ -15362,6 +15403,7 @@ if \verb|$InteractiveMode| then use a null outputstream
\getchunk{defun postAtSign}
\getchunk{defun postBigFloat}
\getchunk{defun postBlock}
+\getchunk{defun postBlockItem}
\getchunk{defun postBlockItemList}
\getchunk{defun postCapsule}
\getchunk{defun postCategory}
@@ -15420,6 +15462,7 @@ if \verb|$InteractiveMode| then use a null outputstream
\getchunk{defun read-a-line}
\getchunk{defun recompile-lib-file-if-necessary}
\getchunk{defun /rf-1}
+\getchunk{defun removeSuperfluousMapping}
\getchunk{defun /RQ,LIB}
\getchunk{defun setDefOp}
diff --git a/changelog b/changelog
index 06a1e8e..b9159ff 100644
--- a/changelog
+++ b/changelog
@@ -1,3 +1,6 @@
+20110513 tpd src/axiom-website/patches.html 20110513.01.tpd.patch
+20110513 tpd src/interp/parsing.lisp treeshake compiler
+20110513 tpd books/bookvol9 treeshake compiler
20110511 tpd src/axiom-website/patches.html 20110511.01.tpd.patch
20110511 tpd src/interp/parsing.lisp treeshake interpreter
20110511 tpd books/bookvol5 treeshake interpreter
diff --git a/src/axiom-website/patches.html b/src/axiom-website/patches.html
index 49e68de..241a224 100644
--- a/src/axiom-website/patches.html
+++ b/src/axiom-website/patches.html
@@ -3468,5 +3468,7 @@ books/bookvol5 treeshake interpreter
books/bookvol5 treeshake interpreter
20110511.01.tpd.patch
books/bookvol5 treeshake interpreter
+20110513.01.tpd.patch
+books/bookvol9 treeshake compiler