diff --git a/books/bookvol10.3.pamphlet b/books/bookvol10.3.pamphlet
index 272d6cd..5ec4ffd 100644
--- a/books/bookvol10.3.pamphlet
+++ b/books/bookvol10.3.pamphlet
@@ -32949,6 +32949,813 @@ d03fafAnnaType():PartialDifferentialEquationsSolverCategory == Result add
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\chapter{Chapter E}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\section{domain EFULS ElementaryFunctionsUnivariateLaurentSeries}
+
+\begin{chunk}{ElementaryFunctionsUnivariateLaurentSeries.input}
+)set break resume
+)sys rm -f ElementaryFunctionsUnivariateLaurentSeries.output
+)spool ElementaryFunctionsUnivariateLaurentSeries.output
+)set message test on
+)set message auto off
+)clear all
+
+--S 1 of 1
+)show ElementaryFunctionsUnivariateLaurentSeries
+--E 1
+
+)spool
+)lisp (bye)
+\end{chunk}
+\begin{chunk}{ElementaryFunctionsUnivariateLaurentSeries.help}
+====================================================================
+ElementaryFunctionsUnivariateLaurentSeries examples
+====================================================================
+
+This domain provides elementary functions on any Laurent series
+domain over a field which was constructed from a Taylor series
+domain. These functions are implemented by calling the
+corresponding functions on the Taylor series domain. We also
+provide 'partial functions' which compute transcendental
+functions of Laurent series when possible and return "failed"
+when this is not possible.
+
+See Also:
+o )show ElementaryFunctionsUnivariateLaurentSeries
+
+\end{chunk}
+\pagehead{ElementaryFunctionsUnivariateLaurentSeries}{EFULS}
+\pagepic{ps/v103elementaryfunctionsunivariatelaurentseries.ps}{EFULS}{1.00}
+
+{\bf Exports:}\\
+\begin{tabular}{lllll}
+\cross{EFULS}{acos} &
+\cross{EFULS}{acosIfCan} &
+\cross{EFULS}{acosh} &
+\cross{EFULS}{acoshIfCan} &
+\cross{EFULS}{acot} \\
+\cross{EFULS}{acotIfCan} &
+\cross{EFULS}{acoth} &
+\cross{EFULS}{acothIfCan} &
+\cross{EFULS}{acsc} &
+\cross{EFULS}{acscIfCan} \\
+\cross{EFULS}{acsch} &
+\cross{EFULS}{acschIfCan} &
+\cross{EFULS}{asec} &
+\cross{EFULS}{asecIfCan} &
+\cross{EFULS}{asech} \\
+\cross{EFULS}{asechIfCan} &
+\cross{EFULS}{asin} &
+\cross{EFULS}{asinIfCan} &
+\cross{EFULS}{asinh} &
+\cross{EFULS}{asinhIfCan} \\
+\cross{EFULS}{atan} &
+\cross{EFULS}{atanIfCan} &
+\cross{EFULS}{atanh} &
+\cross{EFULS}{atanhIfCan} &
+\cross{EFULS}{cos} \\
+\cross{EFULS}{cosIfCan} &
+\cross{EFULS}{cosh} &
+\cross{EFULS}{coshIfCan} &
+\cross{EFULS}{cot} &
+\cross{EFULS}{cotIfCan} \\
+\cross{EFULS}{coth} &
+\cross{EFULS}{cothIfCan} &
+\cross{EFULS}{csc} &
+\cross{EFULS}{cscIfCan} &
+\cross{EFULS}{csch} \\
+\cross{EFULS}{cschIfCan} &
+\cross{EFULS}{exp} &
+\cross{EFULS}{expIfCan} &
+\cross{EFULS}{log} &
+\cross{EFULS}{logIfCan} \\
+\cross{EFULS}{nthRootIfCan} &
+\cross{EFULS}{sec} &
+\cross{EFULS}{secIfCan} &
+\cross{EFULS}{sech} &
+\cross{EFULS}{sechIfCan} \\
+\cross{EFULS}{sin} &
+\cross{EFULS}{sinIfCan} &
+\cross{EFULS}{sinh} &
+\cross{EFULS}{sinhIfCan} &
+\cross{EFULS}{tan} \\
+\cross{EFULS}{tanIfCan} &
+\cross{EFULS}{tanh} &
+\cross{EFULS}{tanhIfCan} &
+\cross{EFULS}{?**?} &
+\end{tabular}
+
+\begin{chunk}{domain EFULS ElementaryFunctionsUnivariateLaurentSeries}
+)abbrev domain EFULS ElementaryFunctionsUnivariateLaurentSeries
+++ Author: Clifton J. Williamson
+++ Date Created: 6 February 1990
+++ Date Last Updated: 25 February 1990
+++ Description:
+++ This domain provides elementary functions on any Laurent series
+++ domain over a field which was constructed from a Taylor series
+++ domain. These functions are implemented by calling the
+++ corresponding functions on the Taylor series domain. We also
+++ provide 'partial functions' which compute transcendental
+++ functions of Laurent series when possible and return "failed"
+++ when this is not possible.
+
+ElementaryFunctionsUnivariateLaurentSeries(Coef,UTS,ULS):_
+ Exports == Implementation where
+ Coef : Algebra Fraction Integer
+ UTS : UnivariateTaylorSeriesCategory Coef
+ ULS : UnivariateLaurentSeriesConstructorCategory(Coef,UTS)
+ I ==> Integer
+ NNI ==> NonNegativeInteger
+ RN ==> Fraction Integer
+ S ==> String
+ STTF ==> StreamTranscendentalFunctions(Coef)
+
+ Exports ==> PartialTranscendentalFunctions(ULS) with
+
+ if Coef has Field then
+ "**": (ULS,RN) -> ULS
+ ++ s ** r raises a Laurent series s to a rational power r
+
+--% Exponentials and Logarithms
+
+ exp: ULS -> ULS
+ ++ exp(z) returns the exponential of Laurent series z.
+ log: ULS -> ULS
+ ++ log(z) returns the logarithm of Laurent series z.
+
+--% TrigonometricFunctionCategory
+
+ sin: ULS -> ULS
+ ++ sin(z) returns the sine of Laurent series z.
+ cos: ULS -> ULS
+ ++ cos(z) returns the cosine of Laurent series z.
+ tan: ULS -> ULS
+ ++ tan(z) returns the tangent of Laurent series z.
+ cot: ULS -> ULS
+ ++ cot(z) returns the cotangent of Laurent series z.
+ sec: ULS -> ULS
+ ++ sec(z) returns the secant of Laurent series z.
+ csc: ULS -> ULS
+ ++ csc(z) returns the cosecant of Laurent series z.
+
+--% ArcTrigonometricFunctionCategory
+
+ asin: ULS -> ULS
+ ++ asin(z) returns the arc-sine of Laurent series z.
+ acos: ULS -> ULS
+ ++ acos(z) returns the arc-cosine of Laurent series z.
+ atan: ULS -> ULS
+ ++ atan(z) returns the arc-tangent of Laurent series z.
+ acot: ULS -> ULS
+ ++ acot(z) returns the arc-cotangent of Laurent series z.
+ asec: ULS -> ULS
+ ++ asec(z) returns the arc-secant of Laurent series z.
+ acsc: ULS -> ULS
+ ++ acsc(z) returns the arc-cosecant of Laurent series z.
+
+--% HyperbolicFunctionCategory
+
+ sinh: ULS -> ULS
+ ++ sinh(z) returns the hyperbolic sine of Laurent series z.
+ cosh: ULS -> ULS
+ ++ cosh(z) returns the hyperbolic cosine of Laurent series z.
+ tanh: ULS -> ULS
+ ++ tanh(z) returns the hyperbolic tangent of Laurent series z.
+ coth: ULS -> ULS
+ ++ coth(z) returns the hyperbolic cotangent of Laurent series z.
+ sech: ULS -> ULS
+ ++ sech(z) returns the hyperbolic secant of Laurent series z.
+ csch: ULS -> ULS
+ ++ csch(z) returns the hyperbolic cosecant of Laurent series z.
+
+--% ArcHyperbolicFunctionCategory
+
+ asinh: ULS -> ULS
+ ++ asinh(z) returns the inverse hyperbolic sine of Laurent series z.
+ acosh: ULS -> ULS
+ ++ acosh(z) returns the inverse hyperbolic cosine of Laurent series z.
+ atanh: ULS -> ULS
+ ++ atanh(z) returns the inverse hyperbolic tangent of Laurent series z.
+ acoth: ULS -> ULS
+ ++ acoth(z) returns the inverse hyperbolic cotangent of Laurent series z.
+ asech: ULS -> ULS
+ ++ asech(z) returns the inverse hyperbolic secant of Laurent series z.
+ acsch: ULS -> ULS
+ ++ acsch(z) returns the inverse hyperbolic cosecant of Laurent series z.
+
+ Implementation ==> add
+
+--% roots
+
+ RATPOWERS : Boolean := Coef has "**":(Coef,RN) -> Coef
+ TRANSFCN : Boolean := Coef has TranscendentalFunctionCategory
+ RATS : Boolean := Coef has retractIfCan: Coef -> Union(RN,"failed")
+
+ nthRootUTS:(UTS,I) -> Union(UTS,"failed")
+ nthRootUTS(uts,n) ==
+ -- assumed: n > 1, uts has non-zero constant term
+-- one? coefficient(uts,0) => uts ** inv(n::RN)
+ coefficient(uts,0) = 1 => uts ** inv(n::RN)
+ RATPOWERS => uts ** inv(n::RN)
+ "failed"
+
+ nthRootIfCan(uls,nn) ==
+ (n := nn :: I) < 1 => error "nthRootIfCan: n must be positive"
+ n = 1 => uls
+ deg := degree uls
+ if zero? (coef := coefficient(uls,deg)) then
+ uls := removeZeroes(1000,uls); deg := degree uls
+ zero? (coef := coefficient(uls,deg)) =>
+ error "root of series with many leading zero coefficients"
+ (k := deg exquo n) case "failed" => "failed"
+ uts := taylor(uls * monomial(1,-deg))
+ (root := nthRootUTS(uts,n)) case "failed" => "failed"
+ monomial(1,k :: I) * (root :: UTS :: ULS)
+
+ if Coef has Field then
+ (uls:ULS) ** (r:RN) ==
+ num := numer r; den := denom r
+-- one? den => uls ** num
+ den = 1 => uls ** num
+ deg := degree uls
+ if zero? (coef := coefficient(uls,deg)) then
+ uls := removeZeroes(1000,uls); deg := degree uls
+ zero? (coef := coefficient(uls,deg)) =>
+ error "power of series with many leading zero coefficients"
+ (k := deg exquo den) case "failed" =>
+ error "**: rational power does not exist"
+ uts := taylor(uls * monomial(1,-deg)) ** r
+ monomial(1,(k :: I) * num) * (uts :: ULS)
+
+--% transcendental functions
+
+ applyIfCan: (UTS -> UTS,ULS) -> Union(ULS,"failed")
+ applyIfCan(fcn,uls) ==
+ uts := taylorIfCan uls
+ uts case "failed" => "failed"
+ fcn(uts :: UTS) :: ULS
+
+ expIfCan uls == applyIfCan(exp,uls)
+ sinIfCan uls == applyIfCan(sin,uls)
+ cosIfCan uls == applyIfCan(cos,uls)
+ asinIfCan uls == applyIfCan(asin,uls)
+ acosIfCan uls == applyIfCan(acos,uls)
+ asecIfCan uls == applyIfCan(asec,uls)
+ acscIfCan uls == applyIfCan(acsc,uls)
+ sinhIfCan uls == applyIfCan(sinh,uls)
+ coshIfCan uls == applyIfCan(cosh,uls)
+ asinhIfCan uls == applyIfCan(asinh,uls)
+ acoshIfCan uls == applyIfCan(acosh,uls)
+ atanhIfCan uls == applyIfCan(atanh,uls)
+ acothIfCan uls == applyIfCan(acoth,uls)
+ asechIfCan uls == applyIfCan(asech,uls)
+ acschIfCan uls == applyIfCan(acsch,uls)
+
+ logIfCan uls ==
+ uts := taylorIfCan uls
+ uts case "failed" => "failed"
+ zero? coefficient(ts := uts :: UTS,0) => "failed"
+ log(ts) :: ULS
+
+ tanIfCan uls ==
+ -- don't call 'tan' on a UTS (tan(uls) may have a singularity)
+ uts := taylorIfCan uls
+ uts case "failed" => "failed"
+ sc := sincos(coefficients(uts :: UTS))$STTF
+ (cosInv := recip(series(sc.cos) :: ULS)) case "failed" => "failed"
+ (series(sc.sin) :: ULS) * (cosInv :: ULS)
+
+ cotIfCan uls ==
+ -- don't call 'cot' on a UTS (cot(uls) may have a singularity)
+ uts := taylorIfCan uls
+ uts case "failed" => "failed"
+ sc := sincos(coefficients(uts :: UTS))$STTF
+ (sinInv := recip(series(sc.sin) :: ULS)) case "failed" => "failed"
+ (series(sc.cos) :: ULS) * (sinInv :: ULS)
+
+ secIfCan uls ==
+ cos := cosIfCan uls
+ cos case "failed" => "failed"
+ (cosInv := recip(cos :: ULS)) case "failed" => "failed"
+ cosInv :: ULS
+
+ cscIfCan uls ==
+ sin := sinIfCan uls
+ sin case "failed" => "failed"
+ (sinInv := recip(sin :: ULS)) case "failed" => "failed"
+ sinInv :: ULS
+
+ atanIfCan uls ==
+ coef := coefficient(uls,0)
+ (ord := order(uls,0)) = 0 and coef * coef = -1 => "failed"
+ cc : Coef :=
+ ord < 0 =>
+ TRANSFCN =>
+ RATS =>
+ lc := coefficient(uls,ord)
+ (rat := retractIfCan(lc)@Union(RN,"failed")) case "failed" =>
+ (1/2) * pi()
+ (rat :: RN) > 0 => (1/2) * pi()
+ (-1/2) * pi()
+ (1/2) * pi()
+ return "failed"
+ coef = 0 => 0
+ TRANSFCN => atan coef
+ return "failed"
+ (z := recip(1 + uls*uls)) case "failed" => "failed"
+ (cc :: ULS) + integrate(differentiate(uls) * (z :: ULS))
+
+ acotIfCan uls ==
+ coef := coefficient(uls,0)
+ (ord := order(uls,0)) = 0 and coef * coef = -1 => "failed"
+ cc : Coef :=
+ ord < 0 =>
+ RATS =>
+ lc := coefficient(uls,ord)
+ (rat := retractIfCan(lc)@Union(RN,"failed")) case "failed" => 0
+ (rat :: RN) > 0 => 0
+ TRANSFCN => pi()
+ return "failed"
+ 0
+ TRANSFCN => acot coef
+ return "failed"
+ (z := recip(1 + uls*uls)) case "failed" => "failed"
+ (cc :: ULS) - integrate(differentiate(uls) * (z :: ULS))
+
+ tanhIfCan uls ==
+ -- don't call 'tanh' on a UTS (tanh(uls) may have a singularity)
+ uts := taylorIfCan uls
+ uts case "failed" => "failed"
+ sc := sinhcosh(coefficients(uts :: UTS))$STTF
+ (coshInv := recip(series(sc.cosh) :: ULS)) case "failed" =>
+ "failed"
+ (series(sc.sinh) :: ULS) * (coshInv :: ULS)
+
+ cothIfCan uls ==
+ -- don't call 'coth' on a UTS (coth(uls) may have a singularity)
+ uts := taylorIfCan uls
+ uts case "failed" => "failed"
+ sc := sinhcosh(coefficients(uts :: UTS))$STTF
+ (sinhInv := recip(series(sc.sinh) :: ULS)) case "failed" =>
+ "failed"
+ (series(sc.cosh) :: ULS) * (sinhInv :: ULS)
+
+ sechIfCan uls ==
+ cosh := coshIfCan uls
+ cosh case "failed" => "failed"
+ (coshInv := recip(cosh :: ULS)) case "failed" => "failed"
+ coshInv :: ULS
+
+ cschIfCan uls ==
+ sinh := sinhIfCan uls
+ sinh case "failed" => "failed"
+ (sinhInv := recip(sinh :: ULS)) case "failed" => "failed"
+ sinhInv :: ULS
+
+ applyOrError:(ULS -> Union(ULS,"failed"),S,ULS) -> ULS
+ applyOrError(fcn,name,uls) ==
+ ans := fcn uls
+ ans case "failed" =>
+ error concat(name," of function with singularity")
+ ans :: ULS
+
+ exp uls == applyOrError(expIfCan,"exp",uls)
+ log uls == applyOrError(logIfCan,"log",uls)
+ sin uls == applyOrError(sinIfCan,"sin",uls)
+ cos uls == applyOrError(cosIfCan,"cos",uls)
+ tan uls == applyOrError(tanIfCan,"tan",uls)
+ cot uls == applyOrError(cotIfCan,"cot",uls)
+ sec uls == applyOrError(secIfCan,"sec",uls)
+ csc uls == applyOrError(cscIfCan,"csc",uls)
+ asin uls == applyOrError(asinIfCan,"asin",uls)
+ acos uls == applyOrError(acosIfCan,"acos",uls)
+ asec uls == applyOrError(asecIfCan,"asec",uls)
+ acsc uls == applyOrError(acscIfCan,"acsc",uls)
+ sinh uls == applyOrError(sinhIfCan,"sinh",uls)
+ cosh uls == applyOrError(coshIfCan,"cosh",uls)
+ tanh uls == applyOrError(tanhIfCan,"tanh",uls)
+ coth uls == applyOrError(cothIfCan,"coth",uls)
+ sech uls == applyOrError(sechIfCan,"sech",uls)
+ csch uls == applyOrError(cschIfCan,"csch",uls)
+ asinh uls == applyOrError(asinhIfCan,"asinh",uls)
+ acosh uls == applyOrError(acoshIfCan,"acosh",uls)
+ atanh uls == applyOrError(atanhIfCan,"atanh",uls)
+ acoth uls == applyOrError(acothIfCan,"acoth",uls)
+ asech uls == applyOrError(asechIfCan,"asech",uls)
+ acsch uls == applyOrError(acschIfCan,"acsch",uls)
+
+ atan uls ==
+ -- code is duplicated so that correct error messages will be returned
+ coef := coefficient(uls,0)
+ (ord := order(uls,0)) = 0 and coef * coef = -1 =>
+ error "atan: series expansion has logarithmic term"
+ cc : Coef :=
+ ord < 0 =>
+ TRANSFCN =>
+ RATS =>
+ lc := coefficient(uls,ord)
+ (rat := retractIfCan(lc)@Union(RN,"failed")) case "failed" =>
+ (1/2) * pi()
+ (rat :: RN) > 0 => (1/2) * pi()
+ (-1/2) * pi()
+ (1/2) * pi()
+ error "atan: series expansion involves transcendental constants"
+ coef = 0 => 0
+ TRANSFCN => atan coef
+ error "atan: series expansion involves transcendental constants"
+ (z := recip(1 + uls*uls)) case "failed" =>
+ error "atan: leading coefficient not invertible"
+ (cc :: ULS) + integrate(differentiate(uls) * (z :: ULS))
+
+ acot uls ==
+ -- code is duplicated so that correct error messages will be returned
+ coef := coefficient(uls,0)
+ (ord := order(uls,0)) = 0 and coef * coef = -1 =>
+ error "acot: series expansion has logarithmic term"
+ cc : Coef :=
+ ord < 0 =>
+ RATS =>
+ lc := coefficient(uls,ord)
+ (rat := retractIfCan(lc)@Union(RN,"failed")) case "failed" => 0
+ (rat :: RN) > 0 => 0
+ TRANSFCN => pi()
+ error "acot: series expansion involves transcendental constants"
+ 0
+ TRANSFCN => acot coef
+ error "acot: series expansion involves transcendental constants"
+ (z := recip(1 + uls*uls)) case "failed" =>
+ error "acot: leading coefficient not invertible"
+ (cc :: ULS) - integrate(differentiate(uls) * (z :: ULS))
+
+\end{chunk}
+\begin{chunk}{EFULS.dotabb}
+"EFULS" [color="#FF4488",href="bookvol10.4.pdf#nameddest=EFULS"]
+"ULSCCAT" [color="#4488FF",href="bookvol10.2.pdf#nameddest=ULSCCAT"]
+"EFULS" -> "ULSCCAT"
+
+\end{chunk}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\section{domain EFUPXS ElementaryFunctionsUnivariatePuiseuxSeries}
+\begin{chunk}{ElementaryFunctionsUnivariatePuiseuxSeries.input}
+)set break resume
+)sys rm -f ElementaryFunctionsUnivariatePuiseuxSeries.output
+)spool ElementaryFunctionsUnivariatePuiseuxSeries.output
+)set message test on
+)set message auto off
+)clear all
+
+--S 1 of 1
+)show ElementaryFunctionsUnivariatePuiseuxSeries
+--E 1
+
+)spool
+)lisp (bye)
+\end{chunk}
+\begin{chunk}{ElementaryFunctionsUnivariatePuiseuxSeries.help}
+====================================================================
+ElementaryFunctionsUnivariatePuiseuxSeries examples
+====================================================================
+
+This domain provides elementary functions on any Laurent series
+domain over a field which was constructed from a Taylor series
+domain. These functions are implemented by calling the
+corresponding functions on the Taylor series domain. We also
+provide 'partial functions' which compute transcendental
+functions of Laurent series when possible and return "failed"
+when this is not possible.
+
+See Also:
+o )show ElementaryFunctionsUnivariatePuiseuxSeries
+
+\end{chunk}
+\pagehead{ElementaryFunctionsUnivariatePuiseuxSeries}{EFUPXS}
+\pagepic{ps/v103elementaryfunctionsunivariatepuiseuxseries.ps}{EFUPXS}{1.00}
+
+{\bf Exports:}\\
+\begin{tabular}{lllll}
+\cross{EFUPXS}{acos} &
+\cross{EFUPXS}{acosIfCan} &
+\cross{EFUPXS}{acosh} &
+\cross{EFUPXS}{acoshIfCan} &
+\cross{EFUPXS}{acot} \\
+\cross{EFUPXS}{acotIfCan} &
+\cross{EFUPXS}{acoth} &
+\cross{EFUPXS}{acothIfCan} &
+\cross{EFUPXS}{acsc} &
+\cross{EFUPXS}{acscIfCan} \\
+\cross{EFUPXS}{acsch} &
+\cross{EFUPXS}{acschIfCan} &
+\cross{EFUPXS}{asec} &
+\cross{EFUPXS}{asecIfCan} &
+\cross{EFUPXS}{asech} \\
+\cross{EFUPXS}{asechIfCan} &
+\cross{EFUPXS}{asin} &
+\cross{EFUPXS}{asinIfCan} &
+\cross{EFUPXS}{asinh} &
+\cross{EFUPXS}{asinhIfCan} \\
+\cross{EFUPXS}{atan} &
+\cross{EFUPXS}{atanIfCan} &
+\cross{EFUPXS}{atanh} &
+\cross{EFUPXS}{atanhIfCan} &
+\cross{EFUPXS}{cos} \\
+\cross{EFUPXS}{cosIfCan} &
+\cross{EFUPXS}{cosh} &
+\cross{EFUPXS}{coshIfCan} &
+\cross{EFUPXS}{cot} &
+\cross{EFUPXS}{cotIfCan} \\
+\cross{EFUPXS}{coth} &
+\cross{EFUPXS}{cothIfCan} &
+\cross{EFUPXS}{csc} &
+\cross{EFUPXS}{cscIfCan} &
+\cross{EFUPXS}{csch} \\
+\cross{EFUPXS}{cschIfCan} &
+\cross{EFUPXS}{exp} &
+\cross{EFUPXS}{expIfCan} &
+\cross{EFUPXS}{log} &
+\cross{EFUPXS}{logIfCan} \\
+\cross{EFUPXS}{nthRootIfCan} &
+\cross{EFUPXS}{sec} &
+\cross{EFUPXS}{secIfCan} &
+\cross{EFUPXS}{sech} &
+\cross{EFUPXS}{sechIfCan} \\
+\cross{EFUPXS}{sin} &
+\cross{EFUPXS}{sinIfCan} &
+\cross{EFUPXS}{sinh} &
+\cross{EFUPXS}{sinhIfCan} &
+\cross{EFUPXS}{tan} \\
+\cross{EFUPXS}{tanIfCan} &
+\cross{EFUPXS}{tanh} &
+\cross{EFUPXS}{tanhIfCan} &
+\cross{EFUPXS}{?**?} &
+\end{tabular}
+
+\begin{chunk}{domain EFUPXS ElementaryFunctionsUnivariatePuiseuxSeries}
+)abbrev domain EFUPXS ElementaryFunctionsUnivariatePuiseuxSeries
+++ Author: Clifton J. Williamson
+++ Date Created: 20 February 1990
+++ Date Last Updated: 20 February 1990
+++ Description:
+++ This package provides elementary functions on any Laurent series
+++ domain over a field which was constructed from a Taylor series
+++ domain. These functions are implemented by calling the
+++ corresponding functions on the Taylor series domain. We also
+++ provide 'partial functions' which compute transcendental
+++ functions of Laurent series when possible and return "failed"
+++ when this is not possible.
+
+ElementaryFunctionsUnivariatePuiseuxSeries(Coef,ULS,UPXS,EFULS):_
+ Exports == Implementation where
+ Coef : Algebra Fraction Integer
+ ULS : UnivariateLaurentSeriesCategory Coef
+ UPXS : UnivariatePuiseuxSeriesConstructorCategory(Coef,ULS)
+ EFULS : PartialTranscendentalFunctions(ULS)
+ I ==> Integer
+ NNI ==> NonNegativeInteger
+ RN ==> Fraction Integer
+
+ Exports ==> PartialTranscendentalFunctions(UPXS) with
+
+ if Coef has Field then
+ "**": (UPXS,RN) -> UPXS
+ ++ z ** r raises a Puiseaux series z to a rational power r
+
+--% Exponentials and Logarithms
+
+ exp: UPXS -> UPXS
+ ++ exp(z) returns the exponential of a Puiseux series z.
+ log: UPXS -> UPXS
+ ++ log(z) returns the logarithm of a Puiseux series z.
+
+--% TrigonometricFunctionCategory
+
+ sin: UPXS -> UPXS
+ ++ sin(z) returns the sine of a Puiseux series z.
+ cos: UPXS -> UPXS
+ ++ cos(z) returns the cosine of a Puiseux series z.
+ tan: UPXS -> UPXS
+ ++ tan(z) returns the tangent of a Puiseux series z.
+ cot: UPXS -> UPXS
+ ++ cot(z) returns the cotangent of a Puiseux series z.
+ sec: UPXS -> UPXS
+ ++ sec(z) returns the secant of a Puiseux series z.
+ csc: UPXS -> UPXS
+ ++ csc(z) returns the cosecant of a Puiseux series z.
+
+--% ArcTrigonometricFunctionCategory
+
+ asin: UPXS -> UPXS
+ ++ asin(z) returns the arc-sine of a Puiseux series z.
+ acos: UPXS -> UPXS
+ ++ acos(z) returns the arc-cosine of a Puiseux series z.
+ atan: UPXS -> UPXS
+ ++ atan(z) returns the arc-tangent of a Puiseux series z.
+ acot: UPXS -> UPXS
+ ++ acot(z) returns the arc-cotangent of a Puiseux series z.
+ asec: UPXS -> UPXS
+ ++ asec(z) returns the arc-secant of a Puiseux series z.
+ acsc: UPXS -> UPXS
+ ++ acsc(z) returns the arc-cosecant of a Puiseux series z.
+
+--% HyperbolicFunctionCategory
+
+ sinh: UPXS -> UPXS
+ ++ sinh(z) returns the hyperbolic sine of a Puiseux series z.
+ cosh: UPXS -> UPXS
+ ++ cosh(z) returns the hyperbolic cosine of a Puiseux series z.
+ tanh: UPXS -> UPXS
+ ++ tanh(z) returns the hyperbolic tangent of a Puiseux series z.
+ coth: UPXS -> UPXS
+ ++ coth(z) returns the hyperbolic cotangent of a Puiseux series z.
+ sech: UPXS -> UPXS
+ ++ sech(z) returns the hyperbolic secant of a Puiseux series z.
+ csch: UPXS -> UPXS
+ ++ csch(z) returns the hyperbolic cosecant of a Puiseux series z.
+
+--% ArcHyperbolicFunctionCategory
+
+ asinh: UPXS -> UPXS
+ ++ asinh(z) returns the inverse hyperbolic sine of a Puiseux series z.
+ acosh: UPXS -> UPXS
+ ++ acosh(z) returns the inverse hyperbolic cosine of a Puiseux series z.
+ atanh: UPXS -> UPXS
+ ++ atanh(z) returns the inverse hyperbolic tangent of a Puiseux series z.
+ acoth: UPXS -> UPXS
+ ++ acoth(z) returns the inverse hyperbolic cotangent
+ ++ of a Puiseux series z.
+ asech: UPXS -> UPXS
+ ++ asech(z) returns the inverse hyperbolic secant of a Puiseux series z.
+ acsch: UPXS -> UPXS
+ ++ acsch(z) returns the inverse hyperbolic cosecant
+ ++ of a Puiseux series z.
+
+ Implementation ==> add
+
+ TRANSFCN : Boolean := Coef has TranscendentalFunctionCategory
+
+--% roots
+
+ nthRootIfCan(upxs,n) ==
+-- one? n => upxs
+ n = 1 => upxs
+ r := rationalPower upxs; uls := laurentRep upxs
+ deg := degree uls
+ if zero?(coef := coefficient(uls,deg)) then
+ deg := order(uls,deg + 1000)
+ zero?(coef := coefficient(uls,deg)) =>
+ error "root of series with many leading zero coefficients"
+ uls := uls * monomial(1,-deg)$ULS
+ (ulsRoot := nthRootIfCan(uls,n)) case "failed" => "failed"
+ puiseux(r,ulsRoot :: ULS) * monomial(1,deg * r * inv(n :: RN))
+
+ if Coef has Field then
+ (upxs:UPXS) ** (q:RN) ==
+ num := numer q; den := denom q
+-- one? den => upxs ** num
+ den = 1 => upxs ** num
+ r := rationalPower upxs; uls := laurentRep upxs
+ deg := degree uls
+ if zero?(coef := coefficient(uls,deg)) then
+ deg := order(uls,deg + 1000)
+ zero?(coef := coefficient(uls,deg)) =>
+ error "power of series with many leading zero coefficients"
+ ulsPow := (uls * monomial(1,-deg)$ULS) ** q
+ puiseux(r,ulsPow) * monomial(1,deg*q*r)
+
+--% transcendental functions
+
+ applyIfCan: (ULS -> Union(ULS,"failed"),UPXS) -> Union(UPXS,"failed")
+ applyIfCan(fcn,upxs) ==
+ uls := fcn laurentRep upxs
+ uls case "failed" => "failed"
+ puiseux(rationalPower upxs,uls :: ULS)
+
+ expIfCan upxs == applyIfCan(expIfCan,upxs)
+ logIfCan upxs == applyIfCan(logIfCan,upxs)
+ sinIfCan upxs == applyIfCan(sinIfCan,upxs)
+ cosIfCan upxs == applyIfCan(cosIfCan,upxs)
+ tanIfCan upxs == applyIfCan(tanIfCan,upxs)
+ cotIfCan upxs == applyIfCan(cotIfCan,upxs)
+ secIfCan upxs == applyIfCan(secIfCan,upxs)
+ cscIfCan upxs == applyIfCan(cscIfCan,upxs)
+ atanIfCan upxs == applyIfCan(atanIfCan,upxs)
+ acotIfCan upxs == applyIfCan(acotIfCan,upxs)
+ sinhIfCan upxs == applyIfCan(sinhIfCan,upxs)
+ coshIfCan upxs == applyIfCan(coshIfCan,upxs)
+ tanhIfCan upxs == applyIfCan(tanhIfCan,upxs)
+ cothIfCan upxs == applyIfCan(cothIfCan,upxs)
+ sechIfCan upxs == applyIfCan(sechIfCan,upxs)
+ cschIfCan upxs == applyIfCan(cschIfCan,upxs)
+ asinhIfCan upxs == applyIfCan(asinhIfCan,upxs)
+ acoshIfCan upxs == applyIfCan(acoshIfCan,upxs)
+ atanhIfCan upxs == applyIfCan(atanhIfCan,upxs)
+ acothIfCan upxs == applyIfCan(acothIfCan,upxs)
+ asechIfCan upxs == applyIfCan(asechIfCan,upxs)
+ acschIfCan upxs == applyIfCan(acschIfCan,upxs)
+
+ asinIfCan upxs ==
+ order(upxs,0) < 0 => "failed"
+ (coef := coefficient(upxs,0)) = 0 =>
+ integrate((1 - upxs*upxs)**(-1/2) * (differentiate upxs))
+ TRANSFCN =>
+ cc := asin(coef) :: UPXS
+ cc + integrate((1 - upxs*upxs)**(-1/2) * (differentiate upxs))
+ "failed"
+
+ acosIfCan upxs ==
+ order(upxs,0) < 0 => "failed"
+ TRANSFCN =>
+ cc := acos(coefficient(upxs,0)) :: UPXS
+ cc + integrate(-(1 - upxs*upxs)**(-1/2) * (differentiate upxs))
+ "failed"
+
+ asecIfCan upxs ==
+ order(upxs,0) < 0 => "failed"
+ TRANSFCN =>
+ cc := asec(coefficient(upxs,0)) :: UPXS
+ f := (upxs*upxs - 1)**(-1/2) * (differentiate upxs)
+ (rec := recip upxs) case "failed" => "failed"
+ cc + integrate(f * (rec :: UPXS))
+ "failed"
+
+ acscIfCan upxs ==
+ order(upxs,0) < 0 => "failed"
+ TRANSFCN =>
+ cc := acsc(coefficient(upxs,0)) :: UPXS
+ f := -(upxs*upxs - 1)**(-1/2) * (differentiate upxs)
+ (rec := recip upxs) case "failed" => "failed"
+ cc + integrate(f * (rec :: UPXS))
+ "failed"
+
+ asinhIfCan upxs ==
+ order(upxs,0) < 0 => "failed"
+ TRANSFCN or (coefficient(upxs,0) = 0) =>
+ log(upxs + (1 + upxs*upxs)**(1/2))
+ "failed"
+
+ acoshIfCan upxs ==
+ TRANSFCN =>
+ order(upxs,0) < 0 => "failed"
+ log(upxs + (upxs*upxs - 1)**(1/2))
+ "failed"
+
+ asechIfCan upxs ==
+ TRANSFCN =>
+ order(upxs,0) < 0 => "failed"
+ (rec := recip upxs) case "failed" => "failed"
+ log((1 + (1 - upxs*upxs)*(1/2)) * (rec :: UPXS))
+ "failed"
+
+ acschIfCan upxs ==
+ TRANSFCN =>
+ order(upxs,0) < 0 => "failed"
+ (rec := recip upxs) case "failed" => "failed"
+ log((1 + (1 + upxs*upxs)*(1/2)) * (rec :: UPXS))
+ "failed"
+
+ applyOrError:(UPXS -> Union(UPXS,"failed"),String,UPXS) -> UPXS
+ applyOrError(fcn,name,upxs) ==
+ ans := fcn upxs
+ ans case "failed" =>
+ error concat(name," of function with singularity")
+ ans :: UPXS
+
+ exp upxs == applyOrError(expIfCan,"exp",upxs)
+ log upxs == applyOrError(logIfCan,"log",upxs)
+ sin upxs == applyOrError(sinIfCan,"sin",upxs)
+ cos upxs == applyOrError(cosIfCan,"cos",upxs)
+ tan upxs == applyOrError(tanIfCan,"tan",upxs)
+ cot upxs == applyOrError(cotIfCan,"cot",upxs)
+ sec upxs == applyOrError(secIfCan,"sec",upxs)
+ csc upxs == applyOrError(cscIfCan,"csc",upxs)
+ asin upxs == applyOrError(asinIfCan,"asin",upxs)
+ acos upxs == applyOrError(acosIfCan,"acos",upxs)
+ atan upxs == applyOrError(atanIfCan,"atan",upxs)
+ acot upxs == applyOrError(acotIfCan,"acot",upxs)
+ asec upxs == applyOrError(asecIfCan,"asec",upxs)
+ acsc upxs == applyOrError(acscIfCan,"acsc",upxs)
+ sinh upxs == applyOrError(sinhIfCan,"sinh",upxs)
+ cosh upxs == applyOrError(coshIfCan,"cosh",upxs)
+ tanh upxs == applyOrError(tanhIfCan,"tanh",upxs)
+ coth upxs == applyOrError(cothIfCan,"coth",upxs)
+ sech upxs == applyOrError(sechIfCan,"sech",upxs)
+ csch upxs == applyOrError(cschIfCan,"csch",upxs)
+ asinh upxs == applyOrError(asinhIfCan,"asinh",upxs)
+ acosh upxs == applyOrError(acoshIfCan,"acosh",upxs)
+ atanh upxs == applyOrError(atanhIfCan,"atanh",upxs)
+ acoth upxs == applyOrError(acothIfCan,"acoth",upxs)
+ asech upxs == applyOrError(asechIfCan,"asech",upxs)
+ acsch upxs == applyOrError(acschIfCan,"acsch",upxs)
+
+\end{chunk}
+\begin{chunk}{EFUPXS.dotabb}
+"EFUPXS" [color="#FF4488",href="bookvol10.4.pdf#nameddest=EFUPXS"]
+"UPXSCCA" [color="#4488FF",href="bookvol10.2.pdf#nameddest=UPXSCCA"]
+"EFUPXS" -> "UPXSCCA"
+
+\end{chunk}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{domain EQ Equation}
\begin{chunk}{Equation.input}
@@ -154777,6 +155584,8 @@ Note that this code is not included in the generated catdef.spad file.
\getchunk{domain D03EEFA d03eefAnnaType}
\getchunk{domain D03FAFA d03fafAnnaType}
+\getchunk{domain EFULS ElementaryFunctionsUnivariateLaurentSeries}
+\getchunk{domain EFUPXS ElementaryFunctionsUnivariatePuiseuxSeries}
\getchunk{domain EQTBL EqTable}
\getchunk{domain EQ Equation}
\getchunk{domain EXPEXPAN ExponentialExpansion}
diff --git a/books/bookvol10.4.pamphlet b/books/bookvol10.4.pamphlet
index 2b910c8..566a2d4 100644
--- a/books/bookvol10.4.pamphlet
+++ b/books/bookvol10.4.pamphlet
@@ -22650,809 +22650,6 @@ ElementaryFunctionStructurePackage(R,F): Exports == Implementation where
\end{chunk}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\section{package EFULS ElementaryFunctionsUnivariateLaurentSeries}
-\begin{chunk}{ElementaryFunctionsUnivariateLaurentSeries.input}
-)set break resume
-)sys rm -f ElementaryFunctionsUnivariateLaurentSeries.output
-)spool ElementaryFunctionsUnivariateLaurentSeries.output
-)set message test on
-)set message auto off
-)clear all
-
---S 1 of 1
-)show ElementaryFunctionsUnivariateLaurentSeries
---E 1
-
-)spool
-)lisp (bye)
-\end{chunk}
-\begin{chunk}{ElementaryFunctionsUnivariateLaurentSeries.help}
-====================================================================
-ElementaryFunctionsUnivariateLaurentSeries examples
-====================================================================
-
-This package provides elementary functions on any Laurent series
-domain over a field which was constructed from a Taylor series
-domain. These functions are implemented by calling the
-corresponding functions on the Taylor series domain. We also
-provide 'partial functions' which compute transcendental
-functions of Laurent series when possible and return "failed"
-when this is not possible.
-
-See Also:
-o )show ElementaryFunctionsUnivariateLaurentSeries
-
-\end{chunk}
-\pagehead{ElementaryFunctionsUnivariateLaurentSeries}{EFULS}
-\pagepic{ps/v104elementaryfunctionsunivariatelaurentseries.ps}{EFULS}{1.00}
-
-{\bf Exports:}\\
-\begin{tabular}{lllll}
-\cross{EFULS}{acos} &
-\cross{EFULS}{acosIfCan} &
-\cross{EFULS}{acosh} &
-\cross{EFULS}{acoshIfCan} &
-\cross{EFULS}{acot} \\
-\cross{EFULS}{acotIfCan} &
-\cross{EFULS}{acoth} &
-\cross{EFULS}{acothIfCan} &
-\cross{EFULS}{acsc} &
-\cross{EFULS}{acscIfCan} \\
-\cross{EFULS}{acsch} &
-\cross{EFULS}{acschIfCan} &
-\cross{EFULS}{asec} &
-\cross{EFULS}{asecIfCan} &
-\cross{EFULS}{asech} \\
-\cross{EFULS}{asechIfCan} &
-\cross{EFULS}{asin} &
-\cross{EFULS}{asinIfCan} &
-\cross{EFULS}{asinh} &
-\cross{EFULS}{asinhIfCan} \\
-\cross{EFULS}{atan} &
-\cross{EFULS}{atanIfCan} &
-\cross{EFULS}{atanh} &
-\cross{EFULS}{atanhIfCan} &
-\cross{EFULS}{cos} \\
-\cross{EFULS}{cosIfCan} &
-\cross{EFULS}{cosh} &
-\cross{EFULS}{coshIfCan} &
-\cross{EFULS}{cot} &
-\cross{EFULS}{cotIfCan} \\
-\cross{EFULS}{coth} &
-\cross{EFULS}{cothIfCan} &
-\cross{EFULS}{csc} &
-\cross{EFULS}{cscIfCan} &
-\cross{EFULS}{csch} \\
-\cross{EFULS}{cschIfCan} &
-\cross{EFULS}{exp} &
-\cross{EFULS}{expIfCan} &
-\cross{EFULS}{log} &
-\cross{EFULS}{logIfCan} \\
-\cross{EFULS}{nthRootIfCan} &
-\cross{EFULS}{sec} &
-\cross{EFULS}{secIfCan} &
-\cross{EFULS}{sech} &
-\cross{EFULS}{sechIfCan} \\
-\cross{EFULS}{sin} &
-\cross{EFULS}{sinIfCan} &
-\cross{EFULS}{sinh} &
-\cross{EFULS}{sinhIfCan} &
-\cross{EFULS}{tan} \\
-\cross{EFULS}{tanIfCan} &
-\cross{EFULS}{tanh} &
-\cross{EFULS}{tanhIfCan} &
-\cross{EFULS}{?**?} &
-\end{tabular}
-
-\begin{chunk}{package EFULS ElementaryFunctionsUnivariateLaurentSeries}
-)abbrev package EFULS ElementaryFunctionsUnivariateLaurentSeries
-++ Author: Clifton J. Williamson
-++ Date Created: 6 February 1990
-++ Date Last Updated: 25 February 1990
-++ Description:
-++ This package provides elementary functions on any Laurent series
-++ domain over a field which was constructed from a Taylor series
-++ domain. These functions are implemented by calling the
-++ corresponding functions on the Taylor series domain. We also
-++ provide 'partial functions' which compute transcendental
-++ functions of Laurent series when possible and return "failed"
-++ when this is not possible.
-
-ElementaryFunctionsUnivariateLaurentSeries(Coef,UTS,ULS):_
- Exports == Implementation where
- Coef : Algebra Fraction Integer
- UTS : UnivariateTaylorSeriesCategory Coef
- ULS : UnivariateLaurentSeriesConstructorCategory(Coef,UTS)
- I ==> Integer
- NNI ==> NonNegativeInteger
- RN ==> Fraction Integer
- S ==> String
- STTF ==> StreamTranscendentalFunctions(Coef)
-
- Exports ==> PartialTranscendentalFunctions(ULS) with
-
- if Coef has Field then
- "**": (ULS,RN) -> ULS
- ++ s ** r raises a Laurent series s to a rational power r
-
---% Exponentials and Logarithms
-
- exp: ULS -> ULS
- ++ exp(z) returns the exponential of Laurent series z.
- log: ULS -> ULS
- ++ log(z) returns the logarithm of Laurent series z.
-
---% TrigonometricFunctionCategory
-
- sin: ULS -> ULS
- ++ sin(z) returns the sine of Laurent series z.
- cos: ULS -> ULS
- ++ cos(z) returns the cosine of Laurent series z.
- tan: ULS -> ULS
- ++ tan(z) returns the tangent of Laurent series z.
- cot: ULS -> ULS
- ++ cot(z) returns the cotangent of Laurent series z.
- sec: ULS -> ULS
- ++ sec(z) returns the secant of Laurent series z.
- csc: ULS -> ULS
- ++ csc(z) returns the cosecant of Laurent series z.
-
---% ArcTrigonometricFunctionCategory
-
- asin: ULS -> ULS
- ++ asin(z) returns the arc-sine of Laurent series z.
- acos: ULS -> ULS
- ++ acos(z) returns the arc-cosine of Laurent series z.
- atan: ULS -> ULS
- ++ atan(z) returns the arc-tangent of Laurent series z.
- acot: ULS -> ULS
- ++ acot(z) returns the arc-cotangent of Laurent series z.
- asec: ULS -> ULS
- ++ asec(z) returns the arc-secant of Laurent series z.
- acsc: ULS -> ULS
- ++ acsc(z) returns the arc-cosecant of Laurent series z.
-
---% HyperbolicFunctionCategory
-
- sinh: ULS -> ULS
- ++ sinh(z) returns the hyperbolic sine of Laurent series z.
- cosh: ULS -> ULS
- ++ cosh(z) returns the hyperbolic cosine of Laurent series z.
- tanh: ULS -> ULS
- ++ tanh(z) returns the hyperbolic tangent of Laurent series z.
- coth: ULS -> ULS
- ++ coth(z) returns the hyperbolic cotangent of Laurent series z.
- sech: ULS -> ULS
- ++ sech(z) returns the hyperbolic secant of Laurent series z.
- csch: ULS -> ULS
- ++ csch(z) returns the hyperbolic cosecant of Laurent series z.
-
---% ArcHyperbolicFunctionCategory
-
- asinh: ULS -> ULS
- ++ asinh(z) returns the inverse hyperbolic sine of Laurent series z.
- acosh: ULS -> ULS
- ++ acosh(z) returns the inverse hyperbolic cosine of Laurent series z.
- atanh: ULS -> ULS
- ++ atanh(z) returns the inverse hyperbolic tangent of Laurent series z.
- acoth: ULS -> ULS
- ++ acoth(z) returns the inverse hyperbolic cotangent of Laurent series z.
- asech: ULS -> ULS
- ++ asech(z) returns the inverse hyperbolic secant of Laurent series z.
- acsch: ULS -> ULS
- ++ acsch(z) returns the inverse hyperbolic cosecant of Laurent series z.
-
- Implementation ==> add
-
---% roots
-
- RATPOWERS : Boolean := Coef has "**":(Coef,RN) -> Coef
- TRANSFCN : Boolean := Coef has TranscendentalFunctionCategory
- RATS : Boolean := Coef has retractIfCan: Coef -> Union(RN,"failed")
-
- nthRootUTS:(UTS,I) -> Union(UTS,"failed")
- nthRootUTS(uts,n) ==
- -- assumed: n > 1, uts has non-zero constant term
--- one? coefficient(uts,0) => uts ** inv(n::RN)
- coefficient(uts,0) = 1 => uts ** inv(n::RN)
- RATPOWERS => uts ** inv(n::RN)
- "failed"
-
- nthRootIfCan(uls,nn) ==
- (n := nn :: I) < 1 => error "nthRootIfCan: n must be positive"
- n = 1 => uls
- deg := degree uls
- if zero? (coef := coefficient(uls,deg)) then
- uls := removeZeroes(1000,uls); deg := degree uls
- zero? (coef := coefficient(uls,deg)) =>
- error "root of series with many leading zero coefficients"
- (k := deg exquo n) case "failed" => "failed"
- uts := taylor(uls * monomial(1,-deg))
- (root := nthRootUTS(uts,n)) case "failed" => "failed"
- monomial(1,k :: I) * (root :: UTS :: ULS)
-
- if Coef has Field then
- (uls:ULS) ** (r:RN) ==
- num := numer r; den := denom r
--- one? den => uls ** num
- den = 1 => uls ** num
- deg := degree uls
- if zero? (coef := coefficient(uls,deg)) then
- uls := removeZeroes(1000,uls); deg := degree uls
- zero? (coef := coefficient(uls,deg)) =>
- error "power of series with many leading zero coefficients"
- (k := deg exquo den) case "failed" =>
- error "**: rational power does not exist"
- uts := taylor(uls * monomial(1,-deg)) ** r
- monomial(1,(k :: I) * num) * (uts :: ULS)
-
---% transcendental functions
-
- applyIfCan: (UTS -> UTS,ULS) -> Union(ULS,"failed")
- applyIfCan(fcn,uls) ==
- uts := taylorIfCan uls
- uts case "failed" => "failed"
- fcn(uts :: UTS) :: ULS
-
- expIfCan uls == applyIfCan(exp,uls)
- sinIfCan uls == applyIfCan(sin,uls)
- cosIfCan uls == applyIfCan(cos,uls)
- asinIfCan uls == applyIfCan(asin,uls)
- acosIfCan uls == applyIfCan(acos,uls)
- asecIfCan uls == applyIfCan(asec,uls)
- acscIfCan uls == applyIfCan(acsc,uls)
- sinhIfCan uls == applyIfCan(sinh,uls)
- coshIfCan uls == applyIfCan(cosh,uls)
- asinhIfCan uls == applyIfCan(asinh,uls)
- acoshIfCan uls == applyIfCan(acosh,uls)
- atanhIfCan uls == applyIfCan(atanh,uls)
- acothIfCan uls == applyIfCan(acoth,uls)
- asechIfCan uls == applyIfCan(asech,uls)
- acschIfCan uls == applyIfCan(acsch,uls)
-
- logIfCan uls ==
- uts := taylorIfCan uls
- uts case "failed" => "failed"
- zero? coefficient(ts := uts :: UTS,0) => "failed"
- log(ts) :: ULS
-
- tanIfCan uls ==
- -- don't call 'tan' on a UTS (tan(uls) may have a singularity)
- uts := taylorIfCan uls
- uts case "failed" => "failed"
- sc := sincos(coefficients(uts :: UTS))$STTF
- (cosInv := recip(series(sc.cos) :: ULS)) case "failed" => "failed"
- (series(sc.sin) :: ULS) * (cosInv :: ULS)
-
- cotIfCan uls ==
- -- don't call 'cot' on a UTS (cot(uls) may have a singularity)
- uts := taylorIfCan uls
- uts case "failed" => "failed"
- sc := sincos(coefficients(uts :: UTS))$STTF
- (sinInv := recip(series(sc.sin) :: ULS)) case "failed" => "failed"
- (series(sc.cos) :: ULS) * (sinInv :: ULS)
-
- secIfCan uls ==
- cos := cosIfCan uls
- cos case "failed" => "failed"
- (cosInv := recip(cos :: ULS)) case "failed" => "failed"
- cosInv :: ULS
-
- cscIfCan uls ==
- sin := sinIfCan uls
- sin case "failed" => "failed"
- (sinInv := recip(sin :: ULS)) case "failed" => "failed"
- sinInv :: ULS
-
- atanIfCan uls ==
- coef := coefficient(uls,0)
- (ord := order(uls,0)) = 0 and coef * coef = -1 => "failed"
- cc : Coef :=
- ord < 0 =>
- TRANSFCN =>
- RATS =>
- lc := coefficient(uls,ord)
- (rat := retractIfCan(lc)@Union(RN,"failed")) case "failed" =>
- (1/2) * pi()
- (rat :: RN) > 0 => (1/2) * pi()
- (-1/2) * pi()
- (1/2) * pi()
- return "failed"
- coef = 0 => 0
- TRANSFCN => atan coef
- return "failed"
- (z := recip(1 + uls*uls)) case "failed" => "failed"
- (cc :: ULS) + integrate(differentiate(uls) * (z :: ULS))
-
- acotIfCan uls ==
- coef := coefficient(uls,0)
- (ord := order(uls,0)) = 0 and coef * coef = -1 => "failed"
- cc : Coef :=
- ord < 0 =>
- RATS =>
- lc := coefficient(uls,ord)
- (rat := retractIfCan(lc)@Union(RN,"failed")) case "failed" => 0
- (rat :: RN) > 0 => 0
- TRANSFCN => pi()
- return "failed"
- 0
- TRANSFCN => acot coef
- return "failed"
- (z := recip(1 + uls*uls)) case "failed" => "failed"
- (cc :: ULS) - integrate(differentiate(uls) * (z :: ULS))
-
- tanhIfCan uls ==
- -- don't call 'tanh' on a UTS (tanh(uls) may have a singularity)
- uts := taylorIfCan uls
- uts case "failed" => "failed"
- sc := sinhcosh(coefficients(uts :: UTS))$STTF
- (coshInv := recip(series(sc.cosh) :: ULS)) case "failed" =>
- "failed"
- (series(sc.sinh) :: ULS) * (coshInv :: ULS)
-
- cothIfCan uls ==
- -- don't call 'coth' on a UTS (coth(uls) may have a singularity)
- uts := taylorIfCan uls
- uts case "failed" => "failed"
- sc := sinhcosh(coefficients(uts :: UTS))$STTF
- (sinhInv := recip(series(sc.sinh) :: ULS)) case "failed" =>
- "failed"
- (series(sc.cosh) :: ULS) * (sinhInv :: ULS)
-
- sechIfCan uls ==
- cosh := coshIfCan uls
- cosh case "failed" => "failed"
- (coshInv := recip(cosh :: ULS)) case "failed" => "failed"
- coshInv :: ULS
-
- cschIfCan uls ==
- sinh := sinhIfCan uls
- sinh case "failed" => "failed"
- (sinhInv := recip(sinh :: ULS)) case "failed" => "failed"
- sinhInv :: ULS
-
- applyOrError:(ULS -> Union(ULS,"failed"),S,ULS) -> ULS
- applyOrError(fcn,name,uls) ==
- ans := fcn uls
- ans case "failed" =>
- error concat(name," of function with singularity")
- ans :: ULS
-
- exp uls == applyOrError(expIfCan,"exp",uls)
- log uls == applyOrError(logIfCan,"log",uls)
- sin uls == applyOrError(sinIfCan,"sin",uls)
- cos uls == applyOrError(cosIfCan,"cos",uls)
- tan uls == applyOrError(tanIfCan,"tan",uls)
- cot uls == applyOrError(cotIfCan,"cot",uls)
- sec uls == applyOrError(secIfCan,"sec",uls)
- csc uls == applyOrError(cscIfCan,"csc",uls)
- asin uls == applyOrError(asinIfCan,"asin",uls)
- acos uls == applyOrError(acosIfCan,"acos",uls)
- asec uls == applyOrError(asecIfCan,"asec",uls)
- acsc uls == applyOrError(acscIfCan,"acsc",uls)
- sinh uls == applyOrError(sinhIfCan,"sinh",uls)
- cosh uls == applyOrError(coshIfCan,"cosh",uls)
- tanh uls == applyOrError(tanhIfCan,"tanh",uls)
- coth uls == applyOrError(cothIfCan,"coth",uls)
- sech uls == applyOrError(sechIfCan,"sech",uls)
- csch uls == applyOrError(cschIfCan,"csch",uls)
- asinh uls == applyOrError(asinhIfCan,"asinh",uls)
- acosh uls == applyOrError(acoshIfCan,"acosh",uls)
- atanh uls == applyOrError(atanhIfCan,"atanh",uls)
- acoth uls == applyOrError(acothIfCan,"acoth",uls)
- asech uls == applyOrError(asechIfCan,"asech",uls)
- acsch uls == applyOrError(acschIfCan,"acsch",uls)
-
- atan uls ==
- -- code is duplicated so that correct error messages will be returned
- coef := coefficient(uls,0)
- (ord := order(uls,0)) = 0 and coef * coef = -1 =>
- error "atan: series expansion has logarithmic term"
- cc : Coef :=
- ord < 0 =>
- TRANSFCN =>
- RATS =>
- lc := coefficient(uls,ord)
- (rat := retractIfCan(lc)@Union(RN,"failed")) case "failed" =>
- (1/2) * pi()
- (rat :: RN) > 0 => (1/2) * pi()
- (-1/2) * pi()
- (1/2) * pi()
- error "atan: series expansion involves transcendental constants"
- coef = 0 => 0
- TRANSFCN => atan coef
- error "atan: series expansion involves transcendental constants"
- (z := recip(1 + uls*uls)) case "failed" =>
- error "atan: leading coefficient not invertible"
- (cc :: ULS) + integrate(differentiate(uls) * (z :: ULS))
-
- acot uls ==
- -- code is duplicated so that correct error messages will be returned
- coef := coefficient(uls,0)
- (ord := order(uls,0)) = 0 and coef * coef = -1 =>
- error "acot: series expansion has logarithmic term"
- cc : Coef :=
- ord < 0 =>
- RATS =>
- lc := coefficient(uls,ord)
- (rat := retractIfCan(lc)@Union(RN,"failed")) case "failed" => 0
- (rat :: RN) > 0 => 0
- TRANSFCN => pi()
- error "acot: series expansion involves transcendental constants"
- 0
- TRANSFCN => acot coef
- error "acot: series expansion involves transcendental constants"
- (z := recip(1 + uls*uls)) case "failed" =>
- error "acot: leading coefficient not invertible"
- (cc :: ULS) - integrate(differentiate(uls) * (z :: ULS))
-
-\end{chunk}
-\begin{chunk}{EFULS.dotabb}
-"EFULS" [color="#FF4488",href="bookvol10.4.pdf#nameddest=EFULS"]
-"ULSCCAT" [color="#4488FF",href="bookvol10.2.pdf#nameddest=ULSCCAT"]
-"EFULS" -> "ULSCCAT"
-
-\end{chunk}
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\section{package EFUPXS ElementaryFunctionsUnivariatePuiseuxSeries}
-\begin{chunk}{ElementaryFunctionsUnivariatePuiseuxSeries.input}
-)set break resume
-)sys rm -f ElementaryFunctionsUnivariatePuiseuxSeries.output
-)spool ElementaryFunctionsUnivariatePuiseuxSeries.output
-)set message test on
-)set message auto off
-)clear all
-
---S 1 of 1
-)show ElementaryFunctionsUnivariatePuiseuxSeries
---E 1
-
-)spool
-)lisp (bye)
-\end{chunk}
-\begin{chunk}{ElementaryFunctionsUnivariatePuiseuxSeries.help}
-====================================================================
-ElementaryFunctionsUnivariatePuiseuxSeries examples
-====================================================================
-
-This package provides elementary functions on any Laurent series
-domain over a field which was constructed from a Taylor series
-domain. These functions are implemented by calling the
-corresponding functions on the Taylor series domain. We also
-provide 'partial functions' which compute transcendental
-functions of Laurent series when possible and return "failed"
-when this is not possible.
-
-See Also:
-o )show ElementaryFunctionsUnivariatePuiseuxSeries
-
-\end{chunk}
-\pagehead{ElementaryFunctionsUnivariatePuiseuxSeries}{EFUPXS}
-\pagepic{ps/v104elementaryfunctionsunivariatepuiseuxseries.ps}{EFUPXS}{1.00}
-
-{\bf Exports:}\\
-\begin{tabular}{lllll}
-\cross{EFUPXS}{acos} &
-\cross{EFUPXS}{acosIfCan} &
-\cross{EFUPXS}{acosh} &
-\cross{EFUPXS}{acoshIfCan} &
-\cross{EFUPXS}{acot} \\
-\cross{EFUPXS}{acotIfCan} &
-\cross{EFUPXS}{acoth} &
-\cross{EFUPXS}{acothIfCan} &
-\cross{EFUPXS}{acsc} &
-\cross{EFUPXS}{acscIfCan} \\
-\cross{EFUPXS}{acsch} &
-\cross{EFUPXS}{acschIfCan} &
-\cross{EFUPXS}{asec} &
-\cross{EFUPXS}{asecIfCan} &
-\cross{EFUPXS}{asech} \\
-\cross{EFUPXS}{asechIfCan} &
-\cross{EFUPXS}{asin} &
-\cross{EFUPXS}{asinIfCan} &
-\cross{EFUPXS}{asinh} &
-\cross{EFUPXS}{asinhIfCan} \\
-\cross{EFUPXS}{atan} &
-\cross{EFUPXS}{atanIfCan} &
-\cross{EFUPXS}{atanh} &
-\cross{EFUPXS}{atanhIfCan} &
-\cross{EFUPXS}{cos} \\
-\cross{EFUPXS}{cosIfCan} &
-\cross{EFUPXS}{cosh} &
-\cross{EFUPXS}{coshIfCan} &
-\cross{EFUPXS}{cot} &
-\cross{EFUPXS}{cotIfCan} \\
-\cross{EFUPXS}{coth} &
-\cross{EFUPXS}{cothIfCan} &
-\cross{EFUPXS}{csc} &
-\cross{EFUPXS}{cscIfCan} &
-\cross{EFUPXS}{csch} \\
-\cross{EFUPXS}{cschIfCan} &
-\cross{EFUPXS}{exp} &
-\cross{EFUPXS}{expIfCan} &
-\cross{EFUPXS}{log} &
-\cross{EFUPXS}{logIfCan} \\
-\cross{EFUPXS}{nthRootIfCan} &
-\cross{EFUPXS}{sec} &
-\cross{EFUPXS}{secIfCan} &
-\cross{EFUPXS}{sech} &
-\cross{EFUPXS}{sechIfCan} \\
-\cross{EFUPXS}{sin} &
-\cross{EFUPXS}{sinIfCan} &
-\cross{EFUPXS}{sinh} &
-\cross{EFUPXS}{sinhIfCan} &
-\cross{EFUPXS}{tan} \\
-\cross{EFUPXS}{tanIfCan} &
-\cross{EFUPXS}{tanh} &
-\cross{EFUPXS}{tanhIfCan} &
-\cross{EFUPXS}{?**?} &
-\end{tabular}
-
-\begin{chunk}{package EFUPXS ElementaryFunctionsUnivariatePuiseuxSeries}
-)abbrev package EFUPXS ElementaryFunctionsUnivariatePuiseuxSeries
-++ Author: Clifton J. Williamson
-++ Date Created: 20 February 1990
-++ Date Last Updated: 20 February 1990
-++ Description:
-++ This package provides elementary functions on any Laurent series
-++ domain over a field which was constructed from a Taylor series
-++ domain. These functions are implemented by calling the
-++ corresponding functions on the Taylor series domain. We also
-++ provide 'partial functions' which compute transcendental
-++ functions of Laurent series when possible and return "failed"
-++ when this is not possible.
-
-ElementaryFunctionsUnivariatePuiseuxSeries(Coef,ULS,UPXS,EFULS):_
- Exports == Implementation where
- Coef : Algebra Fraction Integer
- ULS : UnivariateLaurentSeriesCategory Coef
- UPXS : UnivariatePuiseuxSeriesConstructorCategory(Coef,ULS)
- EFULS : PartialTranscendentalFunctions(ULS)
- I ==> Integer
- NNI ==> NonNegativeInteger
- RN ==> Fraction Integer
-
- Exports ==> PartialTranscendentalFunctions(UPXS) with
-
- if Coef has Field then
- "**": (UPXS,RN) -> UPXS
- ++ z ** r raises a Puiseaux series z to a rational power r
-
---% Exponentials and Logarithms
-
- exp: UPXS -> UPXS
- ++ exp(z) returns the exponential of a Puiseux series z.
- log: UPXS -> UPXS
- ++ log(z) returns the logarithm of a Puiseux series z.
-
---% TrigonometricFunctionCategory
-
- sin: UPXS -> UPXS
- ++ sin(z) returns the sine of a Puiseux series z.
- cos: UPXS -> UPXS
- ++ cos(z) returns the cosine of a Puiseux series z.
- tan: UPXS -> UPXS
- ++ tan(z) returns the tangent of a Puiseux series z.
- cot: UPXS -> UPXS
- ++ cot(z) returns the cotangent of a Puiseux series z.
- sec: UPXS -> UPXS
- ++ sec(z) returns the secant of a Puiseux series z.
- csc: UPXS -> UPXS
- ++ csc(z) returns the cosecant of a Puiseux series z.
-
---% ArcTrigonometricFunctionCategory
-
- asin: UPXS -> UPXS
- ++ asin(z) returns the arc-sine of a Puiseux series z.
- acos: UPXS -> UPXS
- ++ acos(z) returns the arc-cosine of a Puiseux series z.
- atan: UPXS -> UPXS
- ++ atan(z) returns the arc-tangent of a Puiseux series z.
- acot: UPXS -> UPXS
- ++ acot(z) returns the arc-cotangent of a Puiseux series z.
- asec: UPXS -> UPXS
- ++ asec(z) returns the arc-secant of a Puiseux series z.
- acsc: UPXS -> UPXS
- ++ acsc(z) returns the arc-cosecant of a Puiseux series z.
-
---% HyperbolicFunctionCategory
-
- sinh: UPXS -> UPXS
- ++ sinh(z) returns the hyperbolic sine of a Puiseux series z.
- cosh: UPXS -> UPXS
- ++ cosh(z) returns the hyperbolic cosine of a Puiseux series z.
- tanh: UPXS -> UPXS
- ++ tanh(z) returns the hyperbolic tangent of a Puiseux series z.
- coth: UPXS -> UPXS
- ++ coth(z) returns the hyperbolic cotangent of a Puiseux series z.
- sech: UPXS -> UPXS
- ++ sech(z) returns the hyperbolic secant of a Puiseux series z.
- csch: UPXS -> UPXS
- ++ csch(z) returns the hyperbolic cosecant of a Puiseux series z.
-
---% ArcHyperbolicFunctionCategory
-
- asinh: UPXS -> UPXS
- ++ asinh(z) returns the inverse hyperbolic sine of a Puiseux series z.
- acosh: UPXS -> UPXS
- ++ acosh(z) returns the inverse hyperbolic cosine of a Puiseux series z.
- atanh: UPXS -> UPXS
- ++ atanh(z) returns the inverse hyperbolic tangent of a Puiseux series z.
- acoth: UPXS -> UPXS
- ++ acoth(z) returns the inverse hyperbolic cotangent
- ++ of a Puiseux series z.
- asech: UPXS -> UPXS
- ++ asech(z) returns the inverse hyperbolic secant of a Puiseux series z.
- acsch: UPXS -> UPXS
- ++ acsch(z) returns the inverse hyperbolic cosecant
- ++ of a Puiseux series z.
-
- Implementation ==> add
-
- TRANSFCN : Boolean := Coef has TranscendentalFunctionCategory
-
---% roots
-
- nthRootIfCan(upxs,n) ==
--- one? n => upxs
- n = 1 => upxs
- r := rationalPower upxs; uls := laurentRep upxs
- deg := degree uls
- if zero?(coef := coefficient(uls,deg)) then
- deg := order(uls,deg + 1000)
- zero?(coef := coefficient(uls,deg)) =>
- error "root of series with many leading zero coefficients"
- uls := uls * monomial(1,-deg)$ULS
- (ulsRoot := nthRootIfCan(uls,n)) case "failed" => "failed"
- puiseux(r,ulsRoot :: ULS) * monomial(1,deg * r * inv(n :: RN))
-
- if Coef has Field then
- (upxs:UPXS) ** (q:RN) ==
- num := numer q; den := denom q
--- one? den => upxs ** num
- den = 1 => upxs ** num
- r := rationalPower upxs; uls := laurentRep upxs
- deg := degree uls
- if zero?(coef := coefficient(uls,deg)) then
- deg := order(uls,deg + 1000)
- zero?(coef := coefficient(uls,deg)) =>
- error "power of series with many leading zero coefficients"
- ulsPow := (uls * monomial(1,-deg)$ULS) ** q
- puiseux(r,ulsPow) * monomial(1,deg*q*r)
-
---% transcendental functions
-
- applyIfCan: (ULS -> Union(ULS,"failed"),UPXS) -> Union(UPXS,"failed")
- applyIfCan(fcn,upxs) ==
- uls := fcn laurentRep upxs
- uls case "failed" => "failed"
- puiseux(rationalPower upxs,uls :: ULS)
-
- expIfCan upxs == applyIfCan(expIfCan,upxs)
- logIfCan upxs == applyIfCan(logIfCan,upxs)
- sinIfCan upxs == applyIfCan(sinIfCan,upxs)
- cosIfCan upxs == applyIfCan(cosIfCan,upxs)
- tanIfCan upxs == applyIfCan(tanIfCan,upxs)
- cotIfCan upxs == applyIfCan(cotIfCan,upxs)
- secIfCan upxs == applyIfCan(secIfCan,upxs)
- cscIfCan upxs == applyIfCan(cscIfCan,upxs)
- atanIfCan upxs == applyIfCan(atanIfCan,upxs)
- acotIfCan upxs == applyIfCan(acotIfCan,upxs)
- sinhIfCan upxs == applyIfCan(sinhIfCan,upxs)
- coshIfCan upxs == applyIfCan(coshIfCan,upxs)
- tanhIfCan upxs == applyIfCan(tanhIfCan,upxs)
- cothIfCan upxs == applyIfCan(cothIfCan,upxs)
- sechIfCan upxs == applyIfCan(sechIfCan,upxs)
- cschIfCan upxs == applyIfCan(cschIfCan,upxs)
- asinhIfCan upxs == applyIfCan(asinhIfCan,upxs)
- acoshIfCan upxs == applyIfCan(acoshIfCan,upxs)
- atanhIfCan upxs == applyIfCan(atanhIfCan,upxs)
- acothIfCan upxs == applyIfCan(acothIfCan,upxs)
- asechIfCan upxs == applyIfCan(asechIfCan,upxs)
- acschIfCan upxs == applyIfCan(acschIfCan,upxs)
-
- asinIfCan upxs ==
- order(upxs,0) < 0 => "failed"
- (coef := coefficient(upxs,0)) = 0 =>
- integrate((1 - upxs*upxs)**(-1/2) * (differentiate upxs))
- TRANSFCN =>
- cc := asin(coef) :: UPXS
- cc + integrate((1 - upxs*upxs)**(-1/2) * (differentiate upxs))
- "failed"
-
- acosIfCan upxs ==
- order(upxs,0) < 0 => "failed"
- TRANSFCN =>
- cc := acos(coefficient(upxs,0)) :: UPXS
- cc + integrate(-(1 - upxs*upxs)**(-1/2) * (differentiate upxs))
- "failed"
-
- asecIfCan upxs ==
- order(upxs,0) < 0 => "failed"
- TRANSFCN =>
- cc := asec(coefficient(upxs,0)) :: UPXS
- f := (upxs*upxs - 1)**(-1/2) * (differentiate upxs)
- (rec := recip upxs) case "failed" => "failed"
- cc + integrate(f * (rec :: UPXS))
- "failed"
-
- acscIfCan upxs ==
- order(upxs,0) < 0 => "failed"
- TRANSFCN =>
- cc := acsc(coefficient(upxs,0)) :: UPXS
- f := -(upxs*upxs - 1)**(-1/2) * (differentiate upxs)
- (rec := recip upxs) case "failed" => "failed"
- cc + integrate(f * (rec :: UPXS))
- "failed"
-
- asinhIfCan upxs ==
- order(upxs,0) < 0 => "failed"
- TRANSFCN or (coefficient(upxs,0) = 0) =>
- log(upxs + (1 + upxs*upxs)**(1/2))
- "failed"
-
- acoshIfCan upxs ==
- TRANSFCN =>
- order(upxs,0) < 0 => "failed"
- log(upxs + (upxs*upxs - 1)**(1/2))
- "failed"
-
- asechIfCan upxs ==
- TRANSFCN =>
- order(upxs,0) < 0 => "failed"
- (rec := recip upxs) case "failed" => "failed"
- log((1 + (1 - upxs*upxs)*(1/2)) * (rec :: UPXS))
- "failed"
-
- acschIfCan upxs ==
- TRANSFCN =>
- order(upxs,0) < 0 => "failed"
- (rec := recip upxs) case "failed" => "failed"
- log((1 + (1 + upxs*upxs)*(1/2)) * (rec :: UPXS))
- "failed"
-
- applyOrError:(UPXS -> Union(UPXS,"failed"),String,UPXS) -> UPXS
- applyOrError(fcn,name,upxs) ==
- ans := fcn upxs
- ans case "failed" =>
- error concat(name," of function with singularity")
- ans :: UPXS
-
- exp upxs == applyOrError(expIfCan,"exp",upxs)
- log upxs == applyOrError(logIfCan,"log",upxs)
- sin upxs == applyOrError(sinIfCan,"sin",upxs)
- cos upxs == applyOrError(cosIfCan,"cos",upxs)
- tan upxs == applyOrError(tanIfCan,"tan",upxs)
- cot upxs == applyOrError(cotIfCan,"cot",upxs)
- sec upxs == applyOrError(secIfCan,"sec",upxs)
- csc upxs == applyOrError(cscIfCan,"csc",upxs)
- asin upxs == applyOrError(asinIfCan,"asin",upxs)
- acos upxs == applyOrError(acosIfCan,"acos",upxs)
- atan upxs == applyOrError(atanIfCan,"atan",upxs)
- acot upxs == applyOrError(acotIfCan,"acot",upxs)
- asec upxs == applyOrError(asecIfCan,"asec",upxs)
- acsc upxs == applyOrError(acscIfCan,"acsc",upxs)
- sinh upxs == applyOrError(sinhIfCan,"sinh",upxs)
- cosh upxs == applyOrError(coshIfCan,"cosh",upxs)
- tanh upxs == applyOrError(tanhIfCan,"tanh",upxs)
- coth upxs == applyOrError(cothIfCan,"coth",upxs)
- sech upxs == applyOrError(sechIfCan,"sech",upxs)
- csch upxs == applyOrError(cschIfCan,"csch",upxs)
- asinh upxs == applyOrError(asinhIfCan,"asinh",upxs)
- acosh upxs == applyOrError(acoshIfCan,"acosh",upxs)
- atanh upxs == applyOrError(atanhIfCan,"atanh",upxs)
- acoth upxs == applyOrError(acothIfCan,"acoth",upxs)
- asech upxs == applyOrError(asechIfCan,"asech",upxs)
- acsch upxs == applyOrError(acschIfCan,"acsch",upxs)
-
-\end{chunk}
-\begin{chunk}{EFUPXS.dotabb}
-"EFUPXS" [color="#FF4488",href="bookvol10.4.pdf#nameddest=EFUPXS"]
-"UPXSCCA" [color="#4488FF",href="bookvol10.2.pdf#nameddest=UPXSCCA"]
-"EFUPXS" -> "UPXSCCA"
-
-\end{chunk}
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{package INTEF ElementaryIntegration}
\begin{chunk}{ElementaryIntegration.input}
)set break resume
@@ -175114,8 +174311,6 @@ ZeroDimensionalSolvePackage(R,ls,ls2): Exports == Implementation where
\getchunk{package ODEEF ElementaryFunctionODESolver}
\getchunk{package SIGNEF ElementaryFunctionSign}
\getchunk{package EFSTRUC ElementaryFunctionStructurePackage}
-\getchunk{package EFULS ElementaryFunctionsUnivariateLaurentSeries}
-\getchunk{package EFUPXS ElementaryFunctionsUnivariatePuiseuxSeries}
\getchunk{package INTEF ElementaryIntegration}
\getchunk{package RDEEF ElementaryRischDE}
\getchunk{package RDEEFS ElementaryRischDESystem}
diff --git a/books/ps/v103elementaryfunctionsunivariatelaurentseries.ps b/books/ps/v103elementaryfunctionsunivariatelaurentseries.ps
new file mode 100644
index 0000000..9bd4ab3
--- /dev/null
+++ b/books/ps/v103elementaryfunctionsunivariatelaurentseries.ps
@@ -0,0 +1,281 @@
+%!PS-Adobe-2.0
+%%Creator: Graphviz version 2.16.1 (Mon Jul 7 18:20:33 UTC 2008)
+%%For: (root) root
+%%Title: pic
+%%Pages: (atend)
+%%BoundingBox: (atend)
+%%EndComments
+save
+%%BeginProlog
+/DotDict 200 dict def
+DotDict begin
+
+/setupLatin1 {
+mark
+/EncodingVector 256 array def
+ EncodingVector 0
+
+ISOLatin1Encoding 0 255 getinterval putinterval
+EncodingVector 45 /hyphen put
+
+% Set up ISO Latin 1 character encoding
+/starnetISO {
+ dup dup findfont dup length dict begin
+ { 1 index /FID ne { def }{ pop pop } ifelse
+ } forall
+ /Encoding EncodingVector def
+ currentdict end definefont
+} def
+/Times-Roman starnetISO def
+/Times-Italic starnetISO def
+/Times-Bold starnetISO def
+/Times-BoldItalic starnetISO def
+/Helvetica starnetISO def
+/Helvetica-Oblique starnetISO def
+/Helvetica-Bold starnetISO def
+/Helvetica-BoldOblique starnetISO def
+/Courier starnetISO def
+/Courier-Oblique starnetISO def
+/Courier-Bold starnetISO def
+/Courier-BoldOblique starnetISO def
+cleartomark
+} bind def
+
+%%BeginResource: procset graphviz 0 0
+/coord-font-family /Times-Roman def
+/default-font-family /Times-Roman def
+/coordfont coord-font-family findfont 8 scalefont def
+
+/InvScaleFactor 1.0 def
+/set_scale {
+ dup 1 exch div /InvScaleFactor exch def
+ scale
+} bind def
+
+% styles
+/solid { [] 0 setdash } bind def
+/dashed { [9 InvScaleFactor mul dup ] 0 setdash } bind def
+/dotted { [1 InvScaleFactor mul 6 InvScaleFactor mul] 0 setdash } bind def
+/invis {/fill {newpath} def /stroke {newpath} def /show {pop newpath} def} bind def
+/bold { 2 setlinewidth } bind def
+/filled { } bind def
+/unfilled { } bind def
+/rounded { } bind def
+/diagonals { } bind def
+
+% hooks for setting color
+/nodecolor { sethsbcolor } bind def
+/edgecolor { sethsbcolor } bind def
+/graphcolor { sethsbcolor } bind def
+/nopcolor {pop pop pop} bind def
+
+/beginpage { % i j npages
+ /npages exch def
+ /j exch def
+ /i exch def
+ /str 10 string def
+ npages 1 gt {
+ gsave
+ coordfont setfont
+ 0 0 moveto
+ (\() show i str cvs show (,) show j str cvs show (\)) show
+ grestore
+ } if
+} bind def
+
+/set_font {
+ findfont exch
+ scalefont setfont
+} def
+
+% draw text fitted to its expected width
+/alignedtext { % width text
+ /text exch def
+ /width exch def
+ gsave
+ width 0 gt {
+ [] 0 setdash
+ text stringwidth pop width exch sub text length div 0 text ashow
+ } if
+ grestore
+} def
+
+/boxprim { % xcorner ycorner xsize ysize
+ 4 2 roll
+ moveto
+ 2 copy
+ exch 0 rlineto
+ 0 exch rlineto
+ pop neg 0 rlineto
+ closepath
+} bind def
+
+/ellipse_path {
+ /ry exch def
+ /rx exch def
+ /y exch def
+ /x exch def
+ matrix currentmatrix
+ newpath
+ x y translate
+ rx ry scale
+ 0 0 1 0 360 arc
+ setmatrix
+} bind def
+
+/endpage { showpage } bind def
+/showpage { } def
+
+/layercolorseq
+ [ % layer color sequence - darkest to lightest
+ [0 0 0]
+ [.2 .8 .8]
+ [.4 .8 .8]
+ [.6 .8 .8]
+ [.8 .8 .8]
+ ]
+def
+
+/layerlen layercolorseq length def
+
+/setlayer {/maxlayer exch def /curlayer exch def
+ layercolorseq curlayer 1 sub layerlen mod get
+ aload pop sethsbcolor
+ /nodecolor {nopcolor} def
+ /edgecolor {nopcolor} def
+ /graphcolor {nopcolor} def
+} bind def
+
+/onlayer { curlayer ne {invis} if } def
+
+/onlayers {
+ /myupper exch def
+ /mylower exch def
+ curlayer mylower lt
+ curlayer myupper gt
+ or
+ {invis} if
+} def
+
+/curlayer 0 def
+
+%%EndResource
+%%EndProlog
+%%BeginSetup
+14 default-font-family set_font
+1 setmiterlimit
+% /arrowlength 10 def
+% /arrowwidth 5 def
+
+% make sure pdfmark is harmless for PS-interpreters other than Distiller
+/pdfmark where {pop} {userdict /pdfmark /cleartomark load put} ifelse
+% make '<<' and '>>' safe on PS Level 1 devices
+/languagelevel where {pop languagelevel}{1} ifelse
+2 lt {
+ userdict (<<) cvn ([) cvn load put
+ userdict (>>) cvn ([) cvn load put
+} if
+
+%%EndSetup
+setupLatin1
+%%Page: 1 1
+%%PageBoundingBox: 36 36 122 152
+%%PageOrientation: Portrait
+0 0 1 beginpage
+gsave
+36 36 86 116 boxprim clip newpath
+1 1 set_scale 0 rotate 40 40 translate
+0.167 0.600 1.000 graphcolor
+newpath -4 -4 moveto
+-4 716 lineto
+536 716 lineto
+536 -4 lineto
+closepath fill
+1 setlinewidth
+0.167 0.600 1.000 graphcolor
+newpath -4 -4 moveto
+-4 716 lineto
+536 716 lineto
+536 -4 lineto
+closepath stroke
+% EFULS
+gsave
+[ /Rect [ 10 72 68 108 ]
+ /Border [ 0 0 0 ]
+ /Action << /Subtype /URI /URI (bookvol10.4.pdf#nameddest=EFULS) >>
+ /Subtype /Link
+/ANN pdfmark
+0.939 0.733 1.000 nodecolor
+newpath 68 108 moveto
+10 108 lineto
+10 72 lineto
+68 72 lineto
+closepath fill
+1 setlinewidth
+filled
+0.939 0.733 1.000 nodecolor
+newpath 68 108 moveto
+10 108 lineto
+10 72 lineto
+68 72 lineto
+closepath stroke
+0.000 0.000 0.000 nodecolor
+14.00 /Times-Roman set_font
+17.5 85.9 moveto 43 (EFULS) alignedtext
+grestore
+% ULSCCAT
+gsave
+[ /Rect [ 0 0 78 36 ]
+ /Border [ 0 0 0 ]
+ /Action << /Subtype /URI /URI (bookvol10.2.pdf#nameddest=ULSCCAT) >>
+ /Subtype /Link
+/ANN pdfmark
+0.606 0.733 1.000 nodecolor
+newpath 78 36 moveto
+2.634e-14 36 lineto
+5.29438e-15 1.06581e-14 lineto
+78 0 lineto
+closepath fill
+1 setlinewidth
+filled
+0.606 0.733 1.000 nodecolor
+newpath 78 36 moveto
+2.634e-14 36 lineto
+5.29438e-15 1.06581e-14 lineto
+78 0 lineto
+closepath stroke
+0.000 0.000 0.000 nodecolor
+14.00 /Times-Roman set_font
+7.5 13.9 moveto 63 (ULSCCAT) alignedtext
+grestore
+% EFULS->ULSCCAT
+gsave
+1 setlinewidth
+0.000 0.000 0.000 edgecolor
+newpath 39 72 moveto
+39 64 39 55 39 46 curveto
+stroke
+0.000 0.000 0.000 edgecolor
+newpath 42.5001 46 moveto
+39 36 lineto
+35.5001 46 lineto
+closepath fill
+1 setlinewidth
+solid
+0.000 0.000 0.000 edgecolor
+newpath 42.5001 46 moveto
+39 36 lineto
+35.5001 46 lineto
+closepath stroke
+grestore
+endpage
+showpage
+grestore
+%%PageTrailer
+%%EndPage: 1
+%%Trailer
+%%Pages: 1
+%%BoundingBox: 36 36 122 152
+end
+restore
+%%EOF
diff --git a/books/ps/v103elementaryfunctionsunivariatepuiseuxseries.ps b/books/ps/v103elementaryfunctionsunivariatepuiseuxseries.ps
new file mode 100644
index 0000000..87c18c4
--- /dev/null
+++ b/books/ps/v103elementaryfunctionsunivariatepuiseuxseries.ps
@@ -0,0 +1,281 @@
+%!PS-Adobe-2.0
+%%Creator: Graphviz version 2.16.1 (Mon Jul 7 18:20:33 UTC 2008)
+%%For: (root) root
+%%Title: pic
+%%Pages: (atend)
+%%BoundingBox: (atend)
+%%EndComments
+save
+%%BeginProlog
+/DotDict 200 dict def
+DotDict begin
+
+/setupLatin1 {
+mark
+/EncodingVector 256 array def
+ EncodingVector 0
+
+ISOLatin1Encoding 0 255 getinterval putinterval
+EncodingVector 45 /hyphen put
+
+% Set up ISO Latin 1 character encoding
+/starnetISO {
+ dup dup findfont dup length dict begin
+ { 1 index /FID ne { def }{ pop pop } ifelse
+ } forall
+ /Encoding EncodingVector def
+ currentdict end definefont
+} def
+/Times-Roman starnetISO def
+/Times-Italic starnetISO def
+/Times-Bold starnetISO def
+/Times-BoldItalic starnetISO def
+/Helvetica starnetISO def
+/Helvetica-Oblique starnetISO def
+/Helvetica-Bold starnetISO def
+/Helvetica-BoldOblique starnetISO def
+/Courier starnetISO def
+/Courier-Oblique starnetISO def
+/Courier-Bold starnetISO def
+/Courier-BoldOblique starnetISO def
+cleartomark
+} bind def
+
+%%BeginResource: procset graphviz 0 0
+/coord-font-family /Times-Roman def
+/default-font-family /Times-Roman def
+/coordfont coord-font-family findfont 8 scalefont def
+
+/InvScaleFactor 1.0 def
+/set_scale {
+ dup 1 exch div /InvScaleFactor exch def
+ scale
+} bind def
+
+% styles
+/solid { [] 0 setdash } bind def
+/dashed { [9 InvScaleFactor mul dup ] 0 setdash } bind def
+/dotted { [1 InvScaleFactor mul 6 InvScaleFactor mul] 0 setdash } bind def
+/invis {/fill {newpath} def /stroke {newpath} def /show {pop newpath} def} bind def
+/bold { 2 setlinewidth } bind def
+/filled { } bind def
+/unfilled { } bind def
+/rounded { } bind def
+/diagonals { } bind def
+
+% hooks for setting color
+/nodecolor { sethsbcolor } bind def
+/edgecolor { sethsbcolor } bind def
+/graphcolor { sethsbcolor } bind def
+/nopcolor {pop pop pop} bind def
+
+/beginpage { % i j npages
+ /npages exch def
+ /j exch def
+ /i exch def
+ /str 10 string def
+ npages 1 gt {
+ gsave
+ coordfont setfont
+ 0 0 moveto
+ (\() show i str cvs show (,) show j str cvs show (\)) show
+ grestore
+ } if
+} bind def
+
+/set_font {
+ findfont exch
+ scalefont setfont
+} def
+
+% draw text fitted to its expected width
+/alignedtext { % width text
+ /text exch def
+ /width exch def
+ gsave
+ width 0 gt {
+ [] 0 setdash
+ text stringwidth pop width exch sub text length div 0 text ashow
+ } if
+ grestore
+} def
+
+/boxprim { % xcorner ycorner xsize ysize
+ 4 2 roll
+ moveto
+ 2 copy
+ exch 0 rlineto
+ 0 exch rlineto
+ pop neg 0 rlineto
+ closepath
+} bind def
+
+/ellipse_path {
+ /ry exch def
+ /rx exch def
+ /y exch def
+ /x exch def
+ matrix currentmatrix
+ newpath
+ x y translate
+ rx ry scale
+ 0 0 1 0 360 arc
+ setmatrix
+} bind def
+
+/endpage { showpage } bind def
+/showpage { } def
+
+/layercolorseq
+ [ % layer color sequence - darkest to lightest
+ [0 0 0]
+ [.2 .8 .8]
+ [.4 .8 .8]
+ [.6 .8 .8]
+ [.8 .8 .8]
+ ]
+def
+
+/layerlen layercolorseq length def
+
+/setlayer {/maxlayer exch def /curlayer exch def
+ layercolorseq curlayer 1 sub layerlen mod get
+ aload pop sethsbcolor
+ /nodecolor {nopcolor} def
+ /edgecolor {nopcolor} def
+ /graphcolor {nopcolor} def
+} bind def
+
+/onlayer { curlayer ne {invis} if } def
+
+/onlayers {
+ /myupper exch def
+ /mylower exch def
+ curlayer mylower lt
+ curlayer myupper gt
+ or
+ {invis} if
+} def
+
+/curlayer 0 def
+
+%%EndResource
+%%EndProlog
+%%BeginSetup
+14 default-font-family set_font
+1 setmiterlimit
+% /arrowlength 10 def
+% /arrowwidth 5 def
+
+% make sure pdfmark is harmless for PS-interpreters other than Distiller
+/pdfmark where {pop} {userdict /pdfmark /cleartomark load put} ifelse
+% make '<<' and '>>' safe on PS Level 1 devices
+/languagelevel where {pop languagelevel}{1} ifelse
+2 lt {
+ userdict (<<) cvn ([) cvn load put
+ userdict (>>) cvn ([) cvn load put
+} if
+
+%%EndSetup
+setupLatin1
+%%Page: 1 1
+%%PageBoundingBox: 36 36 124 152
+%%PageOrientation: Portrait
+0 0 1 beginpage
+gsave
+36 36 88 116 boxprim clip newpath
+1 1 set_scale 0 rotate 40 40 translate
+0.167 0.600 1.000 graphcolor
+newpath -4 -4 moveto
+-4 716 lineto
+536 716 lineto
+536 -4 lineto
+closepath fill
+1 setlinewidth
+0.167 0.600 1.000 graphcolor
+newpath -4 -4 moveto
+-4 716 lineto
+536 716 lineto
+536 -4 lineto
+closepath stroke
+% EFUPXS
+gsave
+[ /Rect [ 6 72 74 108 ]
+ /Border [ 0 0 0 ]
+ /Action << /Subtype /URI /URI (bookvol10.4.pdf#nameddest=EFUPXS) >>
+ /Subtype /Link
+/ANN pdfmark
+0.939 0.733 1.000 nodecolor
+newpath 74 108 moveto
+6 108 lineto
+6 72 lineto
+74 72 lineto
+closepath fill
+1 setlinewidth
+filled
+0.939 0.733 1.000 nodecolor
+newpath 74 108 moveto
+6 108 lineto
+6 72 lineto
+74 72 lineto
+closepath stroke
+0.000 0.000 0.000 nodecolor
+14.00 /Times-Roman set_font
+14 85.9 moveto 52 (EFUPXS) alignedtext
+grestore
+% UPXSCCA
+gsave
+[ /Rect [ 0 0 80 36 ]
+ /Border [ 0 0 0 ]
+ /Action << /Subtype /URI /URI (bookvol10.2.pdf#nameddest=UPXSCCA) >>
+ /Subtype /Link
+/ANN pdfmark
+0.606 0.733 1.000 nodecolor
+newpath 80 36 moveto
+3.02917e-14 36 lineto
+9.23914e-15 1.06581e-14 lineto
+80 0 lineto
+closepath fill
+1 setlinewidth
+filled
+0.606 0.733 1.000 nodecolor
+newpath 80 36 moveto
+3.02917e-14 36 lineto
+9.23914e-15 1.06581e-14 lineto
+80 0 lineto
+closepath stroke
+0.000 0.000 0.000 nodecolor
+14.00 /Times-Roman set_font
+7.5 13.9 moveto 65 (UPXSCCA) alignedtext
+grestore
+% EFUPXS->UPXSCCA
+gsave
+1 setlinewidth
+0.000 0.000 0.000 edgecolor
+newpath 40 72 moveto
+40 64 40 55 40 46 curveto
+stroke
+0.000 0.000 0.000 edgecolor
+newpath 43.5001 46 moveto
+40 36 lineto
+36.5001 46 lineto
+closepath fill
+1 setlinewidth
+solid
+0.000 0.000 0.000 edgecolor
+newpath 43.5001 46 moveto
+40 36 lineto
+36.5001 46 lineto
+closepath stroke
+grestore
+endpage
+showpage
+grestore
+%%PageTrailer
+%%EndPage: 1
+%%Trailer
+%%Pages: 1
+%%BoundingBox: 36 36 124 152
+end
+restore
+%%EOF
diff --git a/books/ps/v104elementaryfunctionsunivariatelaurentseries.ps b/books/ps/v104elementaryfunctionsunivariatelaurentseries.ps
deleted file mode 100644
index 9bd4ab3..0000000
--- a/books/ps/v104elementaryfunctionsunivariatelaurentseries.ps
+++ /dev/null
@@ -1,281 +0,0 @@
-%!PS-Adobe-2.0
-%%Creator: Graphviz version 2.16.1 (Mon Jul 7 18:20:33 UTC 2008)
-%%For: (root) root
-%%Title: pic
-%%Pages: (atend)
-%%BoundingBox: (atend)
-%%EndComments
-save
-%%BeginProlog
-/DotDict 200 dict def
-DotDict begin
-
-/setupLatin1 {
-mark
-/EncodingVector 256 array def
- EncodingVector 0
-
-ISOLatin1Encoding 0 255 getinterval putinterval
-EncodingVector 45 /hyphen put
-
-% Set up ISO Latin 1 character encoding
-/starnetISO {
- dup dup findfont dup length dict begin
- { 1 index /FID ne { def }{ pop pop } ifelse
- } forall
- /Encoding EncodingVector def
- currentdict end definefont
-} def
-/Times-Roman starnetISO def
-/Times-Italic starnetISO def
-/Times-Bold starnetISO def
-/Times-BoldItalic starnetISO def
-/Helvetica starnetISO def
-/Helvetica-Oblique starnetISO def
-/Helvetica-Bold starnetISO def
-/Helvetica-BoldOblique starnetISO def
-/Courier starnetISO def
-/Courier-Oblique starnetISO def
-/Courier-Bold starnetISO def
-/Courier-BoldOblique starnetISO def
-cleartomark
-} bind def
-
-%%BeginResource: procset graphviz 0 0
-/coord-font-family /Times-Roman def
-/default-font-family /Times-Roman def
-/coordfont coord-font-family findfont 8 scalefont def
-
-/InvScaleFactor 1.0 def
-/set_scale {
- dup 1 exch div /InvScaleFactor exch def
- scale
-} bind def
-
-% styles
-/solid { [] 0 setdash } bind def
-/dashed { [9 InvScaleFactor mul dup ] 0 setdash } bind def
-/dotted { [1 InvScaleFactor mul 6 InvScaleFactor mul] 0 setdash } bind def
-/invis {/fill {newpath} def /stroke {newpath} def /show {pop newpath} def} bind def
-/bold { 2 setlinewidth } bind def
-/filled { } bind def
-/unfilled { } bind def
-/rounded { } bind def
-/diagonals { } bind def
-
-% hooks for setting color
-/nodecolor { sethsbcolor } bind def
-/edgecolor { sethsbcolor } bind def
-/graphcolor { sethsbcolor } bind def
-/nopcolor {pop pop pop} bind def
-
-/beginpage { % i j npages
- /npages exch def
- /j exch def
- /i exch def
- /str 10 string def
- npages 1 gt {
- gsave
- coordfont setfont
- 0 0 moveto
- (\() show i str cvs show (,) show j str cvs show (\)) show
- grestore
- } if
-} bind def
-
-/set_font {
- findfont exch
- scalefont setfont
-} def
-
-% draw text fitted to its expected width
-/alignedtext { % width text
- /text exch def
- /width exch def
- gsave
- width 0 gt {
- [] 0 setdash
- text stringwidth pop width exch sub text length div 0 text ashow
- } if
- grestore
-} def
-
-/boxprim { % xcorner ycorner xsize ysize
- 4 2 roll
- moveto
- 2 copy
- exch 0 rlineto
- 0 exch rlineto
- pop neg 0 rlineto
- closepath
-} bind def
-
-/ellipse_path {
- /ry exch def
- /rx exch def
- /y exch def
- /x exch def
- matrix currentmatrix
- newpath
- x y translate
- rx ry scale
- 0 0 1 0 360 arc
- setmatrix
-} bind def
-
-/endpage { showpage } bind def
-/showpage { } def
-
-/layercolorseq
- [ % layer color sequence - darkest to lightest
- [0 0 0]
- [.2 .8 .8]
- [.4 .8 .8]
- [.6 .8 .8]
- [.8 .8 .8]
- ]
-def
-
-/layerlen layercolorseq length def
-
-/setlayer {/maxlayer exch def /curlayer exch def
- layercolorseq curlayer 1 sub layerlen mod get
- aload pop sethsbcolor
- /nodecolor {nopcolor} def
- /edgecolor {nopcolor} def
- /graphcolor {nopcolor} def
-} bind def
-
-/onlayer { curlayer ne {invis} if } def
-
-/onlayers {
- /myupper exch def
- /mylower exch def
- curlayer mylower lt
- curlayer myupper gt
- or
- {invis} if
-} def
-
-/curlayer 0 def
-
-%%EndResource
-%%EndProlog
-%%BeginSetup
-14 default-font-family set_font
-1 setmiterlimit
-% /arrowlength 10 def
-% /arrowwidth 5 def
-
-% make sure pdfmark is harmless for PS-interpreters other than Distiller
-/pdfmark where {pop} {userdict /pdfmark /cleartomark load put} ifelse
-% make '<<' and '>>' safe on PS Level 1 devices
-/languagelevel where {pop languagelevel}{1} ifelse
-2 lt {
- userdict (<<) cvn ([) cvn load put
- userdict (>>) cvn ([) cvn load put
-} if
-
-%%EndSetup
-setupLatin1
-%%Page: 1 1
-%%PageBoundingBox: 36 36 122 152
-%%PageOrientation: Portrait
-0 0 1 beginpage
-gsave
-36 36 86 116 boxprim clip newpath
-1 1 set_scale 0 rotate 40 40 translate
-0.167 0.600 1.000 graphcolor
-newpath -4 -4 moveto
--4 716 lineto
-536 716 lineto
-536 -4 lineto
-closepath fill
-1 setlinewidth
-0.167 0.600 1.000 graphcolor
-newpath -4 -4 moveto
--4 716 lineto
-536 716 lineto
-536 -4 lineto
-closepath stroke
-% EFULS
-gsave
-[ /Rect [ 10 72 68 108 ]
- /Border [ 0 0 0 ]
- /Action << /Subtype /URI /URI (bookvol10.4.pdf#nameddest=EFULS) >>
- /Subtype /Link
-/ANN pdfmark
-0.939 0.733 1.000 nodecolor
-newpath 68 108 moveto
-10 108 lineto
-10 72 lineto
-68 72 lineto
-closepath fill
-1 setlinewidth
-filled
-0.939 0.733 1.000 nodecolor
-newpath 68 108 moveto
-10 108 lineto
-10 72 lineto
-68 72 lineto
-closepath stroke
-0.000 0.000 0.000 nodecolor
-14.00 /Times-Roman set_font
-17.5 85.9 moveto 43 (EFULS) alignedtext
-grestore
-% ULSCCAT
-gsave
-[ /Rect [ 0 0 78 36 ]
- /Border [ 0 0 0 ]
- /Action << /Subtype /URI /URI (bookvol10.2.pdf#nameddest=ULSCCAT) >>
- /Subtype /Link
-/ANN pdfmark
-0.606 0.733 1.000 nodecolor
-newpath 78 36 moveto
-2.634e-14 36 lineto
-5.29438e-15 1.06581e-14 lineto
-78 0 lineto
-closepath fill
-1 setlinewidth
-filled
-0.606 0.733 1.000 nodecolor
-newpath 78 36 moveto
-2.634e-14 36 lineto
-5.29438e-15 1.06581e-14 lineto
-78 0 lineto
-closepath stroke
-0.000 0.000 0.000 nodecolor
-14.00 /Times-Roman set_font
-7.5 13.9 moveto 63 (ULSCCAT) alignedtext
-grestore
-% EFULS->ULSCCAT
-gsave
-1 setlinewidth
-0.000 0.000 0.000 edgecolor
-newpath 39 72 moveto
-39 64 39 55 39 46 curveto
-stroke
-0.000 0.000 0.000 edgecolor
-newpath 42.5001 46 moveto
-39 36 lineto
-35.5001 46 lineto
-closepath fill
-1 setlinewidth
-solid
-0.000 0.000 0.000 edgecolor
-newpath 42.5001 46 moveto
-39 36 lineto
-35.5001 46 lineto
-closepath stroke
-grestore
-endpage
-showpage
-grestore
-%%PageTrailer
-%%EndPage: 1
-%%Trailer
-%%Pages: 1
-%%BoundingBox: 36 36 122 152
-end
-restore
-%%EOF
diff --git a/books/ps/v104elementaryfunctionsunivariatepuiseuxseries.ps b/books/ps/v104elementaryfunctionsunivariatepuiseuxseries.ps
deleted file mode 100644
index 87c18c4..0000000
--- a/books/ps/v104elementaryfunctionsunivariatepuiseuxseries.ps
+++ /dev/null
@@ -1,281 +0,0 @@
-%!PS-Adobe-2.0
-%%Creator: Graphviz version 2.16.1 (Mon Jul 7 18:20:33 UTC 2008)
-%%For: (root) root
-%%Title: pic
-%%Pages: (atend)
-%%BoundingBox: (atend)
-%%EndComments
-save
-%%BeginProlog
-/DotDict 200 dict def
-DotDict begin
-
-/setupLatin1 {
-mark
-/EncodingVector 256 array def
- EncodingVector 0
-
-ISOLatin1Encoding 0 255 getinterval putinterval
-EncodingVector 45 /hyphen put
-
-% Set up ISO Latin 1 character encoding
-/starnetISO {
- dup dup findfont dup length dict begin
- { 1 index /FID ne { def }{ pop pop } ifelse
- } forall
- /Encoding EncodingVector def
- currentdict end definefont
-} def
-/Times-Roman starnetISO def
-/Times-Italic starnetISO def
-/Times-Bold starnetISO def
-/Times-BoldItalic starnetISO def
-/Helvetica starnetISO def
-/Helvetica-Oblique starnetISO def
-/Helvetica-Bold starnetISO def
-/Helvetica-BoldOblique starnetISO def
-/Courier starnetISO def
-/Courier-Oblique starnetISO def
-/Courier-Bold starnetISO def
-/Courier-BoldOblique starnetISO def
-cleartomark
-} bind def
-
-%%BeginResource: procset graphviz 0 0
-/coord-font-family /Times-Roman def
-/default-font-family /Times-Roman def
-/coordfont coord-font-family findfont 8 scalefont def
-
-/InvScaleFactor 1.0 def
-/set_scale {
- dup 1 exch div /InvScaleFactor exch def
- scale
-} bind def
-
-% styles
-/solid { [] 0 setdash } bind def
-/dashed { [9 InvScaleFactor mul dup ] 0 setdash } bind def
-/dotted { [1 InvScaleFactor mul 6 InvScaleFactor mul] 0 setdash } bind def
-/invis {/fill {newpath} def /stroke {newpath} def /show {pop newpath} def} bind def
-/bold { 2 setlinewidth } bind def
-/filled { } bind def
-/unfilled { } bind def
-/rounded { } bind def
-/diagonals { } bind def
-
-% hooks for setting color
-/nodecolor { sethsbcolor } bind def
-/edgecolor { sethsbcolor } bind def
-/graphcolor { sethsbcolor } bind def
-/nopcolor {pop pop pop} bind def
-
-/beginpage { % i j npages
- /npages exch def
- /j exch def
- /i exch def
- /str 10 string def
- npages 1 gt {
- gsave
- coordfont setfont
- 0 0 moveto
- (\() show i str cvs show (,) show j str cvs show (\)) show
- grestore
- } if
-} bind def
-
-/set_font {
- findfont exch
- scalefont setfont
-} def
-
-% draw text fitted to its expected width
-/alignedtext { % width text
- /text exch def
- /width exch def
- gsave
- width 0 gt {
- [] 0 setdash
- text stringwidth pop width exch sub text length div 0 text ashow
- } if
- grestore
-} def
-
-/boxprim { % xcorner ycorner xsize ysize
- 4 2 roll
- moveto
- 2 copy
- exch 0 rlineto
- 0 exch rlineto
- pop neg 0 rlineto
- closepath
-} bind def
-
-/ellipse_path {
- /ry exch def
- /rx exch def
- /y exch def
- /x exch def
- matrix currentmatrix
- newpath
- x y translate
- rx ry scale
- 0 0 1 0 360 arc
- setmatrix
-} bind def
-
-/endpage { showpage } bind def
-/showpage { } def
-
-/layercolorseq
- [ % layer color sequence - darkest to lightest
- [0 0 0]
- [.2 .8 .8]
- [.4 .8 .8]
- [.6 .8 .8]
- [.8 .8 .8]
- ]
-def
-
-/layerlen layercolorseq length def
-
-/setlayer {/maxlayer exch def /curlayer exch def
- layercolorseq curlayer 1 sub layerlen mod get
- aload pop sethsbcolor
- /nodecolor {nopcolor} def
- /edgecolor {nopcolor} def
- /graphcolor {nopcolor} def
-} bind def
-
-/onlayer { curlayer ne {invis} if } def
-
-/onlayers {
- /myupper exch def
- /mylower exch def
- curlayer mylower lt
- curlayer myupper gt
- or
- {invis} if
-} def
-
-/curlayer 0 def
-
-%%EndResource
-%%EndProlog
-%%BeginSetup
-14 default-font-family set_font
-1 setmiterlimit
-% /arrowlength 10 def
-% /arrowwidth 5 def
-
-% make sure pdfmark is harmless for PS-interpreters other than Distiller
-/pdfmark where {pop} {userdict /pdfmark /cleartomark load put} ifelse
-% make '<<' and '>>' safe on PS Level 1 devices
-/languagelevel where {pop languagelevel}{1} ifelse
-2 lt {
- userdict (<<) cvn ([) cvn load put
- userdict (>>) cvn ([) cvn load put
-} if
-
-%%EndSetup
-setupLatin1
-%%Page: 1 1
-%%PageBoundingBox: 36 36 124 152
-%%PageOrientation: Portrait
-0 0 1 beginpage
-gsave
-36 36 88 116 boxprim clip newpath
-1 1 set_scale 0 rotate 40 40 translate
-0.167 0.600 1.000 graphcolor
-newpath -4 -4 moveto
--4 716 lineto
-536 716 lineto
-536 -4 lineto
-closepath fill
-1 setlinewidth
-0.167 0.600 1.000 graphcolor
-newpath -4 -4 moveto
--4 716 lineto
-536 716 lineto
-536 -4 lineto
-closepath stroke
-% EFUPXS
-gsave
-[ /Rect [ 6 72 74 108 ]
- /Border [ 0 0 0 ]
- /Action << /Subtype /URI /URI (bookvol10.4.pdf#nameddest=EFUPXS) >>
- /Subtype /Link
-/ANN pdfmark
-0.939 0.733 1.000 nodecolor
-newpath 74 108 moveto
-6 108 lineto
-6 72 lineto
-74 72 lineto
-closepath fill
-1 setlinewidth
-filled
-0.939 0.733 1.000 nodecolor
-newpath 74 108 moveto
-6 108 lineto
-6 72 lineto
-74 72 lineto
-closepath stroke
-0.000 0.000 0.000 nodecolor
-14.00 /Times-Roman set_font
-14 85.9 moveto 52 (EFUPXS) alignedtext
-grestore
-% UPXSCCA
-gsave
-[ /Rect [ 0 0 80 36 ]
- /Border [ 0 0 0 ]
- /Action << /Subtype /URI /URI (bookvol10.2.pdf#nameddest=UPXSCCA) >>
- /Subtype /Link
-/ANN pdfmark
-0.606 0.733 1.000 nodecolor
-newpath 80 36 moveto
-3.02917e-14 36 lineto
-9.23914e-15 1.06581e-14 lineto
-80 0 lineto
-closepath fill
-1 setlinewidth
-filled
-0.606 0.733 1.000 nodecolor
-newpath 80 36 moveto
-3.02917e-14 36 lineto
-9.23914e-15 1.06581e-14 lineto
-80 0 lineto
-closepath stroke
-0.000 0.000 0.000 nodecolor
-14.00 /Times-Roman set_font
-7.5 13.9 moveto 65 (UPXSCCA) alignedtext
-grestore
-% EFUPXS->UPXSCCA
-gsave
-1 setlinewidth
-0.000 0.000 0.000 edgecolor
-newpath 40 72 moveto
-40 64 40 55 40 46 curveto
-stroke
-0.000 0.000 0.000 edgecolor
-newpath 43.5001 46 moveto
-40 36 lineto
-36.5001 46 lineto
-closepath fill
-1 setlinewidth
-solid
-0.000 0.000 0.000 edgecolor
-newpath 43.5001 46 moveto
-40 36 lineto
-36.5001 46 lineto
-closepath stroke
-grestore
-endpage
-showpage
-grestore
-%%PageTrailer
-%%EndPage: 1
-%%Trailer
-%%Pages: 1
-%%BoundingBox: 36 36 124 152
-end
-restore
-%%EOF
diff --git a/buglist b/buglist
index b7da48e..e875999 100644
--- a/buglist
+++ b/buglist
@@ -1,6 +1,6 @@
=========================================================================
-bug 7237:
+bug 7241:
todo 330:
wish 1011:
meh 5:
@@ -11,6 +11,2713 @@ typos 40363:
dup 50006:
nonextend 60077:
+=========================================================================
+bug 7240:
+
+in richtrig800-899 there is an occasional failure
+
+--S 349 of 526
+a0864:= integrate(t0864,x)
+--R
+--R
+--R >> Error detected within library code:
+--R (1 . failed) cannot be coerced to mode (SparseUnivariatePolynomial (Integer))
+--R
+--R Continuing to read the file...
+--R
+--E 349
+
+=========================================================================
+bug 7238:
+
+int/input/en.regress
+
+MISMATCH
+expected:" ,"
+ got:" 4503599627370496 4503599627370496 576460752303423488 576460752303423488"
+MISMATCH
+expected:" 1152921504606846976"
+ got:" [----------------,----------------,------------------,- ------------------],"
+MISMATCH
+expected:" - -------------------]"
+ got:" 8872091265919877 29811577733379 3815869687822149 12262050363"
+MISMATCH
+expected:" 24524100725"
+ got:" ,"
+MISMATCH
+expected:" 4503599627370496 1152921504606846976 576460752303423488"
+ got:" 1152921504606846976"
+MISMATCH
+expected:" [----------------, -------------------, ------------------,"
+ got:" -------------------]"
+MISMATCH
+expected:" 8872091265919877 7631763899745023 3815869687822149"
+ got:" 24724049267"
+MISMATCH
+expected:""
+ got:" 1125899906842624 1152921504606846976 144115188075855872"
+MISMATCH
+expected:" ,"
+ got:" [----------------, -------------------, ------------------,"
+MISMATCH
+expected:" 1152921504606846976"
+ got:" 2206763817411543 7712237820766581 964032818101981"
+MISMATCH
+expected:" -------------------]"
+ got:""
+MISMATCH
+expected:" 24724049267"
+ got:" 4503599627370496 72057594037927936 576460752303423488 576460752303423488"
+MISMATCH
+expected:" 1125899906842624 1152921504606846976 144115188075855872"
+ got:" [----------------,-----------------,------------------,------------------],"
+MISMATCH
+expected:" [----------------, -------------------, ------------------,"
+ got:" 8782019273372467 487102129936989 3896818706968169 1667472257"
+MISMATCH
+expected:" 2206763817411543 7712237820766581 964032818101981"
+ got:" ,"
+MISMATCH
+expected:""
+ got:" 1152921504606846976"
+MISMATCH
+expected:" 4503599627370496 72057594037927936 576460752303423488 576460752303423488"
+ got:" -------------------]"
+MISMATCH
+expected:" [----------------,-----------------,------------------,------------------],"
+ got:" 35633760657"
+MISMATCH
+expected:" 8782019273372467 487102129936989 3896818706968169 1667472257"
+ got:" 2251799813685248 1152921504606846976 576460752303423488"
+MISMATCH
+expected:" ,"
+ got:" [----------------, -------------------, ------------------,"
+MISMATCH
+expected:" 1152921504606846976"
+ got:" 4368491638549381 7875837382270293 3937936508015475"
+MISMATCH
+expected:" -------------------]"
+ got:""
+MISMATCH
+expected:" 35633760657"
+ got:" 4503599627370496 576460752303423488 288230376151711744 576460752303423488"
+MISMATCH
+expected:" 2251799813685248 1152921504606846976 576460752303423488"
+ got:" [----------------,------------------,------------------,------------------],"
+MISMATCH
+expected:" [----------------, -------------------, ------------------,"
+ got:" 8691947280825057 3979481511376223 1989744620054455 7728732687"
+MISMATCH
+expected:" 4368491638549381 7875837382270293 3937936508015475"
+ got:" ,"
+MISMATCH
+expected:""
+ got:" 562949953421312 576460752303423488 72057594037927936 576460752303423488"
+MISMATCH
+expected:" 4503599627370496 576460752303423488 288230376151711744 576460752303423488"
+ got:" [----------------,------------------,-----------------,- ------------------]"
+MISMATCH
+expected:" [----------------,------------------,------------------,------------------],"
+ got:" 1080863910568919 4021505500219143 502685189545857 23983852287"
+MISMATCH
+expected:" 8691947280825057 3979481511376223 1989744620054455 7728732687"
+ got:" ,"
+MISMATCH
+expected:" ,"
+ got:" 288230376151711744"
+MISMATCH
+expected:" 1152921504606846976"
+ got:" - ------------------]"
+MISMATCH
+expected:" - -------------------]"
+ got:" 7506301663"
+MISMATCH
+expected:" 47967704573"
+ got:" 4503599627370496 576460752303423488 576460752303423488"
+MISMATCH
+expected:" 562949953421312 1152921504606846976 72057594037927936"
+ got:" [----------------, ------------------, ------------------,"
+MISMATCH
+expected:" [----------------, -------------------, -----------------,"
+ got:" 8601875288277647 4063933011588675 4063917998985349"
+MISMATCH
+expected:" 1080863910568919 8043011000438285 502685189545857"
+ got:""
+MISMATCH
+expected:""
+ got:" ,"
+MISMATCH
+expected:" ,"
+ got:" 1152921504606846976"
+MISMATCH
+expected:" 1152921504606846976"
+ got:" - -------------------]"
+MISMATCH
+expected:" - -------------------]"
+ got:" 36583596153"
+MISMATCH
+expected:" 30025206651"
+ got:" 2251799813685248 1152921504606846976 576460752303423488"
+MISMATCH
+expected:" 4503599627370496 1152921504606846976 576460752303423488"
+ got:" [----------------, -------------------, ------------------,"
+MISMATCH
+expected:" [----------------, -------------------, ------------------,"
+ got:" 4278419646001971 8213643383120099 4106803399761973"
+MISMATCH
+expected:" 8601875288277647 8127866023177349 4063917998985349"
+ got:""
+MISMATCH
+expected:""
+ got:" ,"
+MISMATCH
+expected:" ,"
+ got:" 288230376151711744"
+MISMATCH
+expected:" 1152921504606846976"
+ got:" ------------------]"
+MISMATCH
+expected:" - -------------------]"
+ got:" 14293283665"
+MISMATCH
+expected:" 36583596153"
+ got:" 4503599627370496 1152921504606846976 1152921504606846976"
+MISMATCH
+expected:" 2251799813685248 1152921504606846976 576460752303423488"
+ got:" [----------------, -------------------, -------------------,"
+MISMATCH
+expected:" [----------------, -------------------, ------------------,"
+ got:" 8511803295730237 8300227788116073 8300284961250733"
+MISMATCH
+expected:" 4278419646001971 8213643383120099 4106803399761973"
+ got:""
+MISMATCH
+expected:""
+ got:" ,"
+MISMATCH
+expected:" ,"
+ got:" 1152921504606846976"
+MISMATCH
+expected:" 288230376151711744"
+ got:" -------------------]"
+MISMATCH
+expected:" ------------------]"
+ got:" 30285874609"
+MISMATCH
+expected:" 14293283665"
+ got:" 1125899906842624 576460752303423488 1152921504606846976"
+MISMATCH
+expected:" 4503599627370496 1152921504606846976 1152921504606846976"
+ got:" [----------------, ------------------, -------------------,"
+MISMATCH
+expected:" [----------------, -------------------, -------------------,"
+ got:" 2116691824864133 4193924911233097 8387880108340803"
+MISMATCH
+expected:" 8511803295730237 8300227788116073 8300284961250733"
+ got:""
+MISMATCH
+expected:""
+ got:" 1125899906842624 36028797018963968 576460752303423488 576460752303423488"
+MISMATCH
+expected:" ,"
+ got:" [----------------,-----------------,------------------,------------------],"
+MISMATCH
+expected:" 576460752303423488"
+ got:" 2105432825795707 264887318563125 4238200984199097 3887189097"
+MISMATCH
+expected:" ------------------]"
+ got:" ,"
+MISMATCH
+expected:" 15142937305"
+ got:" 1152921504606846976"
+MISMATCH
+expected:" 1125899906842624 1152921504606846976 1152921504606846976"
+ got:" - -------------------]"
+MISMATCH
+expected:" [----------------, -------------------, -------------------,"
+ got:" 530242809"
+MISMATCH
+expected:" 2116691824864133 8387849822466193 8387880108340803"
+ got:" 2251799813685248 576460752303423488 1152921504606846976"
+MISMATCH
+expected:""
+ got:" [----------------, ------------------, -------------------,"
+MISMATCH
+expected:" ,"
+ got:" 4188347653454561 4282930451388745 8565860372534681"
+MISMATCH
+expected:" 1152921504606846976"
+ got:""
+MISMATCH
+expected:" -------------------]"
+ got:" ,"
+MISMATCH
+expected:" 7774378197"
+ got:" 1152921504606846976"
+MISMATCH
+expected:" 4503599627370496 1152921504606846976 288230376151711744"
+ got:" -------------------]"
+MISMATCH
+expected:" [----------------, -------------------, ------------------,"
+ got:" 15307736217"
+MISMATCH
+expected:" 8421731303182827 8476394194019999 2119100492099549"
+ got:" 2251799813685248 288230376151711744 1152921504606846976"
+MISMATCH
+expected:""
+ got:" [----------------, ------------------, -------------------,"
+MISMATCH
+expected:" ,"
+ got:" 4165829655317709 2164062487184667 8656265256474885"
+MISMATCH
+expected:" 1152921504606846976"
+ got:""
+MISMATCH
+expected:" - -------------------]"
+ got:" ,"
+MISMATCH
+expected:" 530242809"
+ got:" 1152921504606846976"
+MISMATCH
+expected:" 2251799813685248 576460752303423488 1152921504606846976"
+ got:" - -------------------]"
+MISMATCH
+expected:" [----------------, ------------------, -------------------,"
+ got:" 49962380685"
+MISMATCH
+expected:" 4188347653454561 4282930451388745 8565860372534681"
+ got:" 281474976710656 576460752303423488 1152921504606846976"
+MISMATCH
+expected:""
+ got:" [---------------, ------------------, -------------------,"
+MISMATCH
+expected:" ,"
+ got:" 517913957147607 4373838312026995 8747626661673305"
+MISMATCH
+expected:" 1152921504606846976"
+ got:""
+MISMATCH
+expected:" -------------------]"
+ got:" 562949953421312 576460752303423488 576460752303423488 288230376151711744"
+MISMATCH
+expected:" 15307736219"
+ got:" [----------------,------------------,------------------,------------------],"
+MISMATCH
+expected:" 4503599627370496 1152921504606846976 576460752303423488"
+ got:" 1030198414761001 4419955172211269 4419977368221619 11098005175"
+MISMATCH
+expected:" [----------------, -------------------, ------------------,"
+ got:" ,"
+MISMATCH
+expected:" 8331659310635417 8656249948738667 4328132628237443"
+ got:" 576460752303423488"
+MISMATCH
+expected:""
+ got:" - ------------------]"
+MISMATCH
+expected:" ,"
+ got:" 18624598907"
+MISMATCH
+expected:" 1152921504606846976"
+ got:" 2251799813685248 1152921504606846976 1152921504606846976"
+MISMATCH
+expected:" - -------------------]"
+ got:" [----------------, -------------------, -------------------,"
+MISMATCH
+expected:" 49962380685"
+ got:" 4098275660907151 8933296986295693 8933259737097879"
+MISMATCH
+expected:" 281474976710656 576460752303423488 1152921504606846976"
+ got:""
+MISMATCH
+expected:" [---------------, ------------------, -------------------,"
+ got:" ,"
+MISMATCH
+expected:" 517913957147607 4373838312026995 8747626661673305"
+ got:" 2251799813685248 288230376151711744 72057594037927936 288230376151711744"
+MISMATCH
+expected:""
+ got:" [----------------,------------------,-----------------,- ------------------]"
+MISMATCH
+expected:" 4503599627370496 576460752303423488 576460752303423488 36028797018963968"
+ got:" 4075757662770299 2256901491343133 564222001818973 13484067241"
+MISMATCH
+expected:" [----------------,------------------,------------------,-----------------],"
+ got:" 1125899906842624 576460752303423488 576460752303423488 18014398509481984"
+MISMATCH
+expected:" 8241587318088007 4419955172211269 4419977368221621 1387250647"
+ got:" [----------------,------------------,------------------,-----------------],"
+MISMATCH
+expected:" ,"
+ got:" 2026619832316723 4561418640826529 4561421044122753 75103007"
+MISMATCH
+expected:" 576460752303423488"
+ got:" 1125899906842624 576460752303423488 576460752303423488 36028797018963968"
+MISMATCH
+expected:" - ------------------]"
+ got:" [----------------,------------------,------------------,-----------------],"
+MISMATCH
+expected:" 18624598907"
+ got:" 2015360833248297 4609553113643865 4609570250902921 1071078691"
+MISMATCH
+expected:" 2251799813685248 1152921504606846976 1152921504606846976"
+ got:" 2251799813685248 288230376151711744 144115188075855872 288230376151711744"
+MISMATCH
+expected:" [----------------, -------------------, -------------------,"
+ got:" [----------------,------------------,------------------,------------------],"
+MISMATCH
+expected:" 4098275660907151 8933296986295693 8933259737097879"
+ got:" 4008203668359741 2329103200569137 1164557246219315 11291869493"
+MISMATCH
+expected:""
+ got:" 2251799813685248 144115188075855872 144115188075855872 72057594037927936"
+MISMATCH
+expected:" ,"
+ got:" [----------------,------------------,------------------,-----------------],"
+MISMATCH
+expected:" 4503599627370496 288230376151711744 288230376151711744 36028797018963968"
+ got:" 3985685670222889 1176844625827439 1176850663244097 3018708329"
+MISMATCH
+expected:" [----------------,------------------,------------------,- -----------------]"
+ got:" 562949953421312 576460752303423488 576460752303423488 288230376151711744"
+MISMATCH
+expected:" 8151515325540597 2256901491343133 2256888007275893 1685508405"
+ got:" [---------------,------------------,------------------,------------------],"
+MISMATCH
+expected:" 1125899906842624 576460752303423488 576460752303423488 18014398509481984"
+ got:" 990791918021509 4757069420158311 4757096719684817 13649763253"
+MISMATCH
+expected:" [----------------,------------------,------------------,-----------------],"
+ got:" 4 288230376151711744 576460752303423488 576460752303423488"
+MISMATCH
+expected:" 2026619832316723 4561418640826529 4561421044122753 75103007"
+ got:" [-,------------------,------------------,- ------------------],"
+MISMATCH
+expected:" 4503599627370496 576460752303423488 288230376151711744 576460752303423488"
+ got:" 7 2403668398879585 4807316707655685 20090103485"
+MISMATCH
+expected:" [----------------,------------------,------------------,------------------],"
+ got:" 4503599627370496 576460752303423488 576460752303423488 9007199254740992"
+MISMATCH
+expected:" 8061443332993187 4609553113643865 2304785125451461 17137259057"
+ got:" [----------------,------------------,------------------,----------------],"
+MISMATCH
+expected:" 2251799813685248 288230376151711744 144115188075855872 288230376151711744"
+ got:" 7836263351624663 4858065343961871 4858068198332111 44599535"
+MISMATCH
+expected:" [----------------,------------------,------------------,------------------],"
+ got:" ,"
+MISMATCH
+expected:" 4008203668359741 2329103200569137 1164557246219315 11291869493"
+ got:" 576460752303423488"
+MISMATCH
+expected:" 4503599627370496 144115188075855872 288230376151711744 288230376151711744"
+ got:" - ------------------]"
+MISMATCH
+expected:" [----------------,------------------,------------------,------------------],"
+ got:" 13518341683"
+MISMATCH
+expected:" 7971371340445777 1176844625827439 2353701326488195 12074833317"
+ got:" 2251799813685248 144115188075855872 576460752303423488"
+MISMATCH
+expected:" 562949953421312 576460752303423488 576460752303423488 288230376151711744"
+ got:" [----------------, ------------------, ------------------,"
+MISMATCH
+expected:" [---------------,------------------,------------------,------------------],"
+ got:" 3895613677675479 1227342587729219 4909356832575193"
+MISMATCH
+expected:" 990791918021509 4757069420158311 4757096719684817 13649763253"
+ got:""
+MISMATCH
+expected:" 4 576460752303423488 576460752303423488 144115188075855872"
+ got:" ,"
+MISMATCH
+expected:" [-,------------------,------------------,- ------------------],"
+ got:" 144115188075855872"
+MISMATCH
+expected:" 7 4807336797759169 4807316707655685 5022525871"
+ got:" - ------------------]"
+MISMATCH
+expected:" 4503599627370496 576460752303423488 576460752303423488 9007199254740992"
+ got:" 1465312553"
+MISMATCH
+expected:" [----------------,------------------,------------------,----------------],"
+ got:" 4503599627370496 288230376151711744 288230376151711744"
+MISMATCH
+expected:" 7836263351624663 4858065343961871 4858068198332111 44599535"
+ got:" [----------------, ------------------, ------------------,"
+MISMATCH
+expected:" ,"
+ got:" 7746191359077253 2480597086274477 2480594155649371"
+MISMATCH
+expected:" 288230376151711744"
+ got:""
+MISMATCH
+expected:" - ------------------]"
+ got:" ,"
+MISMATCH
+expected:" 6759170841"
+ got:" 288230376151711744"
+MISMATCH
+expected:" 2251799813685248 576460752303423488 576460752303423488"
+ got:" - ------------------]"
+MISMATCH
+expected:" [----------------, ------------------, ------------------,"
+ got:" 13029411249"
+MISMATCH
+expected:" 3895613677675479 4909370350916875 4909356832575193"
+ got:" 1125899906842624 288230376151711744 144115188075855872"
+MISMATCH
+expected:""
+ got:" [----------------, ------------------, ------------------,"
+MISMATCH
+expected:" ,"
+ got:" 1925288840700887 2506797227466667 1253392099027709"
+MISMATCH
+expected:" 576460752303423488"
+ got:""
+MISMATCH
+expected:" - ------------------]"
+ got:" 4503599627370496 576460752303423488 281474976710656 576460752303423488"
+MISMATCH
+expected:" 5861250211"
+ got:" [----------------,------------------,---------------,- ------------------],"
+MISMATCH
+expected:" 4503599627370496 576460752303423488 288230376151711744"
+ got:" 7656119366529843 5066513551994789 2473878374005 10642032549"
+MISMATCH
+expected:" [----------------, ------------------, ------------------,"
+ got:" ,"
+MISMATCH
+expected:" 7746191359077253 4961194172548953 2480594155649371"
+ got:" 576460752303423488"
+MISMATCH
+expected:""
+ got:" - ------------------]"
+MISMATCH
+expected:" ,"
+ got:" 11372006759"
+MISMATCH
+expected:" 288230376151711744"
+ got:" 2251799813685248 288230376151711744 576460752303423488"
+MISMATCH
+expected:" - ------------------]"
+ got:" [----------------, ------------------, ------------------,"
+MISMATCH
+expected:" 13029411249"
+ got:" 3805541685128069 2560004554904273 5119997737801787"
+MISMATCH
+expected:" 1125899906842624 288230376151711744 144115188075855872"
+ got:""
+MISMATCH
+expected:" [----------------, ------------------, ------------------,"
+ got:" ,"
+MISMATCH
+expected:" 1925288840700887 2506797227466667 1253392099027709"
+ got:" 4503599627370496 36028797018963968 576460752303423488 576460752303423488"
+MISMATCH
+expected:""
+ got:" [----------------,-----------------,------------------,- ------------------]"
+MISMATCH
+expected:" 4503599627370496 576460752303423488 281474976710656 576460752303423488"
+ got:" 7566047373982433 323380070523413 5174058827238795 22301135813"
+MISMATCH
+expected:" [----------------,------------------,---------------,- ------------------],"
+ got:" 562949953421312 288230376151711744 288230376151711744 36028797018963968"
+MISMATCH
+expected:" 7656119366529843 5066513551994789 2473878374005 10642032549"
+ got:" [---------------,------------------,------------------,-----------------],"
+MISMATCH
+expected:" ,"
+ got:" 940126422213591 2614335980808871 2614346094606287 1264224677"
+MISMATCH
+expected:" 576460752303423488"
+ got:" 4503599627370496 288230376151711744 288230376151711744 144115188075855872"
+MISMATCH
+expected:" - ------------------]"
+ got:" [----------------,------------------,------------------,------------------],"
+MISMATCH
+expected:" 11372006759"
+ got:" 7475975381435023 2641948450844205 2641951949334563 1749245179"
+MISMATCH
+expected:" 2251799813685248 288230376151711744 576460752303423488"
+ got:" 2251799813685248 576460752303423488 288230376151711744 576460752303423488"
+MISMATCH
+expected:" [----------------, ------------------, ------------------,"
+ got:" [----------------,------------------,------------------,------------------],"
+MISMATCH
+expected:" 3805541685128069 2560004554904273 5119997737801787"
+ got:" 3715469692580659 5339698302511381 2669850047622553 1792733725"
+MISMATCH
+expected:""
+ got:" 4503599627370496 4503599627370496 288230376151711744 288230376151711744"
+MISMATCH
+expected:" ,"
+ got:" [----------------,----------------,------------------,------------------],"
+MISMATCH
+expected:" 144115188075855872"
+ got:" 7385903388887613 42156845031927 2698043491979555 5409936227"
+MISMATCH
+expected:" - ------------------]"
+ got:" ,"
+MISMATCH
+expected:" 5575283953"
+ got:" 1125899906842624 72057594037927936 144115188075855872 144115188075855872"
+MISMATCH
+expected:" 4503599627370496 576460752303423488 576460752303423488"
+ got:" [----------------,-----------------,------------------,- ------------------]"
+MISMATCH
+expected:" [----------------, ------------------, ------------------,"
+ got:" 1835216848153477 681636016561183 1363267708977597 4324144769"
+MISMATCH
+expected:" 7566047373982433 5174081128374607 5174058827238795"
+ got:" ,"
+MISMATCH
+expected:""
+ got:" 1125899906842624 18014398509481984 576460752303423488 576460752303423488"
+MISMATCH
+expected:" 562949953421312 288230376151711744 288230376151711744 36028797018963968"
+ got:" [----------------,-----------------,------------------,- ------------------]"
+MISMATCH
+expected:" [---------------,------------------,------------------,-----------------],"
+ got:" 1823957849085051 172208642551393 5510657988985051 18572659525"
+MISMATCH
+expected:" 940126422213591 2614335980808871 2614346094606287 1264224677"
+ got:" 2251799813685248 72057594037927936 288230376151711744 288230376151711744"
+MISMATCH
+expected:" 4503599627370496 288230376151711744 288230376151711744 144115188075855872"
+ got:" [----------------,-----------------,------------------,------------------],"
+MISMATCH
+expected:" [----------------,------------------,------------------,------------------],"
+ got:" 3625397700033249 696105181443999 2784427424284931 6698508935"
+MISMATCH
+expected:" 7475975381435023 2641948450844205 2641951949334563 1749245179"
+ got:" 2251799813685248 576460752303423488 576460752303423488 288230376151711744"
+MISMATCH
+expected:" 2251799813685248 576460752303423488 288230376151711744 576460752303423488"
+ got:" [----------------,------------------,------------------,------------------],"
+MISMATCH
+expected:" [----------------,------------------,------------------,------------------],"
+ got:" 3602879701896397 5627640448286941 5627667888273659 13719993359"
+MISMATCH
+expected:" 3715469692580659 5339698302511381 2669850047622553 1792733725"
+ got:" ,"
+MISMATCH
+expected:" 4503599627370496 4503599627370496 288230376151711744 288230376151711744"
+ got:" 281474976710656 288230376151711744 576460752303423488 576460752303423488"
+MISMATCH
+expected:" [----------------,----------------,------------------,------------------],"
+ got:" [---------------,------------------,------------------,- ------------------]"
+MISMATCH
+expected:" 7385903388887613 42156845031927 2698043491979555 5409936227"
+ got:" 447545212969943 2843565598962327 5687103650656567 27547268087"
+MISMATCH
+expected:" ,"
+ got:" 562949953421312 576460752303423488 288230376151711744 576460752303423488"
+MISMATCH
+expected:" 1125899906842624 72057594037927936 144115188075855872 144115188075855872"
+ got:" [---------------,------------------,------------------,------------------],"
+MISMATCH
+expected:" [----------------,-----------------,------------------,- ------------------]"
+ got:" 889460926405673 5747140762239441 2873584373983491 27985727541"
+MISMATCH
+expected:" 1835216848153477 681636016561183 1363267708977597 4324144769"
+ got:" 2251799813685248 18014398509481984 288230376151711744 288230376151711744"
+MISMATCH
+expected:" ,"
+ got:" [----------------,-----------------,------------------,------------------],"
+MISMATCH
+expected:" 4503599627370496 18014398509481984 576460752303423488 576460752303423488"
+ got:" 3535325707485839 181495064983031 2903934931443255 13891714759"
+MISMATCH
+expected:" [----------------,-----------------,------------------,- ------------------]"
+ got:" ,"
+MISMATCH
+expected:" 7295831396340203 172208642551393 5510657988985053 18572659523"
+ got:" 576460752303423488"
+MISMATCH
+expected:" 2251799813685248 72057594037927936 288230376151711744 288230376151711744"
+ got:" - ------------------]"
+MISMATCH
+expected:" [----------------,-----------------,------------------,------------------],"
+ got:" 21400294443"
+MISMATCH
+expected:" 3625397700033249 696105181443999 2784427424284931 6698508935"
+ got:" 2251799813685248 288230376151711744 576460752303423488"
+MISMATCH
+expected:" 4503599627370496 576460752303423488 144115188075855872 576460752303423488"
+ got:" [----------------, ------------------, ------------------,"
+MISMATCH
+expected:" [----------------,------------------,------------------,------------------],"
+ got:" 3512807709348987 2934617574788653 5869213749282863"
+MISMATCH
+expected:" 7205759403792793 5627640448286941 1406916972068415 27439986719"
+ got:""
+MISMATCH
+expected:" ,"
+ got:" 1125899906842624 144115188075855872 576460752303423488 576460752303423488"
+MISMATCH
+expected:" 281474976710656 288230376151711744 576460752303423488 576460752303423488"
+ got:" [----------------,------------------,------------------,------------------],"
+MISMATCH
+expected:" [---------------,------------------,------------------,- ------------------]"
+ got:" 1745144855606067 1482801170112481 5931207232970871 2552520947"
+MISMATCH
+expected:" 447545212969943 2843565598962327 5687103650656567 27547268087"
+ got:" ,"
+MISMATCH
+expected:" 4503599627370496 576460752303423488 576460752303423488 288230376151711744"
+ got:" 576460752303423488"
+MISMATCH
+expected:" [----------------,------------------,------------------,------------------],"
+ got:" - ------------------]"
+MISMATCH
+expected:" 7115687411245383 5747140762239441 5747168747966983 13992863771"
+ got:" 8751743685"
+MISMATCH
+expected:" 2251799813685248 576460752303423488 288230376151711744 576460752303423488"
+ got:" 1125899906842624 288230376151711744 576460752303423488"
+MISMATCH
+expected:" [----------------,------------------,------------------,------------------],"
+ got:" [----------------, ------------------, ------------------,"
+MISMATCH
+expected:" 3535325707485839 5807842079456991 2903934931443255 27783429519"
+ got:" 1733885856537641 2996932982112653 5993857212481621"
+MISMATCH
+expected:" ,"
+ got:""
+MISMATCH
+expected:" 576460752303423488"
+ got:" 2251799813685248 288230376151711744 144115188075855872 288230376151711744"
+MISMATCH
+expected:" - ------------------]"
+ got:" [----------------,------------------,------------------,------------------],"
+MISMATCH
+expected:" 21400294441"
+ got:" 3445253714938429 3028580677414111 1514292664959975 4652505839"
+MISMATCH
+expected:" 4503599627370496 288230376151711744 576460752303423488"
+ got:" 2251799813685248 288230376151711744 576460752303423488 576460752303423488"
+MISMATCH
+expected:" [----------------, ------------------, ------------------,"
+ got:" [----------------,------------------,------------------,------------------],"
+MISMATCH
+expected:" 7025615418697973 2934617574788653 5869213749282865"
+ got:" 3422735716801577 3060574249166951 6121154621349935 6123016033"
+MISMATCH
+expected:""
+ got:" ,"
+MISMATCH
+expected:" 1125899906842624 144115188075855872 576460752303423488 576460752303423488"
+ got:" 562949953421312 288230376151711744 576460752303423488 576460752303423488"
+MISMATCH
+expected:" [----------------,------------------,------------------,------------------],"
+ got:" [---------------,------------------,------------------,- ------------------]"
+MISMATCH
+expected:" 1745144855606067 1482801170112481 5931207232970871 2552520947"
+ got:" 850054429666181 3092913697371173 6185816218389607 11176352739"
+MISMATCH
+expected:" ,"
+ got:" 2 144115188075855872 288230376151711744 288230376151711744"
+MISMATCH
+expected:" 144115188075855872"
+ got:" [-,------------------,------------------,------------------],"
+MISMATCH
+expected:" - ------------------]"
+ got:" 3 1562785099494581 3125581324106579 11125117417"
+MISMATCH
+expected:" 2187935921"
+ got:" 4503599627370496 72057594037927936 72057594037927936 36028797018963968"
+MISMATCH
+expected:" 4503599627370496 288230376151711744 288230376151711744"
+ got:" [----------------,-----------------,-----------------,- -----------------],"
+MISMATCH
+expected:" [----------------, ------------------, ------------------,"
+ got:" 6710363444782039 789650350024037 789650148095319 100964359"
+MISMATCH
+expected:" 6935543426150563 2996932982112653 2996928606240811"
+ got:" ,"
+MISMATCH
+expected:""
+ got:" 144115188075855872"
+MISMATCH
+expected:" 2251799813685248 288230376151711744 144115188075855872 288230376151711744"
+ got:" - ------------------]"
+MISMATCH
+expected:" [----------------,------------------,------------------,------------------],"
+ got:" 4443955381"
+MISMATCH
+expected:" 3445253714938429 3028580677414111 1514292664959975 4652505839"
+ got:" 2251799813685248 576460752303423488 576460752303423488"
+MISMATCH
+expected:" 4503599627370496 288230376151711744 576460752303423488 576460752303423488"
+ got:" [----------------, ------------------, ------------------,"
+MISMATCH
+expected:" [----------------,------------------,------------------,------------------],"
+ got:" 3332663724254167 6383956955309033 6383939179487509"
+MISMATCH
+expected:" 6845471433603153 3060574249166951 6121154621349937 6123016035"
+ got:""
+MISMATCH
+expected:" 562949953421312 288230376151711744 576460752303423488 576460752303423488"
+ got:" 4503599627370496 288230376151711744 18014398509481984 288230376151711744"
+MISMATCH
+expected:" [---------------,------------------,------------------,- ------------------]"
+ got:" [----------------,------------------,-----------------,- ------------------]"
+MISMATCH
+expected:" 850054429666181 3092913697371173 6185816218389607 11176352739"
+ got:" 6620291452234629 3225701431664267 201605751942949 9400577083"
+MISMATCH
+expected:" 2 144115188075855872 288230376151711744 288230376151711744"
+ got:" 1125899906842624 288230376151711744 576460752303423488 576460752303423488"
+MISMATCH
+expected:" [-,------------------,------------------,------------------],"
+ got:" [----------------,------------------,------------------,------------------],"
+MISMATCH
+expected:" 3 1562785099494581 3125581324106579 11125117417"
+ got:" 1643813863990231 3259770262125399 6519543341783843 2817533045"
+MISMATCH
+expected:" 4503599627370496 72057594037927936 72057594037927936 36028797018963968"
+ got:" ,"
+MISMATCH
+expected:" [----------------,-----------------,-----------------,- -----------------],"
+ got:" 4503599627370496 576460752303423488 36028797018963968 576460752303423488"
+MISMATCH
+expected:" 6710363444782039 789650350024037 789650148095319 100964359"
+ got:" [----------------,------------------,-----------------,- ------------------]"
+MISMATCH
+expected:" ,"
+ got:" 6530219459687219 6588427584151057 411776537956111 2976853281"
+MISMATCH
+expected:" 144115188075855872"
+ got:" ,"
+MISMATCH
+expected:" - ------------------]"
+ got:" 576460752303423488"
+MISMATCH
+expected:" 4443955381"
+ got:" - ------------------]"
+MISMATCH
+expected:" 2251799813685248 576460752303423488 576460752303423488"
+ got:" 28514454329"
+MISMATCH
+expected:" [----------------, ------------------, ------------------,"
+ got:" 2251799813685248 288230376151711744 576460752303423488"
+MISMATCH
+expected:" 3332663724254167 6383956955309033 6383939179487509"
+ got:" [----------------, ------------------, ------------------,"
+MISMATCH
+expected:""
+ got:" 3242591731706757 3329032021514655 6658035528574981"
+MISMATCH
+expected:" ,"
+ got:""
+MISMATCH
+expected:" 4503599627370496 576460752303423488 18014398509481984 576460752303423488"
+ got:" 4503599627370496 72057594037927936 36028797018963968 72057594037927936"
+MISMATCH
+expected:" [----------------,------------------,-----------------,- ------------------]"
+ got:" [----------------,-----------------,-----------------,- -----------------],"
+MISMATCH
+expected:" 6620291452234629 6451402863328533 201605751942949 18801154165"
+ got:" 6440147467139809 841049031851291 420523991076017 1049699257"
+MISMATCH
+expected:" 1125899906842624 288230376151711744 576460752303423488 576460752303423488"
+ got:" 562949953421312 144115188075855872 36028797018963968 144115188075855872"
+MISMATCH
+expected:" [----------------,------------------,------------------,------------------],"
+ got:" [---------------,------------------,-----------------,------------------],"
+MISMATCH
+expected:" 1643813863990231 3259770262125399 6519543341783843 2817533045"
+ got:" 799388933858263 1699867466392335 424967339214925 1890467365"
+MISMATCH
+expected:" ,"
+ got:" 4503599627370496 576460752303423488 288230376151711744 576460752303423488"
+MISMATCH
+expected:" 4503599627370496 576460752303423488 36028797018963968 576460752303423488"
+ got:" [----------------,------------------,------------------,------------------],"
+MISMATCH
+expected:" [----------------,------------------,-----------------,- ------------------]"
+ got:" 6350075474592399 6871296875306347 3435662078479879 27281653411"
+MISMATCH
+expected:" 6530219459687219 6588427584151057 411776537956111 2976853281"
+ got:" 2251799813685248 288230376151711744 288230376151711744 72057594037927936"
+MISMATCH
+expected:" ,"
+ got:" [----------------,------------------,------------------,-----------------],"
+MISMATCH
+expected:" 576460752303423488"
+ got:" 3152519739159347 3471965465048289 3471966023944797 139724127"
+MISMATCH
+expected:" - ------------------]"
+ got:" ,"
+MISMATCH
+expected:" 28514454329"
+ got:" 288230376151711744"
+MISMATCH
+expected:" 2251799813685248 288230376151711744 576460752303423488"
+ got:" - ------------------]"
+MISMATCH
+expected:" [----------------, ------------------, ------------------,"
+ got:" 2598114999"
+MISMATCH
+expected:" 3242591731706757 3329032021514655 6658035528574981"
+ got:" 4503599627370496 144115188075855872 288230376151711744"
+MISMATCH
+expected:""
+ got:" [----------------, ------------------, ------------------,"
+MISMATCH
+expected:" 4503599627370496 72057594037927936 36028797018963968 72057594037927936"
+ got:" 6260003482044989 1754328595966201 3508654593817403"
+MISMATCH
+expected:" [----------------,-----------------,-----------------,- -----------------],"
+ got:""
+MISMATCH
+expected:" 6440147467139809 841049031851291 420523991076017 1049699257"
+ got:" 1125899906842624 36028797018963968 36028797018963968 9007199254740992"
+MISMATCH
+expected:" 562949953421312 144115188075855872 36028797018963968 144115188075855872"
+ got:" [----------------,-----------------,-----------------,----------------],"
+MISMATCH
+expected:" [---------------,------------------,-----------------,------------------],"
+ got:" 1553741871442821 443215452288189 443216484363153 258018741"
+MISMATCH
+expected:" 799388933858263 1699867466392335 424967339214925 1890467365"
+ got:" 1125899906842624 288230376151711744 288230376151711744 144115188075855872"
+MISMATCH
+expected:" 4503599627370496 576460752303423488 288230376151711744 576460752303423488"
+ got:" [----------------,------------------,------------------,------------------],"
+MISMATCH
+expected:" [----------------,------------------,------------------,------------------],"
+ got:" 1542482872374395 3583193567205235 3583201997581209 4215187987"
+MISMATCH
+expected:" 6350075474592399 6871296875306347 3435662078479879 27281653411"
+ got:" 2251799813685248 144115188075855872 576460752303423488 576460752303423488"
+MISMATCH
+expected:" 2251799813685248 288230376151711744 288230376151711744 72057594037927936"
+ got:" [----------------,------------------,------------------,------------------],"
+MISMATCH
+expected:" [----------------,------------------,------------------,-----------------],"
+ got:" 3062447746611937 1810533519315785 7242138272499685 4195236545"
+MISMATCH
+expected:" 3152519739159347 3471965465048289 3471966023944797 139724127"
+ got:" ,"
+MISMATCH
+expected:" ,"
+ got:" 576460752303423488"
+MISMATCH
+expected:" 288230376151711744"
+ got:" - ------------------]"
+MISMATCH
+expected:" - ------------------]"
+ got:" 13045532553"
+MISMATCH
+expected:" 2598114999"
+ got:" 2251799813685248 288230376151711744 576460752303423488"
+MISMATCH
+expected:" 4503599627370496 144115188075855872 288230376151711744"
+ got:" [----------------, ------------------, ------------------,"
+MISMATCH
+expected:" [----------------, ------------------, ------------------,"
+ got:" 3039929748475085 3659344032584517 7318675019636481"
+MISMATCH
+expected:" 6260003482044989 1754328595966201 3508654593817403"
+ got:""
+MISMATCH
+expected:""
+ got:" ,"
+MISMATCH
+expected:" 1125899906842624 36028797018963968 36028797018963968 9007199254740992"
+ got:" 281474976710656 288230376151711744 576460752303423488 576460752303423488"
+MISMATCH
+expected:" [----------------,-----------------,-----------------,----------------],"
+ got:" [---------------,------------------,------------------,- ------------------]"
+MISMATCH
+expected:" 1553741871442821 443215452288189 443216484363153 258018741"
+ got:" 377176468792279 3698024549064077 7396022764344687 26333783467"
+MISMATCH
+expected:" 4503599627370496 576460752303423488 144115188075855872 576460752303423488"
+ got:" 562949953421312 288230376151711744 288230376151711744 9007199254740992"
+MISMATCH
+expected:" [----------------,------------------,------------------,------------------],"
+ got:" [---------------,------------------,------------------,- ----------------],"
+MISMATCH
+expected:" 6169931489497579 7166387134410469 1791600998790605 16860751951"
+ got:" 748723438050345 3737108588070249 3737095062658185 422669127"
+MISMATCH
+expected:" 2251799813685248 576460752303423488 576460752303423488 288230376151711744"
+ got:" ,"
+MISMATCH
+expected:" [----------------,------------------,------------------,------------------],"
+ got:" 576460752303423488"
+MISMATCH
+expected:" 3062447746611937 7242134077263139 7242138272499685 2097618273"
+ got:" - ------------------]"
+MISMATCH
+expected:" ,"
+ got:" 6486069327"
+MISMATCH
+expected:" 576460752303423488"
+ got:" 2251799813685248 288230376151711744 576460752303423488"
+MISMATCH
+expected:" - ------------------]"
+ got:" [----------------, ------------------, ------------------,"
+MISMATCH
+expected:" 13045532551"
+ got:" 2972375754064527 3776596149603033 7553185813136739"
+MISMATCH
+expected:" 4503599627370496 288230376151711744 576460752303423488"
+ got:""
+MISMATCH
+expected:" [----------------, ------------------, ------------------,"
+ got:" ,"
+MISMATCH
+expected:" 6079859496950169 3659344032584517 7318675019636483"
+ got:" 288230376151711744"
+MISMATCH
+expected:""
+ got:" - ------------------]"
+MISMATCH
+expected:" ,"
+ got:" 6741066301"
+MISMATCH
+expected:" 281474976710656 576460752303423488 576460752303423488 288230376151711744"
+ got:" 2251799813685248 576460752303423488 576460752303423488"
+MISMATCH
+expected:" [---------------,------------------,------------------,- ------------------]"
+ got:" [----------------, ------------------, ------------------,"
+MISMATCH
+expected:" 377176468792279 7396049098128153 7396022764344687 13166891733"
+ got:" 2949857755927675 7633032113400091 7633018631267489"
+MISMATCH
+expected:" ,"
+ got:""
+MISMATCH
+expected:" 576460752303423488"
+ got:" 1125899906842624 144115188075855872 576460752303423488 576460752303423488"
+MISMATCH
+expected:" - ------------------]"
+ got:" [----------------,------------------,------------------,------------------],"
+MISMATCH
+expected:" 27050824125"
+ got:" 1463669878895411 1928419743161835 7713697477040771 18504393431"
+MISMATCH
+expected:" 4503599627370496 576460752303423488 144115188075855872"
+ got:" ,"
+MISMATCH
+expected:" [----------------, ------------------, ------------------,"
+ got:" 1125899906842624 288230376151711744 288230376151711744 72057594037927936"
+MISMATCH
+expected:" 5989787504402759 7474217176140497 1868547531329093"
+ got:" [----------------,------------------,------------------,- -----------------]"
+MISMATCH
+expected:""
+ got:" 1452410879826985 3897624084549137 3897615671331893 2103304311"
+MISMATCH
+expected:" ,"
+ got:" 2251799813685248 288230376151711744 288230376151711744 144115188075855872"
+MISMATCH
+expected:" 576460752303423488"
+ got:" [----------------,------------------,------------------,------------------],"
+MISMATCH
+expected:" - ------------------]"
+ got:" 2882303761517117 3938812205301217 3938814658117119 1226407951"
+MISMATCH
+expected:" 6486069327"
+ got:" ,"
+MISMATCH
+expected:" 2251799813685248 288230376151711744 576460752303423488"
+ got:" 576460752303423488"
+MISMATCH
+expected:" [----------------, ------------------, ------------------,"
+ got:" - ------------------]"
+MISMATCH
+expected:" 2972375754064527 3776596149603033 7553185813136739"
+ got:" 22406543649"
+MISMATCH
+expected:""
+ got:" 2251799813685248 288230376151711744 576460752303423488"
+MISMATCH
+expected:" ,"
+ got:" [----------------, ------------------, ------------------,"
+MISMATCH
+expected:" 4503599627370496 576460752303423488 576460752303423488 72057594037927936"
+ got:" 2859785763380265 3980461494655139 7960900582766629"
+MISMATCH
+expected:" [----------------,------------------,------------------,- -----------------]"
+ got:""
+MISMATCH
+expected:" 5899715511855349 7633032113400091 7633018631267491 1685266575"
+ got:" 562949953421312 144115188075855872 288230376151711744 288230376151711744"
+MISMATCH
+expected:" 1125899906842624 144115188075855872 576460752303423488 576460752303423488"
+ got:" [---------------,------------------,------------------,------------------],"
+MISMATCH
+expected:" [----------------,------------------,------------------,------------------],"
+ got:" 709316941310853 2011257153267837 4022527212614831 12906079157"
+MISMATCH
+expected:" 1463669878895411 1928419743161835 7713697477040771 18504393431"
+ got:" 4 576460752303423488 288230376151711744 576460752303423488"
+MISMATCH
+expected:" ,"
+ got:" [-,------------------,------------------,- ------------------],"
+MISMATCH
+expected:" 576460752303423488"
+ got:" 5 8130114220111333 4065050112797359 13994516615"
+MISMATCH
+expected:" - ------------------]"
+ got:" ,"
+MISMATCH
+expected:" 16826434487"
+ got:" 576460752303423488"
+MISMATCH
+expected:" 4503599627370496 288230376151711744 576460752303423488"
+ got:" - ------------------]"
+MISMATCH
+expected:" [----------------, ------------------, ------------------,"
+ got:" 17052384101"
+MISMATCH
+expected:" 5809643519307939 3897624084549137 7795231342663787"
+ got:" 4503599627370496 288230376151711744 576460752303423488"
+MISMATCH
+expected:""
+ got:" [----------------, ------------------, ------------------,"
+MISMATCH
+expected:" 2251799813685248 576460752303423488 288230376151711744 576460752303423488"
+ got:" 5584463537939415 4108032259139887 8216047465895673"
+MISMATCH
+expected:" [----------------,------------------,------------------,------------------],"
+ got:""
+MISMATCH
+expected:" 2882303761517117 7877624410602433 3938814658117119 4905631805"
+ got:" 2251799813685248 576460752303423488 288230376151711744 576460752303423488"
+MISMATCH
+expected:" ,"
+ got:" [----------------,------------------,------------------,------------------],"
+MISMATCH
+expected:" 4503599627370496 288230376151711744 288230376151711744 18014398509481984"
+ got:" 2769713770832855 8302879507576669 4151452864650025 26221723381"
+MISMATCH
+expected:" [----------------,------------------,------------------,- -----------------]"
+ got:" 4503599627370496 18014398509481984 576460752303423488 576460752303423488"
+MISMATCH
+expected:" 5719571526760529 3980461494655139 3980450291383315 700204489"
+ got:" [----------------,-----------------,------------------,------------------],"
+MISMATCH
+expected:" 562949953421312 576460752303423488 288230376151711744 576460752303423488"
+ got:" 5494391545392005 262208577504765 8390684701191725 10221039245"
+MISMATCH
+expected:" [---------------,------------------,------------------,------------------],"
+ got:" 1125899906842624 576460752303423488 288230376151711744 576460752303423488"
+MISMATCH
+expected:" 709316941310853 8045028613071347 4022527212614831 25812158315"
+ got:" [----------------,------------------,------------------,------------------],"
+MISMATCH
+expected:" 4 576460752303423488 288230376151711744 576460752303423488"
+ got:" 1362338887279575 8479391789931977 4239697085132627 2380333277"
+MISMATCH
+expected:" [-,------------------,------------------,- ------------------],"
+ got:" 4503599627370496 72057594037927936 576460752303423488 576460752303423488"
+MISMATCH
+expected:" 5 8130114220111333 4065050112797359 13994516615"
+ got:" [----------------,-----------------,------------------,------------------],"
+MISMATCH
+expected:" ,"
+ got:" 5404319552844595 1071128929614395 8569044029631969 12592716809"
+MISMATCH
+expected:" 144115188075855872"
+ got:" ,"
+MISMATCH
+expected:" - ------------------]"
+ got:" 2251799813685248 288230376151711744 288230376151711744 72057594037927936"
+MISMATCH
+expected:" 4263096025"
+ got:" [----------------,------------------,------------------,- -----------------]"
+MISMATCH
+expected:" 4503599627370496 576460752303423488 576460752303423488"
+ got:" 2679641778285445 4329825533588629 4329822138968985 848654911"
+MISMATCH
+expected:" [----------------, ------------------, ------------------,"
+ got:" 4503599627370496 288230376151711744 576460752303423488 576460752303423488"
+MISMATCH
+expected:" 5584463537939415 8216064518279773 8216047465895673"
+ got:" [----------------,------------------,------------------,------------------],"
+MISMATCH
+expected:""
+ got:" 5314247560297185 4375596517321521 8751205020494137 11985851095"
+MISMATCH
+expected:" 2251799813685248 576460752303423488 288230376151711744 576460752303423488"
+ got:" 562949953421312 576460752303423488 36028797018963968 576460752303423488"
+MISMATCH
+expected:" [----------------,------------------,------------------,------------------],"
+ got:" [---------------,------------------,-----------------,------------------],"
+MISMATCH
+expected:" 2769713770832855 8302879507576669 4151452864650025 26221723381"
+ got:" 658651445502935 8843714985387741 552733529401143 21485030547"
+MISMATCH
+expected:" 4503599627370496 18014398509481984 576460752303423488 576460752303423488"
+ got:" 4503599627370496 288230376151711744 288230376151711744 9007199254740992"
+MISMATCH
+expected:" [----------------,-----------------,------------------,------------------],"
+ got:" [----------------,------------------,------------------,- ----------------],"
+MISMATCH
+expected:" 5494391545392005 262208577504765 8390684701191725 10221039245"
+ got:" 5224175567749775 4468637282743293 4468624474894813 400245265"
+MISMATCH
+expected:" 1125899906842624 576460752303423488 288230376151711744 576460752303423488"
+ got:" ,"
+MISMATCH
+expected:" [----------------,------------------,------------------,------------------],"
+ got:" 288230376151711744"
+MISMATCH
+expected:" 1362338887279575 8479391789931977 4239697085132627 2380333277"
+ got:" - ------------------]"
+MISMATCH
+expected:" 4503599627370496 576460752303423488 576460752303423488 288230376151711744"
+ got:" 1795986759"
+MISMATCH
+expected:" [----------------,------------------,------------------,------------------],"
+ got:" 2251799813685248 144115188075855872 288230376151711744"
+MISMATCH
+expected:" 5404319552844595 8569031436915159 8569044029631969 6296358405"
+ got:" [----------------, ------------------, ------------------,"
+MISMATCH
+expected:" ,"
+ got:" 2589569785738035 2257939120697279 4515876445407799"
+MISMATCH
+expected:" 576460752303423488"
+ got:""
+MISMATCH
+expected:" - ------------------]"
+ got:" ,"
+MISMATCH
+expected:" 6789239287"
+ got:" 288230376151711744"
+MISMATCH
+expected:" 2251799813685248 576460752303423488 288230376151711744"
+ got:" - ------------------]"
+MISMATCH
+expected:" [----------------, ------------------, ------------------,"
+ got:" 8596217249"
+MISMATCH
+expected:" 2679641778285445 8659651067177257 4329822138968985"
+ got:" 4503599627370496 144115188075855872 288230376151711744"
+MISMATCH
+expected:""
+ got:" [----------------, ------------------, ------------------,"
+MISMATCH
+expected:" 4503599627370496 576460752303423488 576460752303423488 72057594037927936"
+ got:" 5134103575202365 2281819007361449 4563629418505649"
+MISMATCH
+expected:" [----------------,------------------,------------------,-----------------],"
+ got:""
+MISMATCH
+expected:" 5314247560297185 8751193034643041 8751205020494137 1498231387"
+ got:" 1125899906842624 144115188075855872 288230376151711744 288230376151711744"
+MISMATCH
+expected:" 562949953421312 576460752303423488 36028797018963968 576460752303423488"
+ got:" [----------------,------------------,------------------,------------------],"
+MISMATCH
+expected:" [---------------,------------------,-----------------,------------------],"
+ got:" 1272266894732165 2305943889845347 4611888722195781 942505087"
+MISMATCH
+expected:" 658651445502935 8843714985387741 552733529401143 21485030547"
+ got:" 1125899906842624 72057594037927936 288230376151711744 288230376151711744"
+MISMATCH
+expected:" 4503599627370496 288230376151711744 288230376151711744 9007199254740992"
+ got:" [----------------,-----------------,------------------,------------------],"
+MISMATCH
+expected:" [----------------,------------------,------------------,- ----------------],"
+ got:" 1261007895663739 1165164089833891 4660659741337943 3382002379"
+MISMATCH
+expected:" 5224175567749775 4468637282743293 4468624474894813 400245265"
+ got:" 2251799813685248 144115188075855872 288230376151711744 288230376151711744"
+MISMATCH
+expected:" ,"
+ got:" [----------------,------------------,------------------,------------------],"
+MISMATCH
+expected:" 288230376151711744"
+ got:" 2499497793190625 2354971876828753 4709947918253153 4164595647"
+MISMATCH
+expected:" - ------------------]"
+ got:" 2251799813685248 144115188075855872 288230376151711744 288230376151711744"
+MISMATCH
+expected:" 1795986759"
+ got:" [----------------,------------------,------------------,------------------],"
+MISMATCH
+expected:" 2251799813685248 144115188075855872 288230376151711744"
+ got:" 2476979795053773 2379874981328261 4759758753339173 8790682651"
+MISMATCH
+expected:" [----------------, ------------------, ------------------,"
+ got:" 281474976710656 144115188075855872 72057594037927936 144115188075855872"
+MISMATCH
+expected:" 2589569785738035 2257939120697279 4515876445407799"
+ got:" [---------------,------------------,-----------------,- ------------------],"
+MISMATCH
+expected:""
+ got:" 306807724614615 2405051904685113 1202524451423159 3001838795"
+MISMATCH
+expected:" 4503599627370496 288230376151711744 288230376151711744 9007199254740992"
+ got:" ,"
+MISMATCH
+expected:" [----------------,------------------,------------------,- ----------------],"
+ got:" 562949953421312 288230376151711744 144115188075855872 288230376151711744"
+MISMATCH
+expected:" 5134103575202365 4563638014722897 4563629418505649 268631789"
+ got:" [---------------,------------------,------------------,- ------------------]"
+MISMATCH
+expected:" 1125899906842624 144115188075855872 288230376151711744 288230376151711744"
+ got:" 607985949695017 4860976470761003 2430485346868917 5777023169"
+MISMATCH
+expected:" [----------------,------------------,------------------,------------------],"
+ got:" ,"
+MISMATCH
+expected:" 1272266894732165 2305943889845347 4611888722195781 942505087"
+ got:" 2251799813685248 72057594037927936 288230376151711744 288230376151711744"
+MISMATCH
+expected:" 4503599627370496 288230376151711744 36028797018963968 288230376151711744"
+ got:" [----------------,-----------------,------------------,- ------------------]"
+MISMATCH
+expected:" [----------------,------------------,-----------------,------------------],"
+ got:" 2409425800643215 1228099192466617 4912383095862291 13674004177"
+MISMATCH
+expected:" 5044031582654955 4660656359335563 582582467667243 3382002381"
+ got:" 2251799813685248 288230376151711744 288230376151711744 36028797018963968"
+MISMATCH
+expected:" 2251799813685248 144115188075855872 288230376151711744 288230376151711744"
+ got:" [----------------,------------------,------------------,-----------------],"
+MISMATCH
+expected:" [----------------,------------------,------------------,------------------],"
+ got:" 2386907802506363 4964335883649007 4964340751059159 608426269"
+MISMATCH
+expected:" 2499497793190625 2354971876828753 4709947918253153 4164595647"
+ got:" ,"
+MISMATCH
+expected:" 4503599627370496 144115188075855872 144115188075855872 72057594037927936"
+ got:" 144115188075855872"
+MISMATCH
+expected:" [----------------,------------------,------------------,-----------------],"
+ got:" - ------------------]"
+MISMATCH
+expected:" 4953959590107545 2379874981328261 2379879376669587 2197670663"
+ got:" 999303649"
+MISMATCH
+expected:" 281474976710656 144115188075855872 72057594037927936 144115188075855872"
+ got:" 1125899906842624 288230376151711744 288230376151711744"
+MISMATCH
+expected:" [---------------,------------------,-----------------,- ------------------],"
+ got:" [----------------, ------------------, ------------------,"
+MISMATCH
+expected:" 306807724614615 2405051904685113 1202524451423159 3001838795"
+ got:" 1182194902184755 5016851458183849 5016849459576551"
+MISMATCH
+expected:" 4503599627370496 288230376151711744 288230376151711744 4503599627370496"
+ got:""
+MISMATCH
+expected:" [----------------,------------------,------------------,- ----------------],"
+ got:" 1125899906842624 288230376151711744 72057594037927936 288230376151711744"
+MISMATCH
+expected:" 4863887597560135 4860976470761003 4860970693737835 90265987"
+ got:" [----------------,------------------,-----------------,------------------],"
+MISMATCH
+expected:" ,"
+ got:" 1170935903116329 5069914670433379 1267478770893455 413140441"
+MISMATCH
+expected:" 2251799813685248 72057594037927936 288230376151711744 288230376151711744"
+ got:" ,"
+MISMATCH
+expected:" [----------------,-----------------,------------------,- ------------------]"
+ got:" 2251799813685248 72057594037927936 144115188075855872 144115188075855872"
+MISMATCH
+expected:" 2409425800643215 1228099192466617 4912383095862291 13674004177"
+ got:" [----------------,-----------------,------------------,- ------------------]"
+MISMATCH
+expected:" 4503599627370496 288230376151711744 36028797018963968 288230376151711744"
+ got:" 2319353808095805 1280888585858803 2561771773892475 5397825131"
+MISMATCH
+expected:" [----------------,------------------,-----------------,------------------],"
+ got:" ,"
+MISMATCH
+expected:" 4773815605012725 4964335883649007 620542593882395 4867410153"
+ got:" 2251799813685248 144115188075855872 72057594037927936 144115188075855872"
+MISMATCH
+expected:" ,"
+ got:" [----------------,------------------,-----------------,- ------------------]"
+MISMATCH
+expected:" 144115188075855872"
+ got:" 2296835809958953 2588870827075867 1294435210047259 406981349"
+MISMATCH
+expected:" - ------------------]"
+ got:" 562949953421312 18014398509481984 288230376151711744 288230376151711744"
+MISMATCH
+expected:" 999303649"
+ got:" [---------------,-----------------,------------------,------------------],"
+MISMATCH
+expected:" 1125899906842624 288230376151711744 288230376151711744"
+ got:" 568579452955525 327031589101285 5232513012688027 7587067467"
+MISMATCH
+expected:" [----------------, ------------------, ------------------,"
+ got:" 36028797018963968 144115188075855872 144115188075855872"
+MISMATCH
+expected:" 1182194902184755 5016851458183849 5016849459576551"
+ got:" [1,-----------------,------------------,- ------------------],"
+MISMATCH
+expected:""
+ got:" 660984310109913 2643933090895859 4149543793"
+MISMATCH
+expected:" 4503599627370496 288230376151711744 288230376151711744 144115188075855872"
+ got:" ,"
+MISMATCH
+expected:" [----------------,------------------,------------------,------------------],"
+ got:" 288230376151711744"
+MISMATCH
+expected:" 4683743612465315 5069914670433379 5069915083573821 206570221"
+ got:" - ------------------]"
+MISMATCH
+expected:" ,"
+ got:" 13467580195"
+MISMATCH
+expected:" 2251799813685248 72057594037927936 144115188075855872 144115188075855872"
+ got:" 4503599627370496 144115188075855872 288230376151711744"
+MISMATCH
+expected:" [----------------,-----------------,------------------,- ------------------]"
+ got:" [----------------, ------------------, ------------------,"
+MISMATCH
+expected:" 2319353808095805 1280888585858803 2561771773892475 5397825131"
+ got:" 4458563631096791 2671909998445175 5343806529310155"
+MISMATCH
+expected:" ,"
+ got:""
+MISMATCH
+expected:" 288230376151711744"
+ got:" ,"
+MISMATCH
+expected:" - ------------------]"
+ got:" 2251799813685248 144115188075855872 36028797018963968 144115188075855872"
+MISMATCH
+expected:" 813962697"
+ got:" [----------------,------------------,-----------------,- ------------------]"
+MISMATCH
+expected:" 4503599627370496 144115188075855872 288230376151711744"
+ got:" 2206763817411543 2700170986826851 675042537881683 835300119"
+MISMATCH
+expected:" [----------------, ------------------, ------------------,"
+ got:" 4503599627370496 144115188075855872 288230376151711744 288230376151711744"
+MISMATCH
+expected:" 4593671619917905 2588870827075867 5177740840189037"
+ got:" [----------------,------------------,------------------,------------------],"
+MISMATCH
+expected:""
+ got:" 4368491638549381 2728734617103485 5457473817539223 4583332253"
+MISMATCH
+expected:" 562949953421312 288230376151711744 288230376151711744 72057594037927936"
+ got:" 1125899906842624 144115188075855872 288230376151711744 288230376151711744"
+MISMATCH
+expected:" [---------------,------------------,------------------,-----------------],"
+ got:" [----------------,------------------,------------------,------------------],"
+MISMATCH
+expected:" 568579452955525 5232505425620559 5232513012688027 1896766867"
+ got:" 1080863910568919 2757600889275079 5515213454707457 11676157299"
+MISMATCH
+expected:" 288230376151711744 144115188075855872 288230376151711744"
+ got:" 4503599627370496 18014398509481984 72057594037927936 72057594037927936"
+MISMATCH
+expected:" [1,------------------,------------------,- ------------------],"
+ got:" [----------------,-----------------,-----------------,- -----------------],"
+MISMATCH
+expected:" 5287874480879303 2643933090895859 8299087585"
+ got:" 4278419646001971 348348026857555 1393391416160829 691269391"
+MISMATCH
+expected:" 288230376151711744"
+ got:" 2251799813685248 18014398509481984 288230376151711744 288230376151711744"
+MISMATCH
+expected:" - ------------------]"
+ got:" [----------------,-----------------,------------------,- ------------------]"
+MISMATCH
+expected:" 13467580195"
+ got:" 2116691824864133 352033772792595 5632536966307539 3398373981"
+MISMATCH
+expected:" 4503599627370496 144115188075855872 288230376151711744"
+ got:" ,"
+MISMATCH
+expected:" [----------------, ------------------, ------------------,"
+ got:" 4503599627370496 144115188075855872 144115188075855872 36028797018963968"
+MISMATCH
+expected:" 4458563631096791 2671909998445175 5343806529310155"
+ got:" [----------------,------------------,------------------,- -----------------]"
+MISMATCH
+expected:""
+ got:" 4188347653454561 2846073203234847 2846066974137395 1557274363"
+MISMATCH
+expected:" ,"
+ got:" 562949953421312 288230376151711744 288230376151711744 72057594037927936"
+MISMATCH
+expected:" 2251799813685248 288230376151711744 36028797018963968 288230376151711744"
+ got:" [---------------,------------------,------------------,-----------------],"
+MISMATCH
+expected:" [----------------,------------------,-----------------,- ------------------]"
+ got:" 517913957147607 5752357732047787 5752363269479927 1384358035"
+MISMATCH
+expected:" 2206763817411543 5400341973653701 675042537881683 1670600237"
+ got:" ,"
+MISMATCH
+expected:" 4503599627370496 144115188075855872 288230376151711744 288230376151711744"
+ got:" 4503599627370496 72057594037927936 288230376151711744 288230376151711744"
+MISMATCH
+expected:" [----------------,------------------,------------------,------------------],"
+ got:" [----------------,-----------------,------------------,- ------------------]"
+MISMATCH
+expected:" 4368491638549381 2728734617103485 5457473817539223 4583332253"
+ got:" 4098275660907151 1453307996872757 5813231659972327 327518701"
+MISMATCH
+expected:" 1125899906842624 144115188075855872 288230376151711744 288230376151711744"
+ got:" 2251799813685248 72057594037927936 288230376151711744 288230376151711744"
+MISMATCH
+expected:" [----------------,------------------,------------------,------------------],"
+ got:" [----------------,-----------------,------------------,------------------],"
+MISMATCH
+expected:" 1080863910568919 2757600889275079 5515213454707457 11676157299"
+ got:" 2026619832316723 1468685087440451 5874745921678315 5571916511"
+MISMATCH
+expected:" 4503599627370496 18014398509481984 72057594037927936 72057594037927936"
+ got:" 4503599627370496 1125899906842624 144115188075855872 144115188075855872"
+MISMATCH
+expected:" [----------------,-----------------,-----------------,- -----------------],"
+ got:" [----------------,----------------,------------------,------------------],"
+MISMATCH
+expected:" 4278419646001971 348348026857555 1393391416160829 691269391"
+ got:" 4008203668359741 23191061101163 2968456464585907 643637043"
+MISMATCH
+expected:" 2251799813685248 18014398509481984 288230376151711744 288230376151711744"
+ got:" 288230376151711744"
+MISMATCH
+expected:" [----------------,-----------------,------------------,- ------------------]"
+ got:" - ------------------]"
+MISMATCH
+expected:" 2116691824864133 352033772792595 5632536966307539 3398373981"
+ got:" 6233445503"
+MISMATCH
+expected:" ,"
+ got:" 1125899906842624 288230376151711744 144115188075855872"
+MISMATCH
+expected:" 4503599627370496 144115188075855872 144115188075855872 36028797018963968"
+ got:" [----------------, ------------------, ------------------,"
+MISMATCH
+expected:" [----------------,------------------,------------------,- -----------------]"
+ got:" 990791918021509 5999745863898801 2999869815226649"
+MISMATCH
+expected:" 4188347653454561 2846073203234847 2846066974137395 1557274363"
+ got:""
+MISMATCH
+expected:" 562949953421312 288230376151711744 288230376151711744 72057594037927936"
+ got:" ,"
+MISMATCH
+expected:" [---------------,------------------,------------------,-----------------],"
+ got:" 288230376151711744"
+MISMATCH
+expected:" 517913957147607 5752357732047787 5752363269479927 1384358035"
+ got:" - ------------------]"
+MISMATCH
+expected:" ,"
+ got:" 9968027909"
+MISMATCH
+expected:" 4503599627370496 72057594037927936 288230376151711744 288230376151711744"
+ got:" 9007199254740992 288230376151711744 144115188075855872"
+MISMATCH
+expected:" [----------------,-----------------,------------------,- ------------------]"
+ got:" [----------------, ------------------, ------------------,"
+MISMATCH
+expected:" 4098275660907151 1453307996872757 5813231659972327 327518701"
+ got:" 7836263351624663 6063243015765023 3031616523868557"
+MISMATCH
+expected:" 2251799813685248 288230376151711744 288230376151711744 9007199254740992"
+ got:""
+MISMATCH
+expected:" [----------------,------------------,------------------,----------------],"
+ got:" ,"
+MISMATCH
+expected:" 2026619832316723 5874740349761803 5874745921678315 174122391"
+ got:" 9007199254740992 144115188075855872 72057594037927936 144115188075855872"
+MISMATCH
+expected:" 4503599627370496 1125899906842624 144115188075855872 144115188075855872"
+ got:" [----------------,------------------,-----------------,- ------------------]"
+MISMATCH
+expected:" [----------------,----------------,------------------,------------------],"
+ got:" 7746191359077253 3063701548748197 1531850069561829 1409624539"
+MISMATCH
+expected:" 4008203668359741 23191061101163 2968456464585907 643637043"
+ got:" ,"
+MISMATCH
+expected:" ,"
+ got:" 9007199254740992 144115188075855872 144115188075855872 36028797018963968"
+MISMATCH
+expected:" 288230376151711744"
+ got:" [----------------,------------------,------------------,- -----------------]"
+MISMATCH
+expected:" - ------------------]"
+ got:" 7656119366529843 3096127466065265 3096124247511021 804638561"
+MISMATCH
+expected:" 6233445503"
+ got:" 9007199254740992 72057594037927936 36028797018963968 72057594037927936"
+MISMATCH
+expected:" 1125899906842624 288230376151711744 144115188075855872"
+ got:" [----------------,-----------------,-----------------,- -----------------],"
+MISMATCH
+expected:" [----------------, ------------------, ------------------,"
+ got:" 7566047373982433 1564449629916857 782223118465821 3392985215"
+MISMATCH
+expected:" 990791918021509 5999745863898801 2999869815226649"
+ got:" 9007199254740992 288230376151711744 288230376151711744 144115188075855872"
+MISMATCH
+expected:""
+ got:" [----------------,------------------,------------------,------------------],"
+MISMATCH
+expected:" ,"
+ got:" 7475975381435023 6324005037069477 6324016963475123 5963202823"
+MISMATCH
+expected:" 288230376151711744"
+ got:" ,"
+MISMATCH
+expected:" - ------------------]"
+ got:" 9007199254740992 18014398509481984 288230376151711744 288230376151711744"
+MISMATCH
+expected:" 9968027909"
+ got:" [----------------,-----------------,------------------,- ------------------]"
+MISMATCH
+expected:" 9007199254740992 288230376151711744 144115188075855872"
+ got:" 7385903388887613 399435059590595 6390951947661551 9005787969"
+MISMATCH
+expected:" [----------------, ------------------, ------------------,"
+ got:" ,"
+MISMATCH
+expected:" 7836263351624663 6063243015765023 3031616523868557"
+ got:" 288230376151711744"
+MISMATCH
+expected:""
+ got:" - ------------------]"
+MISMATCH
+expected:" ,"
+ got:" 11237933401"
+MISMATCH
+expected:" 9007199254740992 144115188075855872 72057594037927936 144115188075855872"
+ got:" 2251799813685248 144115188075855872 288230376151711744"
+MISMATCH
+expected:" [----------------,------------------,-----------------,- ------------------]"
+ got:" [----------------, ------------------, ------------------,"
+MISMATCH
+expected:" 7746191359077253 3063701548748197 1531850069561829 1409624539"
+ got:" 1823957849085051 3229304311366163 6458597384798925"
+MISMATCH
+expected:" ,"
+ got:""
+MISMATCH
+expected:" 288230376151711744"
+ got:" 4503599627370496 288230376151711744 288230376151711744 144115188075855872"
+MISMATCH
+expected:" - ------------------]"
+ got:" [----------------,------------------,------------------,------------------],"
+MISMATCH
+expected:" 6437108487"
+ got:" 3602879701896397 6526948044917897 6526960839368211 6397225157"
+MISMATCH
+expected:" 9007199254740992 288230376151711744 144115188075855872"
+ got:" 1125899906842624 144115188075855872 288230376151711744 288230376151711744"
+MISMATCH
+expected:" [----------------, ------------------, ------------------,"
+ got:" [----------------,------------------,------------------,------------------],"
+MISMATCH
+expected:" 7656119366529843 6192254932130529 3096124247511021"
+ got:" 889460926405673 3298018433040731 6596049956676065 13090594603"
+MISMATCH
+expected:""
+ got:" ,"
+MISMATCH
+expected:" 9007199254740992 72057594037927936 36028797018963968 72057594037927936"
+ got:" 4503599627370496 144115188075855872 72057594037927936 144115188075855872"
+MISMATCH
+expected:" [----------------,-----------------,-----------------,- -----------------],"
+ got:" [----------------,------------------,-----------------,- ------------------]"
+MISMATCH
+expected:" 7566047373982433 1564449629916857 782223118465821 3392985215"
+ got:" 3512807709348987 3332937543111511 1666468115930471 1311250569"
+MISMATCH
+expected:" 9007199254740992 288230376151711744 288230376151711744 144115188075855872"
+ got:" 2251799813685248 288230376151711744 288230376151711744 144115188075855872"
+MISMATCH
+expected:" 7475975381435023 6324005037069477 6324016963475123 5963202823"
+ got:" 1733885856537641 6736433882304961 6736436170074199 1143884619"
+MISMATCH
+expected:" 9007199254740992 288230376151711744 288230376151711744 4503599627370496"
+ got:" 4503599627370496 144115188075855872 144115188075855872 36028797018963968"
+MISMATCH
+expected:" [----------------,------------------,------------------,- ----------------],"
+ got:" [----------------,------------------,------------------,-----------------],"
+MISMATCH
+expected:" 7385903388887613 6390960953449519 6390951947661551 140715437"
+ got:" 3422735716801577 3403871038682447 3403874484378251 861423951"
+MISMATCH
+expected:" ,"
+ got:" 4 144115188075855872 288230376151711744 288230376151711744"
+MISMATCH
+expected:" 9007199254740992 144115188075855872 144115188075855872 36028797018963968"
+ got:" [-,------------------,------------------,- ------------------],"
+MISMATCH
+expected:" [----------------,------------------,------------------,- -----------------]"
+ got:" 3 3439914247220219 6879818837142637 9657297801"
+MISMATCH
+expected:" 7295831396340203 3229304311366163 3229298692399463 1404741675"
+ got:" ,"
+MISMATCH
+expected:" 9007199254740992 288230376151711744 72057594037927936 288230376151711744"
+ got:" 4503599627370496 36028797018963968 144115188075855872 144115188075855872"
+MISMATCH
+expected:" [----------------,------------------,-----------------,------------------],"
+ got:" [----------------,-----------------,------------------,- ------------------]"
+MISMATCH
+expected:" 7205759403792793 6526948044917897 1631740209842053 12794450315"
+ got:" 3332663724254167 869083038811747 3476326918930911 5236316077"
+MISMATCH
+expected:" 9007199254740992 144115188075855872 144115188075855872 72057594037927936"
+ got:" 2251799813685248 72057594037927936 72057594037927936 9007199254740992"
+MISMATCH
+expected:" [----------------,------------------,------------------,-----------------],"
+ got:" [----------------,-----------------,-----------------,----------------],"
+MISMATCH
+expected:" 7115687411245383 3298018433040731 3298024978338033 3272648651"
+ got:" 1643813863990231 1756562381381377 1756565529928361 393568373"
+MISMATCH
+expected:" ,"
+ got:" 4503599627370496 36028797018963968 288230376151711744 288230376151711744"
+MISMATCH
+expected:" 288230376151711744"
+ got:" [----------------,-----------------,------------------,------------------],"
+MISMATCH
+expected:" - ------------------]"
+ got:" 3242591731706757 887580223201283 7100651918591697 10132981433"
+MISMATCH
+expected:" 2622501137"
+ got:" ,"
+MISMATCH
+expected:" 9007199254740992 144115188075855872 288230376151711744"
+ got:" 1125899906842624 144115188075855872 72057594037927936 144115188075855872"
+MISMATCH
+expected:" [----------------, ------------------, ------------------,"
+ got:" [----------------,------------------,-----------------,- ------------------]"
+MISMATCH
+expected:" 7025615418697973 3332937543111511 6665872463721885"
+ got:" 799388933858263 3587920545374123 1793957889605051 4766164021"
+MISMATCH
+expected:""
+ got:" ,"
+MISMATCH
+expected:" 9007199254740992 288230376151711744 36028797018963968 288230376151711744"
+ got:" 144115188075855872"
+MISMATCH
+expected:" [----------------,------------------,-----------------,------------------],"
+ got:" - ------------------]"
+MISMATCH
+expected:" 6935543426150563 6736433882304961 842054521259275 2287769239"
+ got:" 4582902569"
+MISMATCH
+expected:" 9007199254740992 144115188075855872 288230376151711744 288230376151711744"
+ got:" 4503599627370496 288230376151711744 288230376151711744"
+MISMATCH
+expected:" [----------------,------------------,------------------,------------------],"
+ got:" [----------------, ------------------, ------------------,"
+MISMATCH
+expected:" 6845471433603153 3403871038682447 6807748968756503 6891391609"
+ got:" 3152519739159347 7251818617901837 7251809452096699"
+MISMATCH
+expected:" 4 288230376151711744 288230376151711744 36028797018963968"
+ got:""
+MISMATCH
+expected:" [-,------------------,------------------,- -----------------],"
+ got:" ,"
+MISMATCH
+expected:" 3 6879828494440437 6879818837142637 1207162225"
+ got:" 144115188075855872"
+MISMATCH
+expected:" ,"
+ got:" - ------------------]"
+MISMATCH
+expected:" 288230376151711744"
+ got:" 4543830373"
+MISMATCH
+expected:" - ------------------]"
+ got:" 2251799813685248 288230376151711744 288230376151711744"
+MISMATCH
+expected:" 10472632153"
+ got:" [----------------, ------------------, ------------------,"
+MISMATCH
+expected:" 4503599627370496 288230376151711744 144115188075855872"
+ got:" 1553741871442821 7328603190108653 7328594102447907"
+MISMATCH
+expected:" [----------------, ------------------, ------------------,"
+ got:""
+MISMATCH
+expected:" 3332663724254167 6952664310493975 3476326918930911"
+ got:" ,"
+MISMATCH
+expected:""
+ got:" 288230376151711744"
+MISMATCH
+expected:" 2251799813685248 288230376151711744 72057594037927936 288230376151711744"
+ got:" - ------------------]"
+MISMATCH
+expected:" [----------------,------------------,-----------------,------------------],"
+ got:" 704173991"
+MISMATCH
+expected:" 1643813863990231 7026249525525507 1756565529928361 12594187937"
+ got:" 4503599627370496 144115188075855872 288230376151711744"
+MISMATCH
+expected:" 4503599627370496 36028797018963968 288230376151711744 288230376151711744"
+ got:" [----------------, ------------------, ------------------,"
+MISMATCH
+expected:" [----------------,-----------------,------------------,------------------],"
+ got:" 3062447746611937 3703097403684347 7406194103194703"
+MISMATCH
+expected:" 3242591731706757 887580223201283 7100651918591697 10132981433"
+ got:""
+MISMATCH
+expected:" ,"
+ got:" 562949953421312 144115188075855872 18014398509481984 144115188075855872"
+MISMATCH
+expected:" 1125899906842624 288230376151711744 72057594037927936 288230376151711744"
+ got:" [---------------,------------------,-----------------,- ------------------],"
+MISMATCH
+expected:" [----------------,------------------,-----------------,- ------------------]"
+ got:" 377176468792279 3742311146359787 467788633745481 2076395939"
+MISMATCH
+expected:" 799388933858263 7175841090748245 1793957889605051 9532328041"
+ got:" ,"
+MISMATCH
+expected:" ,"
+ got:" 288230376151711744"
+MISMATCH
+expected:" 144115188075855872"
+ got:" - ------------------]"
+MISMATCH
+expected:" - ------------------]"
+ got:" 10655067977"
+MISMATCH
+expected:" 4582902569"
+ got:" 4503599627370496 288230376151711744 144115188075855872"
+MISMATCH
+expected:" 4503599627370496 288230376151711744 288230376151711744"
+ got:" [----------------, ------------------, ------------------,"
+MISMATCH
+expected:" [----------------, ------------------, ------------------,"
+ got:" 2972375754064527 7563885646161295 3781937495546659"
+MISMATCH
+expected:" 3152519739159347 7251818617901837 7251809452096699"
+ got:""
+MISMATCH
+expected:""
+ got:" 2251799813685248 9007199254740992 288230376151711744 288230376151711744"
+MISMATCH
+expected:" ,"
+ got:" [----------------,----------------,------------------,- ------------------],"
+MISMATCH
+expected:" 144115188075855872"
+ got:" 1463669878895411 238874527115433 7643973528990551 11338703305"
+MISMATCH
+expected:" - ------------------]"
+ got:" 4503599627370496 36028797018963968 288230376151711744 288230376151711744"
+MISMATCH
+expected:" 4543830373"
+ got:" [----------------,-----------------,------------------,------------------],"
+MISMATCH
+expected:" 2251799813685248 288230376151711744 288230376151711744"
+ got:" 2882303761517117 965614994664657 7724922720778403 2763461147"
+MISMATCH
+expected:" [----------------, ------------------, ------------------,"
+ got:" 1125899906842624 36028797018963968 288230376151711744 288230376151711744"
+MISMATCH
+expected:" 1553741871442821 7328603190108653 7328594102447907"
+ got:" [----------------,-----------------,------------------,------------------],"
+MISMATCH
+expected:""
+ got:" 709316941310853 975839967258639 7806731629494243 11891425131"
+MISMATCH
+expected:" ,"
+ got:" 9007199254740992 144115188075855872 144115188075855872 9007199254740992"
+MISMATCH
+expected:" 144115188075855872"
+ got:" [----------------,------------------,------------------,- ----------------],"
+MISMATCH
+expected:" - ------------------]"
+ got:" 5584463537939415 3944706516493519 3944704707541567 113059497"
+MISMATCH
+expected:" 352086995"
+ got:" ,"
+MISMATCH
+expected:" 4503599627370496 288230376151711744 288230376151711744"
+ got:" 9007199254740992 72057594037927936 288230376151711744 288230376151711744"
+MISMATCH
+expected:" [----------------, ------------------, ------------------,"
+ got:" [----------------,-----------------,------------------,- ------------------]"
+MISMATCH
+expected:" 3062447746611937 7406194807368693 7406194103194703"
+ got:" 5494391545392005 1993242754758355 7972965335438253 5683595167"
+MISMATCH
+expected:""
+ got:" ,"
+MISMATCH
+expected:" 562949953421312 144115188075855872 18014398509481984 144115188075855872"
+ got:" 9007199254740992 288230376151711744 18014398509481984 288230376151711744"
+MISMATCH
+expected:" [---------------,------------------,-----------------,- ------------------],"
+ got:" [----------------,------------------,-----------------,- ------------------]"
+MISMATCH
+expected:" 377176468792279 3742311146359787 467788633745481 2076395939"
+ got:" 5404319552844595 8057422519245871 503588046715783 13771793343"
+MISMATCH
+expected:" ,"
+ got:" 9007199254740992 144115188075855872 72057594037927936 144115188075855872"
+MISMATCH
+expected:" 288230376151711744"
+ got:" [----------------,------------------,-----------------,------------------],"
+MISMATCH
+expected:" - ------------------]"
+ got:" 5314247560297185 4071369355293389 2035687277020413 5198747437"
+MISMATCH
+expected:" 10655067977"
+ got:" ,"
+MISMATCH
+expected:" 4503599627370496 288230376151711744 144115188075855872"
+ got:" 9007199254740992 288230376151711744 288230376151711744 72057594037927936"
+MISMATCH
+expected:" [----------------, ------------------, ------------------,"
+ got:" [----------------,------------------,------------------,- -----------------]"
+MISMATCH
+expected:" 2972375754064527 7563885646161295 3781937495546659"
+ got:" 5224175567749775 8229006062168985 8228995975418509 2521687619"
+MISMATCH
+expected:""
+ got:" ,"
+MISMATCH
+expected:" 2251799813685248 9007199254740992 288230376151711744 288230376151711744"
+ got:" 9007199254740992 288230376151711744 72057594037927936 288230376151711744"
+MISMATCH
+expected:" [----------------,----------------,------------------,- ------------------],"
+ got:" [----------------,------------------,-----------------,- ------------------]"
+MISMATCH
+expected:" 1463669878895411 238874527115433 7643973528990551 11338703305"
+ got:" 5134103575202365 8316166927917263 2079039752444813 7918138011"
+MISMATCH
+expected:" 4503599627370496 36028797018963968 288230376151711744 288230376151711744"
+ got:" ,"
+MISMATCH
+expected:" [----------------,-----------------,------------------,------------------],"
+ got:" 288230376151711744"
+MISMATCH
+expected:" 2882303761517117 965614994664657 7724922720778403 2763461147"
+ got:" - ------------------]"
+MISMATCH
+expected:" 1125899906842624 36028797018963968 288230376151711744 288230376151711744"
+ got:" 2156068169"
+MISMATCH
+expected:" [----------------,-----------------,------------------,------------------],"
+ got:" 2251799813685248 144115188075855872 288230376151711744"
+MISMATCH
+expected:" 709316941310853 975839967258639 7806731629494243 11891425131"
+ got:" [----------------, ------------------, ------------------,"
+MISMATCH
+expected:" 9007199254740992 144115188075855872 144115188075855872 9007199254740992"
+ got:" 1261007895663739 4202125065434613 8404247974801057"
+MISMATCH
+expected:" [----------------,------------------,------------------,- ----------------],"
+ got:""
+MISMATCH
+expected:" 5584463537939415 3944706516493519 3944704707541567 113059497"
+ got:" ,"
+MISMATCH
+expected:" ,"
+ got:" 288230376151711744"
+MISMATCH
+expected:" 144115188075855872"
+ got:" - ------------------]"
+MISMATCH
+expected:" - ------------------]"
+ got:" 11755510763"
+MISMATCH
+expected:" 2841797583"
+ got:" 4503599627370496 144115188075855872 288230376151711744"
+MISMATCH
+expected:" 9007199254740992 288230376151711744 288230376151711744"
+ got:" [----------------, ------------------, ------------------,"
+MISMATCH
+expected:" [----------------, ------------------, ------------------,"
+ got:" 2476979795053773 4246642247031245 8493272738551727"
+MISMATCH
+expected:" 5494391545392005 7972971019033419 7972965335438253"
+ got:""
+MISMATCH
+expected:""
+ got:" 1125899906842624 288230376151711744 288230376151711744 144115188075855872"
+MISMATCH
+expected:" ,"
+ got:" [----------------,------------------,------------------,------------------],"
+MISMATCH
+expected:" 9007199254740992 288230376151711744 18014398509481984 288230376151711744"
+ got:" 607985949695017 8583241194459439 8583243274651285 1040095923"
+MISMATCH
+expected:" [----------------,------------------,-----------------,- ------------------]"
+ got:" ,"
+MISMATCH
+expected:" 5404319552844595 8057422519245871 503588046715783 13771793343"
+ got:" 4503599627370496 36028797018963968 288230376151711744 288230376151711744"
+MISMATCH
+expected:" 9007199254740992 144115188075855872 72057594037927936 144115188075855872"
+ got:" [----------------,-----------------,------------------,- ------------------]"
+MISMATCH
+expected:" [----------------,------------------,-----------------,------------------],"
+ got:" 2386907802506363 1084272234766913 8674169663405653 8214729651"
+MISMATCH
+expected:" 5314247560297185 4071369355293389 2035687277020413 5198747437"
+ got:" 2251799813685248 144115188075855872 281474976710656 144115188075855872"
+MISMATCH
+expected:" ,"
+ got:" [----------------,------------------,---------------,- ------------------],"
+MISMATCH
+expected:" 9007199254740992 288230376151711744 288230376151711744 72057594037927936"
+ got:" 1170935903116329 4383032861026235 8560607512649 1814549947"
+MISMATCH
+expected:" [----------------,------------------,------------------,- -----------------]"
+ got:" ,"
+MISMATCH
+expected:" 5224175567749775 8229006062168985 8228995975418509 2521687619"
+ got:" 144115188075855872"
+MISMATCH
+expected:" ,"
+ got:" - ------------------]"
+MISMATCH
+expected:" 9007199254740992 288230376151711744 72057594037927936 288230376151711744"
+ got:" 1344414329"
+MISMATCH
+expected:" [----------------,------------------,-----------------,- ------------------]"
+ got:" 4503599627370496 288230376151711744 288230376151711744"
+MISMATCH
+expected:" 5134103575202365 8316166927917263 2079039752444813 7918138011"
+ got:" [----------------, ------------------, ------------------,"
+MISMATCH
+expected:" ,"
+ got:" 2296835809958953 8858933549248551 8858930860419893"
+MISMATCH
+expected:" 288230376151711744"
+ got:""
+MISMATCH
+expected:" - ------------------]"
+ got:" 2 72057594037927936 144115188075855872 144115188075855872"
+MISMATCH
+expected:" 2156068169"
+ got:" [-,-----------------,------------------,------------------],"
+MISMATCH
+expected:" 9007199254740992 144115188075855872 288230376151711744"
+ got:" 1 2238195339930887 4476393186548175 2506686401"
+MISMATCH
+expected:" [----------------, ------------------, ------------------,"
+ got:" 4503599627370496 72057594037927936 144115188075855872 144115188075855872"
+MISMATCH
+expected:" 5044031582654955 4202125065434613 8404247974801057"
+ got:" [----------------,-----------------,------------------,------------------],"
+MISMATCH
+expected:""
+ got:" 2206763817411543 2261909494128769 4523819574807495 586549957"
+MISMATCH
+expected:" ,"
+ got:" 2251799813685248 9007199254740992 144115188075855872 144115188075855872"
+MISMATCH
+expected:" 9007199254740992 288230376151711744 18014398509481984 288230376151711744"
+ got:" [----------------,----------------,------------------,- ------------------],"
+MISMATCH
+expected:" [----------------,------------------,-----------------,- ------------------]"
+ got:" 1080863910568919 285734481238223 4571749910574687 1789236881"
+MISMATCH
+expected:" 4953959590107545 8493284494062489 530829546159483 11755510761"
+ got:" 4503599627370496 144115188075855872 144115188075855872 72057594037927936"
+MISMATCH
+expected:" 9007199254740992 288230376151711744 288230376151711744 36028797018963968"
+ got:" [----------------,------------------,------------------,-----------------],"
+MISMATCH
+expected:" [----------------,------------------,------------------,-----------------],"
+ got:" 2116691824864133 4620188814523863 4620189566311337 375893737"
+MISMATCH
+expected:" 4863887597560135 8583241194459439 8583243274651287 260023981"
+ got:" 1125899906842624 9007199254740992 18014398509481984 18014398509481984"
+MISMATCH
+expected:" ,"
+ got:" [----------------,----------------,-----------------,- -----------------],"
+MISMATCH
+expected:" 9007199254740992 36028797018963968 288230376151711744 288230376151711744"
+ got:" 517913957147607 291821546494577 583642996495615 96493539"
+MISMATCH
+expected:" [----------------,-----------------,------------------,- ------------------]"
+ got:" ,"
+MISMATCH
+expected:" 4773815605012725 1084272234766913 8674169663405655 8214729649"
+ got:" 4503599627370496 18014398509481984 144115188075855872 144115188075855872"
+MISMATCH
+expected:" 9007199254740992 288230376151711744 281474976710656 288230376151711744"
+ got:" [----------------,-----------------,------------------,- ------------------]"
+MISMATCH
+expected:" [----------------,------------------,---------------,- ------------------],"
+ got:" 2026619832316723 589827435997459 4718618615586477 872393195"
+MISMATCH
+expected:" 4683743612465315 8766065722052469 8560607512649 3629099893"
+ got:" 2251799813685248 144115188075855872 36028797018963968 144115188075855872"
+MISMATCH
+expected:" ,"
+ got:" [----------------,------------------,-----------------,------------------],"
+MISMATCH
+expected:" 9007199254740992 288230376151711744 288230376151711744 18014398509481984"
+ got:" 990791918021509 4768613046723187 1192154760988739 5997231769"
+MISMATCH
+expected:" [----------------,------------------,------------------,- -----------------]"
+ got:" ,"
+MISMATCH
+expected:" 4593671619917905 8858933549248551 8858930860419895 168051791"
+ got:" 144115188075855872"
+MISMATCH
+expected:" 2 72057594037927936 144115188075855872 144115188075855872"
+ got:" - ------------------]"
+MISMATCH
+expected:" [-,-----------------,------------------,------------------],"
+ got:" 3379973089"
+MISMATCH
+expected:" 1 2238195339930887 4476393186548175 2506686401"
+ got:" 18014398509481984 72057594037927936 144115188075855872"
+MISMATCH
+expected:" 4503599627370496 72057594037927936 144115188075855872 144115188075855872"
+ got:" [-----------------, -----------------, ------------------,"
+MISMATCH
+expected:" [----------------,-----------------,------------------,------------------],"
+ got:" 7746191359077253 2409577121590695 4819150863208301"
+MISMATCH
+expected:" 2206763817411543 2261909494128769 4523819574807495 586549957"
+ got:""
+MISMATCH
+expected:" 2251799813685248 9007199254740992 144115188075855872 144115188075855872"
+ got:" 18014398509481984 72057594037927936 144115188075855872 144115188075855872"
+MISMATCH
+expected:" [----------------,----------------,------------------,- ------------------],"
+ got:" [-----------------,-----------------,------------------,------------------],"
+MISMATCH
+expected:" 1080863910568919 285734481238223 4571749910574687 1789236881"
+ got:" 7566047373982433 2435107127158333 4870219739481359 5485164693"
+MISMATCH
+expected:" 4503599627370496 144115188075855872 144115188075855872 72057594037927936"
+ got:" ,"
+MISMATCH
+expected:" [----------------,------------------,------------------,-----------------],"
+ got:" 18014398509481984 144115188075855872 2251799813685248 144115188075855872"
+MISMATCH
+expected:" 2116691824864133 4620188814523863 4620189566311337 375893737"
+ got:" [-----------------,------------------,----------------,- ------------------]"
+MISMATCH
+expected:" ,"
+ got:" 7385903388887613 4921836314685437 76903615617979 4915134781"
+MISMATCH
+expected:" 1125899906842624 144115188075855872 18014398509481984 144115188075855872"
+ got:" 9007199254740992 72057594037927936 36028797018963968 72057594037927936"
+MISMATCH
+expected:" [----------------,------------------,-----------------,- ------------------]"
+ got:" [----------------,-----------------,-----------------,-----------------],"
+MISMATCH
+expected:" 517913957147607 4669144743913231 583642996495615 771948311"
+ got:" 3602879701896397 2486995800625045 1243497907871539 15118033"
+MISMATCH
+expected:" 4503599627370496 18014398509481984 144115188075855872 144115188075855872"
+ got:" 9007199254740992 72057594037927936 144115188075855872 144115188075855872"
+MISMATCH
+expected:" 2026619832316723 589827435997459 4718618615586477 872393195"
+ got:" 3512807709348987 2513354468524119 5026706285310053 2651738185"
+MISMATCH
+expected:" 2251799813685248 144115188075855872 36028797018963968 144115188075855872"
+ got:" ,"
+MISMATCH
+expected:" [----------------,------------------,-----------------,------------------],"
+ got:" 9007199254740992 72057594037927936 144115188075855872 144115188075855872"
+MISMATCH
+expected:" 990791918021509 4768613046723187 1192154760988739 5997231769"
+ got:" [----------------,-----------------,------------------,- ------------------]"
+MISMATCH
+expected:" ,"
+ got:" 3422735716801577 2539994161039941 5079981273662669 7048417213"
+MISMATCH
+expected:" 144115188075855872"
+ got:" ,"
+MISMATCH
+expected:" - ------------------]"
+ got:" 9007199254740992 144115188075855872 144115188075855872 18014398509481984"
+MISMATCH
+expected:" 3379973089"
+ got:" [----------------,------------------,------------------,- -----------------]"
+MISMATCH
+expected:" 18014398509481984 72057594037927936 144115188075855872"
+ got:" 3332663724254167 5133829756345021 5133822572475557 897983683"
+MISMATCH
+expected:" [-----------------, -----------------, ------------------,"
+ got:" 9007199254740992 18014398509481984 72057594037927936 72057594037927936"
+MISMATCH
+expected:" 7746191359077253 2409577121590695 4819150863208301"
+ got:" [----------------,-----------------,-----------------,-----------------],"
+MISMATCH
+expected:""
+ got:" 3242591731706757 648529154980457 2594118110825931 1490904103"
+MISMATCH
+expected:" 18014398509481984 144115188075855872 144115188075855872 72057594037927936"
+ got:" 9007199254740992 36028797018963968 144115188075855872 144115188075855872"
+MISMATCH
+expected:" [-----------------,------------------,------------------,-----------------],"
+ got:" [----------------,-----------------,------------------,------------------],"
+MISMATCH
+expected:" 7566047373982433 4870214254316665 4870219739481359 2742582347"
+ got:" 3152519739159347 1310806898903351 5243228325754049 730140645"
+MISMATCH
+expected:" ,"
+ got:" 9007199254740992 72057594037927936 72057594037927936 36028797018963968"
+MISMATCH
+expected:" 18014398509481984 144115188075855872 2251799813685248 144115188075855872"
+ got:" [----------------,-----------------,-----------------,-----------------],"
+MISMATCH
+expected:" [-----------------,------------------,----------------,- ------------------]"
+ got:" 3062447746611937 2649399206067727 2649402527349517 1660640895"
+MISMATCH
+expected:" 7385903388887613 4921836314685437 76903615617979 4915134781"
+ got:" ,"
+MISMATCH
+expected:" 18014398509481984 144115188075855872 36028797018963968 144115188075855872"
+ got:" 9007199254740992 72057594037927936 144115188075855872 144115188075855872"
+MISMATCH
+expected:" [-----------------,------------------,-----------------,------------------],"
+ got:" [----------------,-----------------,------------------,- ------------------]"
+MISMATCH
+expected:" 7205759403792793 4973991601250089 1243497907871539 30236067"
+ got:" 2972375754064527 2677487256223711 5354972644460849 1867986573"
+MISMATCH
+expected:" 144115188075855872"
+ got:" 9007199254740992 72057594037927936 144115188075855872 144115188075855872"
+MISMATCH
+expected:" - ------------------]"
+ got:" [----------------,-----------------,------------------,- ------------------]"
+MISMATCH
+expected:" 2651738183"
+ got:" 2882303761517117 2705870742515251 5411737397780889 4087249613"
+MISMATCH
+expected:" 18014398509481984 144115188075855872 72057594037927936"
+ got:" 18014398509481984 36028797018963968 144115188075855872 144115188075855872"
+MISMATCH
+expected:" [-----------------, ------------------, -----------------,"
+ got:" [-----------------,-----------------,------------------,------------------],"
+MISMATCH
+expected:" 7025615418697973 5026708937048237 2513353142655027"
+ got:" 5584463537939415 1367274832471173 5469105684885827 6355001135"
+MISMATCH
+expected:""
+ got:" 18014398509481984 144115188075855872 144115188075855872 36028797018963968"
+MISMATCH
+expected:" ,"
+ got:" [-----------------,------------------,------------------,-----------------],"
+MISMATCH
+expected:" 144115188075855872"
+ got:" 5404319552844595 5527076870047609 5527083944213301 1768541423"
+MISMATCH
+expected:" - ------------------]"
+ got:" 18014398509481984 36028797018963968 72057594037927936 72057594037927936"
+MISMATCH
+expected:" 7048417211"
+ got:" [-----------------,-----------------,-----------------,-----------------],"
+MISMATCH
+expected:" 18014398509481984 144115188075855872 72057594037927936"
+ got:" 5224175567749775 1396418526379813 2792839341572711 2288813085"
+MISMATCH
+expected:" [-----------------, ------------------, -----------------,"
+ got:" 4503599627370496 144115188075855872 72057594037927936 144115188075855872"
+MISMATCH
+expected:" 6845471433603153 5079988322079881 2539990636831335"
+ got:" [----------------,------------------,-----------------,------------------],"
+MISMATCH
+expected:""
+ got:" 1261007895663739 5644891036299621 2822448239375115 5442450609"
+MISMATCH
+expected:" ,"
+ got:" 2251799813685248 36028797018963968 144115188075855872 144115188075855872"
+MISMATCH
+expected:" 9007199254740992 144115188075855872 144115188075855872 18014398509481984"
+ got:" [----------------,-----------------,------------------,------------------],"
+MISMATCH
+expected:" [----------------,------------------,------------------,- -----------------]"
+ got:" 607985949695017 1426185518476881 5704743978531149 1904623625"
+MISMATCH
+expected:" 3332663724254167 5133829756345021 5133822572475557 897983683"
+ got:" 4503599627370496 144115188075855872 72057594037927936 144115188075855872"
+MISMATCH
+expected:" 9007199254740992 18014398509481984 72057594037927936 72057594037927936"
+ got:" [----------------,------------------,-----------------,------------------],"
+MISMATCH
+expected:" [----------------,-----------------,-----------------,-----------------],"
+ got:" 1170935903116329 5765227218342961 2882613950592275 682841589"
+MISMATCH
+expected:" 3242591731706757 648529154980457 2594118110825931 1490904103"
+ got:" 4 144115188075855872 144115188075855872 72057594037927936"
+MISMATCH
+expected:" 9007199254740992 144115188075855872 144115188075855872 72057594037927936"
+ got:" [-,------------------,------------------,- -----------------],"
+MISMATCH
+expected:" [----------------,------------------,------------------,-----------------],"
+ got:" 1 5826360881124739 5826355037365493 2921879623"
+MISMATCH
+expected:" 3152519739159347 5243227595613403 5243228325754049 365070323"
+ got:" 4503599627370496 72057594037927936 18014398509481984 72057594037927936"
+MISMATCH
+expected:" 9007199254740992 144115188075855872 72057594037927936 144115188075855872"
+ got:" [----------------,-----------------,-----------------,-----------------],"
+MISMATCH
+expected:" [----------------,------------------,-----------------,------------------],"
+ got:" 1080863910568919 2944064325367025 736016531307719 1799863851"
+MISMATCH
+expected:" 3062447746611937 5298798412135453 2649402527349517 6642563581"
+ got:" 2251799813685248 70368744177664 144115188075855872 144115188075855872"
+MISMATCH
+expected:" ,"
+ got:" [----------------,--------------,------------------,------------------],"
+MISMATCH
+expected:" 9007199254740992 72057594037927936 144115188075855872 144115188075855872"
+ got:" 517913957147607 2905546557719 5950566477376213 7127167701"
+MISMATCH
+expected:" [----------------,-----------------,------------------,- ------------------]"
+ got:" 4503599627370496 9007199254740992 72057594037927936 72057594037927936"
+MISMATCH
+expected:" 2972375754064527 2677487256223711 5354972644460849 1867986573"
+ got:" [----------------,----------------,-----------------,- -----------------],"
+MISMATCH
+expected:" ,"
+ got:" 990791918021509 375854211941683 3006832364658857 1330874607"
+MISMATCH
+expected:" 9007199254740992 144115188075855872 144115188075855872 36028797018963968"
+ got:" ,"
+MISMATCH
+expected:" [----------------,------------------,------------------,- -----------------]"
+ got:" 144115188075855872"
+MISMATCH
+expected:" 2882303761517117 5411741485030501 5411737397780889 1021812403"
+ got:" - ------------------]"
+MISMATCH
+expected:" 18014398509481984 36028797018963968 144115188075855872 144115188075855872"
+ got:" 4269190041"
+MISMATCH
+expected:" [-----------------,-----------------,------------------,------------------],"
+ got:" 36028797018963968 144115188075855872 72057594037927936"
+MISMATCH
+expected:" 5584463537939415 1367274832471173 5469105684885827 6355001135"
+ got:" [-----------------, ------------------, -----------------,"
+MISMATCH
+expected:" 18014398509481984 144115188075855872 144115188075855872 36028797018963968"
+ got:" 7566047373982433 6077438361790495 3038717046300227"
+MISMATCH
+expected:" [-----------------,------------------,------------------,-----------------],"
+ got:""
+MISMATCH
+expected:" 5404319552844595 5527076870047609 5527083944213301 1768541423"
+ got:" 18014398509481984 72057594037927936 72057594037927936 18014398509481984"
+MISMATCH
+expected:" 18014398509481984 36028797018963968 72057594037927936 72057594037927936"
+ got:" [-----------------,-----------------,-----------------,- -----------------],"
+MISMATCH
+expected:" [-----------------,-----------------,-----------------,-----------------],"
+ got:" 3602879701896397 3070943336949009 3070940864726013 618055749"
+MISMATCH
+expected:" 5224175567749775 1396418526379813 2792839341572711 2288813085"
+ got:" 18014398509481984 144115188075855872 144115188075855872 72057594037927936"
+MISMATCH
+expected:" 18014398509481984 144115188075855872 72057594037927936 144115188075855872"
+ got:" [-----------------,------------------,------------------,-----------------],"
+MISMATCH
+expected:" [-----------------,------------------,-----------------,------------------],"
+ got:" 3422735716801577 6207012327389497 6207014878830203 1275720353"
+MISMATCH
+expected:" 5044031582654955 5644891036299621 2822448239375115 5442450609"
+ got:" 18014398509481984 36028797018963968 4503599627370496 36028797018963968"
+MISMATCH
+expected:" 18014398509481984 36028797018963968 72057594037927936 72057594037927936"
+ got:" [-----------------,-----------------,----------------,- -----------------],"
+MISMATCH
+expected:" [-----------------,-----------------,-----------------,-----------------],"
+ got:" 3242591731706757 1568211036325637 196026276789017 822013501"
+MISMATCH
+expected:" 4863887597560135 1426185518476881 2852371989265575 952311813"
+ got:" ,"
+MISMATCH
+expected:" 18014398509481984 144115188075855872 144115188075855872 72057594037927936"
+ got:" 72057594037927936"
+MISMATCH
+expected:" [-----------------,------------------,------------------,-----------------],"
+ got:" - -----------------]"
+MISMATCH
+expected:" 4683743612465315 5765227218342961 5765227901184551 341420795"
+ got:" 328253711"
+MISMATCH
+expected:" 4 144115188075855872 144115188075855872 72057594037927936"
+ got:" 18014398509481984 144115188075855872 144115188075855872"
+MISMATCH
+expected:" [-,------------------,------------------,- -----------------],"
+ got:" [-----------------, ------------------, ------------------,"
+MISMATCH
+expected:" 1 5826360881124739 5826355037365493 2921879623"
+ got:" 3062447746611937 6339367716118363 6339367059610941"
+MISMATCH
+expected:" 4503599627370496 72057594037927936 18014398509481984 72057594037927936"
+ got:""
+MISMATCH
+expected:" [----------------,-----------------,-----------------,-----------------],"
+ got:" 18014398509481984 72057594037927936 72057594037927936 36028797018963968"
+MISMATCH
+expected:" 1080863910568919 2944064325367025 736016531307719 1799863851"
+ got:" [-----------------,-----------------,-----------------,-----------------],"
+MISMATCH
+expected:" 2251799813685248 144115188075855872 144115188075855872 72057594037927936"
+ got:" 2882303761517117 3203298725677875 3203300480027585 877174855"
+MISMATCH
+expected:" [----------------,------------------,------------------,-----------------],"
+ got:" 36028797018963968 36028797018963968 72057594037927936 72057594037927936"
+MISMATCH
+expected:" 517913957147607 5950559350208511 5950566477376213 3563583851"
+ got:" [-----------------,-----------------,-----------------,-----------------],"
+MISMATCH
+expected:" 4503599627370496 9007199254740992 72057594037927936 72057594037927936"
+ got:" 5404319552844595 1618636940633379 3237275056402795 1175136037"
+MISMATCH
+expected:" [----------------,----------------,-----------------,- -----------------],"
+ got:" 9007199254740992 144115188075855872 144115188075855872 72057594037927936"
+MISMATCH
+expected:" 990791918021509 375854211941683 3006832364658857 1330874607"
+ got:" [----------------,------------------,------------------,-----------------],"
+MISMATCH
+expected:" ,"
+ got:" 1261007895663739 6543218649651661 6543222153035051 1751691695"
+MISMATCH
+expected:" 144115188075855872"
+ got:" 9007199254740992 72057594037927936 72057594037927936 36028797018963968"
+MISMATCH
+expected:" - ------------------]"
+ got:" [----------------,-----------------,-----------------,-----------------],"
+MISMATCH
+expected:" 4269190041"
+ got:" 1170935903116329 3306312262114497 3306312398868059 68376781"
+MISMATCH
+expected:" 36028797018963968 144115188075855872 72057594037927936"
+ got:" 9007199254740992 18014398509481984 36028797018963968 36028797018963968"
+MISMATCH
+expected:" [-----------------, ------------------, -----------------,"
+ got:" [----------------,-----------------,-----------------,-----------------],"
+MISMATCH
+expected:" 7566047373982433 6077438361790495 3038717046300227"
+ got:" 1080863910568919 835345673283189 1670691461650435 115084057"
+MISMATCH
+expected:""
+ got:" 9007199254740992 72057594037927936 4503599627370496 72057594037927936"
+MISMATCH
+expected:" ,"
+ got:" [----------------,-----------------,----------------,- -----------------],"
+MISMATCH
+expected:" 144115188075855872"
+ got:" 990791918021509 3376827823640013 211051661966107 1232182301"
+MISMATCH
+expected:" - ------------------]"
+ got:" ,"
+MISMATCH
+expected:" 4944445991"
+ got:" 144115188075855872"
+MISMATCH
+expected:" 36028797018963968 144115188075855872 72057594037927936"
+ got:" - ------------------]"
+MISMATCH
+expected:" [-----------------, ------------------, -----------------,"
+ got:" 532821479"
+MISMATCH
+expected:" 7205759403792793 6141886673898017 3070940864726013"
+ got:" 36028797018963968 72057594037927936 144115188075855872"
+MISMATCH
+expected:""
+ got:" [-----------------, -----------------, ------------------,"
+MISMATCH
+expected:" 36028797018963968 144115188075855872 144115188075855872 72057594037927936"
+ got:" 3602879701896397 3412647653636267 6825294774451055"
+MISMATCH
+expected:" [-----------------,------------------,------------------,-----------------],"
+ got:""
+MISMATCH
+expected:" 6845471433603153 6207012327389497 6207014878830203 1275720353"
+ got:" ,"
+MISMATCH
+expected:" 18014398509481984 36028797018963968 4503599627370496 36028797018963968"
+ got:" 144115188075855872"
+MISMATCH
+expected:" [-----------------,-----------------,----------------,- -----------------],"
+ got:" - ------------------]"
+MISMATCH
+expected:" 3242591731706757 1568211036325637 196026276789017 822013501"
+ got:" 103379403"
+MISMATCH
+expected:" ,"
+ got:" 36028797018963968 36028797018963968 144115188075855872"
+MISMATCH
+expected:" 72057594037927936"
+ got:" [-----------------, -----------------, ------------------,"
+MISMATCH
+expected:" - -----------------]"
+ got:" 3242591731706757 1724424694440461 6897698674382441"
+MISMATCH
+expected:" 328253711"
+ got:""
+MISMATCH
+expected:" 18014398509481984 144115188075855872 144115188075855872"
+ got:" 36028797018963968 36028797018963968 9007199254740992 36028797018963968"
+MISMATCH
+expected:" [-----------------, ------------------, ------------------,"
+ got:" [-----------------,-----------------,----------------,- -----------------],"
+MISMATCH
+expected:" 3062447746611937 6339367716118363 6339367059610941"
+ got:" 2882303761517117 1742720117566691 435679563887669 1862016015"
+MISMATCH
+expected:""
+ got:" 18014398509481984 144115188075855872 144115188075855872 72057594037927936"
+MISMATCH
+expected:" 18014398509481984 72057594037927936 72057594037927936 36028797018963968"
+ got:" [-----------------,------------------,------------------,-----------------],"
+MISMATCH
+expected:" [-----------------,-----------------,-----------------,-----------------],"
+ got:" 1261007895663739 7044825973268485 7044826044653627 35692571"
+MISMATCH
+expected:" 2882303761517117 3203298725677875 3203300480027585 877174855"
+ got:" 18014398509481984 9007199254740992 72057594037927936 72057594037927936"
+MISMATCH
+expected:" 36028797018963968 36028797018963968 72057594037927936 72057594037927936"
+ got:" [-----------------,----------------,-----------------,-----------------],"
+MISMATCH
+expected:" [-----------------,-----------------,-----------------,-----------------],"
+ got:" 1080863910568919 444972756862789 3559783028332517 973430205"
+MISMATCH
+expected:" 5404319552844595 1618636940633379 3237275056402795 1175136037"
+ got:" 72057594037927936 36028797018963968 144115188075855872 144115188075855872"
+MISMATCH
+expected:" 36028797018963968 144115188075855872 144115188075855872 72057594037927936"
+ got:" [-----------------,-----------------,------------------,------------------],"
+MISMATCH
+expected:" [-----------------,------------------,------------------,-----------------],"
+ got:" 3602879701896397 1798773719968795 7195101462304363 6582429183"
+MISMATCH
+expected:" 5044031582654955 6543218649651661 6543222153035051 1751691695"
+ got:" ,"
+MISMATCH
+expected:" 36028797018963968 144115188075855872 72057594037927936 144115188075855872"
+ got:" 144115188075855872"
+MISMATCH
+expected:" [-----------------,------------------,-----------------,------------------],"
+ got:" - ------------------]"
+MISMATCH
+expected:" 4683743612465315 6612624524228993 3306312398868059 273507125"
+ got:" 6350781267"
+MISMATCH
+expected:" 9007199254740992 18014398509481984 36028797018963968 36028797018963968"
+ got:" 72057594037927936 18014398509481984 144115188075855872"
+MISMATCH
+expected:" [----------------,-----------------,-----------------,-----------------],"
+ got:" [-----------------, -----------------, ------------------,"
+MISMATCH
+expected:" 1080863910568919 835345673283189 1670691461650435 115084057"
+ got:" 2882303761517117 908930888314721 7271440755736501"
+MISMATCH
+expected:" 9007199254740992 72057594037927936 4503599627370496 72057594037927936"
+ got:""
+MISMATCH
+expected:" [----------------,-----------------,----------------,- -----------------],"
+ got:" 36028797018963968 72057594037927936 144115188075855872 144115188075855872"
+MISMATCH
+expected:" 990791918021509 3376827823640013 211051661966107 1232182301"
+ got:" [-----------------,-----------------,------------------,------------------],"
+MISMATCH
+expected:" 72057594037927936 72057594037927936 9007199254740992 72057594037927936"
+ got:" 1080863910568919 3674295983347387 7348592522194013 555499239"
+MISMATCH
+expected:" [-----------------,-----------------,----------------,- -----------------],"
+ got:" 144115188075855872 36028797018963968 72057594037927936 72057594037927936"
+MISMATCH
+expected:" 7205759403792793 3412647653636267 426580923403191 266410739"
+ got:" [------------------,-----------------,-----------------,-----------------],"
+MISMATCH
+expected:" ,"
+ got:" 2882303761517117 1856639570860953 3713282719478931 3577757025"
+MISMATCH
+expected:" 144115188075855872"
+ got:" ,"
+MISMATCH
+expected:" - ------------------]"
+ got:" 144115188075855872"
+MISMATCH
+expected:" 103379403"
+ got:" - ------------------]"
+MISMATCH
+expected:" 36028797018963968 36028797018963968 144115188075855872"
+ got:" 6603453733"
+MISMATCH
+expected:" [-----------------, -----------------, ------------------,"
+ got:" 288230376151711744 72057594037927936 144115188075855872"
+MISMATCH
+expected:" 3242591731706757 1724424694440461 6897698674382441"
+ got:" [------------------, -----------------, ------------------,"
+MISMATCH
+expected:""
+ got:" 2882303761517117 3752687439901249 7505368276348765"
+MISMATCH
+expected:" ,"
+ got:" ["
+MISMATCH
+expected:" 36028797018963968 144115188075855872 9007199254740992 144115188075855872"
+ got:" (7)"
+MISMATCH
+expected:" [-----------------,------------------,----------------,- ------------------]"
+ got:""
+MISMATCH
+expected:" 2882303761517117 6970880470266763 435679563887669 7448064059"
+ got:" "
+MISMATCH
+expected:" 72057594037927936 144115188075855872 144115188075855872 72057594037927936"
+ got:"[2.00,0.0064143,En(20,2.00),En(20,2.00)-0.0064143]]]"
+MISMATCH
+expected:" [-----------------,------------------,------------------,-----------------],"
+ got:"[1.99,0.0064820,En(20,1.99),En(20,1.99)-0.0064820],_"
+MISMATCH
+expected:" 5044031582654955 7044825973268485 7044826044653627 35692571"
+ got:"[1.98,0.0065504,En(20,1.98),En(20,1.98)-0.0065504],_"
+MISMATCH
+expected:" 18014398509481984 9007199254740992 72057594037927936 72057594037927936"
+ got:"[1.97,0.0066195,En(20,1.97),En(20,1.97)-0.0066195],_"
+MISMATCH
+expected:" [-----------------,----------------,-----------------,-----------------],"
+ got:"[1.96,0.0066893,En(20,1.96),En(20,1.96)-0.0066893],_"
+MISMATCH
+expected:" 1080863910568919 444972756862789 3559783028332517 973430205"
+ got:"[1.95,0.0067599,En(20,1.95),En(20,1.95)-0.0067599],_"
+MISMATCH
+expected:" ,"
+ got:"[1.94,0.0068312,En(20,1.94),En(20,1.94)-0.0068312],_"
+MISMATCH
+expected:" 144115188075855872 36028797018963968 144115188075855872 144115188075855872"
+ got:"[1.93,0.0069033,En(20,1.93),En(20,1.93)-0.0069033],_"
+MISMATCH
+expected:" [------------------,-----------------,------------------,------------------]"
+ got:"[1.92,0.0069762,En(20,1.92),En(20,1.92)-0.0069762],_"
+MISMATCH
+expected:" 7205759403792793 1798773719968795 7195101462304363 6582429183"
+ got:"[1.91,0.0070498,En(20,1.91),En(20,1.91)-0.0070498],_"
+MISMATCH
+expected:" ,"
+ got:"[1.90,0.0071242,En(20,1.90),En(20,1.90)-0.0071242],_"
+MISMATCH
+expected:" 144115188075855872"
+ got:"[1.89,0.0071993,En(20,1.89),En(20,1.89)-0.0071993],_"
+MISMATCH
+expected:" - ------------------]"
+ got:"[1.88,0.0072753,En(20,1.88),En(20,1.88)-0.0072753],_"
+MISMATCH
+expected:" 6350781267"
+ got:"[1.87,0.0073521,En(20,1.87),En(20,1.87)-0.0073521],_"
+MISMATCH
+expected:" 72057594037927936 18014398509481984 144115188075855872"
+ got:"[1.86,0.0074297,En(20,1.86),En(20,1.86)-0.0074297],_"
+MISMATCH
+expected:" [-----------------, -----------------, ------------------,"
+ got:"[1.85,0.0075081,En(20,1.85),En(20,1.85)-0.0075081],_"
+MISMATCH
+expected:" 2882303761517117 908930888314721 7271440755736501"
+ got:"[1.84,0.0075874,En(20,1.84),En(20,1.84)-0.0075874],_"
+MISMATCH
+expected:""
+ got:"[1.83,0.0076674,En(20,1.83),En(20,1.83)-0.0076674],_"
+MISMATCH
+expected:" 36028797018963968 72057594037927936 144115188075855872 144115188075855872"
+ got:"[1.82,0.0077484,En(20,1.82),En(20,1.82)-0.0077484],_"
+MISMATCH
+expected:" [-----------------,-----------------,------------------,------------------],"
+ got:"[1.81,0.0078302,En(20,1.81),En(20,1.81)-0.0078302],_"
+MISMATCH
+expected:" 1080863910568919 3674295983347387 7348592522194013 555499239"
+ got:"[1.80,0.0079128,En(20,1.80),En(20,1.80)-0.0079128],_"
+MISMATCH
+expected:" 144115188075855872 36028797018963968 72057594037927936 72057594037927936"
+ got:"[1.79,0.0079963,En(20,1.79),En(20,1.79)-0.0079963],_"
+MISMATCH
+expected:" [------------------,-----------------,-----------------,-----------------],"
+ got:"[1.78,0.0080807,En(20,1.78),En(20,1.78)-0.0080807],_"
+MISMATCH
+expected:" 2882303761517117 1856639570860953 3713282719478931 3577757025"
+ got:"[1.77,0.0081660,En(20,1.77),En(20,1.77)-0.0081660],_"
+MISMATCH
+expected:" ,"
+ got:"[1.76,0.0082522,En(20,1.76),En(20,1.76)-0.0082522],_"
+MISMATCH
+expected:" 36028797018963968"
+ got:"[1.75,0.0083394,En(20,1.75),En(20,1.75)-0.0083394],_"
+MISMATCH
+expected:" - -----------------]"
+ got:"[1.74,0.0084274,En(20,1.74),En(20,1.74)-0.0084274],_"
+MISMATCH
+expected:" 1650863433"
+ got:"[1.73,0.0085164,En(20,1.73),En(20,1.73)-0.0085164],_"
+MISMATCH
+expected:" 288230376151711744 144115188075855872 144115188075855872"
+ got:"[1.72,0.0086063,En(20,1.72),En(20,1.72)-0.0086063],_"
+MISMATCH
+expected:" [------------------, ------------------, ------------------,"
+ got:"[1.71,0.0086972,En(20,1.71),En(20,1.71)-0.0086972],_"
+MISMATCH
+expected:" 2882303761517117 7505374879802497 7505368276348765"
+ got:"[1.70,0.0087890,En(20,1.70),En(20,1.70)-0.0087890],_"
+MISMATCH
+expected:" ["
+ got:"[1.69,0.0088818,En(20,1.69),En(20,1.69)-0.0088818],_"
+MISMATCH
+expected:" (7)"
+ got:"[1.68,0.0089756,En(20,1.68),En(20,1.68)-0.0089756],_"
+MISMATCH
+expected:""
+ got:"[1.67,0.0090703,En(20,1.67),En(20,1.67)-0.0090703],_"
+MISMATCH
+expected:" "
+ got:"[1.66,0.0091661,En(20,1.66),En(20,1.66)-0.0091661],_"
+FAILED en 7 of 7
+regression result FAILED 1 of 7 stanzas file en
+
+=========================================================================
+bug 7237:
+
+)d op coerce
+
+
+There are 194 exposed functions called coerce :
+ [1] List(D2) -> D from D if D2 has FIELD and D has AFSPCAT(D2)
+ [2] D -> List(D2) from D if D has AFSPCAT(D2) and D2 has FIELD
+ [3] D1 -> D from D if D has ALGEBRA(D1) and D1 has COMRING
+
+Daly Bug
+ >> System error:
+ D2 is not of type SEQUENCE.
+
+ Continuing to read the file...
+
+--R
+--R
+--RThere are 194 exposed functions called coerce :
+--R [1] List D2 -> D from D if D2 has FIELD and D has AFSPCAT D2
+--R [2] D -> List D2 from D if D has AFSPCAT D2 and D2 has FIELD
+--R [3] D1 -> D from D if D has ALGEBRA D1 and D1 has COMRING
+--R [4] Vector D2 -> AlgebraGivenByStructuralConstants(D2,D3,D4,D5)
+--R from AlgebraGivenByStructuralConstants(D2,D3,D4,D5)
+--R if D2 has FIELD and D5: VECTOR MATRIX D2 and D3: PI and D4
+--R : LIST SYMBOL
+
============================================================================
finalizing nrlib IDPAM
@@ -57,34 +2764,6 @@ warnings 20568:
[4] changeBase: f has no value
=========================================================================
-warnings 20567:
-
->compiling SMTS.spad to SMTS.nrlib
-
- Warnings:
- [1] evalstream: z1 has no value
- [2] addvariable: c2 has no value
- [3] addvariable: n1 has no value
- [4] coefficient: signature of lhs not unique: SMP$(NonNegativeInteger) chosen
- [5] coefficient: z1 has no value
- [6] *: pretendRep -- should replace by @
- [7] *: pretend$ -- should replace by @
- [8] sortmfirst: v2 has no value
- [9] sortmfirst: v1 has no value
- [10] csubst: p1 has no value
- [11] eval: pretend$ -- should replace by @
- [12] subststream: pretend$ -- should replace by @
- [13] comp1: p1 has no value
- [14] differentiate: z1 has no value
- [15] stream: pretendRep -- should replace by @
- [16] *: z1 has no value
- [17] fintegrate: z1 has no value
- [18] integrate: z1 has no value
- [19] coerce: l has no value
- [20] /: z1 has no value
- [21] /: pretend$ -- should replace by @
-
-=========================================================================
nonextend 60076:
>compiling AFFSP.spad to AFFSP.nrlib
@@ -102,18 +2781,6 @@ todo 329:
[1] output: :(OutputForm) -- should replace by pretend
=========================================================================
-bug 7234:
-
->compiling EFULS.spad to EFULS.nrlib
-
- Illegal nrlib
- EFULS.nrlib claims that its constructor name is the package
- ElementaryFunctionsUnivariateLaurentSeries but
- ElementaryFunctionsUnivariateLaurentSeries is already known to be
- the for domain EFULS .
- EFULS abbreviates package ElementaryFunctionsUnivariateLaurentSeries
-
-=========================================================================
nonextend 60075:
>compiling BSTREE.spad to BSTREE.nrlib
@@ -40496,3 +43163,58 @@ bug 7236:
This constructor is exposed in this frame.
Issue )edit NIL to see algebra source code for ELTAB
+=========================================================================
+warnings 20567:
+
+>compiling SMTS.spad to SMTS.nrlib
+
+ Warnings:
+ [1] evalstream: z1 has no value
+ [2] addvariable: c2 has no value
+ [3] addvariable: n1 has no value
+ [4] coefficient: signature of lhs not unique: SMP$(NonNegativeInteger) chosen
+ [5] coefficient: z1 has no value
+ [6] *: pretendRep -- should replace by @
+ [7] *: pretend$ -- should replace by @
+ [8] sortmfirst: v2 has no value
+ [9] sortmfirst: v1 has no value
+ [10] csubst: p1 has no value
+ [11] eval: pretend$ -- should replace by @
+ [12] subststream: pretend$ -- should replace by @
+ [13] comp1: p1 has no value
+ [14] differentiate: z1 has no value
+ [15] stream: pretendRep -- should replace by @
+ [16] *: z1 has no value
+ [17] fintegrate: z1 has no value
+ [18] integrate: z1 has no value
+ [19] coerce: l has no value
+ [20] /: z1 has no value
+ [21] /: pretend$ -- should replace by @
+
+=========================================================================
+bug 7234:
+
+>compiling EFULS.spad to EFULS.nrlib
+
+ Illegal nrlib
+ EFULS.nrlib claims that its constructor name is the package
+ ElementaryFunctionsUnivariateLaurentSeries but
+ ElementaryFunctionsUnivariateLaurentSeries is already known to be
+ the for domain EFULS .
+ EFULS abbreviates package ElementaryFunctionsUnivariateLaurentSeries
+
+=========================================================================
+bug 7239:
+
+NOTE: fix --S to allow ignore on comment
+
+int/input/grpthry.regress
+
+MISMATCH
+expected:" not have a one-dimensional kernel"
+ got:" "
+MISMATCH
+expected:" Random element in generated algebra does"
+ got:"isAbsolutelyIrreducible? ma.1"
+FAILED grpthry 35 of 68 random generation, FAILURE OK.
+
diff --git a/changelog b/changelog
index 163a29d..881a3e3 100644
--- a/changelog
+++ b/changelog
@@ -1,3 +1,19 @@
+20130326 tpd src/axiom-website/patches.html 20130326.01.tpd.patch
+20130326 tpd v103elementaryfunctionsunivariatepuiseuxseries.ps renamed
+20130326 tpd v103elementaryfunctionsunivariatelaurentseries.ps renamed
+20130326 tpd books/bookvol10.3 move EFULS EFUPXS from package to domain
+20130326 tpd books/bookvol10.4 move EFULS EFUPXS from package to domain
+20130326 tpd buglist add bugs found in tests
+20130326 tpd src/input/cmds.input fix failures
+20130326 tpd src/input/complexfactor.input fix failures
+20130326 tpd src/input/r20bugs.input fix failures
+20130326 tpd src/input/richalgebraic000-099.input fix failures
+20130326 tpd src/input/richalgebraic100-199.input fix failures
+20130326 tpd src/input/richalgebraic400-461.input fix failures
+20130326 tpd src/input/richhyper1000-1098.input fix failures
+20130326 tpd src/input/richinvhyper000-099.input fix failures
+20130326 tpd src/input/richlog300-391.input fix failures
+20130326 tpd src/input/richtrig800-899.input fix failures
20130324 tpd src/axiom-website/patches.html 20130324.02.tpd.patch
20130324 tpd books/bookvolbib add references
20130324 jxb src/axiom-website/patches.html 20130324.01.jxb.patch
diff --git a/src/axiom-website/patches.html b/src/axiom-website/patches.html
index d783b80..e86c6e0 100644
--- a/src/axiom-website/patches.html
+++ b/src/axiom-website/patches.html
@@ -4117,5 +4117,7 @@ books/bookvolbib add references
src/input/romanpolynomials.input create POLY(ROMAN)
20130324.02.tpd.patch
books/bookvolbib add references
+20130326.01.tpd.patch
+src/input/* fix failing tests, move EFULS, EFUPXS from package to domain