diff --git a/books/bookvol10.2.pamphlet b/books/bookvol10.2.pamphlet
index 5e8ae3e..4b02a16 100644
--- a/books/bookvol10.2.pamphlet
+++ b/books/bookvol10.2.pamphlet
@@ -3544,7 +3544,7 @@ These exports come from \refto{CoercibleTo}(OutputForm):
 ++ Author:
 ++ Date Created:
 ++ Date Last Updated:
-++   09/09/92   RSS   added latex and hash
+++   November 10, 2009 tpd happy birthday
 ++ Basic Functions:
 ++ Related Constructors:
 ++ Also See:
@@ -3559,12 +3559,14 @@ These exports come from \refto{CoercibleTo}(OutputForm):
 ++ Conditional Attributes:
 ++    canonical\tab{15}data structure equality is the same as \spadop{=}
 SetCategory(): Category == Join(BasicType,CoercibleTo OutputForm) with
-      hash: % -> SingleInteger  ++ hash(s) calculates a hash code for s.
-      latex: % -> String       ++ latex(s) returns a LaTeX-printable output
-                               ++ representation of s.
+    hash: % -> SingleInteger  
+      ++ hash(s) calculates a hash code for s.
+    latex: % -> String       
+      ++ latex(s) returns a LaTeX-printable output
+      ++ representation of s.
   add
-      hash(s : %):  SingleInteger == 0$SingleInteger
-      latex(s : %): String       == "\mbox{\bf Unimplemented}"
+    hash(s : %):  SingleInteger == SXHASH(s)$Lisp
+    latex(s : %): String       == "\mbox{\bf Unimplemented}"
 
 @
 <<SETCAT.dotabb>>=
diff --git a/books/bookvol10.3.pamphlet b/books/bookvol10.3.pamphlet
index a06ff49..6ba05b1 100644
--- a/books/bookvol10.3.pamphlet
+++ b/books/bookvol10.3.pamphlet
@@ -2181,7 +2181,7 @@ coerce a
 hash a
 --R 
 --R
---R   (42)  0
+--I   (42)  36310821
 --R                                                          Type: SingleInteger
 --E 42
 
@@ -19329,7 +19329,7 @@ coerce a
 hash a
 --R 
 --R
---R   (61)  0
+--I   (61)  4999531
 --R                                                          Type: SingleInteger
 --E 61
 
@@ -42127,7 +42127,7 @@ latex a
 hash a
 --R 
 --R
---R   (39)  0
+--I   (39)  36647017
 --R                                                          Type: SingleInteger
 --E 38
 
@@ -81185,7 +81185,7 @@ coerce a
 hash a
 --R 
 --R
---R   (44)  0
+--I   (44)  4999531
 --R                                                          Type: SingleInteger
 --E 44
 
@@ -97119,7 +97119,7 @@ coerce a
 hash a
 --R 
 --R
---R   (42)  0
+--I   (42)  4999539
 --R                                                          Type: SingleInteger
 --E 42
 
diff --git a/changelog b/changelog
index d80d084..b8cc4b3 100644
--- a/changelog
+++ b/changelog
@@ -1,3 +1,6 @@
+20091110 tpd src/axiom-website/patches.html 20091110.01.tpd.patch
+20091110 tpd books/bookvol10.3 fix failing tests caused by SetCategory change
+20091110 tpd books/bookvol10.2 define hash=SXHASH in SetCategory
 20091109 tpd src/axiom-website/patches.html 20091109.01.tpd.patch
 20091109 tpd src/input/complexfactor.input demo complex factoring
 20091108 tpd src/axiom-website/patches.html 20091108.01.tpd.patch
diff --git a/src/axiom-website/patches.html b/src/axiom-website/patches.html
index 7ac7ba1..0990e3a 100644
--- a/src/axiom-website/patches.html
+++ b/src/axiom-website/patches.html
@@ -2243,5 +2243,7 @@ src/input/tuplebug.input test Tuple parsing error<br/>
 books/bookvol10.3 fix comment typo<br/>
 <a href="patches/20091109.01.tpd.patch">20091109.01.tpd.patch</a>
 src/input/complexfactor.input demo complex factoring<br/>
+<a href="patches/20091110.01.tpd.patch">20091110.01.tpd.patch</a>
+bookvol10.2, bookvol10.3 define hash=SXHASH in SetCategory<br/>
  </body>
 </html>
