\begin{patch}{StringXmpPagePatch1}
\begin{paste}{StringXmpPageFull1}{StringXmpPageEmpty1}
\pastebutton{StringXmpPageFull1}{\hidepaste}
\tab{5}\spadcommand{hello := "Hello, I'm FriCAS!"\bound{hello }}
\indentrel{3}\begin{verbatim}
   (1)  "Hello, I'm FriCAS!"
                                           Type: String
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty1}
\begin{paste}{StringXmpPageEmpty1}{StringXmpPagePatch1}
\pastebutton{StringXmpPageEmpty1}{\showpaste}
\tab{5}\spadcommand{hello := "Hello, I'm FriCAS!"\bound{hello }}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch2}
\begin{paste}{StringXmpPageFull2}{StringXmpPageEmpty2}
\pastebutton{StringXmpPageFull2}{\hidepaste}
\tab{5}\spadcommand{said := "Jane said, _"Look!_""\bound{said }}
\indentrel{3}\begin{verbatim}
   (2)  "Jane said, "Look!""
                                           Type: String
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty2}
\begin{paste}{StringXmpPageEmpty2}{StringXmpPagePatch2}
\pastebutton{StringXmpPageEmpty2}{\showpaste}
\tab{5}\spadcommand{said := "Jane said, _"Look!_""\bound{said }}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch3}
\begin{paste}{StringXmpPageFull3}{StringXmpPageEmpty3}
\pastebutton{StringXmpPageFull3}{\hidepaste}
\tab{5}\spadcommand{saw := "She saw exactly one underscore: __."\bound{saw }}
\indentrel{3}\begin{verbatim}
   (3)  "She saw exactly one underscore: _."
                                           Type: String
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty3}
\begin{paste}{StringXmpPageEmpty3}{StringXmpPagePatch3}
\pastebutton{StringXmpPageEmpty3}{\showpaste}
\tab{5}\spadcommand{saw := "She saw exactly one underscore: __."\bound{saw }}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch4}
\begin{paste}{StringXmpPageFull4}{StringXmpPageEmpty4}
\pastebutton{StringXmpPageFull4}{\hidepaste}
\tab{5}\spadcommand{gasp: String := new(32, char "x")\bound{gasp }}
\indentrel{3}\begin{verbatim}
   (4)  "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
                                           Type: String
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty4}
\begin{paste}{StringXmpPageEmpty4}{StringXmpPagePatch4}
\pastebutton{StringXmpPageEmpty4}{\showpaste}
\tab{5}\spadcommand{gasp: String := new(32, char "x")\bound{gasp }}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch5}
\begin{paste}{StringXmpPageFull5}{StringXmpPageEmpty5}
\pastebutton{StringXmpPageFull5}{\hidepaste}
\tab{5}\spadcommand{\#gasp\free{gasp }}
\indentrel{3}\begin{verbatim}
   (5)  32
                                  Type: PositiveInteger
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty5}
\begin{paste}{StringXmpPageEmpty5}{StringXmpPagePatch5}
\pastebutton{StringXmpPageEmpty5}{\showpaste}
\tab{5}\spadcommand{\#gasp\free{gasp }}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch6}
\begin{paste}{StringXmpPageFull6}{StringXmpPageEmpty6}
\pastebutton{StringXmpPageFull6}{\hidepaste}
\tab{5}\spadcommand{hello.2\free{hello }}
\indentrel{3}\begin{verbatim}
   (6)  e
                                        Type: Character
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty6}
\begin{paste}{StringXmpPageEmpty6}{StringXmpPagePatch6}
\pastebutton{StringXmpPageEmpty6}{\showpaste}
\tab{5}\spadcommand{hello.2\free{hello }}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch7}
\begin{paste}{StringXmpPageFull7}{StringXmpPageEmpty7}
\pastebutton{StringXmpPageFull7}{\hidepaste}
\tab{5}\spadcommand{hello 2\free{hello }}
\indentrel{3}\begin{verbatim}
   (7)  e
                                        Type: Character
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty7}
\begin{paste}{StringXmpPageEmpty7}{StringXmpPagePatch7}
\pastebutton{StringXmpPageEmpty7}{\showpaste}
\tab{5}\spadcommand{hello 2\free{hello }}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch8}
\begin{paste}{StringXmpPageFull8}{StringXmpPageEmpty8}
\pastebutton{StringXmpPageFull8}{\hidepaste}
\tab{5}\spadcommand{hello(2)\free{hello }}
\indentrel{3}\begin{verbatim}
   (8)  e
                                        Type: Character
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty8}
\begin{paste}{StringXmpPageEmpty8}{StringXmpPagePatch8}
\pastebutton{StringXmpPageEmpty8}{\showpaste}
\tab{5}\spadcommand{hello(2)\free{hello }}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch9}
\begin{paste}{StringXmpPageFull9}{StringXmpPageEmpty9}
\pastebutton{StringXmpPageFull9}{\hidepaste}
\tab{5}\spadcommand{hullo := copy hello\free{hello }\bound{hullo0 }}
\indentrel{3}\begin{verbatim}
   (9)  "Hello, I'm FriCAS!"
                                           Type: String
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty9}
\begin{paste}{StringXmpPageEmpty9}{StringXmpPagePatch9}
\pastebutton{StringXmpPageEmpty9}{\showpaste}
\tab{5}\spadcommand{hullo := copy hello\free{hello }\bound{hullo0 }}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch10}
\begin{paste}{StringXmpPageFull10}{StringXmpPageEmpty10}
\pastebutton{StringXmpPageFull10}{\hidepaste}
\tab{5}\spadcommand{hullo.2 := char "u"; [hello, hullo]\free{hullo0 hello }\bound{hullo }}
\indentrel{3}\begin{verbatim}
   (10)  ["Hello, I'm FriCAS!", "Hullo, I'm FriCAS!"]
                                     Type: List(String)
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty10}
\begin{paste}{StringXmpPageEmpty10}{StringXmpPagePatch10}
\pastebutton{StringXmpPageEmpty10}{\showpaste}
\tab{5}\spadcommand{hullo.2 := char "u"; [hello, hullo]\free{hullo0 hello }\bound{hullo }}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch11}
\begin{paste}{StringXmpPageFull11}{StringXmpPageEmpty11}
\pastebutton{StringXmpPageFull11}{\hidepaste}
\tab{5}\spadcommand{saidsaw := concat ["alpha","---","omega"]\bound{saidsaw }}
\indentrel{3}\begin{verbatim}
   (11)  "alpha---omega"
                                           Type: String
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty11}
\begin{paste}{StringXmpPageEmpty11}{StringXmpPagePatch11}
\pastebutton{StringXmpPageEmpty11}{\showpaste}
\tab{5}\spadcommand{saidsaw := concat ["alpha","---","omega"]\bound{saidsaw }}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch12}
\begin{paste}{StringXmpPageFull12}{StringXmpPageEmpty12}
\pastebutton{StringXmpPageFull12}{\hidepaste}
\tab{5}\spadcommand{concat("hello ","goodbye")}
\indentrel{3}\begin{verbatim}
   (12)  "hello goodbye"
                                           Type: String
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty12}
\begin{paste}{StringXmpPageEmpty12}{StringXmpPagePatch12}
\pastebutton{StringXmpPageEmpty12}{\showpaste}
\tab{5}\spadcommand{concat("hello ","goodbye")}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch13}
\begin{paste}{StringXmpPageFull13}{StringXmpPageEmpty13}
\pastebutton{StringXmpPageFull13}{\hidepaste}
\tab{5}\spadcommand{"This " "is " "several " "strings " "concatenated."}
\indentrel{3}\begin{verbatim}
   (13)  "This is several strings concatenated."
                                           Type: String
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty13}
\begin{paste}{StringXmpPageEmpty13}{StringXmpPagePatch13}
\pastebutton{StringXmpPageEmpty13}{\showpaste}
\tab{5}\spadcommand{"This " "is " "several " "strings " "concatenated."}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch14}
\begin{paste}{StringXmpPageFull14}{StringXmpPageEmpty14}
\pastebutton{StringXmpPageFull14}{\hidepaste}
\tab{5}\spadcommand{hello(1..5)\free{hello }}
\indentrel{3}\begin{verbatim}
   (14)  "Hello"
                                           Type: String
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty14}
\begin{paste}{StringXmpPageEmpty14}{StringXmpPagePatch14}
\pastebutton{StringXmpPageEmpty14}{\showpaste}
\tab{5}\spadcommand{hello(1..5)\free{hello }}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch15}
\begin{paste}{StringXmpPageFull15}{StringXmpPageEmpty15}
\pastebutton{StringXmpPageFull15}{\hidepaste}
\tab{5}\spadcommand{hello(8..)\free{hello }}
\indentrel{3}\begin{verbatim}
   (15)  "I'm FriCAS!"
                                           Type: String
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty15}
\begin{paste}{StringXmpPageEmpty15}{StringXmpPagePatch15}
\pastebutton{StringXmpPageEmpty15}{\showpaste}
\tab{5}\spadcommand{hello(8..)\free{hello }}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch16}
\begin{paste}{StringXmpPageFull16}{StringXmpPageEmpty16}
\pastebutton{StringXmpPageFull16}{\hidepaste}
\tab{5}\spadcommand{split(hello, char " ")\free{hello }}
\indentrel{3}\begin{verbatim}
   (16)  ["Hello,", "I'm", "FriCAS!"]
                                     Type: List(String)
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty16}
\begin{paste}{StringXmpPageEmpty16}{StringXmpPagePatch16}
\pastebutton{StringXmpPageEmpty16}{\showpaste}
\tab{5}\spadcommand{split(hello, char " ")\free{hello }}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch17}
\begin{paste}{StringXmpPageFull17}{StringXmpPageEmpty17}
\pastebutton{StringXmpPageFull17}{\hidepaste}
\tab{5}\spadcommand{other := complement alphanumeric();\bound{other }}
\indentrel{3}\begin{verbatim}
                                   Type: CharacterClass
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty17}
\begin{paste}{StringXmpPageEmpty17}{StringXmpPagePatch17}
\pastebutton{StringXmpPageEmpty17}{\showpaste}
\tab{5}\spadcommand{other := complement alphanumeric();\bound{other }}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch18}
\begin{paste}{StringXmpPageFull18}{StringXmpPageEmpty18}
\pastebutton{StringXmpPageFull18}{\hidepaste}
\tab{5}\spadcommand{split(saidsaw, other)\free{saidsaw other }}
\indentrel{3}\begin{verbatim}
   (18)  ["alpha", "omega"]
                                     Type: List(String)
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty18}
\begin{paste}{StringXmpPageEmpty18}{StringXmpPagePatch18}
\pastebutton{StringXmpPageEmpty18}{\showpaste}
\tab{5}\spadcommand{split(saidsaw, other)\free{saidsaw other }}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch19}
\begin{paste}{StringXmpPageFull19}{StringXmpPageEmpty19}
\pastebutton{StringXmpPageFull19}{\hidepaste}
\tab{5}\spadcommand{trim ("\#\# ++ relax ++ \#\#", char "\#")}
\indentrel{3}\begin{verbatim}
   (19)  " ++ relax ++ "
                                           Type: String
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty19}
\begin{paste}{StringXmpPageEmpty19}{StringXmpPagePatch19}
\pastebutton{StringXmpPageEmpty19}{\showpaste}
\tab{5}\spadcommand{trim ("\#\# ++ relax ++ \#\#", char "\#")}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch20}
\begin{paste}{StringXmpPageFull20}{StringXmpPageEmpty20}
\pastebutton{StringXmpPageFull20}{\hidepaste}
\tab{5}\spadcommand{trim ("\#\# ++ relax ++ \#\#", other)\free{other }}
\indentrel{3}\begin{verbatim}
   (20)  "relax"
                                           Type: String
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty20}
\begin{paste}{StringXmpPageEmpty20}{StringXmpPagePatch20}
\pastebutton{StringXmpPageEmpty20}{\showpaste}
\tab{5}\spadcommand{trim ("\#\# ++ relax ++ \#\#", other)\free{other }}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch21}
\begin{paste}{StringXmpPageFull21}{StringXmpPageEmpty21}
\pastebutton{StringXmpPageFull21}{\hidepaste}
\tab{5}\spadcommand{leftTrim ("\#\# ++ relax ++ \#\#", other)\free{other }}
\indentrel{3}\begin{verbatim}
   (21)  "relax ++ ##"
                                           Type: String
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty21}
\begin{paste}{StringXmpPageEmpty21}{StringXmpPagePatch21}
\pastebutton{StringXmpPageEmpty21}{\showpaste}
\tab{5}\spadcommand{leftTrim ("\#\# ++ relax ++ \#\#", other)\free{other }}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch22}
\begin{paste}{StringXmpPageFull22}{StringXmpPageEmpty22}
\pastebutton{StringXmpPageFull22}{\hidepaste}
\tab{5}\spadcommand{rightTrim("\#\# ++ relax ++ \#\#", other)\free{other }}
\indentrel{3}\begin{verbatim}
   (22)  "## ++ relax"
                                           Type: String
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty22}
\begin{paste}{StringXmpPageEmpty22}{StringXmpPagePatch22}
\pastebutton{StringXmpPageEmpty22}{\showpaste}
\tab{5}\spadcommand{rightTrim("\#\# ++ relax ++ \#\#", other)\free{other }}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch23}
\begin{paste}{StringXmpPageFull23}{StringXmpPageEmpty23}
\pastebutton{StringXmpPageFull23}{\hidepaste}
\tab{5}\spadcommand{upperCase hello\free{hello }}
\indentrel{3}\begin{verbatim}
   (23)  "HELLO, I'M FRICAS!"
                                           Type: String
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty23}
\begin{paste}{StringXmpPageEmpty23}{StringXmpPagePatch23}
\pastebutton{StringXmpPageEmpty23}{\showpaste}
\tab{5}\spadcommand{upperCase hello\free{hello }}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch24}
\begin{paste}{StringXmpPageFull24}{StringXmpPageEmpty24}
\pastebutton{StringXmpPageFull24}{\hidepaste}
\tab{5}\spadcommand{lowerCase hello\free{hello }}
\indentrel{3}\begin{verbatim}
   (24)  "hello, i'm fricas!"
                                           Type: String
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty24}
\begin{paste}{StringXmpPageEmpty24}{StringXmpPagePatch24}
\pastebutton{StringXmpPageEmpty24}{\showpaste}
\tab{5}\spadcommand{lowerCase hello\free{hello }}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch25}
\begin{paste}{StringXmpPageFull25}{StringXmpPageEmpty25}
\pastebutton{StringXmpPageFull25}{\hidepaste}
\tab{5}\spadcommand{prefix?("He", "Hello")}
\indentrel{3}\begin{verbatim}
   (25)  true
                                          Type: Boolean
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty25}
\begin{paste}{StringXmpPageEmpty25}{StringXmpPagePatch25}
\pastebutton{StringXmpPageEmpty25}{\showpaste}
\tab{5}\spadcommand{prefix?("He", "Hello")}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch26}
\begin{paste}{StringXmpPageFull26}{StringXmpPageEmpty26}
\pastebutton{StringXmpPageFull26}{\hidepaste}
\tab{5}\spadcommand{prefix?("Her", "Hello")}
\indentrel{3}\begin{verbatim}
   (26)  false
                                          Type: Boolean
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty26}
\begin{paste}{StringXmpPageEmpty26}{StringXmpPagePatch26}
\pastebutton{StringXmpPageEmpty26}{\showpaste}
\tab{5}\spadcommand{prefix?("Her", "Hello")}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch27}
\begin{paste}{StringXmpPageFull27}{StringXmpPageEmpty27}
\pastebutton{StringXmpPageFull27}{\hidepaste}
\tab{5}\spadcommand{suffix?("", "Hello")}
\indentrel{3}\begin{verbatim}
   (27)  true
                                          Type: Boolean
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty27}
\begin{paste}{StringXmpPageEmpty27}{StringXmpPagePatch27}
\pastebutton{StringXmpPageEmpty27}{\showpaste}
\tab{5}\spadcommand{suffix?("", "Hello")}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch28}
\begin{paste}{StringXmpPageFull28}{StringXmpPageEmpty28}
\pastebutton{StringXmpPageFull28}{\hidepaste}
\tab{5}\spadcommand{suffix?("LO", "Hello")}
\indentrel{3}\begin{verbatim}
   (28)  false
                                          Type: Boolean
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty28}
\begin{paste}{StringXmpPageEmpty28}{StringXmpPagePatch28}
\pastebutton{StringXmpPageEmpty28}{\showpaste}
\tab{5}\spadcommand{suffix?("LO", "Hello")}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch29}
\begin{paste}{StringXmpPageFull29}{StringXmpPageEmpty29}
\pastebutton{StringXmpPageFull29}{\hidepaste}
\tab{5}\spadcommand{substring?("ll", "Hello", 3)}
\indentrel{3}\begin{verbatim}
   (29)  true
                                          Type: Boolean
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty29}
\begin{paste}{StringXmpPageEmpty29}{StringXmpPagePatch29}
\pastebutton{StringXmpPageEmpty29}{\showpaste}
\tab{5}\spadcommand{substring?("ll", "Hello", 3)}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch30}
\begin{paste}{StringXmpPageFull30}{StringXmpPageEmpty30}
\pastebutton{StringXmpPageFull30}{\hidepaste}
\tab{5}\spadcommand{substring?("ll", "Hello", 4)}
\indentrel{3}\begin{verbatim}
   (30)  false
                                          Type: Boolean
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty30}
\begin{paste}{StringXmpPageEmpty30}{StringXmpPagePatch30}
\pastebutton{StringXmpPageEmpty30}{\showpaste}
\tab{5}\spadcommand{substring?("ll", "Hello", 4)}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch31}
\begin{paste}{StringXmpPageFull31}{StringXmpPageEmpty31}
\pastebutton{StringXmpPageFull31}{\hidepaste}
\tab{5}\spadcommand{n := position("nd", "underground", 1)\bound{n }}
\indentrel{3}\begin{verbatim}
   (31)  2
                                  Type: PositiveInteger
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty31}
\begin{paste}{StringXmpPageEmpty31}{StringXmpPagePatch31}
\pastebutton{StringXmpPageEmpty31}{\showpaste}
\tab{5}\spadcommand{n := position("nd", "underground", 1)\bound{n }}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch32}
\begin{paste}{StringXmpPageFull32}{StringXmpPageEmpty32}
\pastebutton{StringXmpPageFull32}{\hidepaste}
\tab{5}\spadcommand{n := position("nd", "underground", n+1)\free{n }\bound{n1 }}
\indentrel{3}\begin{verbatim}
   (32)  10
                                  Type: PositiveInteger
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty32}
\begin{paste}{StringXmpPageEmpty32}{StringXmpPagePatch32}
\pastebutton{StringXmpPageEmpty32}{\showpaste}
\tab{5}\spadcommand{n := position("nd", "underground", n+1)\free{n }\bound{n1 }}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch33}
\begin{paste}{StringXmpPageFull33}{StringXmpPageEmpty33}
\pastebutton{StringXmpPageFull33}{\hidepaste}
\tab{5}\spadcommand{n := position("nd", "underground", n+1)\free{n1 }\bound{n2 }}
\indentrel{3}\begin{verbatim}
   (33)  0
                               Type: NonNegativeInteger
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty33}
\begin{paste}{StringXmpPageEmpty33}{StringXmpPagePatch33}
\pastebutton{StringXmpPageEmpty33}{\showpaste}
\tab{5}\spadcommand{n := position("nd", "underground", n+1)\free{n1 }\bound{n2 }}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch34}
\begin{paste}{StringXmpPageFull34}{StringXmpPageEmpty34}
\pastebutton{StringXmpPageFull34}{\hidepaste}
\tab{5}\spadcommand{position(char "d", "underground", 1)}
\indentrel{3}\begin{verbatim}
   (34)  3
                                  Type: PositiveInteger
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty34}
\begin{paste}{StringXmpPageEmpty34}{StringXmpPagePatch34}
\pastebutton{StringXmpPageEmpty34}{\showpaste}
\tab{5}\spadcommand{position(char "d", "underground", 1)}
\end{paste}\end{patch}

\begin{patch}{StringXmpPagePatch35}
\begin{paste}{StringXmpPageFull35}{StringXmpPageEmpty35}
\pastebutton{StringXmpPageFull35}{\hidepaste}
\tab{5}\spadcommand{position(hexDigit(), "underground", 1)}
\indentrel{3}\begin{verbatim}
   (35)  3
                                  Type: PositiveInteger
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{StringXmpPageEmpty35}
\begin{paste}{StringXmpPageEmpty35}{StringXmpPagePatch35}
\pastebutton{StringXmpPageEmpty35}{\showpaste}
\tab{5}\spadcommand{position(hexDigit(), "underground", 1)}
\end{paste}\end{patch}

