diff --git a/changelog b/changelog
index d94771e..228151b 100644
--- a/changelog
+++ b/changelog
@@ -1,3 +1,22 @@
+20091023 tpd src/axiom-website/patches.html 20091023.01.tpd.patch
+20091023 tpd src/input/dop.input fix up commented-out commands
+20091019 tpd src/axiom-website/patches.html 20091019.05.tpd.patch
+20091019 tpd src/boot/Makefile.pamphlet removed
+20091019 tpd src/boot/boot-proclaims.lisp removed
+20091019 tpd src/boot/boothdr.lisp.pamphlet
+20091019 tpd src/boot/bootload.lisp.pamphlet
+20091019 tpd src/boot/btincl2.boot.pamphlet
+20091019 tpd src/boot/btpile2.boot.pamphlet
+20091019 tpd src/boot/btscan2.boot.pamphlet
+20091019 tpd src/boot/ccl-bootsys.lsp.pamphlet
+20091019 tpd src/boot/ccl-depsys.lsp.pamphlet
+20091019 tpd src/boot/exports.lisp.pamphlet
+20091019 tpd src/boot/npextras.lisp.pamphlet
+20091019 tpd src/boot/ptyout.boot.pamphlet
+20091019 tpd src/boot/tyextra.boot.pamphlet
+20091019 tpd src/boot/typars.boot.pamphlet
+20091019 tpd src/boot/typrops.boot.pamphlet
+20091019 tpd src/boot/tytree1.boot.pamphlet
 20091019 tpd src/axiom-website/patches.html 20091019.04.tpd.patch
 20091019 tpd src/input/branchcut.input added
 20091019 tpd src/input/Makefile add branchcut.input
diff --git a/src/axiom-website/patches.html b/src/axiom-website/patches.html
index f524bbf..81dda9b 100644
--- a/src/axiom-website/patches.html
+++ b/src/axiom-website/patches.html
@@ -2161,5 +2161,9 @@ src/input/gstbl.input ignore gensym<br/>
 books/bookvol10.3 fix TextFile regression test<br/>
 <a href="patches/20091019.04.tpd.patch">20091019.04.tpd.patch</a>
 src/input/branchcut.input added<br/>
+<a href="patches/20091019.05.tpd.patch">20091019.05.tpd.patch</a>
+src/boot directory and files deleted<br/>
+<a href="patches/20091023.01.tpd.patch">20091023.01.tpd.patch</a>
+src/input/dop.input fix up commented-out commands<br/>
  </body>
 </html>
diff --git a/src/input/dop.input.pamphlet b/src/input/dop.input.pamphlet
index 4c7ee9a..9af6027 100644
--- a/src/input/dop.input.pamphlet
+++ b/src/input/dop.input.pamphlet
@@ -76,7 +76,7 @@
 --E 2
 
 --S 3 of 127
---R)d op nthFactor
+)d op nthFactor
 --R 
 --R
 --RThere are 2 exposed functions called nthFactor :
@@ -120,7 +120,7 @@
 --E 3
 
 --S 4 of 127
---R)d op qsetelt!
+)d op qsetelt!
 --R 
 --R
 --RThere are 2 exposed functions called qsetelt! :
@@ -142,7 +142,7 @@
 --E 4
 
 --S 5 of 127
---R)d op cycleElt
+)d op cycleElt
 --R 
 --R
 --RThere is one unexposed function called cycleElt :
@@ -160,7 +160,7 @@
 --E 5
 
 --S 6 of 127
---R)d op cyclicEntries
+)d op cyclicEntries
 --R 
 --R
 --RThere is one exposed function called cyclicEntries :
@@ -174,7 +174,7 @@
 --E 6
 
 --S 7 of 127
---R)d op oneDimensionalArray
+)d op oneDimensionalArray
 --R 
 --R
 --RThere are 2 exposed functions called oneDimensionalArray :
@@ -192,7 +192,7 @@
 --E 7
 
 --S 8 of 127
---R)d op alphanumeric?
+)d op alphanumeric?
 --R 
 --R
 --RThere is one exposed function called alphanumeric? :
@@ -206,7 +206,7 @@
 --E 8
 
 --S 9 of 127
---R)d op digit?
+)d op digit?
 --R 
 --R
 --RThere is one exposed function called digit? :
@@ -220,7 +220,7 @@
 --E 9
 
 --S 10 of 127
---R)d op sqfrFactor
+)d op sqfrFactor
 --R 
 --R
 --RThere is one exposed function called sqfrFactor :
@@ -235,7 +235,7 @@
 --E 10
 
 --S 11 of 127
---R)d op integralMatrix
+)d op integralMatrix
 --R 
 --R
 --RThere is one exposed function called integralMatrix :
@@ -253,7 +253,7 @@
 --E 11
 
 --S 12 of 127
---R)d op ptree
+)d op ptree
 --R 
 --R
 --RThere are 2 exposed functions called ptree :
@@ -272,18 +272,23 @@
 --E 12
 
 --S 13 of 127
---R)d op insert!
+)d op insert!
 --R 
 --R
---RThere are 8 exposed functions called insert! :
---R   [1] (D1,D) -> D from D if D has BGAGG D1 and D1 has TYPE
---R   [2] (D1,BinarySearchTree D1) -> BinarySearchTree D1
+--RThere are 13 exposed functions called insert! :
+--R   [1] (D1,ArrayStack D1) -> ArrayStack D1 from ArrayStack D1 if D1 has
+--R            SETCAT
+--R   [2] (D1,D) -> D from D if D has BGAGG D1 and D1 has TYPE
+--R   [3] (D1,BinarySearchTree D1) -> BinarySearchTree D1
 --R            from BinarySearchTree D1 if D1 has ORDSET
---R   [3] (D1,BinaryTournament D1) -> BinaryTournament D1
+--R   [4] (D1,BinaryTournament D1) -> BinaryTournament D1
 --R            from BinaryTournament D1 if D1 has ORDSET
---R   [4] (D,D,Integer) -> D from D if D has ELAGG D2 and D2 has TYPE
---R   [5] (D1,D,Integer) -> D from D if D has ELAGG D1 and D1 has TYPE
---R   [6] Record(key: Record(var: Symbol,fn: Expression DoubleFloat,range
+--R   [5] (D1,Dequeue D1) -> Dequeue D1 from Dequeue D1 if D1 has SETCAT
+--R         
+--R   [6] (D,D,Integer) -> D from D if D has ELAGG D2 and D2 has TYPE
+--R   [7] (D1,D,Integer) -> D from D if D has ELAGG D1 and D1 has TYPE
+--R   [8] (D1,Heap D1) -> Heap D1 from Heap D1 if D1 has ORDSET
+--R   [9] Record(key: Record(var: Symbol,fn: Expression DoubleFloat,range
 --R            : Segment OrderedCompletion DoubleFloat,abserr: DoubleFloat,
 --R            relerr: DoubleFloat),entry: Record(endPointContinuity: Union(
 --R            continuous: Continuous at the end points,lowerSingular: 
@@ -299,20 +304,29 @@
 --R            Both top and bottom points are infinite,notEvaluated: 
 --R            Range not yet evaluated))) -> IntegrationFunctionsTable
 --R            from IntegrationFunctionsTable
---R   [7] (D1,D,NonNegativeInteger) -> D from D
+--R   [10] (D1,D,NonNegativeInteger) -> D from D
 --R            if D has MDAGG D1 and D1 has SETCAT
---R   [8] Record(key: Record(xinit: DoubleFloat,xend: DoubleFloat,fn: 
+--R   [11] Record(key: Record(xinit: DoubleFloat,xend: DoubleFloat,fn: 
 --R            Vector Expression DoubleFloat,yinit: List DoubleFloat,intvals: 
 --R            List DoubleFloat,g: Expression DoubleFloat,abserr: DoubleFloat,
 --R            relerr: DoubleFloat),entry: Record(stiffness: Float,stability: 
 --R            Float,expense: Float,accuracy: Float,intermediateResults: Float))
 --R             -> ODEIntensityFunctionsTable
 --R            from ODEIntensityFunctionsTable
+--R   [12] (D1,Queue D1) -> Queue D1 from Queue D1 if D1 has SETCAT
+--R   [13] (D1,Stack D1) -> Stack D1 from Stack D1 if D1 has SETCAT
 --R
 --RThere is one unexposed function called insert! :
 --R   [1] (D2,D3) -> Void from TabulatedComputationPackage(D2,D3)
 --R            if D2 has SETCAT and D3 has SETCAT
 --R
+--RExamples of insert! from ArrayStack
+--R
+--Ra:ArrayStack INT:= arrayStack [1,2,3,4,5] 
+--Rinsert!(8,a) 
+--Ra
+--R
+--R
 --RExamples of insert! from BagAggregate
 --R
 --R
@@ -329,9 +343,23 @@
 --Rt1
 --R
 --R
+--RExamples of insert! from Dequeue
+--R
+--Ra:Dequeue INT:= dequeue [1,2,3,4,5] 
+--Rinsert! (8,a) 
+--Ra
+--R
+--R
 --RExamples of insert! from ExtensibleLinearAggregate
 --R
 --R
+--RExamples of insert! from Heap
+--R
+--Ra:Heap INT:= heap [1,2,3,4,5] 
+--Rinsert!(8,a) 
+--Ra
+--R
+--R
 --RExamples of insert! from IntegrationFunctionsTable
 --R
 --R
@@ -341,12 +369,26 @@
 --RExamples of insert! from ODEIntensityFunctionsTable
 --R
 --R
+--RExamples of insert! from Queue
+--R
+--Ra:Queue INT:= queue [1,2,3,4,5] 
+--Rinsert! (8,a) 
+--Ra
+--R
+--R
+--RExamples of insert! from Stack
+--R
+--Ra:Stack INT:= stack [1,2,3,4,5] 
+--Rinsert!(8,a) 
+--Ra
+--R
+--R
 --RExamples of insert! from TabulatedComputationPackage
 --R
 --E 13
 
 --S 14 of 127
---R)d op genus
+)d op genus
 --R 
 --R
 --RThere is one exposed function called genus :
@@ -377,7 +419,7 @@
 --E 14
 
 --S 15 of 127
---R)d op hexDigit?
+)d op hexDigit?
 --R 
 --R
 --RThere is one exposed function called hexDigit? :
@@ -391,7 +433,7 @@
 --E 15
 
 --S 16 of 127
---R)d op computeCycleLength
+)d op computeCycleLength
 --R 
 --R
 --RThere is one unexposed function called computeCycleLength :
@@ -407,7 +449,7 @@
 --E 16
 
 --S 17 of 127
---R)d op findCycle
+)d op findCycle
 --R 
 --R
 --RThere is one exposed function called findCycle :
@@ -425,7 +467,7 @@
 --E 17
 
 --S 18 of 127
---R)d op draw
+)d op draw
 --R 
 --R
 --RThere are 31 exposed functions called draw :
@@ -547,7 +589,7 @@
 --E 18
 
 --S 19 of 127
---R)d op repeating
+)d op repeating
 --R 
 --R
 --RThere is one exposed function called repeating :
@@ -560,7 +602,7 @@
 --E 19
 
 --S 20 of 127
---R)d op cons
+)d op cons
 --R 
 --R
 --RThere are 2 exposed functions called cons :
@@ -579,10 +621,10 @@
 --E 20
 
 --S 21 of 127
---R)d op map
+)d op map
 --R 
 --R
---RThere are 80 exposed functions called map :
+--RThere are 86 exposed functions called map :
 --R   [1] ((D2 -> D2),D) -> D from D
 --R            if D has AMR(D2,D3) and D2 has RING and D3 has OAMON
 --R   [2] (((D2,D2) -> D2),D,D,D2) -> D from D
@@ -597,198 +639,210 @@
 --R   [5] ((D4 -> D5),OneDimensionalArray D4) -> OneDimensionalArray D5
 --R            from OneDimensionalArrayFunctions2(D4,D5)
 --R            if D4 has TYPE and D5 has TYPE
---R   [6] ((D6 -> D7),CartesianTensor(D4,D5,D6)) -> CartesianTensor(D4,D5,
+--R   [6] ((D2 -> D2),ArrayStack D2) -> ArrayStack D2 from ArrayStack D2
+--R            if D2 has SETCAT
+--R   [7] ((D6 -> D7),CartesianTensor(D4,D5,D6)) -> CartesianTensor(D4,D5,
 --R            D7)
 --R            from CartesianTensorFunctions2(D4,D5,D6,D7)
 --R            if D4: INT and D5: NNI and D6 has COMRING and D7 has 
 --R            COMRING
---R   [7] ((D4 -> D5),Complex D4) -> Complex D5 from ComplexFunctions2(D4,
+--R   [8] ((D4 -> D5),Complex D4) -> Complex D5 from ComplexFunctions2(D4,
 --R            D5)
 --R            if D4 has COMRING and D5 has COMRING
---R   [8] ((D5 -> D6),DirectProduct(D4,D5)) -> DirectProduct(D4,D6)
+--R   [9] ((D2 -> D2),Dequeue D2) -> Dequeue D2 from Dequeue D2 if D2 has 
+--R            SETCAT
+--R   [10] ((D5 -> D6),DirectProduct(D4,D5)) -> DirectProduct(D4,D6)
 --R            from DirectProductFunctions2(D4,D5,D6)
 --R            if D4: NNI and D5 has TYPE and D6 has TYPE
---R   [9] ((D4 -> D5),Equation D4) -> Equation D5 from EquationFunctions2(
---R            D4,D5)
+--R   [11] ((D4 -> D5),Equation D4) -> Equation D5 from EquationFunctions2
+--R            (D4,D5)
 --R            if D4 has TYPE and D5 has TYPE
---R   [10] ((D2 -> D2),Equation D2) -> Equation D2 from Equation D2 if D2 
+--R   [12] ((D2 -> D2),Equation D2) -> Equation D2 from Equation D2 if D2 
 --R            has TYPE
---R   [11] ((D4 -> D1),Kernel D4) -> D1 from ExpressionSpaceFunctions2(D4,
+--R   [13] ((D4 -> D1),Kernel D4) -> D1 from ExpressionSpaceFunctions2(D4,
 --R            D1)
 --R            if D4 has ES and D1 has ES
---R   [12] ((D -> D),Kernel D) -> D from D if D has ES
---R   [13] ((D4 -> D5),Matrix D4) -> Matrix D5
+--R   [14] ((D -> D),Kernel D) -> D from D if D has ES
+--R   [15] ((D4 -> D5),Matrix D4) -> Matrix D5
 --R            from ExpertSystemToolsPackage2(D4,D5)
 --R            if D4 has RING and D5 has RING
---R   [14] ((D4 -> D5),Expression D4) -> Expression D5
+--R   [16] ((D4 -> D5),Expression D4) -> Expression D5
 --R            from ExpressionFunctions2(D4,D5)
 --R            if D4 has ORDSET and D5 has ORDSET
---R   [15] ((D7 -> D11),FiniteDivisor(D7,D8,D9,D10)) -> FiniteDivisor(D11,
+--R   [17] ((D5 -> D6),D3) -> D1
+--R            from FiniteAbelianMonoidRingFunctions2(D4,D5,D3,D6,D1)
+--R            if D5 has RING and D6 has RING and D4 has OAMON and D1 has 
+--R            FAMR(D6,D4) and D3 has FAMR(D5,D4)
+--R   [18] ((D7 -> D11),FiniteDivisor(D7,D8,D9,D10)) -> FiniteDivisor(D11,
 --R            D1,D2,D3)
 --R            from FiniteDivisorFunctions2(D7,D8,D9,D10,D11,D1,D2,D3)
 --R            if D7 has FIELD and D8 has UPOLYC D7 and D9 has UPOLYC FRAC
 --R            D8 and D10 has FFCAT(D7,D8,D9) and D11 has FIELD and D1 has
 --R            UPOLYC D11 and D2 has UPOLYC FRAC D1 and D3 has FFCAT(D11,
 --R            D1,D2)
---R   [16] ((D2 -> D2),D) -> D from D if D has FEVALAB D2 and D2 has 
+--R   [19] ((D2 -> D2),D) -> D from D if D has FEVALAB D2 and D2 has 
 --R            SETCAT
---R   [17] ((D5 -> D8),D4) -> D2
+--R   [20] ((D5 -> D8),D4) -> D2
 --R            from FunctionFieldCategoryFunctions2(D5,D6,D7,D4,D8,D9,D1,
 --R            D2)
 --R            if D5 has UFD and D8 has UFD and D6 has UPOLYC D5 and D7 
 --R            has UPOLYC FRAC D6 and D9 has UPOLYC D8 and D2 has FFCAT(D8
 --R            ,D9,D1) and D4 has FFCAT(D5,D6,D7) and D1 has UPOLYC FRAC 
 --R            D9
---R   [18] ((D4 -> D5),D3) -> D1 from FiniteLinearAggregateFunctions2(D4,
+--R   [21] ((D4 -> D5),D3) -> D1 from FiniteLinearAggregateFunctions2(D4,
 --R            D3,D5,D1)
 --R            if D4 has TYPE and D5 has TYPE and D1 has FLAGG D5 and D3 
 --R            has FLAGG D4
---R   [19] ((D2 -> D2),D) -> D from D
+--R   [22] ((D2 -> D2),D) -> D from D
 --R            if D has FMCAT(D2,D3) and D2 has RING and D3 has SETCAT
---R   [20] ((D4 -> D5),Factored D4) -> Factored D5 from FactoredFunctions2
+--R   [23] ((D4 -> D5),Factored D4) -> Factored D5 from FactoredFunctions2
 --R            (D4,D5)
 --R            if D4 has INTDOM and D5 has INTDOM
---R   [21] ((D4 -> D5),Fraction D4) -> Fraction D5 from FractionFunctions2
+--R   [24] ((D4 -> D5),Fraction D4) -> Fraction D5 from FractionFunctions2
 --R            (D4,D5)
 --R            if D4 has INTDOM and D5 has INTDOM
---R   [22] ((D7 -> D11),FractionalIdeal(D7,D8,D9,D10)) -> FractionalIdeal(
+--R   [25] ((D7 -> D11),FractionalIdeal(D7,D8,D9,D10)) -> FractionalIdeal(
 --R            D11,D1,D2,D3)
 --R            from FractionalIdealFunctions2(D7,D8,D9,D10,D11,D1,D2,D3)
 --R            if D7 has EUCDOM and D8 has QFCAT D7 and D9 has UPOLYC D8 
 --R            and D10 has Join(FramedAlgebra(D8,D9),RetractableTo D8) and
 --R            D11 has EUCDOM and D1 has QFCAT D11 and D2 has UPOLYC D1 
 --R            and D3 has Join(FramedAlgebra(D1,D2),RetractableTo D1)
---R   [23] ((D4 -> D5),D3) -> D1
+--R   [26] ((D4 -> D5),D3) -> D1
 --R            from FramedNonAssociativeAlgebraFunctions2(D3,D4,D1,D5)
 --R            if D4 has COMRING and D5 has COMRING and D1 has FRNAALG D5 
 --R            and D3 has FRNAALG D4
---R   [24] ((D2 -> D2),Factored D2) -> Factored D2 from Factored D2
+--R   [27] ((D2 -> D2),Factored D2) -> Factored D2 from Factored D2
 --R            if D2 has INTDOM
---R   [25] ((D4 -> D5),D3) -> D1 from FunctionSpaceFunctions2(D4,D3,D5,D1)
+--R   [28] ((D4 -> D5),D3) -> D1 from FunctionSpaceFunctions2(D4,D3,D5,D1)
 --R            if D4 has Join(Ring,OrderedSet) and D5 has Join(Ring,
 --R            OrderedSet) and D1 has FS D5 and D3 has FS D4
---R   [26] ((D4 -> D5),D3) -> D1 from FiniteSetAggregateFunctions2(D4,D3,
+--R   [29] ((D4 -> D5),D3) -> D1 from FiniteSetAggregateFunctions2(D4,D3,
 --R            D5,D1)
 --R            if D4 has SETCAT and D5 has SETCAT and D1 has FSAGG D5 and 
 --R            D3 has FSAGG D4
---R   [27] ((D2 -> D2),D) -> D from D if D has HOAGG D2 and D2 has TYPE
+--R   [30] ((D2 -> D2),Heap D2) -> Heap D2 from Heap D2 if D2 has ORDSET
+--R         
+--R   [31] ((D2 -> D2),D) -> D from D if D has HOAGG D2 and D2 has TYPE
 --R         
---R   [28] ((D2 -> D2),D) -> D from D
+--R   [32] ((D2 -> D2),D) -> D from D
 --R            if D has IDPC(D2,D3) and D2 has SETCAT and D3 has ORDSET
 --R         
---R   [29] ((D4 -> D5),IntegrationResult D4) -> IntegrationResult D5
+--R   [33] ((D4 -> D5),IntegrationResult D4) -> IntegrationResult D5
 --R            from IntegrationResultFunctions2(D4,D5)
 --R            if D4 has FIELD and D5 has FIELD
---R   [30] ((D4 -> D5),Union(Record(ratpart: D4,coeff: D4),"failed")) -> 
+--R   [34] ((D4 -> D5),Union(Record(ratpart: D4,coeff: D4),"failed")) -> 
 --R            Union(Record(ratpart: D5,coeff: D5),"failed")
 --R            from IntegrationResultFunctions2(D4,D5)
 --R            if D4 has FIELD and D5 has FIELD
---R   [31] ((D4 -> D1),Union(D4,"failed")) -> Union(D1,"failed")
+--R   [35] ((D4 -> D1),Union(D4,"failed")) -> Union(D1,"failed")
 --R            from IntegrationResultFunctions2(D4,D1)
 --R            if D4 has FIELD and D1 has FIELD
---R   [32] ((D4 -> D5),Union(Record(mainpart: D4,limitedlogs: List Record(
+--R   [36] ((D4 -> D5),Union(Record(mainpart: D4,limitedlogs: List Record(
 --R            coeff: D4,logand: D4)),"failed")) -> Union(Record(mainpart: D5,
 --R            limitedlogs: List Record(coeff: D5,logand: D5)),"failed")
 --R            from IntegrationResultFunctions2(D4,D5)
 --R            if D4 has FIELD and D5 has FIELD
---R   [33] ((D4 -> D5),InfiniteTuple D4) -> InfiniteTuple D5
+--R   [37] ((D4 -> D5),InfiniteTuple D4) -> InfiniteTuple D5
 --R            from InfiniteTupleFunctions2(D4,D5)
 --R            if D4 has TYPE and D5 has TYPE
---R   [34] (((D5,D6) -> D7),InfiniteTuple D5,InfiniteTuple D6) -> 
+--R   [38] (((D5,D6) -> D7),InfiniteTuple D5,InfiniteTuple D6) -> 
 --R            InfiniteTuple D7
 --R            from InfiniteTupleFunctions3(D5,D6,D7)
 --R            if D5 has TYPE and D6 has TYPE and D7 has TYPE
---R   [35] (((D5,D6) -> D7),Stream D5,InfiniteTuple D6) -> Stream D7
+--R   [39] (((D5,D6) -> D7),Stream D5,InfiniteTuple D6) -> Stream D7
 --R            from InfiniteTupleFunctions3(D5,D6,D7)
 --R            if D5 has TYPE and D6 has TYPE and D7 has TYPE
---R   [36] (((D5,D6) -> D7),InfiniteTuple D5,Stream D6) -> Stream D7
+--R   [40] (((D5,D6) -> D7),InfiniteTuple D5,Stream D6) -> Stream D7
 --R            from InfiniteTupleFunctions3(D5,D6,D7)
 --R            if D5 has TYPE and D6 has TYPE and D7 has TYPE
---R   [37] ((D2 -> D2),InfiniteTuple D2) -> InfiniteTuple D2 from 
+--R   [41] ((D2 -> D2),InfiniteTuple D2) -> InfiniteTuple D2 from 
 --R            InfiniteTuple D2
 --R            if D2 has TYPE
---R   [38] ((D4 -> D5),List D4) -> List D5 from ListFunctions2(D4,D5)
+--R   [42] ((D4 -> D5),List D4) -> List D5 from ListFunctions2(D4,D5)
 --R            if D4 has TYPE and D5 has TYPE
---R   [39] (((D5,D6) -> D7),List D5,List D6) -> List D7
+--R   [43] (((D5,D6) -> D7),List D5,List D6) -> List D7
 --R            from ListFunctions3(D5,D6,D7)
 --R            if D5 has TYPE and D6 has TYPE and D7 has TYPE
---R   [40] (((D2,D2) -> D2),D,D) -> D from D if D has LNAGG D2 and D2 has 
+--R   [44] (((D2,D2) -> D2),D,D) -> D from D if D has LNAGG D2 and D2 has 
 --R            TYPE
---R   [41] ((D5 -> D8),D4) -> D2
+--R   [45] ((D5 -> D8),D4) -> D2
 --R            from MatrixCategoryFunctions2(D5,D6,D7,D4,D8,D9,D1,D2)
 --R            if D5 has RING and D8 has RING and D6 has FLAGG D5 and D7 
 --R            has FLAGG D5 and D2 has MATCAT(D8,D9,D1) and D4 has MATCAT(
 --R            D5,D6,D7) and D9 has FLAGG D8 and D1 has FLAGG D8
---R   [42] ((D5 -> Union(D8,"failed")),D4) -> Union(D2,"failed")
+--R   [46] ((D5 -> Union(D8,"failed")),D4) -> Union(D2,"failed")
 --R            from MatrixCategoryFunctions2(D5,D6,D7,D4,D8,D9,D1,D2)
 --R            if D5 has RING and D8 has RING and D6 has FLAGG D5 and D7 
 --R            has FLAGG D5 and D2 has MATCAT(D8,D9,D1) and D4 has MATCAT(
 --R            D5,D6,D7) and D9 has FLAGG D8 and D1 has FLAGG D8
---R   [43] ((D7 -> D8),D3) -> D1 from MPolyCatFunctions2(D4,D5,D6,D7,D8,D3
+--R   [47] ((D7 -> D8),D3) -> D1 from MPolyCatFunctions2(D4,D5,D6,D7,D8,D3
 --R            ,D1)
 --R            if D7 has RING and D8 has RING and D4 has ORDSET and D5 has
 --R            OAMONS and D1 has POLYCAT(D8,D6,D4) and D6 has OAMONS and 
 --R            D3 has POLYCAT(D7,D5,D4)
---R   [44] ((D4 -> D5),MonoidRing(D4,D6)) -> MonoidRing(D5,D6)
+--R   [48] ((D4 -> D5),MonoidRing(D4,D6)) -> MonoidRing(D5,D6)
 --R            from MonoidRingFunctions2(D4,D5,D6)
 --R            if D4 has RING and D5 has RING and D6 has MONOID
---R   [45] ((D4 -> D5),D3) -> D1 from OctonionCategoryFunctions2(D3,D4,D1,
+--R   [49] ((D4 -> D5),D3) -> D1 from OctonionCategoryFunctions2(D3,D4,D1,
 --R            D5)
 --R            if D4 has COMRING and D5 has COMRING and D1 has OC D5 and 
 --R            D3 has OC D4
---R   [46] ((D4 -> D5),OnePointCompletion D4) -> OnePointCompletion D5
+--R   [50] ((D4 -> D5),OnePointCompletion D4) -> OnePointCompletion D5
 --R            from OnePointCompletionFunctions2(D4,D5)
 --R            if D4 has SETCAT and D5 has SETCAT
---R   [47] ((D4 -> D5),OnePointCompletion D4,OnePointCompletion D5) -> 
+--R   [51] ((D4 -> D5),OnePointCompletion D4,OnePointCompletion D5) -> 
 --R            OnePointCompletion D5
 --R            from OnePointCompletionFunctions2(D4,D5)
 --R            if D4 has SETCAT and D5 has SETCAT
---R   [48] ((D4 -> D5),OrderedCompletion D4) -> OrderedCompletion D5
+--R   [52] ((D4 -> D5),OrderedCompletion D4) -> OrderedCompletion D5
 --R            from OrderedCompletionFunctions2(D4,D5)
 --R            if D4 has SETCAT and D5 has SETCAT
---R   [49] ((D4 -> D5),OrderedCompletion D4,OrderedCompletion D5,
+--R   [53] ((D4 -> D5),OrderedCompletion D4,OrderedCompletion D5,
 --R            OrderedCompletion D5) -> OrderedCompletion D5
 --R            from OrderedCompletionFunctions2(D4,D5)
 --R            if D4 has SETCAT and D5 has SETCAT
---R   [50] ((D4 -> D5),ParametricPlaneCurve D4) -> ParametricPlaneCurve D5
+--R   [54] ((D4 -> D5),ParametricPlaneCurve D4) -> ParametricPlaneCurve D5
 --R            from ParametricPlaneCurveFunctions2(D4,D5)
 --R            if D4 has TYPE and D5 has TYPE
---R   [51] ((D4 -> D5),ParametricSpaceCurve D4) -> ParametricSpaceCurve D5
+--R   [55] ((D4 -> D5),ParametricSpaceCurve D4) -> ParametricSpaceCurve D5
 --R            from ParametricSpaceCurveFunctions2(D4,D5)
 --R            if D4 has TYPE and D5 has TYPE
---R   [52] ((D4 -> D5),ParametricSurface D4) -> ParametricSurface D5
+--R   [56] ((D4 -> D5),ParametricSurface D4) -> ParametricSurface D5
 --R            from ParametricSurfaceFunctions2(D4,D5)
 --R            if D4 has TYPE and D5 has TYPE
---R   [53] ((D5 -> D6),PatternMatchResult(D4,D5)) -> PatternMatchResult(D4
+--R   [57] ((D5 -> D6),PatternMatchResult(D4,D5)) -> PatternMatchResult(D4
 --R            ,D6)
 --R            from PatternMatchResultFunctions2(D4,D5,D6)
 --R            if D4 has SETCAT and D5 has SETCAT and D6 has SETCAT
---R   [54] ((D4 -> D5),Pattern D4) -> Pattern D5 from PatternFunctions2(D4
+--R   [58] ((D4 -> D5),Pattern D4) -> Pattern D5 from PatternFunctions2(D4
 --R            ,D5)
 --R            if D4 has SETCAT and D5 has SETCAT
---R   [55] ((D4 -> D5),Polynomial D4) -> Polynomial D5
+--R   [59] ((D4 -> D5),Polynomial D4) -> Polynomial D5
 --R            from PolynomialFunctions2(D4,D5)
 --R            if D4 has RING and D5 has RING
---R   [56] ((D4 -> D5),PrimitiveArray D4) -> PrimitiveArray D5
+--R   [60] ((D4 -> D5),PrimitiveArray D4) -> PrimitiveArray D5
 --R            from PrimitiveArrayFunctions2(D4,D5)
 --R            if D4 has TYPE and D5 has TYPE
---R   [57] ((D4 -> D5),Point D4) -> Point D5 from PointFunctions2(D4,D5)
+--R   [61] ((D4 -> D5),Point D4) -> Point D5 from PointFunctions2(D4,D5)
 --R            if D4 has RING and D5 has RING
---R   [58] ((D4 -> D5),D3) -> D1 from QuotientFieldCategoryFunctions2(D4,
+--R   [62] ((D4 -> D5),D3) -> D1 from QuotientFieldCategoryFunctions2(D4,
 --R            D5,D3,D1)
 --R            if D4 has INTDOM and D5 has INTDOM and D1 has QFCAT D5 and 
 --R            D3 has QFCAT D4
---R   [59] ((D4 -> D5),D3) -> D1 from QuaternionCategoryFunctions2(D3,D4,
+--R   [63] ((D4 -> D5),D3) -> D1 from QuaternionCategoryFunctions2(D3,D4,
 --R            D1,D5)
 --R            if D4 has COMRING and D5 has COMRING and D1 has QUATCAT D5 
 --R            and D3 has QUATCAT D4
---R   [60] (((D4,D4) -> D4),D,D) -> D from D
+--R   [64] ((D2 -> D2),Queue D2) -> Queue D2 from Queue D2 if D2 has 
+--R            SETCAT
+--R   [65] (((D4,D4) -> D4),D,D) -> D from D
 --R            if D has RMATCAT(D2,D3,D4,D5,D6) and D4 has RING and D5 has
 --R            DIRPCAT(D3,D4) and D6 has DIRPCAT(D2,D4)
---R   [61] ((D4 -> D4),D) -> D from D
+--R   [66] ((D4 -> D4),D) -> D from D
 --R            if D has RMATCAT(D2,D3,D4,D5,D6) and D4 has RING and D5 has
 --R            DIRPCAT(D3,D4) and D6 has DIRPCAT(D2,D4)
---R   [62] ((D9 -> D1),D6) -> D4
+--R   [67] ((D9 -> D1),D6) -> D4
 --R            from RectangularMatrixCategoryFunctions2(D7,D8,D9,D10,D11,
 --R            D6,D1,D2,D3,D4)
 --R            if D9 has RING and D1 has RING and D7: NNI and D8: NNI and 
@@ -796,71 +850,73 @@
 --R            has RMATCAT(D7,D8,D1,D2,D3) and D6 has RMATCAT(D7,D8,D9,D10
 --R            ,D11) and D2 has DIRPCAT(D8,D1) and D3 has DIRPCAT(D7,D1)
 --R         
---R   [63] ((D4 -> D5),Segment D4) -> Segment D5 from SegmentFunctions2(D4
+--R   [68] ((D4 -> D5),Segment D4) -> Segment D5 from SegmentFunctions2(D4
 --R            ,D5)
 --R            if D4 has TYPE and D5 has TYPE
---R   [64] ((D4 -> D5),Segment D4) -> List D5 from SegmentFunctions2(D4,D5
+--R   [69] ((D4 -> D5),Segment D4) -> List D5 from SegmentFunctions2(D4,D5
 --R            )
 --R            if D4 has ORDRING and D4 has TYPE and D5 has TYPE
---R   [65] ((D4 -> D5),SegmentBinding D4) -> SegmentBinding D5
+--R   [70] ((D4 -> D5),SegmentBinding D4) -> SegmentBinding D5
 --R            from SegmentBindingFunctions2(D4,D5)
 --R            if D4 has TYPE and D5 has TYPE
---R   [66] ((D3 -> D3),D) -> D1 from D
+--R   [71] ((D3 -> D3),D) -> D1 from D
 --R            if D has SEGXCAT(D3,D1) and D3 has ORDRING and D1 has STAGG
 --R            D3
---R   [67] ((D4 -> D5),Stream D4) -> Stream D5 from StreamFunctions2(D4,D5
+--R   [72] ((D2 -> D2),Stack D2) -> Stack D2 from Stack D2 if D2 has 
+--R            SETCAT
+--R   [73] ((D4 -> D5),Stream D4) -> Stream D5 from StreamFunctions2(D4,D5
 --R            )
 --R            if D4 has TYPE and D5 has TYPE
---R   [68] (((D5,D6) -> D7),Stream D5,Stream D6) -> Stream D7
+--R   [74] (((D5,D6) -> D7),Stream D5,Stream D6) -> Stream D7
 --R            from StreamFunctions3(D5,D6,D7)
 --R            if D5 has TYPE and D6 has TYPE and D7 has TYPE
---R   [69] ((D4 -> D5),SparseUnivariatePolynomial D4) -> 
+--R   [75] ((D4 -> D5),SparseUnivariatePolynomial D4) -> 
 --R            SparseUnivariatePolynomial D5
 --R            from SparseUnivariatePolynomialFunctions2(D4,D5)
 --R            if D4 has RING and D5 has RING
---R   [70] (((D3,D3) -> D3),D,D) -> D from D
+--R   [76] (((D3,D3) -> D3),D,D) -> D from D
 --R            if D has TBAGG(D2,D3) and D2 has SETCAT and D3 has SETCAT
 --R         
---R   [71] ((D5 -> D6),UnivariateLaurentSeries(D5,D7,D9)) -> 
+--R   [77] ((D5 -> D6),UnivariateLaurentSeries(D5,D7,D9)) -> 
 --R            UnivariateLaurentSeries(D6,D8,D1)
 --R            from UnivariateLaurentSeriesFunctions2(D5,D6,D7,D8,D9,D1)
 --R            if D5 has RING and D6 has RING and D7: SYMBOL and D9: D5 
 --R            and D1: D6 and D8: SYMBOL
---R   [72] ((D4 -> D5),UniversalSegment D4) -> UniversalSegment D5
+--R   [78] ((D4 -> D5),UniversalSegment D4) -> UniversalSegment D5
 --R            from UniversalSegmentFunctions2(D4,D5)
 --R            if D4 has TYPE and D5 has TYPE
---R   [73] ((D4 -> D5),UniversalSegment D4) -> Stream D5
+--R   [79] ((D4 -> D5),UniversalSegment D4) -> Stream D5
 --R            from UniversalSegmentFunctions2(D4,D5)
 --R            if D4 has ORDRING and D4 has TYPE and D5 has TYPE
---R   [74] ((D5 -> D7),UnivariatePolynomial(D4,D5)) -> 
+--R   [80] ((D5 -> D7),UnivariatePolynomial(D4,D5)) -> 
 --R            UnivariatePolynomial(D6,D7)
 --R            from UnivariatePolynomialFunctions2(D4,D5,D6,D7)
 --R            if D4: SYMBOL and D5 has RING and D7 has RING and D6: 
 --R            SYMBOL
---R   [75] ((D4 -> D5),D3) -> D1
+--R   [81] ((D4 -> D5),D3) -> D1
 --R            from UnivariatePolynomialCategoryFunctions2(D4,D3,D5,D1)
 --R            if D4 has RING and D5 has RING and D1 has UPOLYC D5 and D3 
 --R            has UPOLYC D4
---R   [76] ((D5 -> D6),UnivariatePuiseuxSeries(D5,D7,D9)) -> 
+--R   [82] ((D5 -> D6),UnivariatePuiseuxSeries(D5,D7,D9)) -> 
 --R            UnivariatePuiseuxSeries(D6,D8,D1)
 --R            from UnivariatePuiseuxSeriesFunctions2(D5,D6,D7,D8,D9,D1)
 --R            if D5 has RING and D6 has RING and D7: SYMBOL and D9: D5 
 --R            and D1: D6 and D8: SYMBOL
---R   [77] ((D4 -> D5),D3) -> D1
+--R   [83] ((D4 -> D5),D3) -> D1
 --R            from UnivariateTaylorSeriesFunctions2(D4,D5,D3,D1)
 --R            if D4 has RING and D5 has RING and D1 has UTSCAT D5 and D3 
 --R            has UTSCAT D4
---R   [78] ((D4 -> D5),Vector D4) -> Vector D5 from VectorFunctions2(D4,D5
+--R   [84] ((D4 -> D5),Vector D4) -> Vector D5 from VectorFunctions2(D4,D5
 --R            )
 --R            if D4 has TYPE and D5 has TYPE
---R   [79] ((D4 -> Union(D5,"failed")),Vector D4) -> Union(Vector D5,
+--R   [85] ((D4 -> Union(D5,"failed")),Vector D4) -> Union(Vector D5,
 --R            "failed")
 --R            from VectorFunctions2(D4,D5) if D4 has TYPE and D5 has TYPE
 --R            
---R   [80] ((D3 -> D3),D) -> D from D
+--R   [86] ((D3 -> D3),D) -> D from D
 --R            if D has XFALG(D2,D3) and D2 has ORDSET and D3 has RING
 --R
---RThere are 11 unexposed functions called map :
+--RThere are 10 unexposed functions called map :
 --R   [1] ((D2 -> D2),AntiSymm(D2,D3)) -> AntiSymm(D2,D3) from AntiSymm(D2
 --R            ,D3)
 --R            if D2 has RING and D3: LIST SYMBOL
@@ -871,26 +927,22 @@
 --R   [3] ((D5 -> D1),String,Kernel D5) -> D1
 --R            from ExpressionSpaceFunctions1(D5,D1)
 --R            if D5 has ES and D1 has TYPE
---R   [4] ((D5 -> D6),D3) -> D1
---R            from FiniteAbelianMonoidRingFunctions2(D4,D5,D3,D6,D1)
---R            if D5 has RING and D6 has RING and D4 has OAMON and D1 has 
---R            FAMR(D6,D4) and D3 has FAMR(D5,D4)
---R   [5] ((D4 -> D6),D3) -> D1 from MultipleMap(D4,D5,D3,D6,D7,D1)
+--R   [4] ((D4 -> D6),D3) -> D1 from MultipleMap(D4,D5,D3,D6,D7,D1)
 --R            if D4 has INTDOM and D6 has INTDOM and D5 has UPOLYC D4 and
 --R            D1 has UPOLYC FRAC D7 and D3 has UPOLYC FRAC D5 and D7 has 
 --R            UPOLYC D6
---R   [6] ((D4 -> D5),D3) -> D1 from MPolyCatFunctions3(D4,D5,D6,D7,D8,D3,
+--R   [5] ((D4 -> D5),D3) -> D1 from MPolyCatFunctions3(D4,D5,D6,D7,D8,D3,
 --R            D1)
 --R            if D4 has ORDSET and D5 has ORDSET and D6 has OAMONS and D8
 --R            has RING and D1 has POLYCAT(D8,D7,D5) and D7 has OAMONS and
 --R            D3 has POLYCAT(D8,D6,D4)
---R   [7] ((D2 -> D2),MonoidRing(D2,D3)) -> MonoidRing(D2,D3)
+--R   [6] ((D2 -> D2),MonoidRing(D2,D3)) -> MonoidRing(D2,D3)
 --R            from MonoidRing(D2,D3) if D2 has RING and D3 has MONOID
---R   [8] ((D4 -> D5),NewSparseUnivariatePolynomial D4) -> 
+--R   [7] ((D4 -> D5),NewSparseUnivariatePolynomial D4) -> 
 --R            NewSparseUnivariatePolynomial D5
 --R            from NewSparseUnivariatePolynomialFunctions2(D4,D5)
 --R            if D4 has RING and D5 has RING
---R   [9] ((D7 -> D2),(D8 -> D2),D5) -> D2
+--R   [8] ((D7 -> D2),(D8 -> D2),D5) -> D2
 --R            from PolynomialCategoryLifting(D6,D7,D8,D5,D2)
 --R            if D7 has ORDSET and D8 has RING and D6 has OAMONS and D2 
 --R            has SetCategory with 
@@ -898,13 +950,12 @@
 --R               ?*? : (%,%) -> %
 --R               D : (%,NonNegativeInteger) -> % and D5 has POLYCAT(
 --R            D8,D6,D7)
---R   [10] ((Polynomial D3 -> D1),D1) -> D1 from PushVariables(D3,D4,D5,D1
---R            )
+--R   [9] ((Polynomial D3 -> D1),D1) -> D1 from PushVariables(D3,D4,D5,D1)
 --R            if D3 has RING and D1 has POLYCAT(POLY D3,D4,D5) and D4 has
 --R            OAMONS and D5 has OrderedSet with 
 --R               convert : % -> Symbol
 --R               variable : Symbol -> Union(%,"failed")
---R   [11] ((D2 -> D2),XPolynomialRing(D2,D3)) -> XPolynomialRing(D2,D3)
+--R   [10] ((D2 -> D2),XPolynomialRing(D2,D3)) -> XPolynomialRing(D2,D3)
 --R            from XPolynomialRing(D2,D3) if D2 has RING and D3 has 
 --R            ORDMON
 --R
@@ -936,12 +987,26 @@
 --Rmap(x+->x+2,[i for i in 1..10])$T1
 --R
 --R
+--RExamples of map from ArrayStack
+--R
+--Ra:ArrayStack INT:= arrayStack [1,2,3,4,5] 
+--Rmap(x+->x+10,a) 
+--Ra
+--R
+--R
 --RExamples of map from CartesianTensorFunctions2
 --R
 --R
 --RExamples of map from ComplexFunctions2
 --R
 --R
+--RExamples of map from Dequeue
+--R
+--Ra:Dequeue INT:= dequeue [1,2,3,4,5] 
+--Rmap(x+->x+10,a) 
+--Ra
+--R
+--R
 --RExamples of map from DeRhamComplex
 --R
 --R
@@ -1014,6 +1079,13 @@
 --RExamples of map from FiniteSetAggregateFunctions2
 --R
 --R
+--RExamples of map from Heap
+--R
+--Ra:Heap INT:= heap [1,2,3,4,5] 
+--Rmap(x+->x+10,a) 
+--Ra
+--R
+--R
 --RExamples of map from HomogeneousAggregate
 --R
 --R
@@ -1109,6 +1181,17 @@
 --R
 --RExamples of map from QuaternionCategoryFunctions2
 --R
+--Rf(a:FRAC(INT)):COMPLEX(FRAC(INT)) == a::COMPLEX(FRAC(INT)) 
+--Rq:=quatern(2/11,-8,3/4,1) 
+--Rmap(f,q)
+--R
+--R
+--RExamples of map from Queue
+--R
+--Ra:Queue INT:= queue [1,2,3,4,5] 
+--Rmap(x+->x+10,a) 
+--Ra
+--R
 --R
 --RExamples of map from RectangularMatrixCategory
 --R
@@ -1125,6 +1208,13 @@
 --RExamples of map from SegmentExpansionCategory
 --R
 --R
+--RExamples of map from Stack
+--R
+--Ra:Stack INT:= stack [1,2,3,4,5] 
+--Rmap(x+->x+10,a) 
+--Ra
+--R
+--R
 --RExamples of map from StreamFunctions2
 --R
 --Rm:=[i for i in 1..] 
@@ -1175,7 +1265,7 @@
 --E 21
 
 --S 22 of 127
---R)d op complete
+)d op complete
 --R 
 --R
 --RThere are 5 exposed functions called complete :
@@ -1213,7 +1303,7 @@
 --E 22
 
 --S 23 of 127
---R)d op cyclicEqual?
+)d op cyclicEqual?
 --R 
 --R
 --RThere is one exposed function called cyclicEqual? :
@@ -1228,7 +1318,7 @@
 --E 23
 
 --S 24 of 127
---R)d op ncols
+)d op ncols
 --R 
 --R
 --RThere are 2 exposed functions called ncols :
@@ -1250,7 +1340,7 @@
 --E 24
 
 --S 25 of 127
---R)d op inverseIntegralMatrixAtInfinity
+)d op inverseIntegralMatrixAtInfinity
 --R 
 --R
 --RThere is one exposed function called inverseIntegralMatrixAtInfinity :
@@ -1268,7 +1358,7 @@
 --E 25
 
 --S 26 of 127
---R)d op generalizedContinuumHypothesisAssumed
+)d op generalizedContinuumHypothesisAssumed
 --R 
 --R
 --RThere is one exposed function called generalizedContinuumHypothesisAssumed :
@@ -1284,7 +1374,7 @@
 --E 26
 
 --S 27 of 127
---R)d op cyclic?
+)d op cyclic?
 --R 
 --R
 --RThere are 2 exposed functions called cyclic? :
@@ -1302,7 +1392,7 @@
 --E 27
 
 --S 28 of 127
---R)d op nilFactor
+)d op nilFactor
 --R 
 --R
 --RThere is one exposed function called nilFactor :
@@ -1317,7 +1407,7 @@
 --E 28
 
 --S 29 of 127
---R)d op quote
+)d op quote
 --R 
 --R
 --RThere is one exposed function called quote :
@@ -1336,7 +1426,7 @@
 --E 29
 
 --S 30 of 127
---R)d op balancedBinaryTree
+)d op balancedBinaryTree
 --R 
 --R
 --RThere is one exposed function called balancedBinaryTree :
@@ -1350,7 +1440,7 @@
 --E 30
 
 --S 31 of 127
---R)d op integralBasisAtInfinity
+)d op integralBasisAtInfinity
 --R 
 --R
 --RThere is one exposed function called integralBasisAtInfinity :
@@ -1368,7 +1458,7 @@
 --E 31
 
 --S 32 of 127
---R)d op branchPointAtInfinity?
+)d op branchPointAtInfinity?
 --R 
 --R
 --RThere is one exposed function called branchPointAtInfinity? :
@@ -1388,7 +1478,7 @@
 --E 32
 
 --S 33 of 127
---R)d op transpose
+)d op transpose
 --R 
 --R
 --RThere are 4 exposed functions called transpose :
@@ -1425,13 +1515,18 @@
 --R
 --RExamples of transpose from MatrixCategory
 --R
+--Rm:=matrix [[j**i for i in 0..4] for j in 1..5] 
+--Rtranspose m
+--R
+--Rtranspose([1,2,3])@Matrix(INT)
+--R
 --R
 --RExamples of transpose from SquareMatrix
 --R
 --E 33
 
 --S 34 of 127
---R)d op setrest!
+)d op setrest!
 --R 
 --R
 --RThere are 2 exposed functions called setrest! :
@@ -1454,10 +1549,10 @@
 --E 34
 
 --S 35 of 127
---R)d op **
+)d op **
 --R 
 --R
---RThere are 20 exposed functions called ** :
+--RThere are 21 exposed functions called ** :
 --R   [1] (CardinalNumber,CardinalNumber) -> CardinalNumber from 
 --R            CardinalNumber
 --R   [2] (DoubleFloat,DoubleFloat) -> DoubleFloat from DoubleFloat
@@ -1490,16 +1585,21 @@
 --R   [14] (D,PositiveInteger) -> D from D if D has MONAD
 --R   [15] (D,NonNegativeInteger) -> D from D if D has MONADWU
 --R   [16] (D,NonNegativeInteger) -> D from D if D has MONOID
---R   [17] (D,Fraction Integer) -> D from D if D has RADCAT
---R   [18] (D,PositiveInteger) -> D from D if D has SGROUP
---R   [19] (D,Integer) -> D from D
+--R   [17] (MyExpression(D1,D2),MyExpression(D1,D2)) -> MyExpression(D1,D2
+--R            )
+--R            from MyExpression(D1,D2)
+--R            if D1: SYMBOL and D2 has Join(Ring,OrderedSet,
+--R            IntegralDomain)
+--R   [18] (D,Fraction Integer) -> D from D if D has RADCAT
+--R   [19] (D,PositiveInteger) -> D from D if D has SGROUP
+--R   [20] (D,Integer) -> D from D
 --R            if D has SMATCAT(D2,D3,D4,D5) and D3 has RING and D4 has 
 --R            DIRPCAT(D2,D3) and D5 has DIRPCAT(D2,D3) and D3 has FIELD
 --R         
---R   [20] (D,D1) -> D from D
+--R   [21] (D,D1) -> D from D
 --R            if D has UTSCAT D1 and D1 has RING and D1 has FIELD
 --R
---RThere are 19 unexposed functions called ** :
+--RThere are 18 unexposed functions called ** :
 --R   [1] (D1,Fraction Integer) -> D1 from AlgebraicFunction(D3,D1)
 --R            if D3 has RETRACT INT and D3 has Join(OrderedSet,
 --R            IntegralDomain) and D1 has FS D3
@@ -1527,26 +1627,21 @@
 --R   [9] (InputForm,NonNegativeInteger) -> InputForm from InputForm
 --R   [10] (Matrix D3,NonNegativeInteger) -> Matrix D3
 --R            from StorageEfficientMatrixOperations D3 if D3 has RING
---R   [11] (MyExpression(D1,D2),MyExpression(D1,D2)) -> MyExpression(D1,D2
---R            )
---R            from MyExpression(D1,D2)
---R            if D1: SYMBOL and D2 has Join(Ring,OrderedSet,
---R            IntegralDomain)
---R   [12] (D1,NonNegativeInteger) -> OrderedFreeMonoid D1
+--R   [11] (D1,NonNegativeInteger) -> OrderedFreeMonoid D1
 --R            from OrderedFreeMonoid D1 if D1 has ORDSET
---R   [13] (Operator D2,Integer) -> Operator D2 from Operator D2 if D2 has
+--R   [12] (Operator D2,Integer) -> Operator D2 from Operator D2 if D2 has
 --R            RING
---R   [14] (BasicOperator,Integer) -> Operator D3 from Operator D3 if D3 
+--R   [13] (BasicOperator,Integer) -> Operator D3 from Operator D3 if D3 
 --R            has RING
---R   [15] (OutputForm,OutputForm) -> OutputForm from OutputForm
---R   [16] (Pattern D1,Pattern D1) -> Pattern D1 from Pattern D1 if D1 has
+--R   [14] (OutputForm,OutputForm) -> OutputForm from OutputForm
+--R   [15] (Pattern D1,Pattern D1) -> Pattern D1 from Pattern D1 if D1 has
 --R            SETCAT
---R   [17] (Pattern D2,NonNegativeInteger) -> Pattern D2 from Pattern D2
+--R   [16] (Pattern D2,NonNegativeInteger) -> Pattern D2 from Pattern D2
 --R            if D2 has SETCAT
---R   [18] (Stream D2,Stream D2) -> Stream D2
+--R   [17] (Stream D2,Stream D2) -> Stream D2
 --R            from StreamTranscendentalFunctionsNonCommutative D2
 --R            if D2 has ALGEBRA FRAC INT
---R   [19] (Stream D2,Stream D2) -> Stream D2
+--R   [18] (Stream D2,Stream D2) -> Stream D2
 --R            from StreamTranscendentalFunctions D2 if D2 has ALGEBRA 
 --R            FRAC INT
 --R
@@ -1610,6 +1705,11 @@
 --R
 --RExamples of ** from MatrixCategory
 --R
+--R(matrix [[j**i for i in 0..4] for j in 1..5]) ** 2
+--R
+--Rm:=matrix [[j**i for i in 0..4] for j in 1..5] 
+--Rm**3
+--R
 --R
 --RExamples of ** from StorageEfficientMatrixOperations
 --R
@@ -1661,7 +1761,7 @@
 --E 35
 
 --S 36 of 127
---R)d op plot
+)d op plot
 --R 
 --R
 --RThere are 12 unexposed functions called plot :
@@ -1713,7 +1813,7 @@
 --E 36
 
 --S 37 of 127
---R)d op factorList
+)d op factorList
 --R 
 --R
 --RThere is one exposed function called factorList :
@@ -1739,7 +1839,7 @@
 --E 37
 
 --S 38 of 127
---R)d op physicalLength
+)d op physicalLength
 --R 
 --R
 --RThere is one exposed function called physicalLength :
@@ -1763,7 +1863,7 @@
 --E 38
 
 --S 39 of 127
---R)d op absolutelyIrreducible?
+)d op absolutelyIrreducible?
 --R 
 --R
 --RThere is one exposed function called absolutelyIrreducible? :
@@ -1794,7 +1894,7 @@
 --E 39
 
 --S 40 of 127
---R)d op repeating?
+)d op repeating?
 --R 
 --R
 --RThere is one exposed function called repeating? :
@@ -1810,7 +1910,7 @@
 --E 40
 
 --S 41 of 127
---R)d op lazy?
+)d op lazy?
 --R 
 --R
 --RThere is one exposed function called lazy? :
@@ -1824,7 +1924,7 @@
 --E 41
 
 --S 42 of 127
---R)d op ord
+)d op ord
 --R 
 --R
 --RThere is one exposed function called ord :
@@ -1838,7 +1938,7 @@
 --E 42
 
 --S 43 of 127
---R)d op setColumn!
+)d op setColumn!
 --R 
 --R
 --RThere is one exposed function called setColumn! :
@@ -1857,7 +1957,7 @@
 --E 43
 
 --S 44 of 127
---R)d op lowerCase?
+)d op lowerCase?
 --R 
 --R
 --RThere is one exposed function called lowerCase? :
@@ -1871,7 +1971,7 @@
 --E 44
 
 --S 45 of 127
---R)d op physicalLength!
+)d op physicalLength!
 --R 
 --R
 --RThere is one exposed function called physicalLength! :
@@ -1897,7 +1997,7 @@
 --E 45
 
 --S 46 of 127
---R)d op countable?
+)d op countable?
 --R 
 --R
 --RThere is one exposed function called countable? :
@@ -1915,7 +2015,7 @@
 --E 46
 
 --S 47 of 127
---R)d op extend
+)d op extend
 --R 
 --R
 --RThere are 11 exposed functions called extend :
@@ -1976,14 +2076,18 @@
 --E 47
 
 --S 48 of 127
---R)d op length
+)d op length
 --R 
 --R
---RThere are 3 exposed functions called length :
---R   [1] D -> D from D if D has INS
---R   [2] D -> NonNegativeInteger from D if D has QUAGG D2 and D2 has TYPE
+--RThere are 5 exposed functions called length :
+--R   [1] Dequeue D2 -> NonNegativeInteger from Dequeue D2 if D2 has 
+--R            SETCAT
+--R   [2] D -> D from D if D has INS
+--R   [3] D -> NonNegativeInteger from D if D has QUAGG D2 and D2 has TYPE
 --R            
---R   [3] D -> D1 from D
+--R   [4] Queue D2 -> NonNegativeInteger from Queue D2 if D2 has SETCAT
+--R         
+--R   [5] D -> D1 from D
 --R            if D has VECTCAT D1 and D1 has TYPE and D1 has RADCAT and 
 --R            D1 has RING
 --R
@@ -2003,6 +2107,12 @@
 --R         
 --R   [6] Tuple D2 -> NonNegativeInteger from Tuple D2 if D2 has TYPE
 --R
+--RExamples of length from Dequeue
+--R
+--Ra:Dequeue INT:= dequeue [1,2,3,4,5] 
+--Rlength a
+--R
+--R
 --RExamples of length from GaloisGroupFactorizationUtilities
 --R
 --R
@@ -2024,6 +2134,12 @@
 --RExamples of length from QueueAggregate
 --R
 --R
+--RExamples of length from Queue
+--R
+--Ra:Queue INT:= queue [1,2,3,4,5] 
+--Rlength a
+--R
+--R
 --RExamples of length from Tuple
 --R
 --Rt1:PrimitiveArray(Integer):= [i for i in 1..10] 
@@ -2036,7 +2152,7 @@
 --E 48
 
 --S 49 of 127
---R)d op viewPosDefault
+)d op viewPosDefault
 --R 
 --R
 --RThere are 2 exposed functions called viewPosDefault :
@@ -2055,7 +2171,7 @@
 --E 49
 
 --S 50 of 127
---R)d op groebner
+)d op groebner
 --R 
 --R
 --RThere are 4 exposed functions called groebner :
@@ -2129,7 +2245,7 @@
 --E 50
 
 --S 51 of 127
---R)d op primeFactor
+)d op primeFactor
 --R 
 --R
 --RThere is one exposed function called primeFactor :
@@ -2144,16 +2260,26 @@
 --E 51
 
 --S 52 of 127
---R)d op map!
+)d op map!
 --R 
 --R
---RThere are 2 exposed functions called map! :
+--RThere are 7 exposed functions called map! :
 --R   [1] ((D2 -> D2),D) -> D from D
 --R            if D has ARR2CAT(D2,D3,D4) and D2 has TYPE and D3 has FLAGG
 --R            D2 and D4 has FLAGG D2
---R   [2] ((D2 -> D2),D) -> D from D
+--R   [2] ((D2 -> D2),ArrayStack D2) -> ArrayStack D2 from ArrayStack D2
+--R            if $ has shallowlyMutable and D2 has SETCAT
+--R   [3] ((D2 -> D2),Dequeue D2) -> Dequeue D2 from Dequeue D2
+--R            if $ has shallowlyMutable and D2 has SETCAT
+--R   [4] ((D2 -> D2),Heap D2) -> Heap D2 from Heap D2
+--R            if $ has shallowlyMutable and D2 has ORDSET
+--R   [5] ((D2 -> D2),D) -> D from D
 --R            if D has shallowlyMutable and D has HOAGG D2 and D2 has 
 --R            TYPE
+--R   [6] ((D2 -> D2),Queue D2) -> Queue D2 from Queue D2
+--R            if $ has shallowlyMutable and D2 has SETCAT
+--R   [7] ((D2 -> D2),Stack D2) -> Stack D2 from Stack D2
+--R            if $ has shallowlyMutable and D2 has SETCAT
 --R
 --RExamples of map! from TwoDimensionalArrayCategory
 --R
@@ -2161,12 +2287,47 @@
 --Rmap!(-,arr)
 --R
 --R
+--RExamples of map! from ArrayStack
+--R
+--Ra:ArrayStack INT:= arrayStack [1,2,3,4,5] 
+--Rmap!(x+->x+10,a) 
+--Ra
+--R
+--R
+--RExamples of map! from Dequeue
+--R
+--Ra:Dequeue INT:= dequeue [1,2,3,4,5] 
+--Rmap!(x+->x+10,a) 
+--Ra
+--R
+--R
+--RExamples of map! from Heap
+--R
+--Ra:Heap INT:= heap [1,2,3,4,5] 
+--Rmap!(x+->x+10,a) 
+--Ra
+--R
+--R
 --RExamples of map! from HomogeneousAggregate
 --R
+--R
+--RExamples of map! from Queue
+--R
+--Ra:Queue INT:= queue [1,2,3,4,5] 
+--Rmap!(x+->x+10,a) 
+--Ra
+--R
+--R
+--RExamples of map! from Stack
+--R
+--Ra:Stack INT:= stack [1,2,3,4,5] 
+--Rmap!(x+->x+10,a) 
+--Ra
+--R
 --E 52
 
 --S 53 of 127
---R)d op setleaves!
+)d op setleaves!
 --R 
 --R
 --RThere is one exposed function called setleaves! :
@@ -2181,7 +2342,7 @@
 --E 53
 
 --S 54 of 127
---R)d op scan
+)d op scan
 --R 
 --R
 --RThere are 8 exposed functions called scan :
@@ -2252,7 +2413,7 @@
 --E 54
 
 --S 55 of 127
---R)d op alphabetic?
+)d op alphabetic?
 --R 
 --R
 --RThere is one exposed function called alphabetic? :
@@ -2266,7 +2427,7 @@
 --E 55
 
 --S 56 of 127
---R)d op +
+)d op +
 --R 
 --R
 --RThere are 12 exposed functions called + :
@@ -2353,6 +2514,9 @@
 --R
 --RExamples of + from MatrixCategory
 --R
+--Rm:=matrix [[j**i for i in 0..4] for j in 1..5] 
+--Rm+m
+--R
 --R
 --RExamples of + from OutputForm
 --R
@@ -2371,7 +2535,7 @@
 --E 56
 
 --S 57 of 127
---R)d op -
+)d op -
 --R 
 --R
 --RThere are 13 exposed functions called - :
@@ -2449,6 +2613,12 @@
 --R
 --RExamples of - from MatrixCategory
 --R
+--Rm:=matrix [[j**i for i in 0..4] for j in 1..5] 
+--R-m
+--R
+--Rm:=matrix [[j**i for i in 0..4] for j in 1..5] 
+--Rm-m
+--R
 --R
 --RExamples of - from OutputForm
 --R
@@ -2464,10 +2634,10 @@
 --E 57
 
 --S 58 of 127
---R)d op /
+)d op /
 --R 
 --R
---RThere are 13 exposed functions called / :
+--RThere are 14 exposed functions called / :
 --R   [1] (D,D1) -> D from D
 --R            if D has AMR(D1,D2) and D1 has RING and D2 has OAMON and D1
 --R            has FIELD
@@ -2491,14 +2661,19 @@
 --R   [10] (D,D1) -> D from D
 --R            if D has MATCAT(D1,D2,D3) and D1 has RING and D2 has FLAGG 
 --R            D1 and D3 has FLAGG D1 and D1 has FIELD
---R   [11] (D1,D1) -> D from D if D has QFCAT D1 and D1 has INTDOM
---R   [12] (D,D1) -> D from D
+--R   [11] (MyExpression(D1,D2),MyExpression(D1,D2)) -> MyExpression(D1,D2
+--R            )
+--R            from MyExpression(D1,D2)
+--R            if D1: SYMBOL and D2 has Join(Ring,OrderedSet,
+--R            IntegralDomain)
+--R   [12] (D1,D1) -> D from D if D has QFCAT D1 and D1 has INTDOM
+--R   [13] (D,D1) -> D from D
 --R            if D has RMATCAT(D2,D3,D1,D4,D5) and D1 has RING and D4 has
 --R            DIRPCAT(D3,D1) and D5 has DIRPCAT(D2,D1) and D1 has FIELD
 --R         
---R   [13] (D,D1) -> D from D if D has VSPACE D1 and D1 has FIELD
+--R   [14] (D,D1) -> D from D if D has VSPACE D1 and D1 has FIELD
 --R
---RThere are 13 unexposed functions called / :
+--RThere are 12 unexposed functions called / :
 --R   [1] (Vector D2,Vector D2) -> Vector D2
 --R            from InnerNormalBasisFieldFunctions D2 if D2 has FFIELDC
 --R         
@@ -2517,30 +2692,26 @@
 --R            D3,D1)
 --R            if D3 has COMRING and D2 has MODULE D3 and D1 has 
 --R            SubsetCategory(Monoid,D3)
---R   [7] (MyExpression(D1,D2),MyExpression(D1,D2)) -> MyExpression(D1,D2)
---R            from MyExpression(D1,D2)
---R            if D1: SYMBOL and D2 has Join(Ring,OrderedSet,
---R            IntegralDomain)
---R   [8] (OutputForm,OutputForm) -> OutputForm from OutputForm
---R   [9] (OrdinaryWeightedPolynomials(D1,D2,D3,D4),
+--R   [7] (OutputForm,OutputForm) -> OutputForm from OutputForm
+--R   [8] (OrdinaryWeightedPolynomials(D1,D2,D3,D4),
 --R            OrdinaryWeightedPolynomials(D1,D2,D3,D4)) -> Union(
 --R            OrdinaryWeightedPolynomials(D1,D2,D3,D4),"failed")
 --R            from OrdinaryWeightedPolynomials(D1,D2,D3,D4)
 --R            if D1 has FIELD and D1 has RING and D2: LIST SYMBOL and D3
 --R            : LIST NNI and D4: NNI
---R   [10] (Pattern D1,Pattern D1) -> Pattern D1 from Pattern D1 if D1 has
+--R   [9] (Pattern D1,Pattern D1) -> Pattern D1 from Pattern D1 if D1 has 
 --R            SETCAT
---R   [11] (Stream D2,Stream D2) -> Stream D2 from 
+--R   [10] (Stream D2,Stream D2) -> Stream D2 from 
 --R            StreamTaylorSeriesOperations D2
 --R            if D2 has RING
---R   [12] (WeightedPolynomials(D1,D2,D3,D4,D5,D6,D7),WeightedPolynomials(
+--R   [11] (WeightedPolynomials(D1,D2,D3,D4,D5,D6,D7),WeightedPolynomials(
 --R            D1,D2,D3,D4,D5,D6,D7)) -> Union(WeightedPolynomials(D1,D2,D3,D4,
 --R            D5,D6,D7),"failed")
 --R            from WeightedPolynomials(D1,D2,D3,D4,D5,D6,D7)
 --R            if D1 has FIELD and D1 has RING and D2 has ORDSET and D3 
 --R            has OAMONS and D5: LIST D2 and D4 has POLYCAT(D1,D3,D2) and
 --R            D6: LIST NNI and D7: NNI
---R   [13] (XPolynomialRing(D1,D2),D1) -> XPolynomialRing(D1,D2)
+--R   [12] (XPolynomialRing(D1,D2),D1) -> XPolynomialRing(D1,D2)
 --R            from XPolynomialRing(D1,D2)
 --R            if D1 has FIELD and D1 has RING and D2 has ORDMON
 --R
@@ -2590,6 +2761,9 @@
 --R
 --RExamples of / from MatrixCategory
 --R
+--Rm:=matrix [[2**i for i in 2..4] for j in 1..5] 
+--Rm/4
+--R
 --R
 --RExamples of / from MyExpression
 --R
@@ -2623,7 +2797,7 @@
 --E 58
 
 --S 59 of 127
---R)d op integralBasis
+)d op integralBasis
 --R 
 --R
 --RThere is one exposed function called integralBasis :
@@ -2672,7 +2846,7 @@
 --E 59
 
 --S 60 of 127
---R)d op split
+)d op split
 --R 
 --R
 --RThere are 8 exposed functions called split :
@@ -2731,7 +2905,7 @@
 --E 60
 
 --S 61 of 127
---R)d op qelt
+)d op qelt
 --R 
 --R
 --RThere are 3 exposed functions called qelt :
@@ -2759,7 +2933,7 @@
 --E 61
 
 --S 62 of 127
---R)d op mapUp!
+)d op mapUp!
 --R 
 --R
 --RThere are 2 exposed functions called mapUp! :
@@ -2788,7 +2962,7 @@
 --E 62
 
 --S 63 of 127
---R)d op reindex
+)d op reindex
 --R 
 --R
 --RThere is one exposed function called reindex :
@@ -2807,7 +2981,7 @@
 --E 63
 
 --S 64 of 127
---R)d op mapDown!
+)d op mapDown!
 --R 
 --R
 --RThere are 2 exposed functions called mapDown! :
@@ -2837,7 +3011,7 @@
 --E 64
 
 --S 65 of 127
---R)d op nrows
+)d op nrows
 --R 
 --R
 --RThere are 2 exposed functions called nrows :
@@ -2859,7 +3033,7 @@
 --E 65
 
 --S 66 of 127
---R)d op row
+)d op row
 --R 
 --R
 --RThere are 2 exposed functions called row :
@@ -2881,7 +3055,7 @@
 --E 66
 
 --S 67 of 127
---R)d op ravel
+)d op ravel
 --R 
 --R
 --RThere is one exposed function called ravel :
@@ -2898,7 +3072,7 @@
 --E 67
 
 --S 68 of 127
---R)d op inverseIntegralMatrix
+)d op inverseIntegralMatrix
 --R 
 --R
 --RThere is one exposed function called inverseIntegralMatrix :
@@ -2916,10 +3090,10 @@
 --E 68
 
 --S 69 of 127
---R)d op coerce
+)d op coerce
 --R 
 --R
---RThere are 169 exposed functions called coerce :
+--RThere are 180 exposed functions called coerce :
 --R   [1] D1 -> D from D if D has ALGEBRA D1 and D1 has COMRING
 --R   [2] Vector D2 -> AlgebraGivenByStructuralConstants(D2,D3,D4,D5)
 --R            from AlgebraGivenByStructuralConstants(D2,D3,D4,D5)
@@ -2994,330 +3168,358 @@
 --R   [25] FortranExpression([construct,QUOTEX],[construct,QUOTEY],
 --R            MachineFloat) -> Asp9 D2
 --R            from Asp9 D2 if D2: SYMBOL
---R   [26] BinaryExpansion -> RadixExpansion 2 from BinaryExpansion
---R   [27] BinaryExpansion -> Fraction Integer from BinaryExpansion
---R   [28] List CartesianTensor(D2,D3,D4) -> CartesianTensor(D2,D3,D4)
+--R   [26] ArrayStack D2 -> OutputForm from ArrayStack D2
+--R            if D2 has SETCAT and D2 has SETCAT
+--R   [27] BinaryExpansion -> RadixExpansion 2 from BinaryExpansion
+--R   [28] BinaryExpansion -> Fraction Integer from BinaryExpansion
+--R   [29] List CartesianTensor(D2,D3,D4) -> CartesianTensor(D2,D3,D4)
 --R            from CartesianTensor(D2,D3,D4)
 --R            if D2: INT and D3: NNI and D4 has COMRING
---R   [29] List D4 -> CartesianTensor(D2,D3,D4) from CartesianTensor(D2,D3
+--R   [30] List D4 -> CartesianTensor(D2,D3,D4) from CartesianTensor(D2,D3
 --R            ,D4)
 --R            if D4 has COMRING and D2: INT and D3: NNI
---R   [30] SquareMatrix(D3,D4) -> CartesianTensor(D2,D3,D4)
+--R   [31] SquareMatrix(D3,D4) -> CartesianTensor(D2,D3,D4)
 --R            from CartesianTensor(D2,D3,D4)
 --R            if D3: NNI and D4 has COMRING and D2: INT
---R   [31] DirectProduct(D3,D4) -> CartesianTensor(D2,D3,D4)
+--R   [32] DirectProduct(D3,D4) -> CartesianTensor(D2,D3,D4)
 --R            from CartesianTensor(D2,D3,D4)
 --R            if D3: NNI and D4 has COMRING and D2: INT
---R   [32] List D2 -> Database D2 from Database D2
+--R   [33] List D2 -> Database D2 from Database D2
 --R            if D2 has OrderedSet with 
 --R               ?.? : (%,Symbol) -> String
 --R               display : % -> Void
 --R               fullDisplay : % -> Void
---R   [33] DecimalExpansion -> RadixExpansion 10 from DecimalExpansion
---R   [34] DecimalExpansion -> Fraction Integer from DecimalExpansion
---R   [35] DataList D2 -> List D2 from DataList D2 if D2 has ORDSET
---R   [36] List D2 -> DataList D2 from DataList D2 if D2 has ORDSET
---R   [37] SegmentBinding Expression D3 -> SegmentBinding Float
+--R   [34] DecimalExpansion -> RadixExpansion 10 from DecimalExpansion
+--R   [35] DecimalExpansion -> Fraction Integer from DecimalExpansion
+--R   [36] Dequeue D2 -> OutputForm from Dequeue D2
+--R            if D2 has SETCAT and D2 has SETCAT
+--R   [37] DataList D2 -> List D2 from DataList D2 if D2 has ORDSET
+--R   [38] List D2 -> DataList D2 from DataList D2 if D2 has ORDSET
+--R   [39] SegmentBinding Expression D3 -> SegmentBinding Float
 --R            from DrawNumericHack D3
 --R            if D3 has Join(OrderedSet,IntegralDomain,ConvertibleTo 
 --R            Float)
---R   [38] D1 -> D from D if D has DVARCAT D1 and D1 has ORDSET
---R   [39] FortranCode -> OutputForm from FortranCode
---R   [40] FortranExpression(D2,D3,D4) -> Expression D4
+--R   [40] D1 -> D from D if D has DVARCAT D1 and D1 has ORDSET
+--R   [41] FortranCode -> OutputForm from FortranCode
+--R   [42] FortranExpression(D2,D3,D4) -> Expression D4
 --R            from FortranExpression(D2,D3,D4)
 --R            if D2: LIST SYMBOL and D3: LIST SYMBOL and D4 has FMTC
---R   [41] D2 -> D1 from FiniteFieldHomomorphisms(D2,D3,D1)
+--R   [43] D2 -> D1 from FiniteFieldHomomorphisms(D2,D3,D1)
 --R            if D3 has FFIELDC and D1 has FAXF D3 and D2 has FAXF D3
---R   [42] D2 -> D1 from FiniteFieldHomomorphisms(D1,D3,D2)
+--R   [44] D2 -> D1 from FiniteFieldHomomorphisms(D1,D3,D2)
 --R            if D3 has FFIELDC and D1 has FAXF D3 and D2 has FAXF D3
---R   [43] D -> XRecursivePolynomial(D2,D3) from D
+--R   [45] D -> XRecursivePolynomial(D2,D3) from D
 --R            if D has FLALG(D2,D3) and D2 has ORDSET and D3 has COMRING
 --R            
---R   [44] D -> XDistributedPolynomial(D2,D3) from D
+--R   [46] D -> XDistributedPolynomial(D2,D3) from D
 --R            if D has FLALG(D2,D3) and D2 has ORDSET and D3 has COMRING
 --R            
---R   [45] D1 -> D from D
+--R   [47] D1 -> D from D
 --R            if D has FLALG(D1,D2) and D1 has ORDSET and D2 has COMRING
 --R            
---R   [46] Record(localSymbols: SymbolTable,code: List FortranCode) -> D 
+--R   [48] Record(localSymbols: SymbolTable,code: List FortranCode) -> D 
 --R            from D
 --R            if D has FMC
---R   [47] FortranCode -> D from D if D has FMC
---R   [48] List FortranCode -> D from D if D has FMC
---R   [49] Matrix MachineFloat -> D from D if D has FMC
---R   [50] Record(localSymbols: SymbolTable,code: List FortranCode) -> D 
+--R   [49] FortranCode -> D from D if D has FMC
+--R   [50] List FortranCode -> D from D if D has FMC
+--R   [51] Matrix MachineFloat -> D from D if D has FMC
+--R   [52] Record(localSymbols: SymbolTable,code: List FortranCode) -> D 
 --R            from D
 --R            if D has FMFUN
---R   [51] FortranCode -> D from D if D has FMFUN
---R   [52] List FortranCode -> D from D if D has FMFUN
---R   [53] D -> String from D if D has FNCAT
---R   [54] String -> D from D if D has FNCAT
---R   [55] D2 -> ScriptFormulaFormat from ScriptFormulaFormat1 D2 if D2 
+--R   [53] FortranCode -> D from D if D has FMFUN
+--R   [54] List FortranCode -> D from D if D has FMFUN
+--R   [55] D -> String from D if D has FNCAT
+--R   [56] String -> D from D if D has FNCAT
+--R   [57] D2 -> ScriptFormulaFormat from ScriptFormulaFormat1 D2 if D2 
 --R            has SETCAT
---R   [56] OutputForm -> ScriptFormulaFormat from ScriptFormulaFormat
---R   [57] Record(localSymbols: SymbolTable,code: List FortranCode) -> D 
+--R   [58] OutputForm -> ScriptFormulaFormat from ScriptFormulaFormat
+--R   [59] Record(localSymbols: SymbolTable,code: List FortranCode) -> D 
 --R            from D
 --R            if D has FORTFN
---R   [58] FortranCode -> D from D if D has FORTFN
---R   [59] List FortranCode -> D from D if D has FORTFN
---R   [60] Equation Expression Complex Float -> FortranProgram(D2,D3,D4,D5
+--R   [60] FortranCode -> D from D if D has FORTFN
+--R   [61] List FortranCode -> D from D if D has FORTFN
+--R   [62] Equation Expression Complex Float -> FortranProgram(D2,D3,D4,D5
 --R            )
 --R            from FortranProgram(D2,D3,D4,D5)
 --R            if D2: SYMBOL and D3: Union(fst: FortranScalarType,void: 
 --R            void) and D4: LIST SYMBOL and D5: SYMTAB
---R   [61] Equation Expression Float -> FortranProgram(D2,D3,D4,D5)
+--R   [63] Equation Expression Float -> FortranProgram(D2,D3,D4,D5)
 --R            from FortranProgram(D2,D3,D4,D5)
 --R            if D2: SYMBOL and D3: Union(fst: FortranScalarType,void: 
 --R            void) and D4: LIST SYMBOL and D5: SYMTAB
---R   [62] Equation Expression Integer -> FortranProgram(D2,D3,D4,D5)
+--R   [64] Equation Expression Integer -> FortranProgram(D2,D3,D4,D5)
 --R            from FortranProgram(D2,D3,D4,D5)
 --R            if D2: SYMBOL and D3: Union(fst: FortranScalarType,void: 
 --R            void) and D4: LIST SYMBOL and D5: SYMTAB
---R   [63] Expression Complex Float -> FortranProgram(D2,D3,D4,D5)
+--R   [65] Expression Complex Float -> FortranProgram(D2,D3,D4,D5)
 --R            from FortranProgram(D2,D3,D4,D5)
 --R            if D2: SYMBOL and D3: Union(fst: FortranScalarType,void: 
 --R            void) and D4: LIST SYMBOL and D5: SYMTAB
---R   [64] Expression Float -> FortranProgram(D2,D3,D4,D5)
+--R   [66] Expression Float -> FortranProgram(D2,D3,D4,D5)
 --R            from FortranProgram(D2,D3,D4,D5)
 --R            if D2: SYMBOL and D3: Union(fst: FortranScalarType,void: 
 --R            void) and D4: LIST SYMBOL and D5: SYMTAB
---R   [65] Expression Integer -> FortranProgram(D2,D3,D4,D5)
+--R   [67] Expression Integer -> FortranProgram(D2,D3,D4,D5)
 --R            from FortranProgram(D2,D3,D4,D5)
 --R            if D2: SYMBOL and D3: Union(fst: FortranScalarType,void: 
 --R            void) and D4: LIST SYMBOL and D5: SYMTAB
---R   [66] Equation Expression MachineComplex -> FortranProgram(D2,D3,D4,
+--R   [68] Equation Expression MachineComplex -> FortranProgram(D2,D3,D4,
 --R            D5)
 --R            from FortranProgram(D2,D3,D4,D5)
 --R            if D2: SYMBOL and D3: Union(fst: FortranScalarType,void: 
 --R            void) and D4: LIST SYMBOL and D5: SYMTAB
---R   [67] Equation Expression MachineFloat -> FortranProgram(D2,D3,D4,D5)
+--R   [69] Equation Expression MachineFloat -> FortranProgram(D2,D3,D4,D5)
 --R            from FortranProgram(D2,D3,D4,D5)
 --R            if D2: SYMBOL and D3: Union(fst: FortranScalarType,void: 
 --R            void) and D4: LIST SYMBOL and D5: SYMTAB
---R   [68] Equation Expression MachineInteger -> FortranProgram(D2,D3,D4,
+--R   [70] Equation Expression MachineInteger -> FortranProgram(D2,D3,D4,
 --R            D5)
 --R            from FortranProgram(D2,D3,D4,D5)
 --R            if D2: SYMBOL and D3: Union(fst: FortranScalarType,void: 
 --R            void) and D4: LIST SYMBOL and D5: SYMTAB
---R   [69] Expression MachineComplex -> FortranProgram(D2,D3,D4,D5)
+--R   [71] Expression MachineComplex -> FortranProgram(D2,D3,D4,D5)
 --R            from FortranProgram(D2,D3,D4,D5)
 --R            if D2: SYMBOL and D3: Union(fst: FortranScalarType,void: 
 --R            void) and D4: LIST SYMBOL and D5: SYMTAB
---R   [70] Expression MachineFloat -> FortranProgram(D2,D3,D4,D5)
+--R   [72] Expression MachineFloat -> FortranProgram(D2,D3,D4,D5)
 --R            from FortranProgram(D2,D3,D4,D5)
 --R            if D2: SYMBOL and D3: Union(fst: FortranScalarType,void: 
 --R            void) and D4: LIST SYMBOL and D5: SYMTAB
---R   [71] Expression MachineInteger -> FortranProgram(D2,D3,D4,D5)
+--R   [73] Expression MachineInteger -> FortranProgram(D2,D3,D4,D5)
 --R            from FortranProgram(D2,D3,D4,D5)
 --R            if D2: SYMBOL and D3: Union(fst: FortranScalarType,void: 
 --R            void) and D4: LIST SYMBOL and D5: SYMTAB
---R   [72] Record(localSymbols: SymbolTable,code: List FortranCode) -> 
+--R   [74] Record(localSymbols: SymbolTable,code: List FortranCode) -> 
 --R            FortranProgram(D2,D3,D4,D5)
 --R            from FortranProgram(D2,D3,D4,D5)
 --R            if D2: SYMBOL and D3: Union(fst: FortranScalarType,void: 
 --R            void) and D4: LIST SYMBOL and D5: SYMTAB
---R   [73] List FortranCode -> FortranProgram(D2,D3,D4,D5)
+--R   [75] List FortranCode -> FortranProgram(D2,D3,D4,D5)
 --R            from FortranProgram(D2,D3,D4,D5)
 --R            if D2: SYMBOL and D3: Union(fst: FortranScalarType,void: 
 --R            void) and D4: LIST SYMBOL and D5: SYMTAB
---R   [74] FortranCode -> FortranProgram(D2,D3,D4,D5)
+--R   [76] FortranCode -> FortranProgram(D2,D3,D4,D5)
 --R            from FortranProgram(D2,D3,D4,D5)
 --R            if D2: SYMBOL and D3: Union(fst: FortranScalarType,void: 
 --R            void) and D4: LIST SYMBOL and D5: SYMTAB
---R   [75] FourierComponent D3 -> FourierSeries(D2,D3) from FourierSeries(
+--R   [77] FourierComponent D3 -> FourierSeries(D2,D3) from FourierSeries(
 --R            D2,D3)
 --R            if D3 has Join(OrderedSet,AbelianGroup) and D2 has Join(
 --R            CommutativeRing,Algebra Fraction Integer)
---R   [76] D1 -> FourierSeries(D1,D2) from FourierSeries(D1,D2)
+--R   [78] D1 -> FourierSeries(D1,D2) from FourierSeries(D1,D2)
 --R            if D1 has Join(CommutativeRing,Algebra Fraction Integer) 
 --R            and D2 has Join(OrderedSet,AbelianGroup)
---R   [77] Fraction Polynomial Fraction D2 -> D from D
+--R   [79] Fraction Polynomial Fraction D2 -> D from D
 --R            if D2 has INTDOM and D2 has ORDSET and D has FS D2
---R   [78] Polynomial Fraction D2 -> D from D
+--R   [80] Polynomial Fraction D2 -> D from D
 --R            if D2 has INTDOM and D2 has ORDSET and D has FS D2
---R   [79] Fraction D2 -> D from D
+--R   [81] Fraction D2 -> D from D
 --R            if D2 has INTDOM and D2 has ORDSET and D has FS D2
---R   [80] SparseMultivariatePolynomial(D2,Kernel D) -> D from D
+--R   [82] SparseMultivariatePolynomial(D2,Kernel D) -> D from D
 --R            if D2 has RING and D2 has ORDSET and D has FS D2
---R   [81] FortranScalarType -> SExpression from FortranScalarType
---R   [82] FortranScalarType -> Symbol from FortranScalarType
---R   [83] Symbol -> FortranScalarType from FortranScalarType
---R   [84] String -> FortranScalarType from FortranScalarType
---R   [85] FortranScalarType -> FortranType from FortranType
---R   [86] FortranType -> OutputForm from FortranType
---R   [87] Record(localSymbols: SymbolTable,code: List FortranCode) -> D 
+--R   [83] FortranScalarType -> SExpression from FortranScalarType
+--R   [84] FortranScalarType -> Symbol from FortranScalarType
+--R   [85] Symbol -> FortranScalarType from FortranScalarType
+--R   [86] String -> FortranScalarType from FortranScalarType
+--R   [87] FortranScalarType -> FortranType from FortranType
+--R   [88] FortranType -> OutputForm from FortranType
+--R   [89] Record(localSymbols: SymbolTable,code: List FortranCode) -> D 
 --R            from D
 --R            if D has FVC
---R   [88] FortranCode -> D from D if D has FVC
---R   [89] List FortranCode -> D from D if D has FVC
---R   [90] Vector MachineFloat -> D from D if D has FVC
---R   [91] Record(localSymbols: SymbolTable,code: List FortranCode) -> D 
+--R   [90] FortranCode -> D from D if D has FVC
+--R   [91] List FortranCode -> D from D if D has FVC
+--R   [92] Vector MachineFloat -> D from D if D has FVC
+--R   [93] Record(localSymbols: SymbolTable,code: List FortranCode) -> D 
 --R            from D
 --R            if D has FVFUN
---R   [92] FortranCode -> D from D if D has FVFUN
---R   [93] List FortranCode -> D from D if D has FVFUN
---R   [94] UnivariatePuiseuxSeries(D2,D3,D4) -> 
+--R   [94] FortranCode -> D from D if D has FVFUN
+--R   [95] List FortranCode -> D from D if D has FVFUN
+--R   [96] UnivariatePuiseuxSeries(D2,D3,D4) -> 
 --R            GeneralUnivariatePowerSeries(D2,D3,D4)
 --R            from GeneralUnivariatePowerSeries(D2,D3,D4)
 --R            if D2 has RING and D3: SYMBOL and D4: D2
---R   [95] Variable D3 -> GeneralUnivariatePowerSeries(D2,D3,D4)
+--R   [97] Variable D3 -> GeneralUnivariatePowerSeries(D2,D3,D4)
 --R            from GeneralUnivariatePowerSeries(D2,D3,D4)
 --R            if D3: SYMBOL and D2 has RING and D4: D2
---R   [96] HexadecimalExpansion -> RadixExpansion 16 from 
+--R   [98] Heap D2 -> OutputForm from Heap D2
+--R            if D2 has SETCAT and D2 has ORDSET
+--R   [99] HexadecimalExpansion -> RadixExpansion 16 from 
 --R            HexadecimalExpansion
---R   [97] HexadecimalExpansion -> Fraction Integer from 
+--R   [100] HexadecimalExpansion -> Fraction Integer from 
 --R            HexadecimalExpansion
---R   [98] String -> IndexCard from IndexCard
---R   [99] List D5 -> PolynomialIdeals(D2,D3,D4,D5)
+--R   [101] String -> IndexCard from IndexCard
+--R   [102] List D5 -> PolynomialIdeals(D2,D3,D4,D5)
 --R            from PolynomialIdeals(D2,D3,D4,D5)
 --R            if D5 has POLYCAT(D2,D3,D4) and D2 has FIELD and D3 has 
 --R            OAMONS and D4 has ORDSET
---R   [100] D1 -> AssociatedJordanAlgebra(D2,D1)
+--R   [103] D1 -> AssociatedJordanAlgebra(D2,D1)
 --R            from AssociatedJordanAlgebra(D2,D1)
 --R            if D2 has COMRING and D1 has NAALG D2
---R   [101] D -> D1 from D if D has KOERCE D1 and D1 has TYPE
---R   [102] D1 -> D from D if D has LALG D1 and D1 has RING
---R   [103] D1 -> AssociatedLieAlgebra(D2,D1) from AssociatedLieAlgebra(D2
+--R   [104] D -> D1 from D if D has KOERCE D1 and D1 has TYPE
+--R   [105] D1 -> D from D if D has LALG D1 and D1 has RING
+--R   [106] D1 -> AssociatedLieAlgebra(D2,D1) from AssociatedLieAlgebra(D2
 --R            ,D1)
 --R            if D2 has COMRING and D1 has NAALG D2
---R   [104] ThreeDimensionalMatrix D2 -> PrimitiveArray PrimitiveArray 
+--R   [107] ThreeDimensionalMatrix D2 -> PrimitiveArray PrimitiveArray 
 --R            PrimitiveArray D2
 --R            from ThreeDimensionalMatrix D2 if D2 has SETCAT
---R   [105] PrimitiveArray PrimitiveArray PrimitiveArray D2 -> 
+--R   [108] PrimitiveArray PrimitiveArray PrimitiveArray D2 -> 
 --R            ThreeDimensionalMatrix D2
 --R            from ThreeDimensionalMatrix D2 if D2 has SETCAT
---R   [106] D2 -> (() -> D2) from MappingPackage1 D2 if D2 has SETCAT
---R   [107] D1 -> D from D
+--R   [109] D2 -> (() -> D2) from MappingPackage1 D2 if D2 has SETCAT
+--R   [110] D1 -> D from D
 --R            if D2 has RING and D has MATCAT(D2,D3,D1) and D3 has FLAGG 
 --R            D2 and D1 has FLAGG D2
---R   [108] MachineComplex -> Complex Float from MachineComplex
---R   [109] Complex MachineInteger -> MachineComplex from MachineComplex
+--R   [111] MachineComplex -> Complex Float from MachineComplex
+--R   [112] Complex MachineInteger -> MachineComplex from MachineComplex
 --R         
---R   [110] Complex MachineFloat -> MachineComplex from MachineComplex
---R   [111] Complex Integer -> MachineComplex from MachineComplex
---R   [112] Complex Float -> MachineComplex from MachineComplex
---R   [113] MachineInteger -> MachineFloat from MachineFloat
---R   [114] MachineFloat -> Float from MachineFloat
---R   [115] Expression Integer -> Expression MachineInteger from 
+--R   [113] Complex MachineFloat -> MachineComplex from MachineComplex
+--R   [114] Complex Integer -> MachineComplex from MachineComplex
+--R   [115] Complex Float -> MachineComplex from MachineComplex
+--R   [116] MachineInteger -> MachineFloat from MachineFloat
+--R   [117] MachineFloat -> Float from MachineFloat
+--R   [118] Expression Integer -> Expression MachineInteger from 
 --R            MachineInteger
---R   [116] OutputForm -> String from MathMLFormat
---R   [117] Integer -> D from D if D has NASRING
---R   [118] Union(nia: Record(var: Symbol,fn: Expression DoubleFloat,range
+--R   [119] OutputForm -> String from MathMLFormat
+--R   [120] Fraction MyUnivariatePolynomial(D2,D3) -> MyExpression(D2,D3)
+--R            from MyExpression(D2,D3)
+--R            if D2: SYMBOL and D3 has Join(Ring,OrderedSet,
+--R            IntegralDomain)
+--R   [121] Polynomial D3 -> MyUnivariatePolynomial(D2,D3)
+--R            from MyUnivariatePolynomial(D2,D3) if D3 has RING and D2: 
+--R            SYMBOL
+--R   [122] Variable D2 -> MyUnivariatePolynomial(D2,D3)
+--R            from MyUnivariatePolynomial(D2,D3) if D2: SYMBOL and D3 has
+--R            RING
+--R   [123] D1 -> MyUnivariatePolynomial(D2,D1) from 
+--R            MyUnivariatePolynomial(D2,D1)
+--R            if D2: SYMBOL and D1 has RING
+--R   [124] Integer -> D from D if D has NASRING
+--R   [125] Union(nia: Record(var: Symbol,fn: Expression DoubleFloat,range
 --R            : Segment OrderedCompletion DoubleFloat,abserr: DoubleFloat,
 --R            relerr: DoubleFloat),mdnia: Record(fn: Expression DoubleFloat,
 --R            range: List Segment OrderedCompletion DoubleFloat,abserr: 
 --R            DoubleFloat,relerr: DoubleFloat)) -> NumericalIntegrationProblem
 --R            from NumericalIntegrationProblem
---R   [119] Record(fn: Expression DoubleFloat,range: List Segment 
+--R   [126] Record(fn: Expression DoubleFloat,range: List Segment 
 --R            OrderedCompletion DoubleFloat,abserr: DoubleFloat,relerr: 
 --R            DoubleFloat) -> NumericalIntegrationProblem
 --R            from NumericalIntegrationProblem
---R   [120] Record(var: Symbol,fn: Expression DoubleFloat,range: Segment 
+--R   [127] Record(var: Symbol,fn: Expression DoubleFloat,range: Segment 
 --R            OrderedCompletion DoubleFloat,abserr: DoubleFloat,relerr: 
 --R            DoubleFloat) -> NumericalIntegrationProblem
 --R            from NumericalIntegrationProblem
---R   [121] NumericalIntegrationProblem -> OutputForm
+--R   [128] NumericalIntegrationProblem -> OutputForm
 --R            from NumericalIntegrationProblem
---R   [122] D2 -> None from NoneFunctions1 D2 if D2 has TYPE
---R   [123] Record(xinit: DoubleFloat,xend: DoubleFloat,fn: Vector 
+--R   [129] D2 -> None from NoneFunctions1 D2 if D2 has TYPE
+--R   [130] Record(xinit: DoubleFloat,xend: DoubleFloat,fn: Vector 
 --R            Expression DoubleFloat,yinit: List DoubleFloat,intvals: List 
 --R            DoubleFloat,g: Expression DoubleFloat,abserr: DoubleFloat,relerr
 --R            : DoubleFloat) -> NumericalODEProblem
 --R            from NumericalODEProblem
---R   [124] NumericalODEProblem -> OutputForm from NumericalODEProblem
---R   [125] OrdinaryDifferentialRing(D2,D1,D3) -> D1
+--R   [131] NumericalODEProblem -> OutputForm from NumericalODEProblem
+--R   [132] OrdinaryDifferentialRing(D2,D1,D3) -> D1
 --R            from OrdinaryDifferentialRing(D2,D1,D3)
 --R            if D1 has PDRING D2 and D2 has SETCAT and D3: D2
---R   [126] D1 -> OrdinaryDifferentialRing(D2,D1,D3)
+--R   [133] D1 -> OrdinaryDifferentialRing(D2,D1,D3)
 --R            from OrdinaryDifferentialRing(D2,D1,D3)
 --R            if D2 has SETCAT and D3: D2 and D1 has PDRING D2
---R   [127] Symbol -> OpenMathErrorKind from OpenMathErrorKind
---R   [128] Union(noa: Record(fn: Expression DoubleFloat,init: List 
+--R   [134] Symbol -> OpenMathErrorKind from OpenMathErrorKind
+--R   [135] Union(noa: Record(fn: Expression DoubleFloat,init: List 
 --R            DoubleFloat,lb: List OrderedCompletion DoubleFloat,cf: List 
 --R            Expression DoubleFloat,ub: List OrderedCompletion DoubleFloat),
 --R            lsa: Record(lfn: List Expression DoubleFloat,init: List 
 --R            DoubleFloat)) -> NumericalOptimizationProblem
 --R            from NumericalOptimizationProblem
---R   [129] Record(lfn: List Expression DoubleFloat,init: List DoubleFloat
+--R   [136] Record(lfn: List Expression DoubleFloat,init: List DoubleFloat
 --R            ) -> NumericalOptimizationProblem
 --R            from NumericalOptimizationProblem
---R   [130] Record(fn: Expression DoubleFloat,init: List DoubleFloat,lb: 
+--R   [137] Record(fn: Expression DoubleFloat,init: List DoubleFloat,lb: 
 --R            List OrderedCompletion DoubleFloat,cf: List Expression 
 --R            DoubleFloat,ub: List OrderedCompletion DoubleFloat) -> 
 --R            NumericalOptimizationProblem
 --R            from NumericalOptimizationProblem
---R   [131] NumericalOptimizationProblem -> OutputForm
+--R   [138] NumericalOptimizationProblem -> OutputForm
 --R            from NumericalOptimizationProblem
---R   [132] Integer -> OrdSetInts from OrdSetInts
---R   [133] Color -> Palette from Palette
---R   [134] Polynomial AlgebraicNumber -> Expression Integer
+--R   [139] Integer -> OrdSetInts from OrdSetInts
+--R   [140] Color -> Palette from Palette
+--R   [141] Polynomial AlgebraicNumber -> Expression Integer
 --R            from PolynomialAN2Expression
---R   [135] Fraction Polynomial AlgebraicNumber -> Expression Integer
+--R   [142] Fraction Polynomial AlgebraicNumber -> Expression Integer
 --R            from PolynomialAN2Expression
---R   [136] Record(pde: List Expression DoubleFloat,constraints: List 
+--R   [143] Record(pde: List Expression DoubleFloat,constraints: List 
 --R            Record(start: DoubleFloat,finish: DoubleFloat,grid: 
 --R            NonNegativeInteger,boundaryType: Integer,dStart: Matrix 
 --R            DoubleFloat,dFinish: Matrix DoubleFloat),f: List List Expression 
 --R            DoubleFloat,st: String,tol: DoubleFloat) -> NumericalPDEProblem
 --R            from NumericalPDEProblem
---R   [137] NumericalPDEProblem -> OutputForm from NumericalPDEProblem
---R   [138] PendantTree D2 -> Tree D2 from PendantTree D2 if D2 has SETCAT
+--R   [144] NumericalPDEProblem -> OutputForm from NumericalPDEProblem
+--R   [145] PendantTree D2 -> Tree D2 from PendantTree D2 if D2 has SETCAT
 --R            
---R   [139] List Permutation D2 -> PermutationGroup D2 from 
+--R   [146] List Permutation D2 -> PermutationGroup D2 from 
 --R            PermutationGroup D2
 --R            if D2 has SETCAT
---R   [140] PermutationGroup D2 -> List Permutation D2 from 
+--R   [147] PermutationGroup D2 -> List Permutation D2 from 
 --R            PermutationGroup D2
 --R            if D2 has SETCAT
---R   [141] List D2 -> Permutation D2 from Permutation D2 if D2 has SETCAT
+--R   [148] List D2 -> Permutation D2 from Permutation D2 if D2 has SETCAT
 --R            
---R   [142] List List D2 -> Permutation D2 from Permutation D2 if D2 has 
+--R   [149] List List D2 -> Permutation D2 from Permutation D2 if D2 has 
 --R            SETCAT
---R   [143] Fraction Factored D2 -> PartialFraction D2 from 
+--R   [150] Fraction Factored D2 -> PartialFraction D2 from 
 --R            PartialFraction D2
 --R            if D2 has EUCDOM
---R   [144] PartialFraction D2 -> Fraction D2 from PartialFraction D2
+--R   [151] PartialFraction D2 -> Fraction D2 from PartialFraction D2
 --R            if D2 has EUCDOM
---R   [145] Pi -> Expression D3 from PiCoercions D3
+--R   [152] Pi -> Expression D3 from PiCoercions D3
 --R            if D3 has Join(OrderedSet,IntegralDomain)
---R   [146] RadixExpansion D2 -> Fraction Integer from RadixExpansion D2 
+--R   [153] Queue D2 -> OutputForm from Queue D2
+--R            if D2 has SETCAT and D2 has SETCAT
+--R   [154] RadixExpansion D2 -> Fraction Integer from RadixExpansion D2 
 --R            if D2: INT
---R   [147] D2 -> Void from ResolveLatticeCompletion D2 if D2 has TYPE
---R   [148] Exit -> D1 from ResolveLatticeCompletion D1 if D1 has TYPE
---R   [149] D1 -> D from D if D has RETRACT D1 and D1 has TYPE
---R   [150] D2 -> Fraction Polynomial D2 from RationalFunction D2 if D2 
+--R   [155] D2 -> Void from ResolveLatticeCompletion D2 if D2 has TYPE
+--R   [156] Exit -> D1 from ResolveLatticeCompletion D1 if D1 has TYPE
+--R   [157] D1 -> D from D if D has RETRACT D1 and D1 has TYPE
+--R   [158] D2 -> Fraction Polynomial D2 from RationalFunction D2 if D2 
 --R            has INTDOM
---R   [151] Integer -> D from D if D has RING
---R   [152] D -> OutputForm from D if D has SPACEC D2 and D2 has RING
---R   [153] Character -> D from D if D has SRAGG
---R   [154] List D2 -> Stream D2 from Stream D2 if D2 has TYPE
---R   [155] Symbol -> Switch from Switch
---R   [156] String -> Symbol from Symbol
---R   [157] SymbolTable -> Table(Symbol,FortranType) from SymbolTable
---R   [158] Tableau D2 -> OutputForm from Tableau D2 if D2 has SETCAT
---R   [159] D2 -> TexFormat from TexFormat1 D2 if D2 has SETCAT
---R   [160] OutputForm -> TexFormat from TexFormat
---R   [161] Polynomial D2 -> TaylorSeries D2 from TaylorSeries D2 if D2 
+--R   [159] Integer -> D from D if D has RING
+--R   [160] D -> OutputForm from D if D has SPACEC D2 and D2 has RING
+--R   [161] Character -> D from D if D has SRAGG
+--R   [162] Stack D2 -> OutputForm from Stack D2
+--R            if D2 has SETCAT and D2 has SETCAT
+--R   [163] List D2 -> Stream D2 from Stream D2 if D2 has TYPE
+--R   [164] Symbol -> Switch from Switch
+--R   [165] String -> Symbol from Symbol
+--R   [166] SymbolTable -> Table(Symbol,FortranType) from SymbolTable
+--R   [167] Tableau D2 -> OutputForm from Tableau D2 if D2 has SETCAT
+--R   [168] D2 -> TexFormat from TexFormat1 D2 if D2 has SETCAT
+--R   [169] OutputForm -> TexFormat from TexFormat
+--R   [170] Polynomial D2 -> TaylorSeries D2 from TaylorSeries D2 if D2 
 --R            has RING
---R   [162] Symbol -> TaylorSeries D2 from TaylorSeries D2 if D2 has RING
+--R   [171] Symbol -> TaylorSeries D2 from TaylorSeries D2 if D2 has RING
 --R            
---R   [163] D1 -> D from D
+--R   [172] Variable QUOTE x -> UnivariateFormalPowerSeries D2
+--R            from UnivariateFormalPowerSeries D2 if D2 has RING
+--R   [173] UnivariatePolynomial(QUOTE x,D2) -> 
+--R            UnivariateFormalPowerSeries D2
+--R            from UnivariateFormalPowerSeries D2 if D2 has RING
+--R   [174] D1 -> D from D
 --R            if D2 has RING and D has ULSCCAT(D2,D1) and D1 has UTSCAT 
 --R            D2
---R   [164] Segment D2 -> UniversalSegment D2 from UniversalSegment D2
+--R   [175] Segment D2 -> UniversalSegment D2 from UniversalSegment D2
 --R            if D2 has TYPE
---R   [165] Variable D2 -> UnivariatePolynomial(D2,D3)
+--R   [176] Variable D2 -> UnivariatePolynomial(D2,D3)
 --R            from UnivariatePolynomial(D2,D3) if D2: SYMBOL and D3 has 
 --R            RING
---R   [166] D1 -> D from D
+--R   [177] D1 -> D from D
 --R            if D2 has RING and D has UPXSCCA(D2,D1) and D1 has ULSCAT 
 --R            D2
---R   [167] Void -> OutputForm from Void
---R   [168] D1 -> D from D if D has XALG D1 and D1 has RING
---R   [169] D1 -> D from D
+--R   [178] Void -> OutputForm from Void
+--R   [179] D1 -> D from D if D has XALG D1 and D1 has RING
+--R   [180] D1 -> D from D
 --R            if D has XFALG(D1,D2) and D1 has ORDSET and D2 has RING
 --R
---RThere are 56 unexposed functions called coerce :
+--RThere are 50 unexposed functions called coerce :
 --R   [1] Vector Matrix D3 -> Vector Matrix Fraction Polynomial D3
 --R            from CoerceVectorMatrixPackage D3 if D3 has COMRING
 --R   [2] List Integer -> ExtAlgBasis from ExtAlgBasis
@@ -3383,112 +3585,94 @@
 --R            D2) -> Union(D1,"failed"))
 --R   [20] List Record(coef: D2,monom: D3) -> MonoidRing(D2,D3)
 --R            from MonoidRing(D2,D3) if D2 has RING and D3 has MONOID
---R   [21] Fraction MyUnivariatePolynomial(D2,D3) -> MyExpression(D2,D3)
---R            from MyExpression(D2,D3)
---R            if D2: SYMBOL and D3 has Join(Ring,OrderedSet,
---R            IntegralDomain)
---R   [22] Polynomial D3 -> MyUnivariatePolynomial(D2,D3)
---R            from MyUnivariatePolynomial(D2,D3) if D3 has RING and D2: 
---R            SYMBOL
---R   [23] Variable D2 -> MyUnivariatePolynomial(D2,D3)
---R            from MyUnivariatePolynomial(D2,D3) if D2: SYMBOL and D3 has
---R            RING
---R   [24] D1 -> MyUnivariatePolynomial(D2,D1) from MyUnivariatePolynomial
---R            (D2,D1)
---R            if D2: SYMBOL and D1 has RING
---R   [25] Variable D2 -> UnivariateSkewPolynomial(D2,D3,D4,D5)
+--R   [21] Variable D2 -> UnivariateSkewPolynomial(D2,D3,D4,D5)
 --R            from UnivariateSkewPolynomial(D2,D3,D4,D5)
 --R            if D2: SYMBOL and D3 has RING and D4: AUTOMOR D3 and D5: (
 --R            D3 -> D3)
---R   [26] Polynomial D2 -> OrdinaryWeightedPolynomials(D2,D3,D4,D5)
+--R   [22] Polynomial D2 -> OrdinaryWeightedPolynomials(D2,D3,D4,D5)
 --R            from OrdinaryWeightedPolynomials(D2,D3,D4,D5)
 --R            if D2 has RING and D3: LIST SYMBOL and D4: LIST NNI and D5
 --R            : NNI
---R   [27] OrdinaryWeightedPolynomials(D2,D3,D4,D5) -> Polynomial D2
+--R   [23] OrdinaryWeightedPolynomials(D2,D3,D4,D5) -> Polynomial D2
 --R            from OrdinaryWeightedPolynomials(D2,D3,D4,D5)
 --R            if D2 has RING and D3: LIST SYMBOL and D4: LIST NNI and D5
 --R            : NNI
---R   [28] D1 -> PoincareBirkhoffWittLyndonBasis D1
+--R   [24] D1 -> PoincareBirkhoffWittLyndonBasis D1
 --R            from PoincareBirkhoffWittLyndonBasis D1 if D1 has ORDSET
 --R         
---R   [29] PoincareBirkhoffWittLyndonBasis D2 -> OrderedFreeMonoid D2
+--R   [25] PoincareBirkhoffWittLyndonBasis D2 -> OrderedFreeMonoid D2
 --R            from PoincareBirkhoffWittLyndonBasis D2 if D2 has ORDSET
 --R         
---R   [30] Partition -> List Integer from Partition
---R   [31] D1 -> ResidueRing(D2,D3,D4,D1,D5) from ResidueRing(D2,D3,D4,D1,
+--R   [26] Partition -> List Integer from Partition
+--R   [27] D1 -> ResidueRing(D2,D3,D4,D1,D5) from ResidueRing(D2,D3,D4,D1,
 --R            D5)
 --R            if D2 has FIELD and D3 has OAMONS and D4 has ORDSET and D1 
 --R            has POLYCAT(D2,D3,D4) and D5: LIST D1
---R   [32] RectangularMatrix(D2,D3,D4) -> Matrix D4
+--R   [28] RectangularMatrix(D2,D3,D4) -> Matrix D4
 --R            from RectangularMatrix(D2,D3,D4)
 --R            if D2: NNI and D3: NNI and D4 has RING
---R   [33] D1 -> SparseMultivariateTaylorSeries(D2,D3,D1)
+--R   [29] D1 -> SparseMultivariateTaylorSeries(D2,D3,D1)
 --R            from SparseMultivariateTaylorSeries(D2,D3,D1)
 --R            if D2 has RING and D3 has ORDSET and D1 has POLYCAT(D2,INDE
 --R            D3,D3)
---R   [34] D1 -> SparseMultivariateTaylorSeries(D2,D1,D3)
+--R   [30] D1 -> SparseMultivariateTaylorSeries(D2,D1,D3)
 --R            from SparseMultivariateTaylorSeries(D2,D1,D3)
 --R            if D2 has RING and D1 has ORDSET and D3 has POLYCAT(D2,INDE
 --R            D1,D1)
---R   [35] SquareMatrix(D2,D3) -> Matrix D3 from SquareMatrix(D2,D3)
+--R   [31] SquareMatrix(D2,D3) -> Matrix D3 from SquareMatrix(D2,D3)
 --R            if D2: NNI and D3 has RING
---R   [36] D2 -> Stream D2 from StreamTaylorSeriesOperations D2 if D2 has 
+--R   [32] D2 -> Stream D2 from StreamTaylorSeriesOperations D2 if D2 has 
 --R            RING
---R   [37] Variable D3 -> SparseUnivariateLaurentSeries(D2,D3,D4)
+--R   [33] Variable D3 -> SparseUnivariateLaurentSeries(D2,D3,D4)
 --R            from SparseUnivariateLaurentSeries(D2,D3,D4)
 --R            if D3: SYMBOL and D2 has RING and D4: D2
---R   [38] Variable D3 -> SparseUnivariatePuiseuxSeries(D2,D3,D4)
+--R   [34] Variable D3 -> SparseUnivariatePuiseuxSeries(D2,D3,D4)
 --R            from SparseUnivariatePuiseuxSeries(D2,D3,D4)
 --R            if D3: SYMBOL and D2 has RING and D4: D2
---R   [39] Variable D3 -> SparseUnivariateTaylorSeries(D2,D3,D4)
+--R   [35] Variable D3 -> SparseUnivariateTaylorSeries(D2,D3,D4)
 --R            from SparseUnivariateTaylorSeries(D2,D3,D4)
 --R            if D3: SYMBOL and D2 has RING and D4: D2
---R   [40] UnivariatePolynomial(D3,D2) -> SparseUnivariateTaylorSeries(D2,
+--R   [36] UnivariatePolynomial(D3,D2) -> SparseUnivariateTaylorSeries(D2,
 --R            D3,D4)
 --R            from SparseUnivariateTaylorSeries(D2,D3,D4)
 --R            if D2 has RING and D3: SYMBOL and D4: D2
---R   [41] PrimitiveArray D2 -> Tuple D2 from Tuple D2 if D2 has TYPE
---R   [42] Variable QUOTE x -> UnivariateFormalPowerSeries D2
---R            from UnivariateFormalPowerSeries D2 if D2 has RING
---R   [43] UnivariatePolynomial(QUOTE x,D2) -> UnivariateFormalPowerSeries
---R            D2
---R            from UnivariateFormalPowerSeries D2 if D2 has RING
---R   [44] Variable D3 -> UnivariateLaurentSeries(D2,D3,D4)
+--R   [37] PrimitiveArray D2 -> Tuple D2 from Tuple D2 if D2 has TYPE
+--R   [38] Variable D3 -> UnivariateLaurentSeries(D2,D3,D4)
 --R            from UnivariateLaurentSeries(D2,D3,D4)
 --R            if D3: SYMBOL and D2 has RING and D4: D2
---R   [45] Variable D3 -> UnivariatePuiseuxSeries(D2,D3,D4)
+--R   [39] Variable D3 -> UnivariatePuiseuxSeries(D2,D3,D4)
 --R            from UnivariatePuiseuxSeries(D2,D3,D4)
 --R            if D3: SYMBOL and D2 has RING and D4: D2
---R   [46] Variable D3 -> UnivariateTaylorSeries(D2,D3,D4)
+--R   [40] Variable D3 -> UnivariateTaylorSeries(D2,D3,D4)
 --R            from UnivariateTaylorSeries(D2,D3,D4)
 --R            if D3: SYMBOL and D2 has RING and D4: D2
---R   [47] UnivariatePolynomial(D3,D2) -> UnivariateTaylorSeries(D2,D3,D4)
+--R   [41] UnivariatePolynomial(D3,D2) -> UnivariateTaylorSeries(D2,D3,D4)
 --R            from UnivariateTaylorSeries(D2,D3,D4)
 --R            if D2 has RING and D3: SYMBOL and D4: D2
---R   [48] Variable D2 -> Symbol from Variable D2 if D2: SYMBOL
---R   [49] TwoDimensionalViewport -> OutputForm from 
+--R   [42] Variable D2 -> Symbol from Variable D2 if D2: SYMBOL
+--R   [43] TwoDimensionalViewport -> OutputForm from 
 --R            TwoDimensionalViewport
---R   [50] GraphImage -> TwoDimensionalViewport from ViewportPackage
---R   [51] D1 -> WeightedPolynomials(D2,D3,D4,D1,D5,D6,D7)
+--R   [44] GraphImage -> TwoDimensionalViewport from ViewportPackage
+--R   [45] D1 -> WeightedPolynomials(D2,D3,D4,D1,D5,D6,D7)
 --R            from WeightedPolynomials(D2,D3,D4,D1,D5,D6,D7)
 --R            if D2 has RING and D3 has ORDSET and D4 has OAMONS and D5: 
 --R            LIST D3 and D1 has POLYCAT(D2,D4,D3) and D6: LIST NNI and 
 --R            D7: NNI
---R   [52] WeightedPolynomials(D2,D3,D4,D1,D5,D6,D7) -> D1
+--R   [46] WeightedPolynomials(D2,D3,D4,D1,D5,D6,D7) -> D1
 --R            from WeightedPolynomials(D2,D3,D4,D1,D5,D6,D7)
 --R            if D1 has POLYCAT(D2,D4,D3) and D2 has RING and D3 has 
 --R            ORDSET and D4 has OAMONS and D5: LIST D3 and D6: LIST NNI 
 --R            and D7: NNI
---R   [53] XPBWPolynomial(D2,D3) -> XRecursivePolynomial(D2,D3)
+--R   [47] XPBWPolynomial(D2,D3) -> XRecursivePolynomial(D2,D3)
 --R            from XPBWPolynomial(D2,D3) if D2 has ORDSET and D3 has 
 --R            COMRING
---R   [54] XPBWPolynomial(D2,D3) -> XDistributedPolynomial(D2,D3)
+--R   [48] XPBWPolynomial(D2,D3) -> XDistributedPolynomial(D2,D3)
 --R            from XPBWPolynomial(D2,D3) if D2 has ORDSET and D3 has 
 --R            COMRING
---R   [55] LiePolynomial(D2,D3) -> XPBWPolynomial(D2,D3)
+--R   [49] LiePolynomial(D2,D3) -> XPBWPolynomial(D2,D3)
 --R            from XPBWPolynomial(D2,D3) if D2 has ORDSET and D3 has 
 --R            COMRING
---R   [56] D1 -> XPolynomialRing(D2,D1) from XPolynomialRing(D2,D1)
+--R   [50] D1 -> XPolynomialRing(D2,D1) from XPolynomialRing(D2,D1)
 --R            if D2 has RING and D1 has ORDMON
 --R
 --RExamples of coerce from Algebra
@@ -3566,6 +3750,12 @@
 --RExamples of coerce from Asp9
 --R
 --R
+--RExamples of coerce from ArrayStack
+--R
+--Ra:ArrayStack INT:= arrayStack [1,2,3,4,5] 
+--Rcoerce a
+--R
+--R
 --RExamples of coerce from BinaryExpansion
 --R
 --R
@@ -3594,6 +3784,12 @@
 --RExamples of coerce from DecimalExpansion
 --R
 --R
+--RExamples of coerce from Dequeue
+--R
+--Ra:Dequeue INT:= dequeue [1,2,3,4,5] 
+--Rcoerce a
+--R
+--R
 --RExamples of coerce from DataList
 --R
 --R
@@ -3672,6 +3868,12 @@
 --RExamples of coerce from GeneralUnivariatePowerSeries
 --R
 --R
+--RExamples of coerce from Heap
+--R
+--Ra:Heap INT:= heap [1,2,3,4,5] 
+--Rcoerce a
+--R
+--R
 --RExamples of coerce from HexadecimalExpansion
 --R
 --R
@@ -3713,6 +3915,8 @@
 --R
 --RExamples of coerce from MatrixCategory
 --R
+--Rcoerce([1,2,3])@Matrix(INT)
+--R
 --R
 --RExamples of coerce from MachineComplex
 --R
@@ -3814,6 +4018,12 @@
 --RExamples of coerce from Partition
 --R
 --R
+--RExamples of coerce from Queue
+--R
+--Ra:Queue INT:= queue [1,2,3,4,5] 
+--Rcoerce a
+--R
+--R
 --RExamples of coerce from RadixExpansion
 --R
 --R
@@ -3847,6 +4057,12 @@
 --RExamples of coerce from StringAggregate
 --R
 --R
+--RExamples of coerce from Stack
+--R
+--Ra:Stack INT:= stack [1,2,3,4,5] 
+--Rcoerce a
+--R
+--R
 --RExamples of coerce from Stream
 --R
 --Rm:=[1,2,3,4,5,6,7,8,9,10,11,12] 
@@ -3946,7 +4162,7 @@
 --E 69
 
 --S 70 of 127
---R)d op contract
+)d op contract
 --R 
 --R
 --RThere are 3 exposed functions called contract :
@@ -3987,7 +4203,7 @@
 --E 70
 
 --S 71 of 127
---R)d op irreducibleFactor
+)d op irreducibleFactor
 --R 
 --R
 --RThere is one exposed function called irreducibleFactor :
@@ -4002,7 +4218,7 @@
 --E 71
 
 --S 72 of 127
---R)d op concat
+)d op concat
 --R 
 --R
 --RThere are 10 exposed functions called concat :
@@ -4041,7 +4257,7 @@
 --E 72
 
 --S 73 of 127
---R)d op binaryTournament
+)d op binaryTournament
 --R 
 --R
 --RThere is one exposed function called binaryTournament :
@@ -4055,7 +4271,7 @@
 --E 73
 
 --S 74 of 127
---R)d op upperCase
+)d op upperCase
 --R 
 --R
 --RThere are 3 exposed functions called upperCase :
@@ -4077,7 +4293,7 @@
 --E 74
 
 --S 75 of 127
---R)d op exponent
+)d op exponent
 --R 
 --R
 --RThere are 3 exposed functions called exponent :
@@ -4116,7 +4332,7 @@
 --E 75
 
 --S 76 of 127
---R)d op setRow!
+)d op setRow!
 --R 
 --R
 --RThere is one exposed function called setRow! :
@@ -4135,7 +4351,7 @@
 --E 76
 
 --S 77 of 127
---R)d op generate
+)d op generate
 --R 
 --R
 --RThere are 4 exposed functions called generate :
@@ -4163,7 +4379,7 @@
 --E 77
 
 --S 78 of 127
---R)d op gcd
+)d op gcd
 --R 
 --R
 --RThere are 6 exposed functions called gcd :
@@ -4229,7 +4445,7 @@
 --E 78
 
 --S 79 of 127
---R)d op binary
+)d op binary
 --R 
 --R
 --RThere is one exposed function called binary :
@@ -4251,7 +4467,7 @@
 --E 79
 
 --S 80 of 127
---R)d op expand
+)d op expand
 --R 
 --R
 --RThere are 6 exposed functions called expand :
@@ -4317,7 +4533,7 @@
 --E 80
 
 --S 81 of 127
---R)d op filterWhile
+)d op filterWhile
 --R 
 --R
 --RThere are 2 exposed functions called filterWhile :
@@ -4338,7 +4554,7 @@
 --E 81
 
 --S 82 of 127
---R)d op filterUntil
+)d op filterUntil
 --R 
 --R
 --RThere are 2 exposed functions called filterUntil :
@@ -4359,7 +4575,7 @@
 --E 82
 
 --S 83 of 127
---R)d op select
+)d op select
 --R 
 --R
 --RThere are 4 exposed functions called select :
@@ -4402,7 +4618,7 @@
 --E 83
 
 --S 84 of 127
---R)d op nthFlag
+)d op nthFlag
 --R 
 --R
 --RThere is one exposed function called nthFlag :
@@ -4417,7 +4633,7 @@
 --E 84
 
 --S 85 of 127
---R)d op makeFR
+)d op makeFR
 --R 
 --R
 --RThere is one exposed function called makeFR :
@@ -4442,10 +4658,10 @@
 --E 85
 
 --S 86 of 127
---R)d op *
+)d op *
 --R 
 --R
---RThere are 33 exposed functions called * :
+--RThere are 34 exposed functions called * :
 --R   [1] (Integer,D) -> D from D if D has ABELGRP
 --R   [2] (NonNegativeInteger,D) -> D from D if D has ABELMON
 --R   [3] (PositiveInteger,D) -> D from D if D has ABELSG
@@ -4504,26 +4720,31 @@
 --R            if D has MATCAT(D1,D2,D3) and D1 has RING and D2 has FLAGG 
 --R            D1 and D3 has FLAGG D1
 --R   [24] (D,D) -> D from D if D has MONAD
---R   [25] (D,D1) -> D from D if D has RMODULE D1 and D1 has RNG
---R   [26] (D,D) -> D from D if D has SGROUP
---R   [27] (D1,D) -> D1 from D
+--R   [25] (MyExpression(D1,D2),MyExpression(D1,D2)) -> MyExpression(D1,D2
+--R            )
+--R            from MyExpression(D1,D2)
+--R            if D1: SYMBOL and D2 has Join(Ring,OrderedSet,
+--R            IntegralDomain)
+--R   [26] (D,D1) -> D from D if D has RMODULE D1 and D1 has RNG
+--R   [27] (D,D) -> D from D if D has SGROUP
+--R   [28] (D1,D) -> D1 from D
 --R            if D has SMATCAT(D2,D3,D1,D4) and D3 has RING and D1 has 
 --R            DIRPCAT(D2,D3) and D4 has DIRPCAT(D2,D3)
---R   [28] (D,D1) -> D1 from D
+--R   [29] (D,D1) -> D1 from D
 --R            if D has SMATCAT(D2,D3,D4,D1) and D3 has RING and D4 has 
 --R            DIRPCAT(D2,D3) and D1 has DIRPCAT(D2,D3)
---R   [29] (D,D1) -> D from D
+--R   [30] (D,D1) -> D from D
 --R            if D has VECTCAT D1 and D1 has TYPE and D1 has MONOID
---R   [30] (D1,D) -> D from D
+--R   [31] (D1,D) -> D from D
 --R            if D has VECTCAT D1 and D1 has TYPE and D1 has MONOID
---R   [31] (Integer,D) -> D from D
+--R   [32] (Integer,D) -> D from D
 --R            if D has VECTCAT D2 and D2 has TYPE and D2 has ABELGRP
---R   [32] (D1,D) -> D from D
+--R   [33] (D1,D) -> D from D
 --R            if D has XFALG(D1,D2) and D1 has ORDSET and D2 has RING
---R   [33] (D,D1) -> D from D
+--R   [34] (D,D1) -> D from D
 --R            if D has XFALG(D2,D1) and D2 has ORDSET and D1 has RING
 --R
---RThere are 24 unexposed functions called * :
+--RThere are 23 unexposed functions called * :
 --R   [1] (FreeGroup D1,D1) -> FreeGroup D1 from FreeGroup D1 if D1 has 
 --R            SETCAT
 --R   [2] (D1,FreeGroup D1) -> FreeGroup D1 from FreeGroup D1 if D1 has 
@@ -4553,37 +4774,32 @@
 --R            from InnerTaylorSeries D1 if D1 has RING
 --R   [12] (Magma D1,Magma D1) -> Magma D1 from Magma D1 if D1 has ORDSET
 --R            
---R   [13] (MyExpression(D1,D2),MyExpression(D1,D2)) -> MyExpression(D1,D2
---R            )
---R            from MyExpression(D1,D2)
---R            if D1: SYMBOL and D2 has Join(Ring,OrderedSet,
---R            IntegralDomain)
---R   [14] (OrderedFreeMonoid D1,D1) -> OrderedFreeMonoid D1
+--R   [13] (OrderedFreeMonoid D1,D1) -> OrderedFreeMonoid D1
 --R            from OrderedFreeMonoid D1 if D1 has ORDSET
---R   [15] (D1,OrderedFreeMonoid D1) -> OrderedFreeMonoid D1
+--R   [14] (D1,OrderedFreeMonoid D1) -> OrderedFreeMonoid D1
 --R            from OrderedFreeMonoid D1 if D1 has ORDSET
---R   [16] (OutputForm,OutputForm) -> OutputForm from OutputForm
---R   [17] (Pattern D1,Pattern D1) -> Pattern D1 from Pattern D1 if D1 has
+--R   [15] (OutputForm,OutputForm) -> OutputForm from OutputForm
+--R   [16] (Pattern D1,Pattern D1) -> Pattern D1 from Pattern D1 if D1 has
 --R            SETCAT
---R   [18] (D2,Vector D3) -> Vector D3 from PseudoRemainderSequence(D2,D3)
+--R   [17] (D2,Vector D3) -> Vector D3 from PseudoRemainderSequence(D2,D3)
 --R            if D3 has UPOLYC D2 and D2 has INTDOM
---R   [19] (D1,SparseMultivariateTaylorSeries(D2,D3,D1)) -> 
+--R   [18] (D1,SparseMultivariateTaylorSeries(D2,D3,D1)) -> 
 --R            SparseMultivariateTaylorSeries(D2,D3,D1)
 --R            from SparseMultivariateTaylorSeries(D2,D3,D1)
 --R            if D2 has RING and D3 has ORDSET and D1 has POLYCAT(D2,INDE
 --R            D3,D3)
---R   [20] (Stream D2,Stream D2) -> Stream D2 from 
+--R   [19] (Stream D2,Stream D2) -> Stream D2 from 
 --R            StreamTaylorSeriesOperations D2
 --R            if D2 has RING
---R   [21] (D2,Stream D2) -> Stream D2 from StreamTaylorSeriesOperations 
+--R   [20] (D2,Stream D2) -> Stream D2 from StreamTaylorSeriesOperations 
 --R            D2
 --R            if D2 has RING
---R   [22] (Stream D2,D2) -> Stream D2 from StreamTaylorSeriesOperations 
+--R   [21] (Stream D2,D2) -> Stream D2 from StreamTaylorSeriesOperations 
 --R            D2
 --R            if D2 has RING
---R   [23] (DoubleFloat,Point DoubleFloat) -> Point DoubleFloat from 
+--R   [22] (DoubleFloat,Point DoubleFloat) -> Point DoubleFloat from 
 --R            TubePlotTools
---R   [24] (XPolynomialRing(D1,D2),D1) -> XPolynomialRing(D1,D2)
+--R   [23] (XPolynomialRing(D1,D2),D1) -> XPolynomialRing(D1,D2)
 --R            from XPolynomialRing(D1,D2) if D1 has RING and D2 has 
 --R            ORDMON
 --R
@@ -4665,6 +4881,26 @@
 --R
 --RExamples of * from MatrixCategory
 --R
+--Rm:=matrix [[j**i for i in 0..4] for j in 1..5] 
+--Rr:=transpose([1,2,3,4,5])@Matrix(INT) 
+--Rr*m
+--R
+--Rm:=matrix [[j**i for i in 0..4] for j in 1..5] 
+--Rc:=coerce([1,2,3,4,5])@Matrix(INT) 
+--Rm*c
+--R
+--Rm:=matrix [[j**i for i in 0..4] for j in 1..5] 
+--R3*m
+--R
+--Rm:=matrix [[j**i for i in 0..4] for j in 1..5] 
+--Rm*1/3
+--R
+--Rm:=matrix [[j**i for i in 0..4] for j in 1..5] 
+--R1/3*m
+--R
+--Rm:=matrix [[j**i for i in 0..4] for j in 1..5] 
+--Rm*m
+--R
 --R
 --RExamples of * from Monad
 --R
@@ -4713,7 +4949,7 @@
 --E 86
 
 --S 87 of 127
---R)d op numberOfComponents
+)d op numberOfComponents
 --R 
 --R
 --RThere are 2 exposed functions called numberOfComponents :
@@ -4749,7 +4985,7 @@
 --E 87
 
 --S 88 of 127
---R)d op tree
+)d op tree
 --R 
 --R
 --RThere are 3 exposed functions called tree :
@@ -4769,7 +5005,7 @@
 --E 88
 
 --S 89 of 127
---R)d op Aleph
+)d op Aleph
 --R 
 --R
 --RThere is one exposed function called Aleph :
@@ -4782,7 +5018,7 @@
 --E 89
 
 --S 90 of 127
---R)d op unit
+)d op unit
 --R 
 --R
 --RThere are 3 exposed functions called unit :
@@ -4808,7 +5044,7 @@
 --E 90
 
 --S 91 of 127
---R)d op frst
+)d op frst
 --R 
 --R
 --RThere is one exposed function called frst :
@@ -4822,7 +5058,7 @@
 --E 91
 
 --S 92 of 127
---R)d op product
+)d op product
 --R 
 --R
 --RThere are 4 exposed functions called product :
@@ -4871,7 +5107,7 @@
 --E 92
 
 --S 93 of 127
---R)d op fill!
+)d op fill!
 --R 
 --R
 --RThere are 2 exposed functions called fill! :
@@ -4893,7 +5129,7 @@
 --E 93
 
 --S 94 of 127
---R)d op upperCase?
+)d op upperCase?
 --R 
 --R
 --RThere is one exposed function called upperCase? :
@@ -4907,7 +5143,7 @@
 --E 94
 
 --S 95 of 127
---R)d op integralMatrixAtInfinity
+)d op integralMatrixAtInfinity
 --R 
 --R
 --RThere is one exposed function called integralMatrixAtInfinity :
@@ -4925,7 +5161,7 @@
 --E 95
 
 --S 96 of 127
---R)d op finite?
+)d op finite?
 --R 
 --R
 --RThere are 3 exposed functions called finite? :
@@ -4951,7 +5187,7 @@
 --E 96
 
 --S 97 of 127
---R)d op rank
+)d op rank
 --R 
 --R
 --RThere are 8 exposed functions called rank :
@@ -5018,6 +5254,8 @@
 --R
 --RExamples of rank from MatrixCategory
 --R
+--Rrank matrix [[1,2,3],[4,5,6],[7,8,9]]
+--R
 --R
 --RExamples of rank from MatrixLinearAlgebraFunctions
 --R
@@ -5027,7 +5265,7 @@
 --E 97
 
 --S 98 of 127
---R)d op numberOfComputedEntries
+)d op numberOfComputedEntries
 --R 
 --R
 --RThere is one exposed function called numberOfComputedEntries :
@@ -5042,7 +5280,7 @@
 --E 98
 
 --S 99 of 127
---R)d op groebnerFactorize
+)d op groebnerFactorize
 --R 
 --R
 --RThere are 4 exposed functions called groebnerFactorize :
@@ -5076,7 +5314,7 @@
 --E 99
 
 --S 100 of 127
---R)d op lowerCase
+)d op lowerCase
 --R 
 --R
 --RThere are 3 exposed functions called lowerCase :
@@ -5098,7 +5336,7 @@
 --E 100
 
 --S 101 of 127
---R)d op showAllElements
+)d op showAllElements
 --R 
 --R
 --RThere is one exposed function called showAllElements :
@@ -5114,7 +5352,7 @@
 --E 101
 
 --S 102 of 127
---R)d op maxColIndex
+)d op maxColIndex
 --R 
 --R
 --RThere are 2 exposed functions called maxColIndex :
@@ -5136,7 +5374,7 @@
 --E 102
 
 --S 103 of 127
---R)d op minRowIndex
+)d op minRowIndex
 --R 
 --R
 --RThere are 2 exposed functions called minRowIndex :
@@ -5158,7 +5396,7 @@
 --E 103
 
 --S 104 of 127
---R)d op space
+)d op space
 --R 
 --R
 --RThere are 2 exposed functions called space :
@@ -5182,7 +5420,7 @@
 --E 104
 
 --S 105 of 127
---R)d op remove
+)d op remove
 --R 
 --R
 --RThere are 5 exposed functions called remove :
@@ -5225,7 +5463,7 @@
 --E 105
 
 --S 106 of 127
---R)d op factors
+)d op factors
 --R 
 --R
 --RThere is one exposed function called factors :
@@ -5261,7 +5499,7 @@
 --E 106
 
 --S 107 of 127
---R)d op output
+)d op output
 --R 
 --R
 --RThere are 4 exposed functions called output :
@@ -5283,7 +5521,7 @@
 --E 107
 
 --S 108 of 127
---R)d op binarySearchTree
+)d op binarySearchTree
 --R 
 --R
 --RThere is one exposed function called binarySearchTree :
@@ -5297,7 +5535,7 @@
 --E 108
 
 --S 109 of 127
---R)d op char
+)d op char
 --R 
 --R
 --RThere are 2 exposed functions called char :
@@ -5313,7 +5551,7 @@
 --E 109
 
 --S 110 of 127
---R)d op shrinkable
+)d op shrinkable
 --R 
 --R
 --RThere is one exposed function called shrinkable :
@@ -5334,7 +5572,7 @@
 --E 110
 
 --S 111 of 127
---R)d op rst
+)d op rst
 --R 
 --R
 --RThere is one exposed function called rst :
@@ -5348,7 +5586,7 @@
 --E 111
 
 --S 112 of 127
---R)d op flexibleArray
+)d op flexibleArray
 --R 
 --R
 --RThere is one exposed function called flexibleArray :
@@ -5371,7 +5609,7 @@
 --E 112
 
 --S 113 of 127
---R)d op setelt
+)d op setelt
 --R 
 --R
 --RThere are 12 exposed functions called setelt :
@@ -5433,6 +5671,9 @@
 --R
 --RExamples of setelt from MatrixCategory
 --R
+--Rm:=matrix [[j**i for i in 0..4] for j in 1..5] 
+--Rsetelt(m,3,3,10)
+--R
 --R
 --RExamples of setelt from RecursiveAggregate
 --R
@@ -5448,7 +5689,7 @@
 --E 113
 
 --S 114 of 127
---R)d op cyclicParents
+)d op cyclicParents
 --R 
 --R
 --RThere is one exposed function called cyclicParents :
@@ -5462,7 +5703,7 @@
 --E 114
 
 --S 115 of 127
---R)d op explicitEntries?
+)d op explicitEntries?
 --R 
 --R
 --RThere is one exposed function called explicitEntries? :
@@ -5476,7 +5717,7 @@
 --E 115
 
 --S 116 of 127
---R)d op column
+)d op column
 --R 
 --R
 --RThere are 2 exposed functions called column :
@@ -5498,7 +5739,7 @@
 --E 116
 
 --S 117 of 127
---R)d op reduce
+)d op reduce
 --R 
 --R
 --RThere are 19 exposed functions called reduce :
@@ -5681,7 +5922,7 @@
 --E 117
 
 --S 118 of 127
---R)d op new
+)d op new
 --R 
 --R
 --RThere are 7 exposed functions called new :
@@ -5740,7 +5981,7 @@
 --E 118
 
 --S 119 of 127
---R)d op insertRoot!
+)d op insertRoot!
 --R 
 --R
 --RThere is one exposed function called insertRoot! :
@@ -5755,7 +5996,7 @@
 --E 119
 
 --S 120 of 127
---R)d op maxRowIndex
+)d op maxRowIndex
 --R 
 --R
 --RThere are 2 exposed functions called maxRowIndex :
@@ -5777,7 +6018,7 @@
 --E 120
 
 --S 121 of 127
---R)d op escape
+)d op escape
 --R 
 --R
 --RThere is one exposed function called escape :
@@ -5790,7 +6031,7 @@
 --E 121
 
 --S 122 of 127
---R)d op nthExponent
+)d op nthExponent
 --R 
 --R
 --RThere is one exposed function called nthExponent :
@@ -5805,16 +6046,26 @@
 --E 122
 
 --S 123 of 127
---R)d op parts
+)d op parts
 --R 
 --R
---RThere are 2 exposed functions called parts :
+--RThere are 7 exposed functions called parts :
 --R   [1] D -> List D2 from D
 --R            if D has ARR2CAT(D2,D3,D4) and D2 has TYPE and D3 has FLAGG
 --R            D2 and D4 has FLAGG D2
---R   [2] D -> List D2 from D
+--R   [2] ArrayStack D2 -> List D2 from ArrayStack D2
+--R            if $ has finiteAggregate and D2 has SETCAT
+--R   [3] Dequeue D2 -> List D2 from Dequeue D2
+--R            if $ has finiteAggregate and D2 has SETCAT
+--R   [4] Heap D2 -> List D2 from Heap D2
+--R            if $ has finiteAggregate and D2 has ORDSET
+--R   [5] D -> List D2 from D
 --R            if D has finiteAggregate and D has HOAGG D2 and D2 has TYPE
 --R            
+--R   [6] Queue D2 -> List D2 from Queue D2
+--R            if $ has finiteAggregate and D2 has SETCAT
+--R   [7] Stack D2 -> List D2 from Stack D2
+--R            if $ has finiteAggregate and D2 has SETCAT
 --R
 --RExamples of parts from TwoDimensionalArrayCategory
 --R
@@ -5822,12 +6073,42 @@
 --Rparts(arr)
 --R
 --R
+--RExamples of parts from ArrayStack
+--R
+--Ra:ArrayStack INT:= arrayStack [1,2,3,4,5] 
+--Rparts a
+--R
+--R
+--RExamples of parts from Dequeue
+--R
+--Ra:Dequeue INT:= dequeue [1,2,3,4,5] 
+--Rparts a
+--R
+--R
+--RExamples of parts from Heap
+--R
+--Ra:Heap INT:= heap [1,2,3,4,5] 
+--Rparts a
+--R
+--R
 --RExamples of parts from HomogeneousAggregate
 --R
+--R
+--RExamples of parts from Queue
+--R
+--Ra:Queue INT:= queue [1,2,3,4,5] 
+--Rparts a
+--R
+--R
+--RExamples of parts from Stack
+--R
+--Ra:Stack INT:= stack [1,2,3,4,5] 
+--Rparts a
+--R
 --E 123
 
 --S 124 of 127
---R)d op elt
+)d op elt
 --R 
 --R
 --RThere are 47 exposed functions called elt :
@@ -6045,6 +6326,9 @@
 --R
 --RExamples of elt from MatrixCategory
 --R
+--Rm:=matrix [[j**i for i in 0..4] for j in 1..5] 
+--Relt(m,3,3)
+--R
 --R
 --RExamples of elt from OutputForm
 --R
@@ -6096,7 +6380,7 @@
 --E 123
 
 --S 125 of 127
---R)d op minColIndex
+)d op minColIndex
 --R 
 --R
 --RThere are 2 exposed functions called minColIndex :
@@ -6118,7 +6402,7 @@
 --E 125
 
 --S 126 of 127
---R)d op numberOfFactors
+)d op numberOfFactors
 --R 
 --R
 --RThere is one exposed function called numberOfFactors :
@@ -6140,7 +6424,7 @@
 --E 126
 
 --S 127 of 127
---R)d op cyclicCopy
+)d op cyclicCopy
 --R 
 --R
 --RThere is one exposed function called cyclicCopy :
