aboutsummaryrefslogtreecommitdiff
path: root/src/hyper/pages/ug02.pht
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2007-08-14 05:14:52 +0000
committerdos-reis <gdr@axiomatics.org>2007-08-14 05:14:52 +0000
commitab8cc85adde879fb963c94d15675783f2cf4b183 (patch)
treec202482327f474583b750b2c45dedfc4e4312b1d /src/hyper/pages/ug02.pht
downloadopen-axiom-ab8cc85adde879fb963c94d15675783f2cf4b183.tar.gz
Initial population.
Diffstat (limited to 'src/hyper/pages/ug02.pht')
-rw-r--r--src/hyper/pages/ug02.pht2328
1 files changed, 2328 insertions, 0 deletions
diff --git a/src/hyper/pages/ug02.pht b/src/hyper/pages/ug02.pht
new file mode 100644
index 00000000..b96c56b0
--- /dev/null
+++ b/src/hyper/pages/ug02.pht
@@ -0,0 +1,2328 @@
+\begin{patch}{ugTypesUnionsWSelPagePatch1}
+\begin{paste}{ugTypesUnionsWSelPageFull1}{ugTypesUnionsWSelPageEmpty1}
+\pastebutton{ugTypesUnionsWSelPageFull1}{\hidepaste}
+\tab{5}\spadcommand{u : Union(i : Integer, s : String)\bound{undec }}
+\indentrel{3}\begin{verbatim}
+ Type: Void
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWSelPageEmpty1}
+\begin{paste}{ugTypesUnionsWSelPageEmpty1}{ugTypesUnionsWSelPagePatch1}
+\pastebutton{ugTypesUnionsWSelPageEmpty1}{\showpaste}
+\tab{5}\spadcommand{u : Union(i : Integer, s : String)\bound{undec }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWSelPagePatch2}
+\begin{paste}{ugTypesUnionsWSelPageFull2}{ugTypesUnionsWSelPageEmpty2}
+\pastebutton{ugTypesUnionsWSelPageFull2}{\hidepaste}
+\tab{5}\spadcommand{u := "good morning"\bound{u }\free{undec }}
+\indentrel{3}\begin{verbatim}
+ (2) "good morning"
+ Type: Union(s: String,...)
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWSelPageEmpty2}
+\begin{paste}{ugTypesUnionsWSelPageEmpty2}{ugTypesUnionsWSelPagePatch2}
+\pastebutton{ugTypesUnionsWSelPageEmpty2}{\showpaste}
+\tab{5}\spadcommand{u := "good morning"\bound{u }\free{undec }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWSelPagePatch3}
+\begin{paste}{ugTypesUnionsWSelPageFull3}{ugTypesUnionsWSelPageEmpty3}
+\pastebutton{ugTypesUnionsWSelPageFull3}{\hidepaste}
+\tab{5}\spadcommand{u case i\free{u }}
+\indentrel{3}\begin{verbatim}
+ (3) false
+ Type: Boolean
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWSelPageEmpty3}
+\begin{paste}{ugTypesUnionsWSelPageEmpty3}{ugTypesUnionsWSelPagePatch3}
+\pastebutton{ugTypesUnionsWSelPageEmpty3}{\showpaste}
+\tab{5}\spadcommand{u case i\free{u }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWSelPagePatch4}
+\begin{paste}{ugTypesUnionsWSelPageFull4}{ugTypesUnionsWSelPageEmpty4}
+\pastebutton{ugTypesUnionsWSelPageFull4}{\hidepaste}
+\tab{5}\spadcommand{u case s\free{u }}
+\indentrel{3}\begin{verbatim}
+ (4) true
+ Type: Boolean
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWSelPageEmpty4}
+\begin{paste}{ugTypesUnionsWSelPageEmpty4}{ugTypesUnionsWSelPagePatch4}
+\pastebutton{ugTypesUnionsWSelPageEmpty4}{\showpaste}
+\tab{5}\spadcommand{u case s\free{u }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWSelPagePatch5}
+\begin{paste}{ugTypesUnionsWSelPageFull5}{ugTypesUnionsWSelPageEmpty5}
+\pastebutton{ugTypesUnionsWSelPageFull5}{\hidepaste}
+\tab{5}\spadcommand{u.s\free{u }}
+\indentrel{3}\begin{verbatim}
+ (5) "good morning"
+ Type: String
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWSelPageEmpty5}
+\begin{paste}{ugTypesUnionsWSelPageEmpty5}{ugTypesUnionsWSelPagePatch5}
+\pastebutton{ugTypesUnionsWSelPageEmpty5}{\showpaste}
+\tab{5}\spadcommand{u.s\free{u }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesWritingOnePagePatch1}
+\begin{paste}{ugTypesWritingOnePageFull1}{ugTypesWritingOnePageEmpty1}
+\pastebutton{ugTypesWritingOnePageFull1}{\hidepaste}
+\tab{5}\spadcommand{e : PrimeField(2 + 3)}
+\indentrel{3}\begin{verbatim}
+ Type: Void
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesWritingOnePageEmpty1}
+\begin{paste}{ugTypesWritingOnePageEmpty1}{ugTypesWritingOnePagePatch1}
+\pastebutton{ugTypesWritingOnePageEmpty1}{\showpaste}
+\tab{5}\spadcommand{e : PrimeField(2 + 3)}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesWritingOnePagePatch2}
+\begin{paste}{ugTypesWritingOnePageFull2}{ugTypesWritingOnePageEmpty2}
+\pastebutton{ugTypesWritingOnePageFull2}{\hidepaste}
+\tab{5}\spadcommand{content(2)$Polynomial(Integer)}
+\indentrel{3}\begin{verbatim}
+ (2) 2
+ Type: Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesWritingOnePageEmpty2}
+\begin{paste}{ugTypesWritingOnePageEmpty2}{ugTypesWritingOnePagePatch2}
+\pastebutton{ugTypesWritingOnePageEmpty2}{\showpaste}
+\tab{5}\spadcommand{content(2)$Polynomial(Integer)}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesWritingOnePagePatch3}
+\begin{paste}{ugTypesWritingOnePageFull3}{ugTypesWritingOnePageEmpty3}
+\pastebutton{ugTypesWritingOnePageFull3}{\hidepaste}
+\tab{5}\spadcommand{content(2)$(Polynomial Complex Fraction Integer)}
+\indentrel{3}\begin{verbatim}
+ (3) 2
+ Type: Complex Fraction Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesWritingOnePageEmpty3}
+\begin{paste}{ugTypesWritingOnePageEmpty3}{ugTypesWritingOnePagePatch3}
+\pastebutton{ugTypesWritingOnePageEmpty3}{\showpaste}
+\tab{5}\spadcommand{content(2)$(Polynomial Complex Fraction Integer)}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesWritingOnePagePatch4}
+\begin{paste}{ugTypesWritingOnePageFull4}{ugTypesWritingOnePageEmpty4}
+\pastebutton{ugTypesWritingOnePageFull4}{\hidepaste}
+\tab{5}\spadcommand{(2/3)@Fraction(Polynomial(Integer))}
+\indentrel{3}\begin{verbatim}
+ 2
+ (4) Ä
+ 3
+ Type: Fraction Polynomial Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesWritingOnePageEmpty4}
+\begin{paste}{ugTypesWritingOnePageEmpty4}{ugTypesWritingOnePagePatch4}
+\pastebutton{ugTypesWritingOnePageEmpty4}{\showpaste}
+\tab{5}\spadcommand{(2/3)@Fraction(Polynomial(Integer))}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesWritingOnePagePatch5}
+\begin{paste}{ugTypesWritingOnePageFull5}{ugTypesWritingOnePageEmpty5}
+\pastebutton{ugTypesWritingOnePageFull5}{\hidepaste}
+\tab{5}\spadcommand{(2/3)@Fraction(Polynomial Integer)}
+\indentrel{3}\begin{verbatim}
+ 2
+ (5) Ä
+ 3
+ Type: Fraction Polynomial Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesWritingOnePageEmpty5}
+\begin{paste}{ugTypesWritingOnePageEmpty5}{ugTypesWritingOnePagePatch5}
+\pastebutton{ugTypesWritingOnePageEmpty5}{\showpaste}
+\tab{5}\spadcommand{(2/3)@Fraction(Polynomial Integer)}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesWritingOnePagePatch6}
+\begin{paste}{ugTypesWritingOnePageFull6}{ugTypesWritingOnePageEmpty6}
+\pastebutton{ugTypesWritingOnePageFull6}{\hidepaste}
+\tab{5}\spadcommand{(d,f,g) : Complex Polynomial Integer}
+\indentrel{3}\begin{verbatim}
+ Type: Void
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesWritingOnePageEmpty6}
+\begin{paste}{ugTypesWritingOnePageEmpty6}{ugTypesWritingOnePagePatch6}
+\pastebutton{ugTypesWritingOnePageEmpty6}{\showpaste}
+\tab{5}\spadcommand{(d,f,g) : Complex Polynomial Integer}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesSubdomainsPagePatch1}
+\begin{paste}{ugTypesSubdomainsPageFull1}{ugTypesSubdomainsPageEmpty1}
+\pastebutton{ugTypesSubdomainsPageFull1}{\hidepaste}
+\tab{5}\spadcommand{5}
+\indentrel{3}\begin{verbatim}
+ (1) 5
+ Type: PositiveInteger
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesSubdomainsPageEmpty1}
+\begin{paste}{ugTypesSubdomainsPageEmpty1}{ugTypesSubdomainsPagePatch1}
+\pastebutton{ugTypesSubdomainsPageEmpty1}{\showpaste}
+\tab{5}\spadcommand{5}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesSubdomainsPagePatch2}
+\begin{paste}{ugTypesSubdomainsPageFull2}{ugTypesSubdomainsPageEmpty2}
+\pastebutton{ugTypesSubdomainsPageFull2}{\hidepaste}
+\tab{5}\spadcommand{0}
+\indentrel{3}\begin{verbatim}
+ (2) 0
+ Type: NonNegativeInteger
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesSubdomainsPageEmpty2}
+\begin{paste}{ugTypesSubdomainsPageEmpty2}{ugTypesSubdomainsPagePatch2}
+\pastebutton{ugTypesSubdomainsPageEmpty2}{\showpaste}
+\tab{5}\spadcommand{0}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesSubdomainsPagePatch3}
+\begin{paste}{ugTypesSubdomainsPageFull3}{ugTypesSubdomainsPageEmpty3}
+\pastebutton{ugTypesSubdomainsPageFull3}{\hidepaste}
+\tab{5}\spadcommand{-5}
+\indentrel{3}\begin{verbatim}
+ (3) - 5
+ Type: Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesSubdomainsPageEmpty3}
+\begin{paste}{ugTypesSubdomainsPageEmpty3}{ugTypesSubdomainsPagePatch3}
+\pastebutton{ugTypesSubdomainsPageEmpty3}{\showpaste}
+\tab{5}\spadcommand{-5}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesSubdomainsPagePatch4}
+\begin{paste}{ugTypesSubdomainsPageFull4}{ugTypesSubdomainsPageEmpty4}
+\pastebutton{ugTypesSubdomainsPageFull4}{\hidepaste}
+\tab{5}\spadcommand{(-2) - (-3)}
+\indentrel{3}\begin{verbatim}
+ (4) 1
+ Type: PositiveInteger
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesSubdomainsPageEmpty4}
+\begin{paste}{ugTypesSubdomainsPageEmpty4}{ugTypesSubdomainsPagePatch4}
+\pastebutton{ugTypesSubdomainsPageEmpty4}{\showpaste}
+\tab{5}\spadcommand{(-2) - (-3)}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesSubdomainsPagePatch5}
+\begin{paste}{ugTypesSubdomainsPageFull5}{ugTypesSubdomainsPageEmpty5}
+\pastebutton{ugTypesSubdomainsPageFull5}{\hidepaste}
+\tab{5}\spadcommand{0 :: Integer}
+\indentrel{3}\begin{verbatim}
+ (5) 0
+ Type: Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesSubdomainsPageEmpty5}
+\begin{paste}{ugTypesSubdomainsPageEmpty5}{ugTypesSubdomainsPagePatch5}
+\pastebutton{ugTypesSubdomainsPageEmpty5}{\showpaste}
+\tab{5}\spadcommand{0 :: Integer}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesSubdomainsPagePatch6}
+\begin{paste}{ugTypesSubdomainsPageFull6}{ugTypesSubdomainsPageEmpty6}
+\pastebutton{ugTypesSubdomainsPageFull6}{\hidepaste}
+\tab{5}\spadcommand{x : NonNegativeInteger := 5}
+\indentrel{3}\begin{verbatim}
+ (6) 5
+ Type: NonNegativeInteger
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesSubdomainsPageEmpty6}
+\begin{paste}{ugTypesSubdomainsPageEmpty6}{ugTypesSubdomainsPagePatch6}
+\pastebutton{ugTypesSubdomainsPageEmpty6}{\showpaste}
+\tab{5}\spadcommand{x : NonNegativeInteger := 5}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesSubdomainsPagePatch7}
+\begin{paste}{ugTypesSubdomainsPageFull7}{ugTypesSubdomainsPageEmpty7}
+\pastebutton{ugTypesSubdomainsPageFull7}{\hidepaste}
+\tab{5}\spadcommand{2 ** 2}
+\indentrel{3}\begin{verbatim}
+ (7) 4
+ Type: PositiveInteger
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesSubdomainsPageEmpty7}
+\begin{paste}{ugTypesSubdomainsPageEmpty7}{ugTypesSubdomainsPagePatch7}
+\pastebutton{ugTypesSubdomainsPageEmpty7}{\showpaste}
+\tab{5}\spadcommand{2 ** 2}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesSubdomainsPagePatch8}
+\begin{paste}{ugTypesSubdomainsPageFull8}{ugTypesSubdomainsPageEmpty8}
+\pastebutton{ugTypesSubdomainsPageFull8}{\hidepaste}
+\tab{5}\spadcommand{2 ** (-2)}
+\indentrel{3}\begin{verbatim}
+ 1
+ (8) Ä
+ 4
+ Type: Fraction Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesSubdomainsPageEmpty8}
+\begin{paste}{ugTypesSubdomainsPageEmpty8}{ugTypesSubdomainsPagePatch8}
+\pastebutton{ugTypesSubdomainsPageEmpty8}{\showpaste}
+\tab{5}\spadcommand{2 ** (-2)}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesSubdomainsPagePatch9}
+\begin{paste}{ugTypesSubdomainsPageFull9}{ugTypesSubdomainsPageEmpty9}
+\pastebutton{ugTypesSubdomainsPageFull9}{\hidepaste}
+\tab{5}\spadcommand{[10**i for i in 2..5]}
+\indentrel{3}\begin{verbatim}
+ (9) [100,1000,10000,100000]
+ Type: List PositiveInteger
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesSubdomainsPageEmpty9}
+\begin{paste}{ugTypesSubdomainsPageEmpty9}{ugTypesSubdomainsPagePatch9}
+\pastebutton{ugTypesSubdomainsPageEmpty9}{\showpaste}
+\tab{5}\spadcommand{[10**i for i in 2..5]}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesSubdomainsPagePatch10}
+\begin{paste}{ugTypesSubdomainsPageFull10}{ugTypesSubdomainsPageEmpty10}
+\pastebutton{ugTypesSubdomainsPageFull10}{\hidepaste}
+\tab{5}\spadcommand{[10**(i-1) for i in 2..5]}
+\indentrel{3}\begin{verbatim}
+ (10) [10,100,1000,10000]
+ Type: List Fraction Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesSubdomainsPageEmpty10}
+\begin{paste}{ugTypesSubdomainsPageEmpty10}{ugTypesSubdomainsPagePatch10}
+\pastebutton{ugTypesSubdomainsPageEmpty10}{\showpaste}
+\tab{5}\spadcommand{[10**(i-1) for i in 2..5]}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesSubdomainsPagePatch11}
+\begin{paste}{ugTypesSubdomainsPageFull11}{ugTypesSubdomainsPageEmpty11}
+\pastebutton{ugTypesSubdomainsPageFull11}{\hidepaste}
+\tab{5}\spadcommand{[10**((i-1) :: PI) for i in 2..5]}
+\indentrel{3}\begin{verbatim}
+ (11) [10,100,1000,10000]
+ Type: List PositiveInteger
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesSubdomainsPageEmpty11}
+\begin{paste}{ugTypesSubdomainsPageEmpty11}{ugTypesSubdomainsPagePatch11}
+\pastebutton{ugTypesSubdomainsPageEmpty11}{\showpaste}
+\tab{5}\spadcommand{[10**((i-1) :: PI) for i in 2..5]}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesSubdomainsPagePatch12}
+\begin{paste}{ugTypesSubdomainsPageFull12}{ugTypesSubdomainsPageEmpty12}
+\pastebutton{ugTypesSubdomainsPageFull12}{\hidepaste}
+\tab{5}\spadcommand{[10**((i-1) pretend PI) for i in 2..5]}
+\indentrel{3}\begin{verbatim}
+ (12) [10,100,1000,10000]
+ Type: List PositiveInteger
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesSubdomainsPageEmpty12}
+\begin{paste}{ugTypesSubdomainsPageEmpty12}{ugTypesSubdomainsPagePatch12}
+\pastebutton{ugTypesSubdomainsPageEmpty12}{\showpaste}
+\tab{5}\spadcommand{[10**((i-1) pretend PI) for i in 2..5]}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesSubdomainsPagePatch13}
+\begin{paste}{ugTypesSubdomainsPageFull13}{ugTypesSubdomainsPageEmpty13}
+\pastebutton{ugTypesSubdomainsPageFull13}{\hidepaste}
+\tab{5}\spadcommand{(2/3) pretend Complex Integer}
+\indentrel{3}\begin{verbatim}
+ (13) 2 + 3%i
+ Type: Complex Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesSubdomainsPageEmpty13}
+\begin{paste}{ugTypesSubdomainsPageEmpty13}{ugTypesSubdomainsPagePatch13}
+\pastebutton{ugTypesSubdomainsPageEmpty13}{\showpaste}
+\tab{5}\spadcommand{(2/3) pretend Complex Integer}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWOSelPagePatch1}
+\begin{paste}{ugTypesUnionsWOSelPageFull1}{ugTypesUnionsWOSelPageEmpty1}
+\pastebutton{ugTypesUnionsWOSelPageFull1}{\hidepaste}
+\tab{5}\spadcommand{sayBranch(x : Union(Integer,String,Float)) : Void ==
+ output
+ x case Integer => "Integer branch"
+ x case String => "String branch"
+ "Float branch"
+\bound{sayBranch }}
+\indentrel{3}\begin{verbatim}
+ Type: Void
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWOSelPageEmpty1}
+\begin{paste}{ugTypesUnionsWOSelPageEmpty1}{ugTypesUnionsWOSelPagePatch1}
+\pastebutton{ugTypesUnionsWOSelPageEmpty1}{\showpaste}
+\tab{5}\spadcommand{sayBranch(x : Union(Integer,String,Float)) : Void ==
+ output
+ x case Integer => "Integer branch"
+ x case String => "String branch"
+ "Float branch"
+\bound{sayBranch }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWOSelPagePatch2}
+\begin{paste}{ugTypesUnionsWOSelPageFull2}{ugTypesUnionsWOSelPageEmpty2}
+\pastebutton{ugTypesUnionsWOSelPageFull2}{\hidepaste}
+\tab{5}\spadcommand{sayBranch 1\free{sayBranch }}
+\indentrel{3}\begin{verbatim}
+ Integer branch
+ Type: Void
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWOSelPageEmpty2}
+\begin{paste}{ugTypesUnionsWOSelPageEmpty2}{ugTypesUnionsWOSelPagePatch2}
+\pastebutton{ugTypesUnionsWOSelPageEmpty2}{\showpaste}
+\tab{5}\spadcommand{sayBranch 1\free{sayBranch }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWOSelPagePatch3}
+\begin{paste}{ugTypesUnionsWOSelPageFull3}{ugTypesUnionsWOSelPageEmpty3}
+\pastebutton{ugTypesUnionsWOSelPageFull3}{\hidepaste}
+\tab{5}\spadcommand{sayBranch "hello"\free{sayBranch }}
+\indentrel{3}\begin{verbatim}
+ String branch
+ Type: Void
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWOSelPageEmpty3}
+\begin{paste}{ugTypesUnionsWOSelPageEmpty3}{ugTypesUnionsWOSelPagePatch3}
+\pastebutton{ugTypesUnionsWOSelPageEmpty3}{\showpaste}
+\tab{5}\spadcommand{sayBranch "hello"\free{sayBranch }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWOSelPagePatch4}
+\begin{paste}{ugTypesUnionsWOSelPageFull4}{ugTypesUnionsWOSelPageEmpty4}
+\pastebutton{ugTypesUnionsWOSelPageFull4}{\hidepaste}
+\tab{5}\spadcommand{sayBranch 2.718281828\free{sayBranch }}
+\indentrel{3}\begin{verbatim}
+ Float branch
+ Type: Void
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWOSelPageEmpty4}
+\begin{paste}{ugTypesUnionsWOSelPageEmpty4}{ugTypesUnionsWOSelPagePatch4}
+\pastebutton{ugTypesUnionsWOSelPageEmpty4}{\showpaste}
+\tab{5}\spadcommand{sayBranch 2.718281828\free{sayBranch }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWOSelPagePatch5}
+\begin{paste}{ugTypesUnionsWOSelPageFull5}{ugTypesUnionsWOSelPageEmpty5}
+\pastebutton{ugTypesUnionsWOSelPageFull5}{\hidepaste}
+\tab{5}\spadcommand{78 :: Union(Integer,String)}
+\indentrel{3}\begin{verbatim}
+ (5) 78
+ Type: Union(Integer,...)
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWOSelPageEmpty5}
+\begin{paste}{ugTypesUnionsWOSelPageEmpty5}{ugTypesUnionsWOSelPagePatch5}
+\pastebutton{ugTypesUnionsWOSelPageEmpty5}{\showpaste}
+\tab{5}\spadcommand{78 :: Union(Integer,String)}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWOSelPagePatch6}
+\begin{paste}{ugTypesUnionsWOSelPageFull6}{ugTypesUnionsWOSelPageEmpty6}
+\pastebutton{ugTypesUnionsWOSelPageFull6}{\hidepaste}
+\tab{5}\spadcommand{s := "string" :: Union(Integer,String)\bound{s }}
+\indentrel{3}\begin{verbatim}
+ (6) "string"
+ Type: Union(String,...)
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWOSelPageEmpty6}
+\begin{paste}{ugTypesUnionsWOSelPageEmpty6}{ugTypesUnionsWOSelPagePatch6}
+\pastebutton{ugTypesUnionsWOSelPageEmpty6}{\showpaste}
+\tab{5}\spadcommand{s := "string" :: Union(Integer,String)\bound{s }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWOSelPagePatch7}
+\begin{paste}{ugTypesUnionsWOSelPageFull7}{ugTypesUnionsWOSelPageEmpty7}
+\pastebutton{ugTypesUnionsWOSelPageFull7}{\hidepaste}
+\tab{5}\spadcommand{typeOf s}
+\indentrel{3}\begin{verbatim}
+ (7) Union(Integer,String)
+ Type: Domain
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWOSelPageEmpty7}
+\begin{paste}{ugTypesUnionsWOSelPageEmpty7}{ugTypesUnionsWOSelPagePatch7}
+\pastebutton{ugTypesUnionsWOSelPageEmpty7}{\showpaste}
+\tab{5}\spadcommand{typeOf s}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWOSelPagePatch8}
+\begin{paste}{ugTypesUnionsWOSelPageFull8}{ugTypesUnionsWOSelPageEmpty8}
+\pastebutton{ugTypesUnionsWOSelPageFull8}{\hidepaste}
+\tab{5}\spadcommand{three := exquo(6,2)\bound{three }}
+\indentrel{3}\begin{verbatim}
+ (8) 3
+ Type: Union(Integer,...)
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWOSelPageEmpty8}
+\begin{paste}{ugTypesUnionsWOSelPageEmpty8}{ugTypesUnionsWOSelPagePatch8}
+\pastebutton{ugTypesUnionsWOSelPageEmpty8}{\showpaste}
+\tab{5}\spadcommand{three := exquo(6,2)\bound{three }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWOSelPagePatch9}
+\begin{paste}{ugTypesUnionsWOSelPageFull9}{ugTypesUnionsWOSelPageEmpty9}
+\pastebutton{ugTypesUnionsWOSelPageFull9}{\hidepaste}
+\tab{5}\spadcommand{exquo(5,2)}
+\indentrel{3}\begin{verbatim}
+ (9) "failed"
+ Type: Union("failed",...)
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWOSelPageEmpty9}
+\begin{paste}{ugTypesUnionsWOSelPageEmpty9}{ugTypesUnionsWOSelPagePatch9}
+\pastebutton{ugTypesUnionsWOSelPageEmpty9}{\showpaste}
+\tab{5}\spadcommand{exquo(5,2)}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWOSelPagePatch10}
+\begin{paste}{ugTypesUnionsWOSelPageFull10}{ugTypesUnionsWOSelPageEmpty10}
+\pastebutton{ugTypesUnionsWOSelPageFull10}{\hidepaste}
+\tab{5}\spadcommand{r: FRAC INT := 3\bound{r }\bound{rdec }}
+\indentrel{3}\begin{verbatim}
+ (10) 3
+ Type: Fraction Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWOSelPageEmpty10}
+\begin{paste}{ugTypesUnionsWOSelPageEmpty10}{ugTypesUnionsWOSelPagePatch10}
+\pastebutton{ugTypesUnionsWOSelPageEmpty10}{\showpaste}
+\tab{5}\spadcommand{r: FRAC INT := 3\bound{r }\bound{rdec }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWOSelPagePatch11}
+\begin{paste}{ugTypesUnionsWOSelPageFull11}{ugTypesUnionsWOSelPageEmpty11}
+\pastebutton{ugTypesUnionsWOSelPageFull11}{\hidepaste}
+\tab{5}\spadcommand{retractIfCan(r)\free{r }}
+\indentrel{3}\begin{verbatim}
+ (11) 3
+ Type: Union(Integer,...)
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWOSelPageEmpty11}
+\begin{paste}{ugTypesUnionsWOSelPageEmpty11}{ugTypesUnionsWOSelPagePatch11}
+\pastebutton{ugTypesUnionsWOSelPageEmpty11}{\showpaste}
+\tab{5}\spadcommand{retractIfCan(r)\free{r }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWOSelPagePatch12}
+\begin{paste}{ugTypesUnionsWOSelPageFull12}{ugTypesUnionsWOSelPageEmpty12}
+\pastebutton{ugTypesUnionsWOSelPageFull12}{\hidepaste}
+\tab{5}\spadcommand{r := 3/2\bound{r1 }\free{rdec }}
+\indentrel{3}\begin{verbatim}
+ 3
+ (12) Ä
+ 2
+ Type: Fraction Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWOSelPageEmpty12}
+\begin{paste}{ugTypesUnionsWOSelPageEmpty12}{ugTypesUnionsWOSelPagePatch12}
+\pastebutton{ugTypesUnionsWOSelPageEmpty12}{\showpaste}
+\tab{5}\spadcommand{r := 3/2\bound{r1 }\free{rdec }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWOSelPagePatch13}
+\begin{paste}{ugTypesUnionsWOSelPageFull13}{ugTypesUnionsWOSelPageEmpty13}
+\pastebutton{ugTypesUnionsWOSelPageFull13}{\hidepaste}
+\tab{5}\spadcommand{retractIfCan(r)\free{r1 }}
+\indentrel{3}\begin{verbatim}
+ (13) "failed"
+ Type: Union("failed",...)
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesUnionsWOSelPageEmpty13}
+\begin{paste}{ugTypesUnionsWOSelPageEmpty13}{ugTypesUnionsWOSelPagePatch13}
+\pastebutton{ugTypesUnionsWOSelPageEmpty13}{\showpaste}
+\tab{5}\spadcommand{retractIfCan(r)\free{r1 }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesWritingAbbrPagePatch1}
+\begin{paste}{ugTypesWritingAbbrPageFull1}{ugTypesWritingAbbrPageEmpty1}
+\pastebutton{ugTypesWritingAbbrPageFull1}{\hidepaste}
+\tab{5}\spadcommand{)abb q Integer}
+\indentrel{3}\begin{verbatim}
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesWritingAbbrPageEmpty1}
+\begin{paste}{ugTypesWritingAbbrPageEmpty1}{ugTypesWritingAbbrPagePatch1}
+\pastebutton{ugTypesWritingAbbrPageEmpty1}{\showpaste}
+\tab{5}\spadcommand{)abb q Integer}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesWritingAbbrPagePatch2}
+\begin{paste}{ugTypesWritingAbbrPageFull2}{ugTypesWritingAbbrPageEmpty2}
+\pastebutton{ugTypesWritingAbbrPageFull2}{\hidepaste}
+\tab{5}\spadcommand{)abb q DMP}
+\indentrel{3}\begin{verbatim}
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesWritingAbbrPageEmpty2}
+\begin{paste}{ugTypesWritingAbbrPageEmpty2}{ugTypesWritingAbbrPagePatch2}
+\pastebutton{ugTypesWritingAbbrPageEmpty2}{\showpaste}
+\tab{5}\spadcommand{)abb q DMP}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesWritingAbbrPagePatch3}
+\begin{paste}{ugTypesWritingAbbrPageFull3}{ugTypesWritingAbbrPageEmpty3}
+\pastebutton{ugTypesWritingAbbrPageFull3}{\hidepaste}
+\tab{5}\spadcommand{)what packages ode}
+\indentrel{3}\begin{verbatim}
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesWritingAbbrPageEmpty3}
+\begin{paste}{ugTypesWritingAbbrPageEmpty3}{ugTypesWritingAbbrPagePatch3}
+\pastebutton{ugTypesWritingAbbrPageEmpty3}{\showpaste}
+\tab{5}\spadcommand{)what packages ode}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicPagePatch1}
+\begin{paste}{ugTypesBasicPageFull1}{ugTypesBasicPageEmpty1}
+\pastebutton{ugTypesBasicPageFull1}{\hidepaste}
+\tab{5}\spadcommand{-3}
+\indentrel{3}\begin{verbatim}
+ (1) - 3
+ Type: Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicPageEmpty1}
+\begin{paste}{ugTypesBasicPageEmpty1}{ugTypesBasicPagePatch1}
+\pastebutton{ugTypesBasicPageEmpty1}{\showpaste}
+\tab{5}\spadcommand{-3}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicPagePatch2}
+\begin{paste}{ugTypesBasicPageFull2}{ugTypesBasicPageEmpty2}
+\pastebutton{ugTypesBasicPageFull2}{\hidepaste}
+\tab{5}\spadcommand{-3/1}
+\indentrel{3}\begin{verbatim}
+ (2) - 3
+ Type: Fraction Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicPageEmpty2}
+\begin{paste}{ugTypesBasicPageEmpty2}{ugTypesBasicPagePatch2}
+\pastebutton{ugTypesBasicPageEmpty2}{\showpaste}
+\tab{5}\spadcommand{-3/1}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicPagePatch3}
+\begin{paste}{ugTypesBasicPageFull3}{ugTypesBasicPageEmpty3}
+\pastebutton{ugTypesBasicPageFull3}{\hidepaste}
+\tab{5}\spadcommand{x + 3 - x\bound{three }}
+\indentrel{3}\begin{verbatim}
+ (3) 3
+ Type: Polynomial Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicPageEmpty3}
+\begin{paste}{ugTypesBasicPageEmpty3}{ugTypesBasicPagePatch3}
+\pastebutton{ugTypesBasicPageEmpty3}{\showpaste}
+\tab{5}\spadcommand{x + 3 - x\bound{three }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicPagePatch4}
+\begin{paste}{ugTypesBasicPageFull4}{ugTypesBasicPageEmpty4}
+\pastebutton{ugTypesBasicPageFull4}{\hidepaste}
+\tab{5}\spadcommand{factorial(\%)\free{three }}
+\indentrel{3}\begin{verbatim}
+ (4) 6
+ Type: Expression Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicPageEmpty4}
+\begin{paste}{ugTypesBasicPageEmpty4}{ugTypesBasicPagePatch4}
+\pastebutton{ugTypesBasicPageEmpty4}{\showpaste}
+\tab{5}\spadcommand{factorial(\%)\free{three }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicPagePatch5}
+\begin{paste}{ugTypesBasicPageFull5}{ugTypesBasicPageEmpty5}
+\pastebutton{ugTypesBasicPageFull5}{\hidepaste}
+\tab{5}\spadcommand{3}
+\indentrel{3}\begin{verbatim}
+ (5) 3
+ Type: PositiveInteger
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicPageEmpty5}
+\begin{paste}{ugTypesBasicPageEmpty5}{ugTypesBasicPagePatch5}
+\pastebutton{ugTypesBasicPageEmpty5}{\showpaste}
+\tab{5}\spadcommand{3}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicDomainConsPagePatch1}
+\begin{paste}{ugTypesBasicDomainConsPageFull1}{ugTypesBasicDomainConsPageEmpty1}
+\pastebutton{ugTypesBasicDomainConsPageFull1}{\hidepaste}
+\tab{5}\spadcommand{factorial(7)}
+\indentrel{3}\begin{verbatim}
+ (1) 5040
+ Type: PositiveInteger
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicDomainConsPageEmpty1}
+\begin{paste}{ugTypesBasicDomainConsPageEmpty1}{ugTypesBasicDomainConsPagePatch1}
+\pastebutton{ugTypesBasicDomainConsPageEmpty1}{\showpaste}
+\tab{5}\spadcommand{factorial(7)}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicDomainConsPagePatch2}
+\begin{paste}{ugTypesBasicDomainConsPageFull2}{ugTypesBasicDomainConsPageEmpty2}
+\pastebutton{ugTypesBasicDomainConsPageFull2}{\hidepaste}
+\tab{5}\spadcommand{Polynomial(Integer)}
+\indentrel{3}\begin{verbatim}
+ (2) Polynomial Integer
+ Type: Domain
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicDomainConsPageEmpty2}
+\begin{paste}{ugTypesBasicDomainConsPageEmpty2}{ugTypesBasicDomainConsPagePatch2}
+\pastebutton{ugTypesBasicDomainConsPageEmpty2}{\showpaste}
+\tab{5}\spadcommand{Polynomial(Integer)}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicDomainConsPagePatch3}
+\begin{paste}{ugTypesBasicDomainConsPageFull3}{ugTypesBasicDomainConsPageEmpty3}
+\pastebutton{ugTypesBasicDomainConsPageFull3}{\hidepaste}
+\tab{5}\spadcommand{List (List (Matrix (Polynomial (Complex (Fraction (Integer))))))}
+\indentrel{3}\begin{verbatim}
+ (3)
+ List List Matrix Polynomial Complex Fraction Integer
+ Type: Domain
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicDomainConsPageEmpty3}
+\begin{paste}{ugTypesBasicDomainConsPageEmpty3}{ugTypesBasicDomainConsPagePatch3}
+\pastebutton{ugTypesBasicDomainConsPageEmpty3}{\showpaste}
+\tab{5}\spadcommand{List (List (Matrix (Polynomial (Complex (Fraction (Integer))))))}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicDomainConsPagePatch4}
+\begin{paste}{ugTypesBasicDomainConsPageFull4}{ugTypesBasicDomainConsPageEmpty4}
+\pastebutton{ugTypesBasicDomainConsPageFull4}{\hidepaste}
+\tab{5}\spadcommand{Polynomial(String)}
+\indentrel{3}\begin{verbatim}
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicDomainConsPageEmpty4}
+\begin{paste}{ugTypesBasicDomainConsPageEmpty4}{ugTypesBasicDomainConsPagePatch4}
+\pastebutton{ugTypesBasicDomainConsPageEmpty4}{\showpaste}
+\tab{5}\spadcommand{Polynomial(String)}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicDomainConsPagePatch5}
+\begin{paste}{ugTypesBasicDomainConsPageFull5}{ugTypesBasicDomainConsPageEmpty5}
+\pastebutton{ugTypesBasicDomainConsPageFull5}{\hidepaste}
+\tab{5}\spadcommand{Polynomial(Integer) has Ring}
+\indentrel{3}\begin{verbatim}
+ (4) true
+ Type: Boolean
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicDomainConsPageEmpty5}
+\begin{paste}{ugTypesBasicDomainConsPageEmpty5}{ugTypesBasicDomainConsPagePatch5}
+\pastebutton{ugTypesBasicDomainConsPageEmpty5}{\showpaste}
+\tab{5}\spadcommand{Polynomial(Integer) has Ring}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicDomainConsPagePatch6}
+\begin{paste}{ugTypesBasicDomainConsPageFull6}{ugTypesBasicDomainConsPageEmpty6}
+\pastebutton{ugTypesBasicDomainConsPageFull6}{\hidepaste}
+\tab{5}\spadcommand{List(Integer) has Ring}
+\indentrel{3}\begin{verbatim}
+ (5) false
+ Type: Boolean
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicDomainConsPageEmpty6}
+\begin{paste}{ugTypesBasicDomainConsPageEmpty6}{ugTypesBasicDomainConsPagePatch6}
+\pastebutton{ugTypesBasicDomainConsPageEmpty6}{\showpaste}
+\tab{5}\spadcommand{List(Integer) has Ring}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicDomainConsPagePatch7}
+\begin{paste}{ugTypesBasicDomainConsPageFull7}{ugTypesBasicDomainConsPageEmpty7}
+\pastebutton{ugTypesBasicDomainConsPageFull7}{\hidepaste}
+\tab{5}\spadcommand{Matrix(Integer) has Ring}
+\indentrel{3}\begin{verbatim}
+ (6) false
+ Type: Boolean
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicDomainConsPageEmpty7}
+\begin{paste}{ugTypesBasicDomainConsPageEmpty7}{ugTypesBasicDomainConsPagePatch7}
+\pastebutton{ugTypesBasicDomainConsPageEmpty7}{\showpaste}
+\tab{5}\spadcommand{Matrix(Integer) has Ring}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicDomainConsPagePatch8}
+\begin{paste}{ugTypesBasicDomainConsPageFull8}{ugTypesBasicDomainConsPageEmpty8}
+\pastebutton{ugTypesBasicDomainConsPageFull8}{\hidepaste}
+\tab{5}\spadcommand{Polynomial(Matrix(Integer))}
+\indentrel{3}\begin{verbatim}
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicDomainConsPageEmpty8}
+\begin{paste}{ugTypesBasicDomainConsPageEmpty8}{ugTypesBasicDomainConsPagePatch8}
+\pastebutton{ugTypesBasicDomainConsPageEmpty8}{\showpaste}
+\tab{5}\spadcommand{Polynomial(Matrix(Integer))}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicDomainConsPagePatch9}
+\begin{paste}{ugTypesBasicDomainConsPageFull9}{ugTypesBasicDomainConsPageEmpty9}
+\pastebutton{ugTypesBasicDomainConsPageFull9}{\hidepaste}
+\tab{5}\spadcommand{Polynomial(SquareMatrix(7,Complex(Integer)))}
+\indentrel{3}\begin{verbatim}
+ (7) Polynomial SquareMatrix(7,Complex Integer)
+ Type: Domain
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicDomainConsPageEmpty9}
+\begin{paste}{ugTypesBasicDomainConsPageEmpty9}{ugTypesBasicDomainConsPagePatch9}
+\pastebutton{ugTypesBasicDomainConsPageEmpty9}{\showpaste}
+\tab{5}\spadcommand{Polynomial(SquareMatrix(7,Complex(Integer)))}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicDomainConsPagePatch10}
+\begin{paste}{ugTypesBasicDomainConsPageFull10}{ugTypesBasicDomainConsPageEmpty10}
+\pastebutton{ugTypesBasicDomainConsPageFull10}{\hidepaste}
+\tab{5}\spadcommand{Complex(Integer) has Field}
+\indentrel{3}\begin{verbatim}
+ (8) false
+ Type: Boolean
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicDomainConsPageEmpty10}
+\begin{paste}{ugTypesBasicDomainConsPageEmpty10}{ugTypesBasicDomainConsPagePatch10}
+\pastebutton{ugTypesBasicDomainConsPageEmpty10}{\showpaste}
+\tab{5}\spadcommand{Complex(Integer) has Field}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicDomainConsPagePatch11}
+\begin{paste}{ugTypesBasicDomainConsPageFull11}{ugTypesBasicDomainConsPageEmpty11}
+\pastebutton{ugTypesBasicDomainConsPageFull11}{\hidepaste}
+\tab{5}\spadcommand{Fraction(Complex(Integer)) has Field}
+\indentrel{3}\begin{verbatim}
+ (9) true
+ Type: Boolean
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicDomainConsPageEmpty11}
+\begin{paste}{ugTypesBasicDomainConsPageEmpty11}{ugTypesBasicDomainConsPagePatch11}
+\pastebutton{ugTypesBasicDomainConsPageEmpty11}{\showpaste}
+\tab{5}\spadcommand{Fraction(Complex(Integer)) has Field}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicDomainConsPagePatch12}
+\begin{paste}{ugTypesBasicDomainConsPageFull12}{ugTypesBasicDomainConsPageEmpty12}
+\pastebutton{ugTypesBasicDomainConsPageFull12}{\hidepaste}
+\tab{5}\spadcommand{Complex(Fraction(Integer)) has Field}
+\indentrel{3}\begin{verbatim}
+ (10) true
+ Type: Boolean
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesBasicDomainConsPageEmpty12}
+\begin{paste}{ugTypesBasicDomainConsPageEmpty12}{ugTypesBasicDomainConsPagePatch12}
+\pastebutton{ugTypesBasicDomainConsPageEmpty12}{\showpaste}
+\tab{5}\spadcommand{Complex(Fraction(Integer)) has Field}
+\end{paste}\end{patch}
+
+\begin{patch}{ugAvailSnoopPagePatch1}
+\begin{paste}{ugAvailSnoopPageFull1}{ugAvailSnoopPageEmpty1}
+\pastebutton{ugAvailSnoopPageFull1}{\hidepaste}
+\tab{5}\spadcommand{)what operation complex}
+\indentrel{3}\begin{verbatim}
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugAvailSnoopPageEmpty1}
+\begin{paste}{ugAvailSnoopPageEmpty1}{ugAvailSnoopPagePatch1}
+\pastebutton{ugAvailSnoopPageEmpty1}{\showpaste}
+\tab{5}\spadcommand{)what operation complex}
+\end{paste}\end{patch}
+
+\begin{patch}{ugAvailSnoopPagePatch2}
+\begin{paste}{ugAvailSnoopPageFull2}{ugAvailSnoopPageEmpty2}
+\pastebutton{ugAvailSnoopPageFull2}{\hidepaste}
+\tab{5}\spadcommand{)what domain matrix}
+\indentrel{3}\begin{verbatim}
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugAvailSnoopPageEmpty2}
+\begin{paste}{ugAvailSnoopPageEmpty2}{ugAvailSnoopPagePatch2}
+\pastebutton{ugAvailSnoopPageEmpty2}{\showpaste}
+\tab{5}\spadcommand{)what domain matrix}
+\end{paste}\end{patch}
+
+\begin{patch}{ugAvailSnoopPagePatch3}
+\begin{paste}{ugAvailSnoopPageFull3}{ugAvailSnoopPageEmpty3}
+\pastebutton{ugAvailSnoopPageFull3}{\hidepaste}
+\tab{5}\spadcommand{)what package gauss}
+\indentrel{3}\begin{verbatim}
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugAvailSnoopPageEmpty3}
+\begin{paste}{ugAvailSnoopPageEmpty3}{ugAvailSnoopPagePatch3}
+\pastebutton{ugAvailSnoopPageEmpty3}{\showpaste}
+\tab{5}\spadcommand{)what package gauss}
+\end{paste}\end{patch}
+
+\begin{patch}{ugAvailSnoopPagePatch4}
+\begin{paste}{ugAvailSnoopPageFull4}{ugAvailSnoopPageEmpty4}
+\pastebutton{ugAvailSnoopPageFull4}{\hidepaste}
+\tab{5}\spadcommand{)show Any}
+\indentrel{3}\begin{verbatim}
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugAvailSnoopPageEmpty4}
+\begin{paste}{ugAvailSnoopPageEmpty4}{ugAvailSnoopPagePatch4}
+\pastebutton{ugAvailSnoopPageEmpty4}{\showpaste}
+\tab{5}\spadcommand{)show Any}
+\end{paste}\end{patch}
+
+\begin{patch}{ugAvailSnoopPagePatch5}
+\begin{paste}{ugAvailSnoopPageFull5}{ugAvailSnoopPageEmpty5}
+\pastebutton{ugAvailSnoopPageFull5}{\hidepaste}
+\tab{5}\spadcommand{)display operation complex}
+\indentrel{3}\begin{verbatim}
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugAvailSnoopPageEmpty5}
+\begin{paste}{ugAvailSnoopPageEmpty5}{ugAvailSnoopPagePatch5}
+\pastebutton{ugAvailSnoopPageEmpty5}{\showpaste}
+\tab{5}\spadcommand{)display operation complex}
+\end{paste}\end{patch}
+
+\begin{patch}{ugAvailSnoopPagePatch6}
+\begin{paste}{ugAvailSnoopPageFull6}{ugAvailSnoopPageEmpty6}
+\pastebutton{ugAvailSnoopPageFull6}{\hidepaste}
+\tab{5}\spadcommand{)abbreviation query COMPCAT}
+\indentrel{3}\begin{verbatim}
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugAvailSnoopPageEmpty6}
+\begin{paste}{ugAvailSnoopPageEmpty6}{ugAvailSnoopPagePatch6}
+\pastebutton{ugAvailSnoopPageEmpty6}{\showpaste}
+\tab{5}\spadcommand{)abbreviation query COMPCAT}
+\end{paste}\end{patch}
+
+\begin{patch}{ugAvailSnoopPagePatch7}
+\begin{paste}{ugAvailSnoopPageFull7}{ugAvailSnoopPageEmpty7}
+\pastebutton{ugAvailSnoopPageFull7}{\hidepaste}
+\tab{5}\spadcommand{)abbreviation query COMRING}
+\indentrel{3}\begin{verbatim}
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugAvailSnoopPageEmpty7}
+\begin{paste}{ugAvailSnoopPageEmpty7}{ugAvailSnoopPagePatch7}
+\pastebutton{ugAvailSnoopPageEmpty7}{\showpaste}
+\tab{5}\spadcommand{)abbreviation query COMRING}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesExposePagePatch1}
+\begin{paste}{ugTypesExposePageFull1}{ugTypesExposePageEmpty1}
+\pastebutton{ugTypesExposePageFull1}{\hidepaste}
+\tab{5}\spadcommand{x + x}
+\indentrel{3}\begin{verbatim}
+ (1) 2x
+ Type: Polynomial Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesExposePageEmpty1}
+\begin{paste}{ugTypesExposePageEmpty1}{ugTypesExposePagePatch1}
+\pastebutton{ugTypesExposePageEmpty1}{\showpaste}
+\tab{5}\spadcommand{x + x}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesExposePagePatch2}
+\begin{paste}{ugTypesExposePageFull2}{ugTypesExposePageEmpty2}
+\pastebutton{ugTypesExposePageFull2}{\hidepaste}
+\tab{5}\spadcommand{)set expose add constructor OutputForm\bound{setexposeadd }}
+\indentrel{3}\begin{verbatim}
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesExposePageEmpty2}
+\begin{paste}{ugTypesExposePageEmpty2}{ugTypesExposePagePatch2}
+\pastebutton{ugTypesExposePageEmpty2}{\showpaste}
+\tab{5}\spadcommand{)set expose add constructor OutputForm\bound{setexposeadd }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesExposePagePatch3}
+\begin{paste}{ugTypesExposePageFull3}{ugTypesExposePageEmpty3}
+\pastebutton{ugTypesExposePageFull3}{\hidepaste}
+\tab{5}\spadcommand{x + x\free{setexposeadd }}
+\indentrel{3}\begin{verbatim}
+ (2) x + x
+ Type: OutputForm
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesExposePageEmpty3}
+\begin{paste}{ugTypesExposePageEmpty3}{ugTypesExposePagePatch3}
+\pastebutton{ugTypesExposePageEmpty3}{\showpaste}
+\tab{5}\spadcommand{x + x\free{setexposeadd }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesExposePagePatch4}
+\begin{paste}{ugTypesExposePageFull4}{ugTypesExposePageEmpty4}
+\pastebutton{ugTypesExposePageFull4}{\hidepaste}
+\tab{5}\spadcommand{)set expose drop constructor OutputForm\bound{setexposedrop }}
+\indentrel{3}\begin{verbatim}
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesExposePageEmpty4}
+\begin{paste}{ugTypesExposePageEmpty4}{ugTypesExposePagePatch4}
+\pastebutton{ugTypesExposePageEmpty4}{\showpaste}
+\tab{5}\spadcommand{)set expose drop constructor OutputForm\bound{setexposedrop }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesPkgCallPagePatch1}
+\begin{paste}{ugTypesPkgCallPageFull1}{ugTypesPkgCallPageEmpty1}
+\pastebutton{ugTypesPkgCallPageFull1}{\hidepaste}
+\tab{5}\spadcommand{2/3}
+\indentrel{3}\begin{verbatim}
+ 2
+ (1) Ä
+ 3
+ Type: Fraction Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesPkgCallPageEmpty1}
+\begin{paste}{ugTypesPkgCallPageEmpty1}{ugTypesPkgCallPagePatch1}
+\pastebutton{ugTypesPkgCallPageEmpty1}{\showpaste}
+\tab{5}\spadcommand{2/3}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesPkgCallPagePatch2}
+\begin{paste}{ugTypesPkgCallPageFull2}{ugTypesPkgCallPageEmpty2}
+\pastebutton{ugTypesPkgCallPageFull2}{\hidepaste}
+\tab{5}\spadcommand{(2/3)$Float}
+\indentrel{3}\begin{verbatim}
+ (2) 0.6666666666 6666666667
+ Type: Float
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesPkgCallPageEmpty2}
+\begin{paste}{ugTypesPkgCallPageEmpty2}{ugTypesPkgCallPagePatch2}
+\pastebutton{ugTypesPkgCallPageEmpty2}{\showpaste}
+\tab{5}\spadcommand{(2/3)$Float}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesPkgCallPagePatch3}
+\begin{paste}{ugTypesPkgCallPageFull3}{ugTypesPkgCallPageEmpty3}
+\pastebutton{ugTypesPkgCallPageFull3}{\hidepaste}
+\tab{5}\spadcommand{(2/3)$Fraction(Complex Integer)}
+\indentrel{3}\begin{verbatim}
+ 2
+ (3) Ä
+ 3
+ Type: Fraction Complex Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesPkgCallPageEmpty3}
+\begin{paste}{ugTypesPkgCallPageEmpty3}{ugTypesPkgCallPagePatch3}
+\pastebutton{ugTypesPkgCallPageEmpty3}{\showpaste}
+\tab{5}\spadcommand{(2/3)$Fraction(Complex Integer)}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesPkgCallPagePatch4}
+\begin{paste}{ugTypesPkgCallPageFull4}{ugTypesPkgCallPageEmpty4}
+\pastebutton{ugTypesPkgCallPageFull4}{\hidepaste}
+\tab{5}\spadcommand{(2/3)@Float}
+\indentrel{3}\begin{verbatim}
+ (4) 0.6666666666 6666666667
+ Type: Float
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesPkgCallPageEmpty4}
+\begin{paste}{ugTypesPkgCallPageEmpty4}{ugTypesPkgCallPagePatch4}
+\pastebutton{ugTypesPkgCallPageEmpty4}{\showpaste}
+\tab{5}\spadcommand{(2/3)@Float}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesPkgCallPagePatch5}
+\begin{paste}{ugTypesPkgCallPageFull5}{ugTypesPkgCallPageEmpty5}
+\pastebutton{ugTypesPkgCallPageFull5}{\hidepaste}
+\tab{5}\spadcommand{(2 + 3)@String}
+\indentrel{3}\begin{verbatim}
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesPkgCallPageEmpty5}
+\begin{paste}{ugTypesPkgCallPageEmpty5}{ugTypesPkgCallPagePatch5}
+\pastebutton{ugTypesPkgCallPageEmpty5}{\showpaste}
+\tab{5}\spadcommand{(2 + 3)@String}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesPkgCallPagePatch6}
+\begin{paste}{ugTypesPkgCallPageFull6}{ugTypesPkgCallPageEmpty6}
+\pastebutton{ugTypesPkgCallPageFull6}{\hidepaste}
+\tab{5}\spadcommand{(2 + 3)$String}
+\indentrel{3}\begin{verbatim}
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesPkgCallPageEmpty6}
+\begin{paste}{ugTypesPkgCallPageEmpty6}{ugTypesPkgCallPagePatch6}
+\pastebutton{ugTypesPkgCallPageEmpty6}{\showpaste}
+\tab{5}\spadcommand{(2 + 3)$String}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesPkgCallPagePatch7}
+\begin{paste}{ugTypesPkgCallPageFull7}{ugTypesPkgCallPageEmpty7}
+\pastebutton{ugTypesPkgCallPageFull7}{\hidepaste}
+\tab{5}\spadcommand{((x + y * \%i)**2)@(Complex Polynomial Integer)}
+\indentrel{3}\begin{verbatim}
+ 2 2
+ (5) - y + x + 2x y %i
+ Type: Complex Polynomial Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesPkgCallPageEmpty7}
+\begin{paste}{ugTypesPkgCallPageEmpty7}{ugTypesPkgCallPagePatch7}
+\pastebutton{ugTypesPkgCallPageEmpty7}{\showpaste}
+\tab{5}\spadcommand{((x + y * \%i)**2)@(Complex Polynomial Integer)}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesPkgCallPagePatch8}
+\begin{paste}{ugTypesPkgCallPageFull8}{ugTypesPkgCallPageEmpty8}
+\pastebutton{ugTypesPkgCallPageFull8}{\hidepaste}
+\tab{5}\spadcommand{((x + y * \%i)**2)@(Polynomial Complex Integer)}
+\indentrel{3}\begin{verbatim}
+ 2 2
+ (6) - y + 2%i x y + x
+ Type: Polynomial Complex Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesPkgCallPageEmpty8}
+\begin{paste}{ugTypesPkgCallPageEmpty8}{ugTypesPkgCallPagePatch8}
+\pastebutton{ugTypesPkgCallPageEmpty8}{\showpaste}
+\tab{5}\spadcommand{((x + y * \%i)**2)@(Polynomial Complex Integer)}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesPkgCallPagePatch9}
+\begin{paste}{ugTypesPkgCallPageFull9}{ugTypesPkgCallPageEmpty9}
+\pastebutton{ugTypesPkgCallPageFull9}{\hidepaste}
+\tab{5}\spadcommand{(x + y * \%i)**2\bound{prevC }}
+\indentrel{3}\begin{verbatim}
+ 2 2
+ (7) - y + 2%i x y + x
+ Type: Polynomial Complex Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesPkgCallPageEmpty9}
+\begin{paste}{ugTypesPkgCallPageEmpty9}{ugTypesPkgCallPagePatch9}
+\pastebutton{ugTypesPkgCallPageEmpty9}{\showpaste}
+\tab{5}\spadcommand{(x + y * \%i)**2\bound{prevC }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesPkgCallPagePatch10}
+\begin{paste}{ugTypesPkgCallPageFull10}{ugTypesPkgCallPageEmpty10}
+\pastebutton{ugTypesPkgCallPageFull10}{\hidepaste}
+\tab{5}\spadcommand{\% :: Complex ?\free{prevC }}
+\indentrel{3}\begin{verbatim}
+ 2 2
+ (8) - y + x + 2x y %i
+ Type: Complex Polynomial Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesPkgCallPageEmpty10}
+\begin{paste}{ugTypesPkgCallPageEmpty10}{ugTypesPkgCallPagePatch10}
+\pastebutton{ugTypesPkgCallPageEmpty10}{\showpaste}
+\tab{5}\spadcommand{\% :: Complex ?\free{prevC }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesPkgCallPagePatch11}
+\begin{paste}{ugTypesPkgCallPageFull11}{ugTypesPkgCallPageEmpty11}
+\pastebutton{ugTypesPkgCallPageFull11}{\hidepaste}
+\tab{5}\spadcommand{h := matrix [[8,6],[-4,9]]\bound{h }}
+\indentrel{3}\begin{verbatim}
+ Ú 8 6¿
+ (9) ³ ³
+ À- 4 9Ù
+ Type: Matrix Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesPkgCallPageEmpty11}
+\begin{paste}{ugTypesPkgCallPageEmpty11}{ugTypesPkgCallPagePatch11}
+\pastebutton{ugTypesPkgCallPageEmpty11}{\showpaste}
+\tab{5}\spadcommand{h := matrix [[8,6],[-4,9]]\bound{h }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesPkgCallPagePatch12}
+\begin{paste}{ugTypesPkgCallPageFull12}{ugTypesPkgCallPageEmpty12}
+\pastebutton{ugTypesPkgCallPageFull12}{\hidepaste}
+\tab{5}\spadcommand{map(inv$Fraction(Integer),h)\free{h }}
+\indentrel{3}\begin{verbatim}
+ Ú 1 1¿
+ ³ Ä Ä³
+ ³ 8 6³
+ (10) ³ ³
+ ³ 1 1³
+ ³- Ä Ä³
+ À 4 9Ù
+ Type: Matrix Fraction Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesPkgCallPageEmpty12}
+\begin{paste}{ugTypesPkgCallPageEmpty12}{ugTypesPkgCallPagePatch12}
+\pastebutton{ugTypesPkgCallPageEmpty12}{\showpaste}
+\tab{5}\spadcommand{map(inv$Fraction(Integer),h)\free{h }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesPkgCallPagePatch13}
+\begin{paste}{ugTypesPkgCallPageFull13}{ugTypesPkgCallPageEmpty13}
+\pastebutton{ugTypesPkgCallPageFull13}{\hidepaste}
+\tab{5}\spadcommand{map(inv$FRAC(INT),h)\free{h }\bound{h1 }}
+\indentrel{3}\begin{verbatim}
+ Ú 1 1¿
+ ³ Ä Ä³
+ ³ 8 6³
+ (11) ³ ³
+ ³ 1 1³
+ ³- Ä Ä³
+ À 4 9Ù
+ Type: Matrix Fraction Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesPkgCallPageEmpty13}
+\begin{paste}{ugTypesPkgCallPageEmpty13}{ugTypesPkgCallPagePatch13}
+\pastebutton{ugTypesPkgCallPageEmpty13}{\showpaste}
+\tab{5}\spadcommand{map(inv$FRAC(INT),h)\free{h }\bound{h1 }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesPkgCallPagePatch14}
+\begin{paste}{ugTypesPkgCallPageFull14}{ugTypesPkgCallPageEmpty14}
+\pastebutton{ugTypesPkgCallPageFull14}{\hidepaste}
+\tab{5}\spadcommand{map(inv,h)\free{h }}
+\indentrel{3}\begin{verbatim}
+ Ú 1 1¿
+ ³ Ä Ä³
+ ³ 8 6³
+ (12) ³ ³
+ ³ 1 1³
+ ³- Ä Ä³
+ À 4 9Ù
+ Type: Matrix Fraction Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesPkgCallPageEmpty14}
+\begin{paste}{ugTypesPkgCallPageEmpty14}{ugTypesPkgCallPagePatch14}
+\pastebutton{ugTypesPkgCallPageEmpty14}{\showpaste}
+\tab{5}\spadcommand{map(inv,h)\free{h }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesDeclarePagePatch1}
+\begin{paste}{ugTypesDeclarePageFull1}{ugTypesDeclarePageEmpty1}
+\pastebutton{ugTypesDeclarePageFull1}{\hidepaste}
+\tab{5}\spadcommand{a : Integer\bound{a }}
+\indentrel{3}\begin{verbatim}
+ Type: Void
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesDeclarePageEmpty1}
+\begin{paste}{ugTypesDeclarePageEmpty1}{ugTypesDeclarePagePatch1}
+\pastebutton{ugTypesDeclarePageEmpty1}{\showpaste}
+\tab{5}\spadcommand{a : Integer\bound{a }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesDeclarePagePatch2}
+\begin{paste}{ugTypesDeclarePageFull2}{ugTypesDeclarePageEmpty2}
+\pastebutton{ugTypesDeclarePageFull2}{\hidepaste}
+\tab{5}\spadcommand{(b,c) : Integer\bound{b c }}
+\indentrel{3}\begin{verbatim}
+ Type: Void
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesDeclarePageEmpty2}
+\begin{paste}{ugTypesDeclarePageEmpty2}{ugTypesDeclarePagePatch2}
+\pastebutton{ugTypesDeclarePageEmpty2}{\showpaste}
+\tab{5}\spadcommand{(b,c) : Integer\bound{b c }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesDeclarePagePatch3}
+\begin{paste}{ugTypesDeclarePageFull3}{ugTypesDeclarePageEmpty3}
+\pastebutton{ugTypesDeclarePageFull3}{\hidepaste}
+\tab{5}\spadcommand{a := 45\free{a }}
+\indentrel{3}\begin{verbatim}
+ (3) 45
+ Type: Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesDeclarePageEmpty3}
+\begin{paste}{ugTypesDeclarePageEmpty3}{ugTypesDeclarePagePatch3}
+\pastebutton{ugTypesDeclarePageEmpty3}{\showpaste}
+\tab{5}\spadcommand{a := 45\free{a }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesDeclarePagePatch4}
+\begin{paste}{ugTypesDeclarePageFull4}{ugTypesDeclarePageEmpty4}
+\pastebutton{ugTypesDeclarePageFull4}{\hidepaste}
+\tab{5}\spadcommand{b := 4/5\free{b }}
+\indentrel{3}\begin{verbatim}
+ 4
+ Ä
+ 5
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesDeclarePageEmpty4}
+\begin{paste}{ugTypesDeclarePageEmpty4}{ugTypesDeclarePagePatch4}
+\pastebutton{ugTypesDeclarePageEmpty4}{\showpaste}
+\tab{5}\spadcommand{b := 4/5\free{b }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesDeclarePagePatch5}
+\begin{paste}{ugTypesDeclarePageFull5}{ugTypesDeclarePageEmpty5}
+\pastebutton{ugTypesDeclarePageFull5}{\hidepaste}
+\tab{5}\spadcommand{n : Complex ?\bound{n }}
+\indentrel{3}\begin{verbatim}
+ Type: Void
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesDeclarePageEmpty5}
+\begin{paste}{ugTypesDeclarePageEmpty5}{ugTypesDeclarePagePatch5}
+\pastebutton{ugTypesDeclarePageEmpty5}{\showpaste}
+\tab{5}\spadcommand{n : Complex ?\bound{n }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesDeclarePagePatch6}
+\begin{paste}{ugTypesDeclarePageFull6}{ugTypesDeclarePageEmpty6}
+\pastebutton{ugTypesDeclarePageFull6}{\hidepaste}
+\tab{5}\spadcommand{(p,q,r) : Matrix Polynomial ?\bound{p q r }}
+\indentrel{3}\begin{verbatim}
+ Type: Void
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesDeclarePageEmpty6}
+\begin{paste}{ugTypesDeclarePageEmpty6}{ugTypesDeclarePagePatch6}
+\pastebutton{ugTypesDeclarePageEmpty6}{\showpaste}
+\tab{5}\spadcommand{(p,q,r) : Matrix Polynomial ?\bound{p q r }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesDeclarePagePatch7}
+\begin{paste}{ugTypesDeclarePageFull7}{ugTypesDeclarePageEmpty7}
+\pastebutton{ugTypesDeclarePageFull7}{\hidepaste}
+\tab{5}\spadcommand{n := -36 + 9 * \%i\free{n }}
+\indentrel{3}\begin{verbatim}
+ (6) - 36 + 9%i
+ Type: Complex Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesDeclarePageEmpty7}
+\begin{paste}{ugTypesDeclarePageEmpty7}{ugTypesDeclarePagePatch7}
+\pastebutton{ugTypesDeclarePageEmpty7}{\showpaste}
+\tab{5}\spadcommand{n := -36 + 9 * \%i\free{n }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesDeclarePagePatch8}
+\begin{paste}{ugTypesDeclarePageFull8}{ugTypesDeclarePageEmpty8}
+\pastebutton{ugTypesDeclarePageFull8}{\hidepaste}
+\tab{5}\spadcommand{n := complex(4/(x + y),y/x)\free{n }}
+\indentrel{3}\begin{verbatim}
+ 4 y
+ (7) ÄÄÄÄÄ + Ä %i
+ y + x x
+ Type: Complex Fraction Polynomial Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesDeclarePageEmpty8}
+\begin{paste}{ugTypesDeclarePageEmpty8}{ugTypesDeclarePagePatch8}
+\pastebutton{ugTypesDeclarePageEmpty8}{\showpaste}
+\tab{5}\spadcommand{n := complex(4/(x + y),y/x)\free{n }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesDeclarePagePatch9}
+\begin{paste}{ugTypesDeclarePageFull9}{ugTypesDeclarePageEmpty9}
+\pastebutton{ugTypesDeclarePageFull9}{\hidepaste}
+\tab{5}\spadcommand{p := [[1,2],[3,4],[5,6]]\free{p }}
+\indentrel{3}\begin{verbatim}
+ Ú1 2¿
+ ³ ³
+ (8) ³3 4³
+ ³ ³
+ À5 6Ù
+ Type: Matrix Polynomial Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesDeclarePageEmpty9}
+\begin{paste}{ugTypesDeclarePageEmpty9}{ugTypesDeclarePagePatch9}
+\pastebutton{ugTypesDeclarePageEmpty9}{\showpaste}
+\tab{5}\spadcommand{p := [[1,2],[3,4],[5,6]]\free{p }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesDeclarePagePatch10}
+\begin{paste}{ugTypesDeclarePageFull10}{ugTypesDeclarePageEmpty10}
+\pastebutton{ugTypesDeclarePageFull10}{\hidepaste}
+\tab{5}\spadcommand{q := [[x - 2/3]]\free{q }}
+\indentrel{3}\begin{verbatim}
+ Ú 2¿
+ (9) ³x - ij
+ À 3Ù
+ Type: Matrix Polynomial Fraction Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesDeclarePageEmpty10}
+\begin{paste}{ugTypesDeclarePageEmpty10}{ugTypesDeclarePagePatch10}
+\pastebutton{ugTypesDeclarePageEmpty10}{\showpaste}
+\tab{5}\spadcommand{q := [[x - 2/3]]\free{q }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesDeclarePagePatch11}
+\begin{paste}{ugTypesDeclarePageFull11}{ugTypesDeclarePageEmpty11}
+\pastebutton{ugTypesDeclarePageFull11}{\hidepaste}
+\tab{5}\spadcommand{r := [[1-\%i*x,7*y+4*\%i]]\free{r }}
+\indentrel{3}\begin{verbatim}
+ (10) [- %i x + 1 7y + 4%i]
+ Type: Matrix Polynomial Complex Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesDeclarePageEmpty11}
+\begin{paste}{ugTypesDeclarePageEmpty11}{ugTypesDeclarePagePatch11}
+\pastebutton{ugTypesDeclarePageEmpty11}{\showpaste}
+\tab{5}\spadcommand{r := [[1-\%i*x,7*y+4*\%i]]\free{r }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesDeclarePagePatch12}
+\begin{paste}{ugTypesDeclarePageFull12}{ugTypesDeclarePageEmpty12}
+\pastebutton{ugTypesDeclarePageFull12}{\hidepaste}
+\tab{5}\spadcommand{f : COMPLEX POLY ? := (x + y*\%i)**2}
+\indentrel{3}\begin{verbatim}
+ 2 2
+ (11) - y + x + 2x y %i
+ Type: Complex Polynomial Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesDeclarePageEmpty12}
+\begin{paste}{ugTypesDeclarePageEmpty12}{ugTypesDeclarePagePatch12}
+\pastebutton{ugTypesDeclarePageEmpty12}{\showpaste}
+\tab{5}\spadcommand{f : COMPLEX POLY ? := (x + y*\%i)**2}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesDeclarePagePatch13}
+\begin{paste}{ugTypesDeclarePageFull13}{ugTypesDeclarePageEmpty13}
+\pastebutton{ugTypesDeclarePageFull13}{\hidepaste}
+\tab{5}\spadcommand{g : POLY COMPLEX ? := (x + y*\%i)**2}
+\indentrel{3}\begin{verbatim}
+ 2 2
+ (12) - y + 2%i x y + x
+ Type: Polynomial Complex Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesDeclarePageEmpty13}
+\begin{paste}{ugTypesDeclarePageEmpty13}{ugTypesDeclarePagePatch13}
+\pastebutton{ugTypesDeclarePageEmpty13}{\showpaste}
+\tab{5}\spadcommand{g : POLY COMPLEX ? := (x + y*\%i)**2}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesAnyNonePagePatch1}
+\begin{paste}{ugTypesAnyNonePageFull1}{ugTypesAnyNonePageEmpty1}
+\pastebutton{ugTypesAnyNonePageFull1}{\hidepaste}
+\tab{5}\spadcommand{u: Any\bound{uany }}
+\indentrel{3}\begin{verbatim}
+ Type: Void
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesAnyNonePageEmpty1}
+\begin{paste}{ugTypesAnyNonePageEmpty1}{ugTypesAnyNonePagePatch1}
+\pastebutton{ugTypesAnyNonePageEmpty1}{\showpaste}
+\tab{5}\spadcommand{u: Any\bound{uany }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesAnyNonePagePatch2}
+\begin{paste}{ugTypesAnyNonePageFull2}{ugTypesAnyNonePageEmpty2}
+\pastebutton{ugTypesAnyNonePageFull2}{\hidepaste}
+\tab{5}\spadcommand{u := [1, 7.2, 3/2, x**2, "wally"]\free{uany }\bound{u }}
+\indentrel{3}\begin{verbatim}
+ 3 2
+ (2) [1,7.2,Ä,x ,"wally"]
+ 2
+ Type: List Any
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesAnyNonePageEmpty2}
+\begin{paste}{ugTypesAnyNonePageEmpty2}{ugTypesAnyNonePagePatch2}
+\pastebutton{ugTypesAnyNonePageEmpty2}{\showpaste}
+\tab{5}\spadcommand{u := [1, 7.2, 3/2, x**2, "wally"]\free{uany }\bound{u }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesAnyNonePagePatch3}
+\begin{paste}{ugTypesAnyNonePageFull3}{ugTypesAnyNonePageEmpty3}
+\pastebutton{ugTypesAnyNonePageFull3}{\hidepaste}
+\tab{5}\spadcommand{u.1\free{u }}
+\indentrel{3}\begin{verbatim}
+ (3) 1
+ Type: PositiveInteger
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesAnyNonePageEmpty3}
+\begin{paste}{ugTypesAnyNonePageEmpty3}{ugTypesAnyNonePagePatch3}
+\pastebutton{ugTypesAnyNonePageEmpty3}{\showpaste}
+\tab{5}\spadcommand{u.1\free{u }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesAnyNonePagePatch4}
+\begin{paste}{ugTypesAnyNonePageFull4}{ugTypesAnyNonePageEmpty4}
+\pastebutton{ugTypesAnyNonePageFull4}{\hidepaste}
+\tab{5}\spadcommand{u.3\free{u }}
+\indentrel{3}\begin{verbatim}
+ 3
+ (4) Ä
+ 2
+ Type: Fraction Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesAnyNonePageEmpty4}
+\begin{paste}{ugTypesAnyNonePageEmpty4}{ugTypesAnyNonePagePatch4}
+\pastebutton{ugTypesAnyNonePageEmpty4}{\showpaste}
+\tab{5}\spadcommand{u.3\free{u }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesAnyNonePagePatch5}
+\begin{paste}{ugTypesAnyNonePageFull5}{ugTypesAnyNonePageEmpty5}
+\pastebutton{ugTypesAnyNonePageFull5}{\hidepaste}
+\tab{5}\spadcommand{v : Matrix(Any)}
+\indentrel{3}\begin{verbatim}
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesAnyNonePageEmpty5}
+\begin{paste}{ugTypesAnyNonePageEmpty5}{ugTypesAnyNonePagePatch5}
+\pastebutton{ugTypesAnyNonePageEmpty5}{\showpaste}
+\tab{5}\spadcommand{v : Matrix(Any)}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPagePatch1}
+\begin{paste}{ugTypesRecordsPageFull1}{ugTypesRecordsPageEmpty1}
+\pastebutton{ugTypesRecordsPageFull1}{\hidepaste}
+\tab{5}\spadcommand{u := divide(5,2)\bound{u }}
+\indentrel{3}\begin{verbatim}
+ (1) [quotient= 2,remainder= 1]
+ Type: Record(quotient: Integer,remainder: Integer)
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPageEmpty1}
+\begin{paste}{ugTypesRecordsPageEmpty1}{ugTypesRecordsPagePatch1}
+\pastebutton{ugTypesRecordsPageEmpty1}{\showpaste}
+\tab{5}\spadcommand{u := divide(5,2)\bound{u }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPagePatch2}
+\begin{paste}{ugTypesRecordsPageFull2}{ugTypesRecordsPageEmpty2}
+\pastebutton{ugTypesRecordsPageFull2}{\hidepaste}
+\tab{5}\spadcommand{u.quotient\free{u }}
+\indentrel{3}\begin{verbatim}
+ (2) 2
+ Type: PositiveInteger
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPageEmpty2}
+\begin{paste}{ugTypesRecordsPageEmpty2}{ugTypesRecordsPagePatch2}
+\pastebutton{ugTypesRecordsPageEmpty2}{\showpaste}
+\tab{5}\spadcommand{u.quotient\free{u }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPagePatch3}
+\begin{paste}{ugTypesRecordsPageFull3}{ugTypesRecordsPageEmpty3}
+\pastebutton{ugTypesRecordsPageFull3}{\hidepaste}
+\tab{5}\spadcommand{u.remainder\free{u }}
+\indentrel{3}\begin{verbatim}
+ (3) 1
+ Type: PositiveInteger
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPageEmpty3}
+\begin{paste}{ugTypesRecordsPageEmpty3}{ugTypesRecordsPagePatch3}
+\pastebutton{ugTypesRecordsPageEmpty3}{\showpaste}
+\tab{5}\spadcommand{u.remainder\free{u }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPagePatch4}
+\begin{paste}{ugTypesRecordsPageFull4}{ugTypesRecordsPageEmpty4}
+\pastebutton{ugTypesRecordsPageFull4}{\hidepaste}
+\tab{5}\spadcommand{u.quotient := 8978\free{u }\bound{u1 }}
+\indentrel{3}\begin{verbatim}
+ (4) 8978
+ Type: PositiveInteger
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPageEmpty4}
+\begin{paste}{ugTypesRecordsPageEmpty4}{ugTypesRecordsPagePatch4}
+\pastebutton{ugTypesRecordsPageEmpty4}{\showpaste}
+\tab{5}\spadcommand{u.quotient := 8978\free{u }\bound{u1 }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPagePatch5}
+\begin{paste}{ugTypesRecordsPageFull5}{ugTypesRecordsPageEmpty5}
+\pastebutton{ugTypesRecordsPageFull5}{\hidepaste}
+\tab{5}\spadcommand{u\free{u }\free{u1 }}
+\indentrel{3}\begin{verbatim}
+ (5) [quotient= 8978,remainder= 1]
+ Type: Record(quotient: Integer,remainder: Integer)
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPageEmpty5}
+\begin{paste}{ugTypesRecordsPageEmpty5}{ugTypesRecordsPagePatch5}
+\pastebutton{ugTypesRecordsPageEmpty5}{\showpaste}
+\tab{5}\spadcommand{u\free{u }\free{u1 }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPagePatch6}
+\begin{paste}{ugTypesRecordsPageFull6}{ugTypesRecordsPageEmpty6}
+\pastebutton{ugTypesRecordsPageFull6}{\hidepaste}
+\tab{5}\spadcommand{s := 'quotient\bound{s }}
+\indentrel{3}\begin{verbatim}
+ (6) quotient
+ Type: Variable quotient
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPageEmpty6}
+\begin{paste}{ugTypesRecordsPageEmpty6}{ugTypesRecordsPagePatch6}
+\pastebutton{ugTypesRecordsPageEmpty6}{\showpaste}
+\tab{5}\spadcommand{s := 'quotient\bound{s }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPagePatch7}
+\begin{paste}{ugTypesRecordsPageFull7}{ugTypesRecordsPageEmpty7}
+\pastebutton{ugTypesRecordsPageFull7}{\hidepaste}
+\tab{5}\spadcommand{divide(5,2).s\free{s }}
+\indentrel{3}\begin{verbatim}
+ (7) 2
+ Type: PositiveInteger
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPageEmpty7}
+\begin{paste}{ugTypesRecordsPageEmpty7}{ugTypesRecordsPagePatch7}
+\pastebutton{ugTypesRecordsPageEmpty7}{\showpaste}
+\tab{5}\spadcommand{divide(5,2).s\free{s }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPagePatch8}
+\begin{paste}{ugTypesRecordsPageFull8}{ugTypesRecordsPageEmpty8}
+\pastebutton{ugTypesRecordsPageFull8}{\hidepaste}
+\tab{5}\spadcommand{bd : Record(name : String, birthdayMonth : Integer)\bound{bddec }}
+\indentrel{3}\begin{verbatim}
+ Type: Void
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPageEmpty8}
+\begin{paste}{ugTypesRecordsPageEmpty8}{ugTypesRecordsPagePatch8}
+\pastebutton{ugTypesRecordsPageEmpty8}{\showpaste}
+\tab{5}\spadcommand{bd : Record(name : String, birthdayMonth : Integer)\bound{bddec }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPagePatch9}
+\begin{paste}{ugTypesRecordsPageFull9}{ugTypesRecordsPageEmpty9}
+\pastebutton{ugTypesRecordsPageFull9}{\hidepaste}
+\tab{5}\spadcommand{bd := ["Judith", 3]\free{bddec }\bound{bd }}
+\indentrel{3}\begin{verbatim}
+ (9) [name= "Judith",birthdayMonth= 3]
+ Type: Record(name: String,birthdayMonth: Integer)
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPageEmpty9}
+\begin{paste}{ugTypesRecordsPageEmpty9}{ugTypesRecordsPagePatch9}
+\pastebutton{ugTypesRecordsPageEmpty9}{\showpaste}
+\tab{5}\spadcommand{bd := ["Judith", 3]\free{bddec }\bound{bd }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPagePatch10}
+\begin{paste}{ugTypesRecordsPageFull10}{ugTypesRecordsPageEmpty10}
+\pastebutton{ugTypesRecordsPageFull10}{\hidepaste}
+\tab{5}\spadcommand{bd.name := "Katie"\free{bd }}
+\indentrel{3}\begin{verbatim}
+ (10) "Katie"
+ Type: String
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPageEmpty10}
+\begin{paste}{ugTypesRecordsPageEmpty10}{ugTypesRecordsPagePatch10}
+\pastebutton{ugTypesRecordsPageEmpty10}{\showpaste}
+\tab{5}\spadcommand{bd.name := "Katie"\free{bd }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPagePatch11}
+\begin{paste}{ugTypesRecordsPageFull11}{ugTypesRecordsPageEmpty11}
+\pastebutton{ugTypesRecordsPageFull11}{\hidepaste}
+\tab{5}\spadcommand{r : Record(a : Record(b: Integer, c: Integer), b: Integer)\bound{rdec }}
+\indentrel{3}\begin{verbatim}
+ Type: Void
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPageEmpty11}
+\begin{paste}{ugTypesRecordsPageEmpty11}{ugTypesRecordsPagePatch11}
+\pastebutton{ugTypesRecordsPageEmpty11}{\showpaste}
+\tab{5}\spadcommand{r : Record(a : Record(b: Integer, c: Integer), b: Integer)\bound{rdec }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPagePatch12}
+\begin{paste}{ugTypesRecordsPageFull12}{ugTypesRecordsPageEmpty12}
+\pastebutton{ugTypesRecordsPageFull12}{\hidepaste}
+\tab{5}\spadcommand{r := [[1,2],3]\bound{r }\free{rdec }}
+\indentrel{3}\begin{verbatim}
+ (12) [a= [b= 1,c= 2],b= 3]
+Type: Record(a: Record(b: Integer,c: Integer),b: Integer)
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPageEmpty12}
+\begin{paste}{ugTypesRecordsPageEmpty12}{ugTypesRecordsPagePatch12}
+\pastebutton{ugTypesRecordsPageEmpty12}{\showpaste}
+\tab{5}\spadcommand{r := [[1,2],3]\bound{r }\free{rdec }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPagePatch13}
+\begin{paste}{ugTypesRecordsPageFull13}{ugTypesRecordsPageEmpty13}
+\pastebutton{ugTypesRecordsPageFull13}{\hidepaste}
+\tab{5}\spadcommand{r.a.b\free{r }}
+\indentrel{3}\begin{verbatim}
+ (13) 1
+ Type: PositiveInteger
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPageEmpty13}
+\begin{paste}{ugTypesRecordsPageEmpty13}{ugTypesRecordsPagePatch13}
+\pastebutton{ugTypesRecordsPageEmpty13}{\showpaste}
+\tab{5}\spadcommand{r.a.b\free{r }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPagePatch14}
+\begin{paste}{ugTypesRecordsPageFull14}{ugTypesRecordsPageEmpty14}
+\pastebutton{ugTypesRecordsPageFull14}{\hidepaste}
+\tab{5}\spadcommand{r.b\free{r }}
+\indentrel{3}\begin{verbatim}
+ (14) 3
+ Type: PositiveInteger
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPageEmpty14}
+\begin{paste}{ugTypesRecordsPageEmpty14}{ugTypesRecordsPagePatch14}
+\pastebutton{ugTypesRecordsPageEmpty14}{\showpaste}
+\tab{5}\spadcommand{r.b\free{r }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPagePatch15}
+\begin{paste}{ugTypesRecordsPageFull15}{ugTypesRecordsPageEmpty15}
+\pastebutton{ugTypesRecordsPageFull15}{\hidepaste}
+\tab{5}\spadcommand{r(a)\free{r }}
+\indentrel{3}\begin{verbatim}
+ (15) [b= 1,c= 2]
+ Type: Record(b: Integer,c: Integer)
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPageEmpty15}
+\begin{paste}{ugTypesRecordsPageEmpty15}{ugTypesRecordsPagePatch15}
+\pastebutton{ugTypesRecordsPageEmpty15}{\showpaste}
+\tab{5}\spadcommand{r(a)\free{r }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPagePatch16}
+\begin{paste}{ugTypesRecordsPageFull16}{ugTypesRecordsPageEmpty16}
+\pastebutton{ugTypesRecordsPageFull16}{\hidepaste}
+\tab{5}\spadcommand{r b\free{r }}
+\indentrel{3}\begin{verbatim}
+ (16) 3
+ Type: PositiveInteger
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPageEmpty16}
+\begin{paste}{ugTypesRecordsPageEmpty16}{ugTypesRecordsPagePatch16}
+\pastebutton{ugTypesRecordsPageEmpty16}{\showpaste}
+\tab{5}\spadcommand{r b\free{r }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPagePatch17}
+\begin{paste}{ugTypesRecordsPageFull17}{ugTypesRecordsPageEmpty17}
+\pastebutton{ugTypesRecordsPageFull17}{\hidepaste}
+\tab{5}\spadcommand{r(b) := 10\free{r }\bound{r1 }}
+\indentrel{3}\begin{verbatim}
+ (17) 10
+ Type: PositiveInteger
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPageEmpty17}
+\begin{paste}{ugTypesRecordsPageEmpty17}{ugTypesRecordsPagePatch17}
+\pastebutton{ugTypesRecordsPageEmpty17}{\showpaste}
+\tab{5}\spadcommand{r(b) := 10\free{r }\bound{r1 }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPagePatch18}
+\begin{paste}{ugTypesRecordsPageFull18}{ugTypesRecordsPageEmpty18}
+\pastebutton{ugTypesRecordsPageFull18}{\hidepaste}
+\tab{5}\spadcommand{r\free{r1 }}
+\indentrel{3}\begin{verbatim}
+ (18) [a= [b= 1,c= 2],b= 10]
+Type: Record(a: Record(b: Integer,c: Integer),b: Integer)
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesRecordsPageEmpty18}
+\begin{paste}{ugTypesRecordsPageEmpty18}{ugTypesRecordsPagePatch18}
+\pastebutton{ugTypesRecordsPageEmpty18}{\showpaste}
+\tab{5}\spadcommand{r\free{r1 }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesResolvePagePatch1}
+\begin{paste}{ugTypesResolvePageFull1}{ugTypesResolvePageEmpty1}
+\pastebutton{ugTypesResolvePageFull1}{\hidepaste}
+\tab{5}\spadcommand{x}
+\indentrel{3}\begin{verbatim}
+ (1) x
+ Type: Variable x
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesResolvePageEmpty1}
+\begin{paste}{ugTypesResolvePageEmpty1}{ugTypesResolvePagePatch1}
+\pastebutton{ugTypesResolvePageEmpty1}{\showpaste}
+\tab{5}\spadcommand{x}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesResolvePagePatch2}
+\begin{paste}{ugTypesResolvePageFull2}{ugTypesResolvePageEmpty2}
+\pastebutton{ugTypesResolvePageFull2}{\hidepaste}
+\tab{5}\spadcommand{1}
+\indentrel{3}\begin{verbatim}
+ (2) 1
+ Type: PositiveInteger
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesResolvePageEmpty2}
+\begin{paste}{ugTypesResolvePageEmpty2}{ugTypesResolvePagePatch2}
+\pastebutton{ugTypesResolvePageEmpty2}{\showpaste}
+\tab{5}\spadcommand{1}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesResolvePagePatch3}
+\begin{paste}{ugTypesResolvePageFull3}{ugTypesResolvePageEmpty3}
+\pastebutton{ugTypesResolvePageFull3}{\hidepaste}
+\tab{5}\spadcommand{x + 1}
+\indentrel{3}\begin{verbatim}
+ (3) x + 1
+ Type: Polynomial Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesResolvePageEmpty3}
+\begin{paste}{ugTypesResolvePageEmpty3}{ugTypesResolvePagePatch3}
+\pastebutton{ugTypesResolvePageEmpty3}{\showpaste}
+\tab{5}\spadcommand{x + 1}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesResolvePagePatch4}
+\begin{paste}{ugTypesResolvePageFull4}{ugTypesResolvePageEmpty4}
+\pastebutton{ugTypesResolvePageFull4}{\hidepaste}
+\tab{5}\spadcommand{["string",3.14159]}
+\indentrel{3}\begin{verbatim}
+ (4) ["string",3.14159]
+ Type: List Any
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesResolvePageEmpty4}
+\begin{paste}{ugTypesResolvePageEmpty4}{ugTypesResolvePagePatch4}
+\pastebutton{ugTypesResolvePageEmpty4}{\showpaste}
+\tab{5}\spadcommand{["string",3.14159]}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesResolvePagePatch5}
+\begin{paste}{ugTypesResolvePageFull5}{ugTypesResolvePageEmpty5}
+\pastebutton{ugTypesResolvePageFull5}{\hidepaste}
+\tab{5}\spadcommand{"string" + 3.14159}
+\indentrel{3}\begin{verbatim}
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesResolvePageEmpty5}
+\begin{paste}{ugTypesResolvePageEmpty5}{ugTypesResolvePagePatch5}
+\pastebutton{ugTypesResolvePageEmpty5}{\showpaste}
+\tab{5}\spadcommand{"string" + 3.14159}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesConvertPagePatch1}
+\begin{paste}{ugTypesConvertPageFull1}{ugTypesConvertPageEmpty1}
+\pastebutton{ugTypesConvertPageFull1}{\hidepaste}
+\tab{5}\spadcommand{3}
+\indentrel{3}\begin{verbatim}
+ (1) 3
+ Type: PositiveInteger
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesConvertPageEmpty1}
+\begin{paste}{ugTypesConvertPageEmpty1}{ugTypesConvertPagePatch1}
+\pastebutton{ugTypesConvertPageEmpty1}{\showpaste}
+\tab{5}\spadcommand{3}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesConvertPagePatch2}
+\begin{paste}{ugTypesConvertPageFull2}{ugTypesConvertPageEmpty2}
+\pastebutton{ugTypesConvertPageFull2}{\hidepaste}
+\tab{5}\spadcommand{3 :: Fraction Integer}
+\indentrel{3}\begin{verbatim}
+ (2) 3
+ Type: Fraction Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesConvertPageEmpty2}
+\begin{paste}{ugTypesConvertPageEmpty2}{ugTypesConvertPagePatch2}
+\pastebutton{ugTypesConvertPageEmpty2}{\showpaste}
+\tab{5}\spadcommand{3 :: Fraction Integer}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesConvertPagePatch3}
+\begin{paste}{ugTypesConvertPageFull3}{ugTypesConvertPageEmpty3}
+\pastebutton{ugTypesConvertPageFull3}{\hidepaste}
+\tab{5}\spadcommand{m : SquareMatrix(2,POLY COMPLEX FRAC INT)\bound{mdec }}
+\indentrel{3}\begin{verbatim}
+ Type: Void
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesConvertPageEmpty3}
+\begin{paste}{ugTypesConvertPageEmpty3}{ugTypesConvertPagePatch3}
+\pastebutton{ugTypesConvertPageEmpty3}{\showpaste}
+\tab{5}\spadcommand{m : SquareMatrix(2,POLY COMPLEX FRAC INT)\bound{mdec }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesConvertPagePatch4}
+\begin{paste}{ugTypesConvertPageFull4}{ugTypesConvertPageEmpty4}
+\pastebutton{ugTypesConvertPageFull4}{\hidepaste}
+\tab{5}\spadcommand{m := matrix [[x-3/4*\%i,z*y**2+1/2],[3/7*\%i*y**4 - x,12-\%i*9/5]]\bound{m }\free{mdec }}
+\indentrel{3}\begin{verbatim}
+ Ú 3 2 1 ¿
+ ³ x - Ä %i y z + Ä ³
+ ³ 4 2 ³
+ (4) ³ ³
+ ³3 4 9 ³
+ ³Ä %i y - x 12 - Ä %i³
+ À7 5 Ù
+Type: SquareMatrix(2,Polynomial Complex Fraction Integer)
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesConvertPageEmpty4}
+\begin{paste}{ugTypesConvertPageEmpty4}{ugTypesConvertPagePatch4}
+\pastebutton{ugTypesConvertPageEmpty4}{\showpaste}
+\tab{5}\spadcommand{m := matrix [[x-3/4*\%i,z*y**2+1/2],[3/7*\%i*y**4 - x,12-\%i*9/5]]\bound{m }\free{mdec }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesConvertPagePatch5}
+\begin{paste}{ugTypesConvertPageFull5}{ugTypesConvertPageEmpty5}
+\pastebutton{ugTypesConvertPageFull5}{\hidepaste}
+\tab{5}\spadcommand{m1 := m :: SquareMatrix(2,POLY FRAC COMPLEX INT)\free{m }\bound{m1 }}
+\indentrel{3}\begin{verbatim}
+ Ú 3%i 2 1 ¿
+ ³ x - ÄÄÄ y z + Ä ³
+ ³ 4 2 ³
+ (5) ³ ³
+ ³3%i 4 60 - 9%i³
+ ³ÄÄÄ y - x ÄÄÄÄÄÄÄij
+ À 7 5 Ù
+Type: SquareMatrix(2,Polynomial Fraction Complex Integer)
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesConvertPageEmpty5}
+\begin{paste}{ugTypesConvertPageEmpty5}{ugTypesConvertPagePatch5}
+\pastebutton{ugTypesConvertPageEmpty5}{\showpaste}
+\tab{5}\spadcommand{m1 := m :: SquareMatrix(2,POLY FRAC COMPLEX INT)\free{m }\bound{m1 }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesConvertPagePatch6}
+\begin{paste}{ugTypesConvertPageFull6}{ugTypesConvertPageEmpty6}
+\pastebutton{ugTypesConvertPageFull6}{\hidepaste}
+\tab{5}\spadcommand{m2 := m1 :: SquareMatrix(2,FRAC POLY COMPLEX INT)\free{m1 }\bound{m2 }}
+\indentrel{3}\begin{verbatim}
+ Ú 2 ¿
+ ³ 4x - 3%i 2y z + 1³
+ ³ ÄÄÄÄÄÄÄÄ ÄÄÄÄÄÄÄij
+ ³ 4 2 ³
+ (6) ³ ³
+ ³ 4 ³
+ ³3%i y - 7x 60 - 9%i³
+ ³ÄÄÄÄÄÄÄÄÄÄÄ ÄÄÄÄÄÄÄij
+ À 7 5 Ù
+Type: SquareMatrix(2,Fraction Polynomial Complex Integer)
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesConvertPageEmpty6}
+\begin{paste}{ugTypesConvertPageEmpty6}{ugTypesConvertPagePatch6}
+\pastebutton{ugTypesConvertPageEmpty6}{\showpaste}
+\tab{5}\spadcommand{m2 := m1 :: SquareMatrix(2,FRAC POLY COMPLEX INT)\free{m1 }\bound{m2 }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesConvertPagePatch7}
+\begin{paste}{ugTypesConvertPageFull7}{ugTypesConvertPageEmpty7}
+\pastebutton{ugTypesConvertPageFull7}{\hidepaste}
+\tab{5}\spadcommand{m3 := m2 :: SquareMatrix(2,FRAC COMPLEX POLY INT)\free{m2 }\bound{m3 }}
+\indentrel{3}\begin{verbatim}
+ Ú 2 ¿
+ ³ 4x - 3%i 2y z + 1³
+ ³ ÄÄÄÄÄÄÄÄ ÄÄÄÄÄÄÄij
+ ³ 4 2 ³
+ (7) ³ ³
+ ³ 4 ³
+ ³- 7x + 3y %i 60 - 9%i³
+ ³ÄÄÄÄÄÄÄÄÄÄÄÄ ÄÄÄÄÄÄÄij
+ À 7 5 Ù
+Type: SquareMatrix(2,Fraction Complex Polynomial Integer)
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesConvertPageEmpty7}
+\begin{paste}{ugTypesConvertPageEmpty7}{ugTypesConvertPagePatch7}
+\pastebutton{ugTypesConvertPageEmpty7}{\showpaste}
+\tab{5}\spadcommand{m3 := m2 :: SquareMatrix(2,FRAC COMPLEX POLY INT)\free{m2 }\bound{m3 }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesConvertPagePatch8}
+\begin{paste}{ugTypesConvertPageFull8}{ugTypesConvertPageEmpty8}
+\pastebutton{ugTypesConvertPageFull8}{\hidepaste}
+\tab{5}\spadcommand{m :: SquareMatrix(2,FRAC COMPLEX POLY INT)\free{m }}
+\indentrel{3}\begin{verbatim}
+ Ú 2 ¿
+ ³ 4x - 3%i 2y z + 1³
+ ³ ÄÄÄÄÄÄÄÄ ÄÄÄÄÄÄÄij
+ ³ 4 2 ³
+ (8) ³ ³
+ ³ 4 ³
+ ³- 7x + 3y %i 60 - 9%i³
+ ³ÄÄÄÄÄÄÄÄÄÄÄÄ ÄÄÄÄÄÄÄij
+ À 7 5 Ù
+Type: SquareMatrix(2,Fraction Complex Polynomial Integer)
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesConvertPageEmpty8}
+\begin{paste}{ugTypesConvertPageEmpty8}{ugTypesConvertPagePatch8}
+\pastebutton{ugTypesConvertPageEmpty8}{\showpaste}
+\tab{5}\spadcommand{m :: SquareMatrix(2,FRAC COMPLEX POLY INT)\free{m }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesConvertPagePatch9}
+\begin{paste}{ugTypesConvertPageFull9}{ugTypesConvertPageEmpty9}
+\pastebutton{ugTypesConvertPageFull9}{\hidepaste}
+\tab{5}\spadcommand{m\free{m }}
+\indentrel{3}\begin{verbatim}
+ Ú 3 2 1 ¿
+ ³ x - Ä %i y z + Ä ³
+ ³ 4 2 ³
+ (9) ³ ³
+ ³3 4 9 ³
+ ³Ä %i y - x 12 - Ä %i³
+ À7 5 Ù
+Type: SquareMatrix(2,Polynomial Complex Fraction Integer)
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesConvertPageEmpty9}
+\begin{paste}{ugTypesConvertPageEmpty9}{ugTypesConvertPagePatch9}
+\pastebutton{ugTypesConvertPageEmpty9}{\showpaste}
+\tab{5}\spadcommand{m\free{m }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesConvertPagePatch10}
+\begin{paste}{ugTypesConvertPageFull10}{ugTypesConvertPageEmpty10}
+\pastebutton{ugTypesConvertPageFull10}{\hidepaste}
+\tab{5}\spadcommand{m :: POLY SquareMatrix(2,COMPLEX FRAC INT)\free{m }}
+\indentrel{3}\begin{verbatim}
+ (10)
+ Ú 0 0¿
+ Ú0 1¿ 2 ³ ³ 4 Ú 1 0¿
+ ³ ³y z + ³3 ³y + ³ ³x
+ À0 0Ù ³Ä %i 0³ À- 1 0Ù
+ À7 Ù
+ +
+ Ú 3 1 ¿
+ ³- Ä %i Ä ³
+ ³ 4 2 ³
+ ³ ³
+ ³ 9 ³
+ ³ 0 12 - Ä %i³
+ À 5 Ù
+Type: Polynomial SquareMatrix(2,Complex Fraction Integer)
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesConvertPageEmpty10}
+\begin{paste}{ugTypesConvertPageEmpty10}{ugTypesConvertPagePatch10}
+\pastebutton{ugTypesConvertPageEmpty10}{\showpaste}
+\tab{5}\spadcommand{m :: POLY SquareMatrix(2,COMPLEX FRAC INT)\free{m }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesConvertPagePatch11}
+\begin{paste}{ugTypesConvertPageFull11}{ugTypesConvertPageEmpty11}
+\pastebutton{ugTypesConvertPageFull11}{\hidepaste}
+\tab{5}\spadcommand{m :: POLY ?\free{m }}
+\indentrel{3}\begin{verbatim}
+ (11)
+ Ú 0 0¿
+ Ú0 1¿ 2 ³ ³ 4 Ú 1 0¿
+ ³ ³y z + ³3 ³y + ³ ³x
+ À0 0Ù ³Ä %i 0³ À- 1 0Ù
+ À7 Ù
+ +
+ Ú 3 1 ¿
+ ³- Ä %i Ä ³
+ ³ 4 2 ³
+ ³ ³
+ ³ 9 ³
+ ³ 0 12 - Ä %i³
+ À 5 Ù
+Type: Polynomial SquareMatrix(2,Complex Fraction Integer)
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesConvertPageEmpty11}
+\begin{paste}{ugTypesConvertPageEmpty11}{ugTypesConvertPagePatch11}
+\pastebutton{ugTypesConvertPageEmpty11}{\showpaste}
+\tab{5}\spadcommand{m :: POLY ?\free{m }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesConvertPagePatch12}
+\begin{paste}{ugTypesConvertPageFull12}{ugTypesConvertPageEmpty12}
+\pastebutton{ugTypesConvertPageFull12}{\hidepaste}
+\tab{5}\spadcommand{m :: POLY SquareMatrix(2,FRAC ?)\free{m }}
+\indentrel{3}\begin{verbatim}
+ (12)
+ Ú 3%i 1 ¿
+ Ú 0 0¿ ³- ÄÄÄ Ä ³
+ Ú0 1¿ 2 ³ ³ 4 Ú 1 0¿ ³ 4 2 ³
+ ³ ³y z + ³3%i ³y + ³ ³x + ³ ³
+ À0 0Ù ³ÄÄÄ 0³ À- 1 0Ù ³ 60 - 9%i³
+ À 7 Ù ³ 0 ÄÄÄÄÄÄÄij
+ À 5 Ù
+Type: Polynomial SquareMatrix(2,Fraction Complex Integer)
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesConvertPageEmpty12}
+\begin{paste}{ugTypesConvertPageEmpty12}{ugTypesConvertPagePatch12}
+\pastebutton{ugTypesConvertPageEmpty12}{\showpaste}
+\tab{5}\spadcommand{m :: POLY SquareMatrix(2,FRAC ?)\free{m }}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesWritingPagePatch1}
+\begin{paste}{ugTypesWritingPageFull1}{ugTypesWritingPageEmpty1}
+\pastebutton{ugTypesWritingPageFull1}{\hidepaste}
+\tab{5}\spadcommand{a : PositiveInteger}
+\indentrel{3}\begin{verbatim}
+ Type: Void
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesWritingPageEmpty1}
+\begin{paste}{ugTypesWritingPageEmpty1}{ugTypesWritingPagePatch1}
+\pastebutton{ugTypesWritingPageEmpty1}{\showpaste}
+\tab{5}\spadcommand{a : PositiveInteger}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesWritingPagePatch2}
+\begin{paste}{ugTypesWritingPageFull2}{ugTypesWritingPageEmpty2}
+\pastebutton{ugTypesWritingPageFull2}{\hidepaste}
+\tab{5}\spadcommand{f : Integer -> String}
+\indentrel{3}\begin{verbatim}
+ Type: Void
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesWritingPageEmpty2}
+\begin{paste}{ugTypesWritingPageEmpty2}{ugTypesWritingPagePatch2}
+\pastebutton{ugTypesWritingPageEmpty2}{\showpaste}
+\tab{5}\spadcommand{f : Integer -> String}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesWritingPagePatch3}
+\begin{paste}{ugTypesWritingPageFull3}{ugTypesWritingPageEmpty3}
+\pastebutton{ugTypesWritingPageFull3}{\hidepaste}
+\tab{5}\spadcommand{factor(2 :: Complex(Integer))}
+\indentrel{3}\begin{verbatim}
+ 2
+ (3) - %i (1 + %i)
+ Type: Factored Complex Integer
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesWritingPageEmpty3}
+\begin{paste}{ugTypesWritingPageEmpty3}{ugTypesWritingPagePatch3}
+\pastebutton{ugTypesWritingPageEmpty3}{\showpaste}
+\tab{5}\spadcommand{factor(2 :: Complex(Integer))}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesWritingPagePatch4}
+\begin{paste}{ugTypesWritingPageFull4}{ugTypesWritingPageEmpty4}
+\pastebutton{ugTypesWritingPageFull4}{\hidepaste}
+\tab{5}\spadcommand{(2 = 3)$Integer}
+\indentrel{3}\begin{verbatim}
+ (4) false
+ Type: Boolean
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesWritingPageEmpty4}
+\begin{paste}{ugTypesWritingPageEmpty4}{ugTypesWritingPagePatch4}
+\pastebutton{ugTypesWritingPageEmpty4}{\showpaste}
+\tab{5}\spadcommand{(2 = 3)$Integer}
+\end{paste}\end{patch}
+
+\begin{patch}{ugTypesWritingPagePatch5}
+\begin{paste}{ugTypesWritingPageFull5}{ugTypesWritingPageEmpty5}
+\pastebutton{ugTypesWritingPageFull5}{\hidepaste}
+\tab{5}\spadcommand{(2 = 3)@Boolean}
+\indentrel{3}\begin{verbatim}
+ (5) false
+ Type: Boolean
+\end{verbatim}
+\indentrel{-3}\end{paste}\end{patch}
+
+\begin{patch}{ugTypesWritingPageEmpty5}
+\begin{paste}{ugTypesWritingPageEmpty5}{ugTypesWritingPagePatch5}
+\pastebutton{ugTypesWritingPageEmpty5}{\showpaste}
+\tab{5}\spadcommand{(2 = 3)@Boolean}
+\end{paste}\end{patch}
+