;ELC   
;;; compiled by amu@mit.edu on Wed Dec 18 01:18:11 1996
;;; from file /afs/sipb.mit.edu/contrib/emacs/packages/calc-2.02e/calc-arith.el
;;; emacs version 19.30.1.
;;; bytecomp version FSF 2.10
;;; optimization is on.
;;; this file uses opcodes which do not exist in Emacs 18.

(if (and (boundp 'emacs-version)
	 (or (and (boundp 'epoch::version) epoch::version)
	     (string-lessp emacs-version "19.29")))
    (error "`calc-arith.el' was compiled for Emacs 19.29 or later"))


(byte-code "!!" [require calc-ext calc-macs] 2)
(defalias 'calc-Need-calc-arith #[nil "" [nil] 1])
(defalias 'calc-min #[(arg) "\"" [calc-do #[nil "$" [calc-binary-op "min" calcFunc-min arg (var inf var-inf)] 5] 1286] 3 nil "P"])
(defalias 'calc-max #[(arg) "\"" [calc-do #[nil "$" [calc-binary-op "max" calcFunc-max arg (neg (var inf var-inf))] 5] 1422] 3 nil "P"])
(defalias 'calc-abs #[(arg) "\"" [calc-do #[nil "#" [calc-unary-op "abs" calcFunc-abs arg] 4] 1532] 3 nil "P"])
(defalias 'calc-idiv #[(arg) "\"" [calc-do #[nil "$" [calc-binary-op "\\" calcFunc-idiv arg 1] 5] 1647] 3 nil "P"])
(defalias 'calc-floor #[(arg) "\"" [calc-do #[nil "    ## ! ##" [calc-is-inverse calc-is-hyperbolic calc-unary-op "ceil" calcFunc-fceil arg calcFunc-ceil "flor" calcFunc-ffloor calcFunc-floor] 4] 1994] 3 nil "P"])
(defalias 'calc-ceiling #[(arg) " \n!" [calc-invert-func calc-floor arg] 2 nil "P"])
(defalias 'calc-round #[(arg) "\"" [calc-do #[nil "    ## ! ##" [calc-is-inverse calc-is-hyperbolic calc-unary-op "trnc" calcFunc-ftrunc arg calcFunc-trunc "rond" calcFunc-fround calcFunc-round] 4] 2431] 3 nil "P"])
(defalias 'calc-trunc #[(arg) " \n!" [calc-invert-func calc-round arg] 2 nil "P"])
(defalias 'calc-mant-part #[(arg) "\"" [calc-do #[nil "#" [calc-unary-op "mant" calcFunc-mant arg] 4] 2636] 3 nil "P"])
(defalias 'calc-xpon-part #[(arg) "\"" [calc-do #[nil "#" [calc-unary-op "xpon" calcFunc-xpon arg] 4] 2754] 3 nil "P"])
(defalias 'calc-scale-float #[(arg) "\"" [calc-do #[nil "#" [calc-binary-op "scal" calcFunc-scf arg] 4] 2874] 3 nil "P"])
(defalias 'calc-abssqr #[(arg) "\"" [calc-do #[nil "#" [calc-unary-op "absq" calcFunc-abssqr arg] 4] 2991] 3 nil "P"])
(defalias 'calc-sign #[(arg) "\"" [calc-do #[nil "#" [calc-unary-op "sign" calcFunc-sign arg] 4] 3104] 3 nil "P"])
(defalias 'calc-increment #[(arg) "!" [calc-do #[nil "!E#" [calc-enter-result 1 "incr" calcFunc-incr calc-top-n arg] 6]] 2 nil "p"])
(defalias 'calc-decrement #[(arg) "!" [calc-do #[nil "!E#" [calc-enter-result 1 "decr" calcFunc-decr calc-top-n arg] 6]] 2 nil "p"])
(defalias 'math-abs-approx #[(a) ":8 @=> @=B @>2 A@:* A@@=; A@W; !; WB !:N @>P @=d A@!8!\"@=o A@@=| A@!@= 8!8!\"@= @= \"@= @" [a bigneg bigpos (frac float) 0 math-negp math-neg (bigpos bigneg frac float hms) cplx math-add math-abs 2 polar sdev math-abs-approx intv math-max 3 date vec math-reduce-vec math-add-abs-approx calcFunc-abs] 5])
(defalias 'math-add-abs-approx #[(a b) "\n!!\"" [math-add math-abs-approx a b] 4])
(byte-code "" [nil math-decls-cache-tag math-decls-cache math-decls-all] 1)
(defalias 'math-setup-declarations #[nil "!=N !É=F AF @=! @8! ̏! ," [math-decls-cache-tag calc-var-value var-Decls nil range type vec p math-decls-cache 2 err (byte-code "@A@= DAn @:n @@>n @= @A@	G 	\"j @A@=Z \"j @A@=j \") } \"B!\fD	= 	D	A 	@= 	@: 	@@> 	@@= 	@8 	@@BB )" [p v nil type range vec (bigpos bigneg frac float cplx polar hms date sdev intv mod) var math-super-types st append pos (real number) (intv 1 0 (var inf var-inf)) nonneg (real number) (intv 3 0 (var inf var-inf)) (real number) math-prepare-set (bigpos bigneg frac float cplx polar hms date mod var) 2 math-decls-cache] 4) ((error)) var-All math-decls-all] 5])
(byte-code "! B" [boundp math-super-types ((int numint rat real number) (numint real number) (frac rat real number) (rat real number) (float real number) (real number) (number) (scalar) (matrix vector) (vector) (const)) current-load-list] 2)
(defalias 'math-known-scalarp #[(a &optional assume-scalar) " 	 	=  !?!" [math-setup-declarations calc-matrix-mode scalar assume-scalar math-check-known-matrixp a math-check-known-scalarp] 2])
(defalias 'math-known-matrixp #[(a) ":?\n @>? \"?" [a (bigpos bigneg frac float cplx polar hms) math-known-scalarp t] 3])
(defalias 'math-check-known-scalarp #[(a) ":\f @> @> @\f>  @>8 A5 @!' ?@=E A@!!M @=b 8g \fg @A@>)" [a (bigpos bigneg frac float cplx polar hms date sdev intv mod) t math-scalar-functions math-real-scalar-functions math-scalar-if-args-functions math-check-known-scalarp ^ math-const-var var 2 math-decls-cache math-decls-all decl scalar] 2])
(defalias 'math-check-known-matrixp #[(a) ":\f @> @> ć@>. A, @! @=; A@!!C @=X 8] \f] @A@>)" [a (bigpos bigneg frac float cplx polar hms date sdev intv mod) nil math-nonscalar-functions t math-scalar-if-args-functions math-check-known-matrixp ^ math-const-var var 2 math-decls-cache math-decls-all decl vector] 2])
(defalias 'math-known-realp #[(a) "	!W" [math-possible-signs a 8] 2])
(defalias 'math-known-posp #[(a) "	!=" [math-possible-signs a 4] 2])
(defalias 'math-known-negp #[(a) "	!=" [math-possible-signs a 1] 2])
(defalias 'math-known-nonnegp #[(a) "	!>" [math-possible-signs a (2 4 6)] 2])
(defalias 'math-known-nonposp #[(a) "	!>" [math-possible-signs a (1 2 3)] 2])
(defalias 'math-known-nonzerop #[(a) "	!>" [math-possible-signs a (1 4 5 8 9 12 13)] 2])
(defalias 'math-guess-if-neg #[(a) "	!> Ă \n>? 	!)" [math-possible-signs a sgn (1 3) t (2 4 6) math-looks-negp] 3])
(defalias 'math-possible-signs #[(a &optional origin) ":\f @>F\n \n\":M @=S @=U @>G A@:? A@@=P A@VP !P VU ɇ: @= @= @> A@: A@@= A@W ! W ̇: @> @= A@= ! = Ї@=18: 8@> 8@= 8A@= 8! 8= ҇8:%8@>/8@=8A@=*8!*8=/Ӈԇ@=DA@!Bԇׇ؇@>oA@:]A@@>@=|8\nv\nA@\"yA@\"!8\n\nA@\"A@!\"8:8@>@=88! A@\n\n \" \")A@\n\"8!!\"@=!!!\"!=\"m\"=!m!=\"m\"Yׂm!Y$ׂm\"=6!=6ɂm!=H\"=Hɂm\"=Z!=Z̂m!=l\"=l̂m*@=A@\n\n!\"!\n\n:\n@>\n@=\nA@=\n!\n=@=@=\nA@:A@@>@='A@:A@@>A@@=A@A@=A@!A@=\n\"48\nA@\"\"48A@\n\"\"!(A@:~A@@=A@@=A@@>vA@A@:lA@A@@=A@A@WA@!A@W(!()@>(8:8@>(A@@=\n8\"\n8\"\"(8:8@=8@=$8@>8A@:8A@@=8A@W8!8W$(!&()@=R,AN,WN,@\n\"\",2,)@>A@!8!!\"Yqׂ!Y|ׂ@=!>ׂ\">!\">Ђ\">!!#*@=dA@!8!!\"Yׂ`!Yׂ`\"=ɂ`\"=!=Ђ`ׂ`!=\">Ђ`ׂ`8:-8@>I8!D\">@҂`ɂ`\"`\"=_!=[҂`ׂ`*@=8!!Y|Ԃ!=Ђ!>҂!>ӂ)@>GUA@!\"=Ђ\">ɂ)@=6GU6A@!\"Yׂ2\n\n!ɂ2\n\":(\n@>0\n@=\"\nA@=+\n!+\n=0\")@>DGU\\@=sGUs@ 8!sA A@!oA@\"ׂ@B =GUA@!\"C >\")@D>҂@E>ɂ@F>Ԃ@G>Ԃ@H>GUA@!Ԃ׉I_\nZJ I\"\n:1\n@=7\n@=H\n@>+\nA@:#\nA@@=4\nA@V4\n!4\nVHIK >D̂VԂVIL >UɂV\\FIFM !8N =\n݁O  \n\"FɂF8P =\n݁Q  \n\"FɂF8R =ɂF8S =T F8U =؂FׂFV  @W =8XY@XZ\n$[ ZA@>$\n:$\n@\\ >$\n@=\n8Y$] EZ85Z8\n\"E^ ZA@>DԂE))" [a (bigpos bigneg frac float cplx polar hms date sdev intv mod) origin math-sub bigpos bigneg (frac float) 0 math-posp 4 (frac float) math-negp 1 (bigpos bigneg) float math-zerop 2 intv 6 3 7 sdev math-known-realp 15 8 (+ -) (bigpos bigneg frac float) - math-neg-signs math-possible-signs math-add math-neg org s2 s1 neg nil * / math-div s (* /) math-mul vec signs logior (* /) (2 3 6 7) (4 5 6 7) (2 3 6 7) (1 3 5 7) ^ (1 5) (bigpos bigneg) math-evenp (3 6 7) % (4 6) (1 3) (calcFunc-abs calcFunc-abssqr) (1 4 5) calcFunc-exp (calcFunc-ln calcFunc-log10) calcFunc-log math-known-posp math-known-nonnegp calcFunc-sqrt (2 4 6) math-nonnegative-functions math-positive-functions math-real-functions math-real-scalar-functions math-real-if-arg-functions sign logand (1 2 3 8 9 10 11) (2 4 6 8 10 12 14) math-const-var var-pi math-pi var-e math-e var-inf var-uinf 13 var-i math-setup-declarations var math-decls-cache math-decls-all decl int (bigpos bigneg) 5 real] 7])
(defalias 'math-neg-signs #[(s1) "Y Z!\\> Ă ># ǂ$ \\>/ ɂ0 \\" [s1 8 math-neg-signs (1 3 5 7) 4 0 (2 3 6 7) 2 (4 5 6 7) 1] 3])
(defalias 'math-known-integerp #[(a) "	!=" [math-possible-types a 1] 2])
(defalias 'math-known-num-integerp #[(a) "	\"X" [math-possible-types a t 3] 3])
(defalias 'math-known-imagp #[(a) "	!U" [math-possible-types a 16] 2])
(defalias 'math-possible-types #[(a &optional num) ":\f @> : @>   ćŇ:< @=< 8Y< : ćǇ@=K I ʇˇ@=Z X ʇ̇@=s 88q 8!χ@= A@! χ҇@= A@! Շև@= 8!\"U 8!!\"U Շ܇҇@=UA@\"8\"\"!W!\"V SUU$\fSςS!WRU8U)ςSW4ՂSSUNWJՂSSS+@>A@\"8\"\"!@=\"\"!\"!!W!XłX\"UX\"U@>˂**_\"V\"V*!\"V	*\\\n\")!W@=XU>U/ςW:Ղ悈UTWPՂ悈悈!UcՂUqWUWւ҂+@=A@!@=GA@\"8\"\"!X08!0W0\"Vł\"\"V#**_,\"V\"V*!\"V**\\+\")EA@!D8!DςE+@=A@!\"VdĂe\"VsՂt\"Vς\"Vւ$)@=3A3W3@\"\"33)@5>@6>8!Ň@7>@8>8!Ǉ@=@=@GU@A@!\"V(ǂ)\"V7̂8\"#)@>cGUcA@!Y_ςa)!8>s̇8=}Ň8=Շ҇@  @A =8BC@BDE DA@>łF DA@>ĂDA@>˂G DA@>DA@>D8D8!H DA@>ς)" [a (bigpos bigneg frac float cplx polar hms date sdev intv mod) (bigpos bigneg) num 3 1 float 2 0 frac 12 4 8 intv math-possible-types 15 sdev math-known-realp 63 cplx math-zerop 16 32 polar math-compare math-quarter-circle nil math-neg 48 / t1 t2 logior t12 logand 10 calc-prefer-frac 5 31 (+ - * %) % (+ -) mask * neg ^ math-known-nonnegp math-known-posp calcFunc-sqrt math-possible-signs vec types t math-integer-functions math-rounding-functions math-num-integer-functions math-float-rounding-functions calcFunc-frac calcFunc-float (calcFunc-abs calcFunc-abssqr) math-const-var (var-e var-pi var-phi var-gamma) var-inf var-i math-setup-declarations var math-decls-cache math-decls-all decl int numint rat real] 8])
(defalias 'math-known-evenp #[(a) ":\f @> !:2 @=2 8Y2 8V !!@=U A@!G 8!A@!T 8!@>z A@!l 8! A@!y 8!@= A@!" [a (bigpos bigneg) math-evenp float 2 0 math-trunc * math-known-evenp math-known-num-integerp (+ -) math-known-oddp neg] 3])
(defalias 'math-known-oddp #[(a) ":\f @> !:2 @=2 8Y2 8Xc !!@>W A@!I 8!c A@!V 8!@=c A@!" [a (bigpos bigneg) math-oddp float 2 0 math-trunc (+ -) math-known-evenp math-known-oddp neg] 3])
(defalias 'calcFunc-dreal #[(expr) "	!W Ă  \n\"U ǂ  	#)" [math-possible-types expr types 16 1 logand 15 0 math-reject-arg realp quiet] 5])
(defalias 'calcFunc-dimag #[(expr) "	!U Ă \n\"U Ƃ 	\")" [math-possible-types expr types 16 1 logand 0 math-reject-arg "Expected an imaginary number"] 4])
(defalias 'calcFunc-dpos #[(expr) "	!= Ă \n> Ƃ 	#)" [math-possible-signs expr signs 4 1 (1 2 3) 0 math-reject-arg posp quiet] 5])
(defalias 'calcFunc-dneg #[(expr) "	!= Â \n> ł 	#)" [math-possible-signs expr signs 1 (2 4 6) 0 math-reject-arg negp quiet] 5])
(defalias 'calcFunc-dnonneg #[(expr) "	!> Ă \n= ł 	#)" [math-possible-signs expr signs (2 4 6) 1 0 math-reject-arg posp quiet] 5])
(defalias 'calcFunc-dnonzero #[(expr) "	!> Ă \n= Ƃ 	#)" [math-possible-signs expr signs (1 4 5 8 9 12 13) 1 2 0 math-reject-arg nonzerop quiet] 5])
(defalias 'calcFunc-dint #[(expr) "	!U Â  \n\"U ł  	#)" [math-possible-types expr types 1 logand 0 math-reject-arg integerp quiet] 5])
(defalias 'calcFunc-dnumint #[(expr) "	\"X ł! \"U ǂ! 	#)" [math-possible-types expr t types 3 1 logand 0 math-reject-arg integerp quiet] 5])
(defalias 'calcFunc-dnatnum #[(expr) "	!= 	! \n)" [calcFunc-dint expr res 1 calcFunc-dnonneg] 3])
(defalias 'calcFunc-deven #[(expr) "	! 	! 	!\"U Ǉ	\"" [math-known-evenp expr 1 math-known-oddp logand math-possible-types 3 0 math-reject-arg "Can't tell if expression is odd or even"] 3])
(defalias 'calcFunc-dodd #[(expr) "	! 	! 	!\"U Ǉ	\"" [math-known-oddp expr 1 math-known-evenp logand math-possible-types 3 0 math-reject-arg "Can't tell if expression is odd or even"] 3])
(defalias 'calcFunc-drat #[(expr) "	!> Ă \n\"U ǂ 	\")" [math-possible-types expr types (1 4 5) 1 logand 5 0 math-reject-arg "Rational number expected"] 4])
(defalias 'calcFunc-drange #[(expr) " : @> Dc =\" c =: ȉ8	5 \n8B 	8\nN \n!!c !W^ \nHc #)" [math-setup-declarations nil range expr (bigpos bigneg frac float) vec intv var 2 math-decls-cache math-decls-all math-clean-set copy-sequence math-possible-signs 8 [(vec) (intv 2 (neg (var inf var-inf)) 0) (vec 0) (intv 3 (neg (var inf var-inf)) 0) (intv 1 0 (var inf var-inf)) (vec (intv 2 (neg (var inf var-inf)) 0) (intv 1 0 (var inf var-inf))) (intv 3 0 (var inf var-inf)) (intv 3 (neg (var inf var-inf)) (var inf var-inf))] math-reject-arg realp quiet] 5])
(defalias 'calcFunc-dscalar #[(a) "	! 	! ć	#" [math-known-scalarp a 1 math-known-matrixp 0 math-reject-arg objectp quiet] 4])
(byte-code "! B! B!! B!. B!; \nB!H \fB!U B!b B!o B!| B! B! B! Bˇ" [boundp math-scalar-functions (calcFunc-det calcFunc-cnorm calcFunc-rnorm calcFunc-vlen calcFunc-vcount calcFunc-vsum calcFunc-vprod calcFunc-vmin calcFunc-vmax) current-load-list math-nonscalar-functions (vec calcFunc-idn calcFunc-diag calcFunc-cvec calcFunc-index calcFunc-trn | calcFunc-append calcFunc-cons calcFunc-rcons calcFunc-tail calcFunc-rhead) math-scalar-if-args-functions (+ - * / neg) math-real-functions (calcFunc-arg calcFunc-re calcFunc-im calcFunc-floor calcFunc-ceil calcFunc-trunc calcFunc-round calcFunc-rounde calcFunc-roundu calcFunc-ffloor calcFunc-fceil calcFunc-ftrunc calcFunc-fround calcFunc-frounde calcFunc-froundu) math-positive-functions nil math-nonnegative-functions (calcFunc-cnorm calcFunc-rnorm calcFunc-vlen calcFunc-vcount) math-real-scalar-functions (% calcFunc-idiv calcFunc-abs calcFunc-choose calcFunc-perm calcFunc-eq calcFunc-neq calcFunc-lt calcFunc-gt calcFunc-leq calcFunc-geq calcFunc-lnot calcFunc-max calcFunc-min) math-real-if-arg-functions (calcFunc-sin calcFunc-cos calcFunc-tan calcFunc-arctan calcFunc-sinh calcFunc-cosh calcFunc-tanh calcFunc-exp calcFunc-gamma calcFunc-fact) math-integer-functions (calcFunc-idiv calcFunc-isqrt calcFunc-ilog calcFunc-vlen calcFunc-vcount) math-num-integer-functions math-rounding-functions (calcFunc-floor calcFunc-ceil calcFunc-round calcFunc-trunc calcFunc-rounde calcFunc-roundu) math-float-rounding-functions (calcFunc-ffloor calcFunc-fceil calcFunc-fround calcFunc-ftrunc calcFunc-frounde calcFunc-froundu) math-integer-if-args-functions (+ - * % neg calcFunc-abs calcFunc-min calcFunc-max calcFunc-choose calcFunc-perm)] 2)
(defalias 'calcFunc-neg #[(a) "\nD!" [math-normalize neg a] 3])
(defalias 'math-neg-fancy #[(a) "@=( A@8! 8!\"& 8!\"E@=G A@!9 8A@\"8E@=Y A@!8E@=r A@H8!8!#  D@= A@!8\"@= 8A@\"@> A@! @A@!8E@> 8! @A@8!E@>A@! A@@=A@A@!@A@!8E@=68!*8@=68A@!6@A@8!E@=G8>G@=RA@D" [a polar math-posp 2 math-sub math-half-circle nil math-add mod math-zerop sdev math-neg intv math-make-intv [0 2 1 3] 3 math-simplify-only neg + - (* /) math-okay-neg (* /) (* /) math-objectp * / var (var-uinf var-nan)] 6])
(defalias 'math-okay-neg #[(a) "	!\n 	=" [math-looks-negp a -] 2])
(defalias 'math-neg-float #[(a) "	A@:# 	A@@= 	A@AB' 	A@AB' 	A@[	8E" [float a bigpos bigneg 2] 4])
(defalias 'calcFunc-add #[(&rest rest) " @A 	@E 	!)ć" [rest a + math-normalize 0] 3])
(defalias 'calcFunc-sub #[(&rest rest) " @A 	@E 	!)ć" [rest a - math-normalize 0] 3])
(defalias 'math-add-objects-fancy #[(a b) ":\f @>I \n: \n@>I !\n!A@\fA@\"8\f8\"E\n\n\"C \n!E \n)!*:U @=a \n:g \n@=g \n#= \n= A@\nA@\"8\n8\"\"\n: \n@> \n:? \n@>? A@\n\"8\"\n= : @> : @> \nA@\"\n8\"=\n=LA@\nA@\"8ؚA@\"\n8ښ\nA@\"8ܚ&A@\"'\n8ޚ8\nA@\"9%8\n8\"8\n8\"#\n:m\n@>m\n@=m\n:?i\n@>?~A@8\n\"8\n\"#\n=:@>@=:@>\nA@\n8\"\n8\"#=\n=A@\nA@\"\n=A@!##@ȉ#A@#8\"\nA@\"\n8\"\n8\"\"\"\"\")D\n:\n@>A@\n\"D\n=*\n\"=P\n=P8\n8PA@\nA@\"8\"=o\n:c\n@>oA@\n\"8\"\n=:@>\nA@\"\n8\"=\n=o:@>o\n:\n@>o=!\n=\n!!!\n!\"!m\n!F8\n8\"18\n8\"2A@\nA@\"31!1\"12\"22!,2\"23\"33!:\n\"B321F+m8\n8\"18\n8\"2A@\nA@\"3321F+!\n#" [a (bigpos bigneg frac float cplx polar) b math-complex bb aa math-normalize cplx math-add 2 res math-want-polar math-polar vec math-map-vec-2 sdev math-make-sdev math-hypot (bigpos bigneg frac float cplx polar hms) (bigpos bigneg frac float cplx polar hms date sdev intv mod vec) intv math-make-intv logior logand (neg (var inf var-inf)) 0 (neg (var inf var-inf)) 3 (var inf var-inf) 1 (var inf var-inf) (bigpos bigneg frac float hms) date hms math-date-parts parts math-div math-mul 3600 60 86400 (bigpos bigneg frac float) nil math-add-objects-fancy mod math-make-mod math-to-hms math-negp math-neg s m h -1 calc-record-why "*Incompatible arguments for +"] 12])
(defalias 'math-add-symb-fancy #[(a b) " 	 	E=& ĉ	A@\"8\"=; 	A@\"8\"=] A@=] ǉ	A@A@\"A@8\"	:o 	@=o ! : @= 	! 	#	!A! 8> 8> т=	\"\": @> : @> \"U 	 *=	ٚ=A@>8ܚ8	F=	ޚ<=<A@><8<	8F=	)!Y	=U	\"	=z	8%$v	A@$\")	=	8%$	A@$\")	:	@>:@>₾	≉%):@=#@= @>A@:A@@=A@W!W#:,@=#@>,A@!#8!,	!E	:d	@=	@=j	@>^	A@:V	A@@=g	A@Wg	!g	W	:	@=	@>	A@!	8!	!E	=	GU=GU	A@A@\"D!	A@\"\"!	A@\"=	GU	! 	A@	\"\"	!	A@\"	E" [math-simplify-only a + b math-add 2 - math-sub neg vec math-known-scalarp math-map-vec-2 math-infinitep inf inf2 (var-uinf var-nan) (var-uinf var-nan) (var nan var-nan) math-infinite-dir dir2 dir (bigpos bigneg frac float cplx polar hms date sdev intv mod) math-compare 0 (var nan var-nan) (var inf var-inf) intv (2 3) (neg (var inf var-inf)) 3 (neg (var inf var-inf)) (1 3) (var inf var-inf) math-combine-sum nil t temp bigneg bigpos (frac float) math-negp (* /) math-looks-negp math-neg calcFunc-idn math-square-matrixp math-mimic-ident] 7])
(defalias 'calcFunc-mul #[(&rest rest) " @A 	@E 	!)ć" [rest a * math-normalize 1] 3])
(defalias 'math-mul-objects-fancy #[(a b) ":\f @>p \n: \n@>p \n\"@ !\n!A@\nA@\"8\n8\"!E*n !\n!A@\nA@\"8\n8\"\"A@\n8\"8\nA@\"\"E!:@=\n: \n@= ! \n! A@G\nGU \n\" A@GU G\nGU \nD\" A@G\nGU \n\" \n! G\nGU D\n\"A@ G\nGU \n\" \n#\n:\n@=\n#=i\n=@A@\nA@\"8\nA@\"\n8A@\"\"\"\n:Z\n@>Z\n:?V\n@>?hA@\n\"8\n\"\"\n=:@>:@>\nA@\"\n8\"\"=\n:\n@>\n:\n@=\n@=\n@>\nA@:\nA@@=\nA@W\n!\nW\n!\"!A@8\n\"8\n\"#\n=:@>\n\"=!\n=\n!\n8\"\n8\"%&=`\nA@>YZ&F&%=|\nA@>uv%F%&8\nA@>&8!&A@>&8\nA@>&8!&A@>%8\nA@>%8!%A@>%8\nA@>%8!%A@>&*=\n=8\n8A@\nA@\"8\"=2\n:&\n@>2A@\n\"8\"\n=Q:E@>Q\nA@\"\n8\"=x\n:d\n@>x7\\7\"\n\"\")!\n=:@>\n\"\n#" [a (bigpos bigneg frac float cplx polar) b math-normalize math-want-polar math-polar polar math-mul math-fix-circular math-add 2 math-complex cplx math-sub vec math-matrixp math-mul-mats math-dimension-error math-mul-mat-vec math-dot-product math-map-vec-2 sdev math-make-sdev math-hypot (bigpos bigneg frac float cplx polar hms) (bigpos bigneg frac float cplx polar hms date sdev intv mod vec) intv (bigpos bigneg frac float hms) bigneg bigpos (frac float) 0 math-negp math-neg math-make-intv 3 math-intv-constp hi lo (2 3) (1 3) math-combine-intervals (2 3) math-infinitep (2 3) (2 3) (1 3) (1 3) (2 3) (1 3) (1 3) mod math-make-mod hms (bigpos bigneg frac float) calc-internal-prec math-to-hms math-from-hms deg calc-record-why "*Incompatible arguments for *"] 12])
(defalias 'math-mul-float #[(a b) "\nA@A@\"\n88\\\"" [math-make-float math-mul a b 2] 5])
(defalias 'math-sqr-float #[(a) "\nA@\nA@\"\n8\n8\\\"" [math-make-float math-mul a 2] 5])
(defalias 'math-intv-constp #[(a &optional finite) "	8:$ 	8@>$ 	8ÚG \f$ 	A@>G 	8:?G 	8@>G 	8ǚG \f?G 	A@>" [2 a (bigpos bigneg frac float hms) (neg (var inf var-inf)) finite (0 1) 3 (var inf var-inf) (0 2)] 2])
(defalias 'math-mul-zero #[(a b) "	! 	! 	#	\"	! ɇʉ\f	= 	8ϚA 	8>A 	8\f	8ӚV 	8>V 	8\f`  !} ! >} \fډ \f  F ! \f  F! ݂ ! 	! ߂ *" [math-known-matrixp b math-vectorp math-map-vec-2 math-mul a math-mimic-ident 0 math-infinitep (var nan var-nan) nil bb aa intv 2 (neg (var inf var-inf)) 1 (2 3) 3 (var inf var-inf) (1 3) math-posp math-zerop calc-infinite-mode (-1 1) (neg (var inf var-inf)) (var inf var-inf) math-negp math-neg (var nan var-nan) math-floatp (float 0 0)] 5])
(defalias 'math-mul-symb-fancy #[(a b) " 	 	E	=3 	:7 	@=7 	A@=7 	8U7 	=Y 	:_ 	@=_ 	A@=_ 	8U_ !	:q 	@=q ! : @= 	! 	#: @> 	: 	@> 	\"	= 	A@\"!= 	A@\"!	= 	A@	8\"\"	=	8:2	8@=g	8@=:	8@>*	8A@: 	8A@@=7	8A@W7	8!7	8Wg	8:	8@=g	8@>	8A@!gƉ	88!=8:8@=8@=8@>8A@:8A@@=8A@W8!8W8:8@=8@>8A@!Ɖ88!\"	A@	8!E!\"=8:S8@=8@=[8@>K8A@:A8A@@=X8A@WX8!X8W8:8@=8@>8A@!Ɖ88!	=\f	8:	8@=	8@=	8@>	8A@:	8A@@=	8A@W	8!	8W	8:\f	8@=	8@>\f	8A@!Ɖ	88!	A@8!E!\"	=[	\"3\"[	8%L	A@\"W	A@\"	8\")=p	A@\"8\"=	:	@>A@:A@@>8:8@>	A@\"	8\"\"=	:	@>A@:A@@>8:8@>	A@\"	8\"\"=)A@:A@@>)	:)	@>)A@	8\"\"	=r	GUr=RGUR	A@A@\"D!c	A@\"D!r	A@\"=GU	!	A@\"D	!	A@\"!	!!\"=	!	!!\"=	A@܉%8\")	܉%	嚃	暃	皃	蚃隃	!+=1+=<+=I!+=T	@=e	!e	@=	A@!	8!EE	@=	8EE)		\"	E" [math-simplify-only a * b 1 float 2 0 -1 math-neg vec math-known-scalarp math-map-vec-2 math-mul (bigpos bigneg frac float cplx polar hms date sdev intv mod) neg ^ bigneg bigpos (frac float) math-negp (* /) math-looks-negp t math-div math-normalize / math-combine-prod nil temp + (bigpos bigneg frac float cplx polar) math-add - math-sub calcFunc-idn math-known-matrixp (var nan var-nan) (var nan var-nan) (var uinf var-uinf) (var uinf var-uinf) (var inf var-inf) math-possible-signs s1 4 6 (intv 3 0 (var inf var-inf)) 3 (intv 3 (neg (var inf var-inf)) 0) intv math-intv-constp (intv 3 (neg (var inf var-inf)) (var inf var-inf)) cplx math-zerop calcFunc-sign polar (var inf var-inf)] 9])
(defalias 'calcFunc-div #[(a &rest rest) " \n@EA \n!" [rest / a math-normalize] 4])
(defalias 'math-div-objects-fancy #[(a b) ":\f @> \n: \n@> \n\"@ !\n!A@\nA@\"8\n8\"!E* \n:L \n@>a !A@\n\"8\n\"E !\n!A@\nA@\"8\n8\"\"8\nA@\"A@\n8\"\"E\nA@!\n8!\"\"!\n!C\n!>\nG:@=! GU \n!\n#<A@GU \n!!!\n#!< <GU	\n!!\n#\"< <=0:6@=6A@=68U6\n!<\n!\")\n\":a@=a\n:[\n@>a\n#=\n=A@\nA@\"$$8\n8$\"\"\nA@\"\")\n:\n@>\n:\n@>A@\n\"8\n\"\"\n\"\n=:@>:@>\nA@\"$$\n8$\"\nA@\"\")=a\n:\n@>a\n:@\n@=F\n@=O\n@>:\nA@:2\nA@@=C\nA@WC\n!C\nWO\n!\"!A@8\n\"8\n\"#\n=:t@>\n8:\n8@=\n8@=\n8@>\n8A@:\n8A@@=\n8A@V\n8!\n8V\n8:\n8@>c\n8@=\n8A@=\n8!\n8=c\nA@>8c:<@=B@=K@>6A@:.A@@=?A@W?!?WK!\n\"!8\nA@H\n8\"\n8\"#)\n8:\n8@=\n8@=\n8@>\n8A@:\n8A@@=\n8A@W\n8!\n8W\n8:\n8@>\n8@=\n8A@=\n8!\n8=\nA@>8\n!\"!8\n\"=Y!Y\n=Y\n!Y\n8:j\n8@=\n8@=r\n8@>b\n8A@:X\n8A@@=o\n8A@Vo\n8!o\n8V\n8:\n8@>\n8@=\n8A@=\n8!\n8=\nA@>88\n8\"?\n8\"@?=\nA@A >?F?@=\nA@B >@F@C ?8\nA@D >&E ?8!.\n8!?.?A@F >?8\nA@G >PE ?8!X\n8!?X?A@H >@8\nA@I >zE @8!\n8!?@A@J >@8\nA@K >E @8!\n8!?@A@L >&+\n8:\n8@=B\n8@= \n8@>\n8A@:\n8A@@=\n8A@W\n8!\n8WB\n8:+\n8@>K\n8@=#\n8A@=0\n8!0\n8=K\nA@M >B8K\n!\"!8TN \n\"O =\nO =8\n8P Q A@\nA@8#8\"O =\n:\n@>P Q A@\n8#8\"\nO =:@>P Q \nA@\n8#\n8\"R =$\nR =S\\SǁT U \"T \nU \"\")!S\\SV ǁT U \"\n\"U \")!W X \n#" [a (bigpos bigneg frac float cplx polar) b math-normalize math-want-polar math-polar polar math-div math-fix-circular math-sub 2 (bigpos bigneg frac float) math-complex cplx math-add math-mul math-sqr math-matrixp math-square-matrixp n1 vec math-lud-solve math-matrix-lud math-transpose math-dimension-error math-mat-col math-col-matrix 1 float 0 calcFunc-inv math-reject-arg square-matrixp (bigpos bigneg frac float cplx polar hms date sdev intv mod) math-map-vec-2 sdev x math-make-sdev math-hypot (bigpos bigneg frac float cplx polar hms) (bigpos bigneg frac float cplx polar hms date sdev intv mod vec) realp intv (bigpos bigneg frac float hms) bigneg bigpos (frac float) math-negp math-neg math-make-intv 3 (frac float) math-posp (bigpos bigneg) math-zerop (0 1) calc-infinite-mode [0 2 1 3] (0 2) (intv 3 (neg (var inf var-inf)) (var inf var-inf)) "*Division by zero" math-intv-constp (0 1) lo hi (2 3) (1 3) math-combine-intervals (2 3) math-infinitep (2 3) (2 3) (1 3) (1 3) (2 3) (1 3) (1 3) (0 2) (intv 3 (neg (var inf var-inf)) (var inf var-inf)) mod math-make-mod math-div-mod hms calc-internal-prec math-from-hms deg math-to-hms calc-record-why "*Incompatible arguments for /"] 11])
(defalias 'math-div-by-zero #[(a b) "	! 	 Ě > 	ǇI 	!( ɇ=3 	\"=> 	\"	=G Їч	\"" [math-infinitep a (var nan var-nan) b (var uinf var-uinf) calc-infinite-mode (-1 1) (var uinf var-uinf) math-zerop (var nan var-nan) 1 math-mul (var inf var-inf) -1 (neg (var inf var-inf)) intv (intv 3 (neg (var inf var-inf)) (var inf var-inf)) (var uinf var-uinf) math-reject-arg "*Division by zero"] 3])
(defalias 'math-div-zero #[(a b) "	! 	! 	#	\"	Ț 		=r 	!r 	!r 	!r m 	8!T >T 	8U 	8!j >j 	8k F	\"" [math-known-matrixp b math-vectorp math-map-vec-2 math-div a math-mimic-ident 0 (var nan var-nan) intv math-intv-constp math-posp math-negp calc-infinite-mode 3 math-zerop 2 (1 -1) (neg (var inf var-inf)) (1 -1) (var inf var-inf) math-reject-arg "*Division by zero"] 6])
(defalias 'math-div-symb-fancy #[(a b) " 	 	E=3 :7 @=7 A@=7 8U7 	=Y :_ @=_ A@=_ 8U_ 	!	:y 	@=y !y 	#=18: 8@=8@= 8@> 8A@: 8A@@= 8A@W 8! 8W8: 8@=8@> 8A@!Ɖ88!	=	:1	@=1	A@=1	8U1	A@8!E!\"	=C	A@\"!=U	A@\"!	=j	A@	8\"\"=A@\"8\"	8\"A@\"=8A@\"	\"	=	A@:	A@@>	8:	8@>:@>	A@\"	8\"\"	=.	A@:	A@@>	8:	8@>.:@>.	A@\"	8\"\"	=;	!L!L	!!\"=d	!d	!!\"	=	GU=GU	A@A@\"D!	A@\"D!	A@\"=GU	!	A@\"D	!	A@\"\"	!!	%g	=?=%	A@A@؉%&!&	8\"8\")g	A@؉%&;&	8\")g=`	A@؉%&\\&8\")g	%	!!x	隄	ꚃ		뚃!=8!=\"	!=8!=\"	!=8!8!!5	\")	E" [math-simplify-only a / b 1 float 2 0 -1 math-neg vec math-known-scalarp math-map-vec-2 math-div ^ bigneg bigpos (frac float) math-negp neg (* /) math-looks-negp math-mul math-normalize t frac math-make-frac + (bigpos bigneg frac float cplx polar) math-add - math-sub calcFunc-idn math-known-matrixp calc-matrix-mode math-combine-prod nil * c math-infinitep (var nan var-nan) (var nan var-nan) (var uinf var-uinf) (var inf var-inf) math-posp intv math-zerop math-intv-constp (intv 3 0 (var inf var-inf)) 3 (intv 3 (neg (var inf var-inf)) 0) (intv 3 (neg (var inf var-inf)) (var inf var-inf)) (var nan var-nan) calc-infinite-mode math-mul-zero] 9])
(defalias 'calcFunc-mod #[(a b) "\nE!" [math-normalize % a b] 4])
(defalias 'math-mod-fancy #[(a b) "4 ! ! ! =/ 8!- ȇE=T :G @>T !T A@\"=m \"m !m \":y @> \" \"E" [b (var inf var-inf) math-posp a math-zerop math-negp intv 2 (intv 3 0 (var inf var-inf)) % mod (bigpos bigneg frac float) math-make-mod math-intv-constp t math-mod-intv (bigpos bigneg frac float hms) calc-record-why anglep] 3])
(defalias 'calcFunc-pow #[(a b) "\nE!" [math-normalize ^ a b] 4])
(defalias 'math-pow-of-zero #[(a b) ":! @>6 @= A@=$ !$ =6 - Ƈ	E\"!B 	!	!K 	!W 	\"!_ ҇@=r !r r Շ!~ 	E	" [b (bigpos bigneg) float 0 math-zerop calc-infinite-mode (var nan var-nan) math-reject-arg ^ a "*Indeterminate form" math-floatp math-float math-posp math-negp math-div 1 math-infinitep (var nan var-nan) intv math-intv-constp (intv 3 (neg (var inf var-inf)) (var inf var-inf)) math-objectp] 4])
(defalias 'math-pow-zero #[(a b) "= 8\"! \"!! ȇ@=C !C !: !A \"C ·!P !R чÇ" [a mod math-make-mod 1 2 math-known-matrixp math-mimic-ident math-infinitep (var nan var-nan) intv math-intv-constp math-posp math-negp t (intv 3 (neg (var inf var-inf)) (var inf var-inf)) math-floatp b (float 1 0)] 4])
(defalias 'math-pow-fancy #[(a b) ":\f @> \n: \n@> \n!>J \n!- !. !:> @>F \n\"\")t \n@=w \n8w \n8Xw \n8\"s \nA@\")*\n= њ \n! \n\"*\n \nE*\n\\\n!!\"!!)!: @> \n:x\n@>x  \nEv=\n! A@! 8!A@\n\"8\n\"\"v=4\n!#8!4A@\n\"8\n\"\"v=`A@!`A@\"`A@\n\"8\"\n\"\"v=\n!uA@!A@8\n\"\"v=\n!A@!A@\n\"\"v=8!\n!>A@!A@8\n\"\"!v!\n!\n!!\n\"\n!!\n\"!v=%A@!%\n!%A@\n\"v!~5v@=K\n\"A@\n\"\"v\n!Uv\n!i\n!evv\n=z\n!zvv\n!.=\n!\"\n!\"*\n!*!=\"@ *A =\"U!B **A \"U\n*A \"UC *@=&!&A \"U D 8\"E *F *G *\nE)vH =QGUQ\n!QH A@\n\"Dv:]@>iI J \n\"rI J \"\nE)K =\nK =L !L \n!\\A@!!M\nA@M\"!!NO NNP 8\nA@A@\"\"\n8M\"\"\"\"+!A@\nA@\"NO NNP 8\nA@A@\"\"\n8Q A@!\"\"\"\")K =v\n:$\n@>vL !X\\A@R \n\"\"NO NA@\"N8\n\"\"\"*!O A@\n\"A@S \n\"\"8\n\"\"\"\nK =:@>\\!!MT \nA@M\"!NO NN\n8M\"\"\"+!=!\n:\n@U >\n:\n@V =\nYs8:98@V =s8@W =A8@X >18A@:'8A@@V =>8A@V>8!>8VsY 8!\n:\n@V =s\n@W =\n@X >\nA@:}\nA@@V =\nA@V\n!\nVs\n:\n@Z >[sD 8:D 8@W =sD 8@V =D 8@\\ >D 8A@:D 8A@@W =D 8A@WD 8!D 8WsY D 8!\n:Z\n@V =s\n@W =`\n@X >T\nA@:L\nA@@V =]\nA@V]\n!]\nVs\n:n\n@Z >[] \n!!Y D 8![^ A@8\n\"ɁD 8\n\"#)\n= \n! :@U > :@V =\n@W = @X >A@:A@@V =A@V!V ^ \nA@\n8\"D \n8\"#=	!	\n=	\n!	8:8@W =8@V =8@\\ >8A@:x8A@@W =8A@W8!8W\n8:\n8@W =\n8@V =\n8@\\ >\n8A@:\n8A@@W =\n8A@W\n8!\n8W8::8@V =B8@W =	8@X >28A@:(8A@@V =?8A@V?8!?8V	D \n8:D \n8@V =	D \n8@W =D \n8@X >D \n8A@:D \n8A@@V =D \n8A@VD \n8!D \n8V	\n8\"D \n8\"_`=\nA@a >D `F`_=\nA@b >D _F_c `8\nA@d >	`8!	`A@e >D `8\nA@f >:	D `8!B	`A@g >_8\nA@h >Y	_8!a	_A@i >D _8\nA@j >|	D _8!	_A@k >&*l =	\nl =	8\n8	m n A@\nA@8#8\"l =	\n:	\n@o >	m n A@\n8#8\"\nl =\n:	@o >\nm n \nA@\n8#\n8\":\"\n@>\"\np q \"p \nq \"" [a (bigpos bigneg frac float cplx polar) b math-quarter-integer (1 2 3) math-sqrt math-floatp math-float sqrt math-pow math-mul 2 frac 10 math-nth-root root math-ipow (float 1 1) math-num-integerp calcFunc-scf (float 1 0) calc-symbolic-mode ^ math-normalize calc-internal-prec math-exp-raw math-ln-raw (bigpos bigneg frac float cplx polar hms date sdev intv mod vec) (bigpos bigneg frac float cplx polar hms date sdev intv mod) nil temp math-simplify-only * math-known-num-integerp math-known-nonnegp / math-div math-equal-int 1 calcFunc-sqrt math-known-evenp (1 2 3) math-known-realp math-abs math-looks-negp math-known-integerp math-neg math-known-oddp calcFunc-abs math-infinitep (var nan var-nan) neg -1 math-posp math-negp (float 0 0) 0 intv math-intv-constp (intv 3 0 (var inf var-inf)) (var nan var-nan) scale (var nan var-nan) calcFunc-abssqr (var nan var-nan) math-compare (float 0 0) (var uinf var-uinf) 3 (intv 3 0 1) (intv 3 0 (var inf var-inf)) (intv 3 (neg (var inf var-inf)) (var inf var-inf)) calcFunc-idn calc-record-why objectp sdev math-constp ln pow math-make-sdev math-hypot calcFunc-ln math-sub math-add calcFunc-exp (bigpos bigneg frac float) bigpos bigneg (frac float) math-zerop (bigpos bigneg) calc-infinite-mode (frac float) math-evenp math-sort-intv hi lo (2 3) (1 3) math-combine-intervals (2 3) (2 3) (2 3) (1 3) (1 3) (2 3) (1 3) (1 3) mod math-make-mod math-pow-mod (bigpos bigneg frac float hms) math-reject-arg numberp] 12])
(defalias 'math-quarter-integer #[(x) ":\f @> !\" !! Z@=N 8=3 ȇ8= A@:J A@K Ʀ@= 8Y_ 8U A@:v A@w ˦U ȇ8U A@: A@ ΦU ЇU ҇" [x (bigpos bigneg) 0 math-negp math-quarter-integer math-neg 4 frac 2 float -1 10 5 -2 100 25 1 75 3] 4])
(defalias 'math-pow-mod #[(a b m) ":\f @> \n: \n@> :$ @> \n:\\ \n@=b \n@= \n@>V \nA@:N \nA@@=_ \nA@W_ \n!_ \nW \n: \n@=y \nAB \nAB \n[##= Ǉ\n#\n\"\"" [a (bigpos bigneg) b m bigneg bigpos (frac float) 0 math-negp math-div-mod 1 math-pow-mod math-pow-mod-step math-mod math-pow] 6])
(defalias 'math-pow-mod-step #[(a n m) "= \f\"= ǂE = \fE \f\"\"!#!; D \f\"\")=S \")" [calc-display-working-message lots math-do-working "pow" a n 0 1 math-pow-mod-step math-imod math-mul m math-div2 rest math-evenp math-mod val] 5])
(defalias 'math-min #[(a b) ": @= \n: \n@= 8A@>8A@>	\n\f\n8\f\"UQ \n8\f\nA@>d Ud b \nA@>\n8\n\"U \n8\n\nA@>	 U 	 \nA@>	 Â 	 Ղ \\\f\n#-\nF\"\n: \n@= F\n\"\n\"U \n U ׂ )" [a intv b 2 (2 3) 3 (1 3) nil res him hi lom lo math-compare -1 (2 3) 0 (2 3) (1 3) (1 3) math-make-intv 1 math-min (var nan var-nan)] 7])
(defalias 'calcFunc-min #[(&optional a &rest b) " :1 @>1 @=1 @=& !1 !1 \"\n\"" [a (var inf var-inf) (bigpos bigneg frac float hms) date intv math-intv-constp math-infinitep math-reject-arg anglep math-min-list b] 3])
(defalias 'math-min-list #[(a b) "@ @:/ @@>/ @=/ @@=( @!/ @!: @\"A\"@\"" [b (bigpos bigneg frac float hms) date intv math-intv-constp math-infinitep math-min-list math-min a math-reject-arg anglep] 4])
(defalias 'math-max #[(a b) ":\f @= \n:# \n@=# !\n!\"!\n\"U3 \n? U> ɂ? )" [a intv b math-neg math-min math-compare res -1 2 (var nan var-nan)] 6])
(defalias 'calcFunc-max #[(&optional a &rest b) " :1 @>1 @=1 @=& !1 !1 \"\n\"" [a (neg (var inf var-inf)) (bigpos bigneg frac float hms) date intv math-intv-constp math-infinitep math-reject-arg anglep math-max-list b] 3])
(defalias 'math-max-list #[(a b) "@ @:/ @@>/ @=/ @@=( @!/ @!: @\"A\"@\"" [b (bigpos bigneg frac float hms) date intv math-intv-constp math-infinitep math-max-list math-max a math-reject-arg anglep] 4])
(defalias 'math-abs #[(a) ":8 @=> @=B @>2 A@:* A@@=; A@W; !; WB !:N @>P @=` A@8\"@=k A@@= AAA !!AA A@8\"A A@!@= A@!8E@=V!V: @= @= @> A@: A@@= A@V ! V 8!8\"U%A@>ʂ#TUAA@=9ʂ:#TA@>NʂO8#*!b!D! >q{ >{!)!$$嚃$)\"D" [a bigneg bigpos (frac float) 0 math-negp math-neg (bigpos bigneg frac float hms) cplx math-hypot 2 polar vec math-sqrt calcFunc-abssqr math-abs sdev intv math-intv-constp (frac float) math-posp nlo math-compare 3 res 1 math-make-intv (0 1) (0 2) math-looks-negp calcFunc-abs math-possible-signs signs (2 4 6) (1 3) math-infinitep inf (var nan var-nan) (var inf var-inf) calc-record-why numvecp] 6])
(byte-code "KM" [calcFunc-abs math-abs] 2)
(defalias 'math-float-fancy #[(a) "@= @A@AA\"BB@>2 A@!2 @A@!8DE@=b A@@=b A@A@!b A@A@!A@88EDE!j @=s @˞\f \fAAB) \"" [a intv mapcar math-float (* /) math-numberp calcFunc-float 2 / * math-infinitep ((calcFunc-floor . calcFunc-ffloor) (calcFunc-ceil . calcFunc-fceil) (calcFunc-trunc . calcFunc-ftrunc) (calcFunc-round . calcFunc-fround) (calcFunc-rounde . calcFunc-frounde) (calcFunc-roundu . calcFunc-froundu)) func math-reject-arg objectp] 8])
(byte-code "KM" [calcFunc-float math-float] 2)
(defalias 'math-trunc-fancy #[(a) "@= A@8\"@= A@!@=* !!@=9 A@ɉF@=H A@!D@=o 8!d A@8!\"!A@!8\"@=8К A@> ɂ 8Ӛ A@> ɂ \\8: 8@= 8@=(8@> 8A@: 8A@@= 8A@W 8! 8W(8:8@>8@=(É88Y(A@>(8!\"-8!8:u8@=}8@=8@>m8A@:c8A@@=z8A@Vz8!z8V8:8@>8@=88YA@>8!\"8!#!:@=\"!!!!\"" [a frac math-quotient 2 cplx math-trunc polar math-complex hms 0 date mod math-messy-integerp math-make-mod intv math-make-intv (neg (var inf var-inf)) (0 1) 3 (var inf var-inf) (0 2) 1 bigneg bigpos (frac float) math-negp (bigpos bigneg) float (0 1) math-add (frac float) math-posp (0 2) -1 math-provably-integerp vec math-map-vec #[(x) "	\n\"" [math-trunc x prec] 3] math-infinitep (var nan var-nan) math-to-integer math-reject-arg numberp] 7])
(defalias 'math-trunc-special #[(a prec) ": @= 8Y !\" \"X2 !2 \")![\"" [prec float 2 0 math-trunc math-reject-arg fixnump math-provably-integerp a calcFunc-scf t calc-prefer-frac] 5])
(defalias 'math-to-integer #[(a) " GU \nAAB)" [a ((calcFunc-ffloor . calcFunc-floor) (calcFunc-fceil . calcFunc-ceil) (calcFunc-ftrunc . calcFunc-trunc) (calcFunc-fround . calcFunc-round) (calcFunc-frounde . calcFunc-rounde) (calcFunc-froundu . calcFunc-roundu)) func 2] 3])
(defalias 'calcFunc-ftrunc #[(a &optional prec) ":% @=% 8Y% \f# \f% \fX% \f\"!" [a float 2 0 prec math-float math-trunc] 4])
(defalias 'math-floor-fancy #[(a) "	! 		@=0 	!% 	8!) 	8!) 	!	!\"	@=? 	A@!D	@= 	8Κ[ 	A@>[ Ђ\\ 	8њp 	A@>p Ђq \\	8!	8: 	8@> 	8@= 	88Y 	A@> 	8!\" 	8!#	: 	@= 	\"	! 	! 	! 	܇	! 	\"" [math-provably-integerp a hms math-posp math-zerop 2 3 math-trunc math-add -1 date math-floor intv math-make-intv (neg (var inf var-inf)) (0 1) 0 (var inf var-inf) (0 2) 1 (bigpos bigneg) float (0 2) vec math-map-vec #[(x) "	\n\"" [math-floor x prec] 3] math-infinitep math-negp (var nan var-nan) math-to-integer math-reject-arg anglep] 7])
(defalias 'math-floor-special #[(a prec) ": @= 8Y !\" \"X2 !2 \f\")![\"" [prec float 2 0 math-trunc math-reject-arg fixnump math-provably-integerp a calcFunc-scf math-floor t calc-prefer-frac] 5])
(defalias 'calcFunc-ffloor #[(a &optional prec) ":% @=% 8Y% \f# \f% \fX% \f\"!" [a float 2 0 prec math-float math-floor] 4])
(defalias 'math-ceiling #[(a &optional prec) "F : @= 8Y !& \"X6 !6 \f\")![\":T @>W :s @=s 8Ys !: @> : @= @= @> A@: A@@= A@V ! V !\"!! @=! 8!8!!!\"@=A@!D@=8ܚ=A@>=Â>8ޚTA@>TÂU\\8:}8@>}8@=88YA@>8!\"8!8!#:@=\"!!!!\"" [prec float 2 0 math-trunc math-reject-arg fixnump math-provably-integerp a calcFunc-scf math-ceiling t calc-prefer-frac (bigpos bigneg) (bigpos bigneg frac float) bigpos bigneg (frac float) math-posp math-add 1 hms math-negp math-zerop 3 date intv math-make-intv (neg (var inf var-inf)) (0 1) (var inf var-inf) (0 2) (bigpos bigneg) (0 1) math-floor vec math-map-vec #[(x) "	\n\"" [math-ceiling x prec] 3] math-infinitep (var nan var-nan) math-to-integer anglep] 6])
(byte-code "KM" [calcFunc-ceil math-ceiling] 2)
(defalias 'calcFunc-fceil #[(a &optional prec) ":% @=% 8Y% \f# \f% \fX% \f\"!" [a float 2 0 prec math-float math-ceiling] 4])
(byte-code "" [nil math-rounding-mode] 1)
(defalias 'math-round #[(a &optional prec) "F : @= 8Y !& \"X6 !6 \f\")![\":T @>,:s @>s @=x 8Yx !: @= @= @> A@: A@@= A@W ! W = !!!: @> ڂ \"):	@>	@='8Y'='!!$\"!!6@=GA@!D@=W\"!:k@=k\"!!!!\"" [prec float 2 0 math-trunc math-reject-arg fixnump math-provably-integerp a calcFunc-scf math-round t calc-prefer-frac (bigpos bigneg frac float hms) (bigpos bigneg) bigneg bigpos (frac float) math-negp math-rounding-mode up math-neg deg calc-angle-mode math-add (bigpos bigneg frac) (frac 1 2) (float 5 -1) even math-floor math-evenp math-sub 1 date intv (frac 1 2) vec math-map-vec #[(x) "	\n\"" [math-round x prec] 3] math-infinitep math-posp (var nan var-nan) math-to-integer anglep] 6])
(byte-code "KM" [calcFunc-round math-round] 2)
(defalias 'calcFunc-rounde #[(a &optional prec) "\f\")" [even math-rounding-mode math-round a prec] 3])
(defalias 'calcFunc-roundu #[(a &optional prec) "\f\")" [up math-rounding-mode math-round a prec] 3])
(defalias 'calcFunc-fround #[(a &optional prec) ":% @=% 8Y% \f# \f% \fX% \f\"!" [a float 2 0 prec math-float math-round] 4])
(defalias 'calcFunc-frounde #[(a &optional prec) "\f\")" [even math-rounding-mode calcFunc-fround a prec] 3])
(defalias 'calcFunc-froundu #[(a &optional prec) "\f\")" [up math-rounding-mode calcFunc-fround a prec] 3])
(defalias 'calcFunc-mant #[(x) ":\f @>/ :  @>  A@=\" A@A@!ZE\"D" [x (bigpos bigneg frac float) (bigpos bigneg frac) 0 float 1 math-numdigs calc-record-why realp calcFunc-mant] 5])
(defalias 'calcFunc-xpon #[(x) ":\f @>/ :  @>  A@=\" Ç8A@!S\\!\"D" [x (bigpos bigneg frac float) (bigpos bigneg frac) 0 math-normalize 2 math-numdigs calc-record-why realp calcFunc-xpon] 4])
(defalias 'calcFunc-scf #[(x n) " = \n\n: \n@>- V$ \n\"\n[\"\"\n@=S VF \nA@\"\n8\"\nA@\n8[\"\"\n@=e \nA@\n8\\\"\n@>~ \n@\nA@\"\n8\"E!\n@> \n@\nA@\"\n8E!\n@= \n@\nA@\n8\"\n8\"F!\n@= \n\"\n! \n\n\"\nE! 8W \n!\"!! !\"\nE" [n 0 x (bigpos bigneg) math-scale-int math-div 1 frac math-make-frac 2 float math-make-float (cplx sdev) math-normalize calcFunc-scf (polar mod) intv 3 vec math-map-vec #[(x) "	\n\"" [calcFunc-scf x n] 3] math-infinitep calc-record-why realp math-messy-integerp 10 math-trunc math-overflow math-integerp integerp] 7])
(defalias 'calcFunc-incr #[(x &optional step relative-to) " : @> \":# @>( \"@=\\ !I 	=I 	\fZ\"\"8A@!\fZ\\\"\"@= A@:s A@@>x \"ӉF\"\"" [step 1 (bigpos bigneg) math-reject-arg integerp x math-add float math-zerop relative-to math-mul calcFunc-scf calc-internal-prec math-add-float math-make-float 2 math-numdigs date hms 0 realp] 7])
(defalias 'calcFunc-decr #[(x &optional step relative-to) "	 !#" [calcFunc-incr x math-neg step 1 relative-to] 4])
(defalias 'calcFunc-percent #[(x) "	! 	\")	D" [math-objectp x nil calc-prefer-frac math-div 100 calcFunc-percent] 3])
(defalias 'calcFunc-relch #[(x y) "	! \n! \n	\"	\"	\nE" [math-objectp x y math-div math-sub calcFunc-relch] 4])
(defalias 'calcFunc-abssqr #[(a) ":\f @> \"@=% A@!8!\"@=2 A@!@>E !E !!@=T \"\"!_ \"!s \"!\") \"D" [a (bigpos bigneg frac float) math-mul cplx math-add math-sqr 2 polar (sdev intv) math-constp math-abs vec math-reduce-vec math-map-vec calcFunc-abssqr math-known-realp math-pow math-infinitep inf math-infinite-dir calc-record-why numvecp] 6])
(defalias 'math-sqr #[(a) "	\"" [math-mul a] 3])
(defalias 'calcFunc-idiv #[(a b) ":\f @= Y/ : @=! Y/ =/ \":; @>W :G @>R \"!)\"=u =p \"!)\"= : @> = : @> \"!! ! \"\"" [a bigpos 0 b math-quotient (bigpos bigneg frac float) t calc-prefer-frac math-floor math-div math-reject-arg realp hms hmsp intv math-infinitep anglep] 4])
(defalias 'math-combine-sum #[(a b nega negb scalar-okay) "$ 	: 	@>$ : @>$ 	$ǉ		: 	@=R 	A@:F 	A@@>R 	A@		8 	@= 	8:i 	8@> 	8:y 	8@> 	8E 	8\"		A@ 	@= 		A@:@= A@: A@@> A@8@=8: 8@>8: 8@> 8E 8\"A@@=A@\"	\"U%	J2	!	=!	\"			\"*" [scalar-okay a (bigpos bigneg frac float cplx polar hms date sdev intv mod vec) b math-add-or-sub nega negb 1 bmult amult * (bigpos bigneg frac float cplx polar hms date sdev intv mod) 2 / (bigpos bigneg) frac math-div neg -1 math-simplifying math-compare 0 math-neg math-add math-mul] 5])
(defalias 'math-add-or-sub #[(a b aneg bneg) " \n! \f!\n: \n@=( \f:/ \f@=/ \n\fE!\n\f\"" [aneg math-neg a bneg b vec math-normalize + math-add] 4])
(defalias 'math-combine-prod #[(a b inva invb scalar-okay) "+ 	:% 	@>+ 	@= 	A@=( 	!( 	=] _ :V @>_ @=O A@=Z !Z =_ ȇ	 	:p 	@> :~ @> 	$: 	@>		=  	8! 	A@	8!\"\"=  8! 	A@8!\"\"҉	:E	@=	8:	8@>	8	A@E	@=!	A@E	@=E=	A@:=	A@@>E	A@	:i	@=i	8	8\"Ui	\"!:@=8:8@>8A@@=A@@=A@:A@@>A@:@=88\"U\"!!!&	\"*	\"\"	:A	@>|\":g\"@>n\"@=`\"A@=k\"!k\"=|===\"!	:	@>	:	@=	@=	@>	8:	8@=	8V	!	V	\"\"!\"\"隃	D\"ꚃ	D\"	=\n	=\n\"D)./	!1211!2=	A@1@=D҂P	A@!H4A@1A@2@=a҂nA@!H4A@212\"U5	5515215255)12\"\"\"\"\"*	:	@=	Y:@=Y	\"D	\"D\"	\"*" [inva a (bigpos bigneg) float 0 math-zerop invb b nil scalar-okay (bigpos bigneg frac float cplx polar hms date sdev intv mod vec) math-mul-or-div ^ math-looks-negp 2 math-mul math-pow math-neg 1 bpow apow math-simplifying (bigpos bigneg frac float cplx polar) calcFunc-sqrt (frac 1 2) calcFunc-exp math-combine-prod-e frac math-compare -1 math-div (frac 1 2) math-commutative-equal math-add sumpow (bigpos bigneg) (bigpos bigneg frac) bigpos bigneg (frac float) math-posp (frac 1 2) (frac -1 2) err (math-pow a sumpow) ((inexact-result (byte-code "	\nE" [^ a sumpow] 3))) math-simplifying-units math-combining-units math-check-unit-name ua ub symbol-name math-unit-prefixes temp (frac 1 2) (frac -1 2) (math-pow a apow) ((inexact-result (byte-code "	\nE" [^ a apow] 3)))] 8])
(byte-code "" [(var e var-e) math-combine-prod-e nil] 1)
(defalias 'math-mul-or-div #[(a b ainv binv) ":\f @= \n:C \n@=C \f2 + \"\nEA \nEA = \nEA \nE!\fX S ǉ\"\n\"\n\"a \n\"\n\"" [a vec b math-normalize ainv binv / math-div 1 * math-mul] 5])
(defalias 'math-commutative-equal #[(a b) ">g \n>j ĉ\n\"\"GGUe b M @@M A= b @\"A6 ?+\n" [a (+ -) b (+ -) nil p aterms bterms math-commutative-collect delq] 4])
(defalias 'math-commutative-collect #[(b neg) "= A@\"8\"=+ A@\"8?\"5 !6 B" [b + math-commutative-collect neg 2 - math-neg bterms] 3])
