\begin{patch}{ExLimitBasicPatch1}
\begin{paste}{ExLimitBasicFull1}{ExLimitBasicEmpty1}
\pastebutton{ExLimitBasicFull1}{\hidepaste}
\tab{5}\spadcommand{limit((x^2 - 3*x + 2)/(x^2 - 1),x = 1)}
\indentrel{3}\begin{verbatim}
          1
   (1)  - -
          2
Type: Union(OrderedCompletion(Fraction(Polynomial(Integer))),...)
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{ExLimitBasicEmpty1}
\begin{paste}{ExLimitBasicEmpty1}{ExLimitBasicPatch1}
\pastebutton{ExLimitBasicEmpty1}{\showpaste}
\tab{5}\spadcommand{limit((x^2 - 3*x + 2)/(x^2 - 1),x = 1)}
\end{paste}\end{patch}

\begin{patch}{ExLimitComplexInfinitePatch1}
\begin{paste}{ExLimitComplexInfiniteFull1}{ExLimitComplexInfiniteEmpty1}
\pastebutton{ExLimitComplexInfiniteFull1}{\hidepaste}
\tab{5}\spadcommand{complexLimit((2 + z)/(1 - z),z = \%infinity)}
\indentrel{3}\begin{verbatim}
   (1)  - 1
Type: OnePointCompletion(Fraction(Polynomial(Integer)))
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{ExLimitComplexInfiniteEmpty1}
\begin{paste}{ExLimitComplexInfiniteEmpty1}{ExLimitComplexInfinitePatch1}
\pastebutton{ExLimitComplexInfiniteEmpty1}{\showpaste}
\tab{5}\spadcommand{complexLimit((2 + z)/(1 - z),z = \%infinity)}
\end{paste}\end{patch}

\begin{patch}{ExLimitComplexInfinitePatch2}
\begin{paste}{ExLimitComplexInfiniteFull2}{ExLimitComplexInfiniteEmpty2}
\pastebutton{ExLimitComplexInfiniteFull2}{\hidepaste}
\tab{5}\spadcommand{limit(sin(x)/x,x = \%plusInfinity)}
\indentrel{3}\begin{verbatim}
   (2)  0
Type: Union(OrderedCompletion(Expression(Integer)),...)
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{ExLimitComplexInfiniteEmpty2}
\begin{paste}{ExLimitComplexInfiniteEmpty2}{ExLimitComplexInfinitePatch2}
\pastebutton{ExLimitComplexInfiniteEmpty2}{\showpaste}
\tab{5}\spadcommand{limit(sin(x)/x,x = \%plusInfinity)}
\end{paste}\end{patch}

\begin{patch}{ExLimitComplexInfinitePatch3}
\begin{paste}{ExLimitComplexInfiniteFull3}{ExLimitComplexInfiniteEmpty3}
\pastebutton{ExLimitComplexInfiniteFull3}{\hidepaste}
\tab{5}\spadcommand{complexLimit(sin(x)/x,x = \%infinity)}
\indentrel{3}\begin{verbatim}
   (3)  "failed"
                              Type: Union("failed",...)
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{ExLimitComplexInfiniteEmpty3}
\begin{paste}{ExLimitComplexInfiniteEmpty3}{ExLimitComplexInfinitePatch3}
\pastebutton{ExLimitComplexInfiniteEmpty3}{\showpaste}
\tab{5}\spadcommand{complexLimit(sin(x)/x,x = \%infinity)}
\end{paste}\end{patch}

\begin{patch}{ExLimitOneSidedPatch1}
\begin{paste}{ExLimitOneSidedFull1}{ExLimitOneSidedEmpty1}
\pastebutton{ExLimitOneSidedFull1}{\hidepaste}
\tab{5}\spadcommand{limit(x * log(x),x = 0,"right")}
\indentrel{3}\begin{verbatim}
   (1)  0
Type: Union(OrderedCompletion(Expression(Integer)),...)
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{ExLimitOneSidedEmpty1}
\begin{paste}{ExLimitOneSidedEmpty1}{ExLimitOneSidedPatch1}
\pastebutton{ExLimitOneSidedEmpty1}{\showpaste}
\tab{5}\spadcommand{limit(x * log(x),x = 0,"right")}
\end{paste}\end{patch}

\begin{patch}{ExLimitOneSidedPatch2}
\begin{paste}{ExLimitOneSidedFull2}{ExLimitOneSidedEmpty2}
\pastebutton{ExLimitOneSidedFull2}{\hidepaste}
\tab{5}\spadcommand{limit(x * log(x),x = 0)}
\indentrel{3}\begin{verbatim}
   (2)  0
Type: Union(OrderedCompletion(Expression(Integer)),...)
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{ExLimitOneSidedEmpty2}
\begin{paste}{ExLimitOneSidedEmpty2}{ExLimitOneSidedPatch2}
\pastebutton{ExLimitOneSidedEmpty2}{\showpaste}
\tab{5}\spadcommand{limit(x * log(x),x = 0)}
\end{paste}\end{patch}

\begin{patch}{ExLimitTwoSidedPatch1}
\begin{paste}{ExLimitTwoSidedFull1}{ExLimitTwoSidedEmpty1}
\pastebutton{ExLimitTwoSidedFull1}{\hidepaste}
\tab{5}\spadcommand{limit(sqrt(y^2)/y,y = 0)}
\indentrel{3}\begin{verbatim}
   (1)  [leftHandLimit = - 1, rightHandLimit = 1]
Type: Union(Record(leftHandLimit: Union(OrderedCompletion(Expression(Integer)),"failed"),rightHandLimit: Union(OrderedCompletion(Expression(Integer)),"failed")),...)
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{ExLimitTwoSidedEmpty1}
\begin{paste}{ExLimitTwoSidedEmpty1}{ExLimitTwoSidedPatch1}
\pastebutton{ExLimitTwoSidedEmpty1}{\showpaste}
\tab{5}\spadcommand{limit(sqrt(y^2)/y,y = 0)}
\end{paste}\end{patch}

\begin{patch}{ExLimitTwoSidedPatch2}
\begin{paste}{ExLimitTwoSidedFull2}{ExLimitTwoSidedEmpty2}
\pastebutton{ExLimitTwoSidedFull2}{\hidepaste}
\tab{5}\spadcommand{limit(sqrt(1 - cos(t))/t,t = 0)}
\indentrel{3}\begin{verbatim}
                             1                      1
   (2)  [leftHandLimit = - ----, rightHandLimit = ----]
                            +-+                    +-+
                           \|2                    \|2
Type: Union(Record(leftHandLimit: Union(OrderedCompletion(Expression(Integer)),"failed"),rightHandLimit: Union(OrderedCompletion(Expression(Integer)),"failed")),...)
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{ExLimitTwoSidedEmpty2}
\begin{paste}{ExLimitTwoSidedEmpty2}{ExLimitTwoSidedPatch2}
\pastebutton{ExLimitTwoSidedEmpty2}{\showpaste}
\tab{5}\spadcommand{limit(sqrt(1 - cos(t))/t,t = 0)}
\end{paste}\end{patch}

\begin{patch}{ExLimitInfinitePatch1}
\begin{paste}{ExLimitInfiniteFull1}{ExLimitInfiniteEmpty1}
\pastebutton{ExLimitInfiniteFull1}{\hidepaste}
\tab{5}\spadcommand{limit(sqrt(3*x^2 + 1)/(5*x),x = \%plusInfinity)}
\indentrel{3}\begin{verbatim}
         +-+
        \|3
   (1)  ----
          5
Type: Union(OrderedCompletion(Expression(Integer)),...)
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{ExLimitInfiniteEmpty1}
\begin{paste}{ExLimitInfiniteEmpty1}{ExLimitInfinitePatch1}
\pastebutton{ExLimitInfiniteEmpty1}{\showpaste}
\tab{5}\spadcommand{limit(sqrt(3*x^2 + 1)/(5*x),x = \%plusInfinity)}
\end{paste}\end{patch}

\begin{patch}{ExLimitInfinitePatch2}
\begin{paste}{ExLimitInfiniteFull2}{ExLimitInfiniteEmpty2}
\pastebutton{ExLimitInfiniteFull2}{\hidepaste}
\tab{5}\spadcommand{limit(sqrt(3*x^2 + 1)/(5*x),x = \%minusInfinity)}
\indentrel{3}\begin{verbatim}
           +-+
          \|3
   (2)  - ----
            5
Type: Union(OrderedCompletion(Expression(Integer)),...)
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{ExLimitInfiniteEmpty2}
\begin{paste}{ExLimitInfiniteEmpty2}{ExLimitInfinitePatch2}
\pastebutton{ExLimitInfiniteEmpty2}{\showpaste}
\tab{5}\spadcommand{limit(sqrt(3*x^2 + 1)/(5*x),x = \%minusInfinity)}
\end{paste}\end{patch}

\begin{patch}{ExLimitParameterPatch1}
\begin{paste}{ExLimitParameterFull1}{ExLimitParameterEmpty1}
\pastebutton{ExLimitParameterFull1}{\hidepaste}
\tab{5}\spadcommand{limit(sinh(a*x)/tan(b*x),x = 0)}
\indentrel{3}\begin{verbatim}
        a
   (1)  -
        b
Type: Union(OrderedCompletion(Expression(Integer)),...)
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{ExLimitParameterEmpty1}
\begin{paste}{ExLimitParameterEmpty1}{ExLimitParameterPatch1}
\pastebutton{ExLimitParameterEmpty1}{\showpaste}
\tab{5}\spadcommand{limit(sinh(a*x)/tan(b*x),x = 0)}
\end{paste}\end{patch}

\begin{patch}{ExLimitRealComplexPatch1}
\begin{paste}{ExLimitRealComplexFull1}{ExLimitRealComplexEmpty1}
\pastebutton{ExLimitRealComplexFull1}{\hidepaste}
\tab{5}\spadcommand{limit(z * sin(1/z),z = 0)}
\indentrel{3}\begin{verbatim}
   (1)  0
Type: Union(OrderedCompletion(Expression(Integer)),...)
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{ExLimitRealComplexEmpty1}
\begin{paste}{ExLimitRealComplexEmpty1}{ExLimitRealComplexPatch1}
\pastebutton{ExLimitRealComplexEmpty1}{\showpaste}
\tab{5}\spadcommand{limit(z * sin(1/z),z = 0)}
\end{paste}\end{patch}

\begin{patch}{ExLimitRealComplexPatch2}
\begin{paste}{ExLimitRealComplexFull2}{ExLimitRealComplexEmpty2}
\pastebutton{ExLimitRealComplexFull2}{\hidepaste}
\tab{5}\spadcommand{complexLimit(z * sin(1/z),z = 0)}
\indentrel{3}\begin{verbatim}
   (2)  "failed"
                              Type: Union("failed",...)
\end{verbatim}
\indentrel{-3}\end{paste}\end{patch}

\begin{patch}{ExLimitRealComplexEmpty2}
\begin{paste}{ExLimitRealComplexEmpty2}{ExLimitRealComplexPatch2}
\pastebutton{ExLimitRealComplexEmpty2}{\showpaste}
\tab{5}\spadcommand{complexLimit(z * sin(1/z),z = 0)}
\end{paste}\end{patch}

