(FILECREATED " 6-Jun-86 17:16:12" {QV}<PEDERSEN>LISP>QUANTFNCTS.;1 25260
changes to: (FNS QTDIS QGAMM QNORMS QBETA)
previous date: "24-Feb-86 17:43:16" {QV}<PEDERSEN>LISP>DINDEQUANTFNS.;1)
(* Copyright (c) 1986 by Massachusetts Institute of Technology. All rights reserved.)
(PRETTYCOMPRINT QUANTFNCTSCOMS)
(RPAQQ QUANTFNCTSCOMS ((FNS QBETA QCAUC QCHIS QEXPT QFDIS QGAMM QLNORM QLOGI QNORM QNORMS QTDIS
QUNIF)))
(DEFINEQ
(QBETA
[LAMBDA (Probability A B) (* jop: " 6-Jun-86 15:34")
(SETQ Probability (FLOAT Probability))
(SETQ A (if (NULL A)
then 1.0
else (FLOAT A)))
(SETQ B (if (NULL B)
then 1.0
else (FLOAT B)))
(if (OR (LEQ Probability 0.0)
(GEQ Probability 1.0))
then (ERROR "ERROR in function QBETA - Probability must lie between 0 and 1.")
elseif (LEQ A 0.0)
then (ERROR "ERROR in function QBETA - A must be positive.")
elseif (LEQ B 0.0)
then (ERROR "ERROR in function QBETA - B must be positive.")
elseif (AND (FEQP A 1.0)
(FEQP B 1.0))
then Probability
else (LET* [(Finished NIL)
(XM (FPLUS A B))
(AGoodGuess (FPLUS [FTIMES (QNORMS Probability)
(SQRT (FQUOTIENT (FTIMES A B)
(FTIMES XM XM
(FPLUS XM 1.0]
(FQUOTIENT A XM)))
(MachinePrecisionValueTimes10 (FTIMES 10.0 \IEEE.SHORT.MACHEPS))
(GoodSituation (if (OR (FLESSP Probability .05)
(FGREATERP Probability .95)
(FLESSP AGoodGuess MachinePrecisionValueTimes10)
(FGREATERP AGoodGuess (FDIFFERENCE 1.0
MachinePrecisionValueTimes10)))
then NIL
else T))
(QuantileLeft (if GoodSituation
then AGoodGuess
else 0.0))
(ProbabilityLeft (if GoodSituation
then (PBETA QuantileLeft A B)
else 0.0))
(QuantileRight (if GoodSituation
then AGoodGuess
else 1.0))
(ProbabilityRight (if GoodSituation
then (PBETA QuantileLeft A B)
else 1.0))
(LeftOrRight (if (FLESSP Probability .05)
then NIL
elseif (FGREATERP Probability .95)
then T
elseif (FLESSP AGoodGuess MachinePrecisionValueTimes10)
then NIL
elseif (FGREATERP AGoodGuess (FDIFFERENCE 1.0
MachinePrecisionValueTimes10))
then T
else (FGREATERP ProbabilityLeft Probability]
[if LeftOrRight
then [do (SETQ QuantileLeft (FMAX (FDIFFERENCE QuantileRight .05)
0.0))
(if (LEQ QuantileLeft 0.0)
then (SETQ ProbabilityLeft 0.0)
else (SETQ ProbabilityLeft (PBETA QuantileLeft A B))
(if (FEQP ProbabilityLeft Probability)
then (SETQ Finished QuantileLeft))
(if (GEQ ProbabilityLeft Probability)
then (SETQ QuantileRight QuantileLeft)
(SETQ ProbabilityRight ProbabilityLeft)))
repeatuntil (OR (LEQ QuantileLeft 0.0)
(FLESSP ProbabilityLeft Probability)
(NOT (NOT Finished]
else (do (SETQ QuantileRight (FMIN (FPLUS QuantileLeft .05)
1.0))
(if (GEQ QuantileRight 1.0)
then (SETQ ProbabilityRight 1.0)
else (SETQ ProbabilityRight (PBETA QuantileRight A B))
(if (FEQP ProbabilityRight Probability)
then (SETQ Finished QuantileRight))
(if (LEQ ProbabilityRight Probability)
then (SETQ QuantileLeft QuantileRight)
(SETQ ProbabilityLeft ProbabilityRight)))
repeatuntil (OR (GEQ QuantileRight 1.0)
(FGREATERP ProbabilityRight Probability)
(NOT (NOT Finished]
(if (NOT (NOT Finished))
then Finished
else (LET (AssumedQuantile ProbabilityAtAssumedQuantile ProbabilityDifference)
(for I from 1 to 6
do (SETQ AssumedQuantile (FTIMES .5 (FPLUS QuantileLeft
QuantileRight)))
(SETQ ProbabilityAtAssumedQuantile (PBETA
AssumedQuantile A B)
)
(SETQ ProbabilityDifference (FDIFFERENCE
ProbabilityAtAssumedQuantile
Probability))
(if (FLESSP (ABS ProbabilityDifference)
MachinePrecisionValueTimes10)
then (SETQ Finished AssumedQuantile)
elseif (FGREATERP ProbabilityDifference 0.0)
then (SETQ QuantileRight AssumedQuantile)
(SETQ ProbabilityRight
ProbabilityAtAssumedQuantile)
else (SETQ QuantileLeft AssumedQuantile)
(SETQ ProbabilityLeft
ProbabilityAtAssumedQuantile))
repeatuntil (NOT (NOT Finished)))
[if (NOT (NOT Finished))
then Finished
else (for I from 1 to 6
do [SETQ AssumedQuantile
(FPLUS QuantileLeft
(FQUOTIENT (FTIMES (FDIFFERENCE
Probability
ProbabilityLeft)
(FDIFFERENCE
QuantileRight
QuantileLeft))
(FDIFFERENCE
ProbabilityRight
ProbabilityLeft]
(SETQ ProbabilityAtAssumedQuantile
(PBETA AssumedQuantile A B))
(SETQ ProbabilityDifference (FDIFFERENCE
ProbabilityAtAssumedQuantile
Probability))
(if (FLESSP (ABS ProbabilityDifference)
MachinePrecisionValueTimes10)
then (SETQ Finished AssumedQuantile)
elseif (FGREATERP ProbabilityDifference 0.0)
then (SETQ QuantileRight AssumedQuantile)
(SETQ ProbabilityRight
ProbabilityAtAssumedQuantile)
else (SETQ QuantileLeft AssumedQuantile)
(SETQ ProbabilityLeft
ProbabilityAtAssumedQuantile))
repeatuntil (NOT (NOT Finished]
(if (NOT (NOT Finished))
then Finished
else AssumedQuantile])
(QCAUC
[LAMBDA (Probability Location Scale) (* enk "20-Feb-86 14:41")
(SETQ Probability (FLOAT Probability))
(SETQ Location (if (NULL Location)
then 0.0
else (FLOAT Location)))
(SETQ Scale (if (NULL Scale)
then 1.0
else (FLOAT Scale)))
(if (OR (LEQ Probability 0.0)
(GEQ Probability 1.0))
then (ERROR "ERROR in function QCAUC - Probability must lie between 0 and 1.")
else (FPLUS Location (FTIMES Scale (TAN (FTIMES 3.141593 (FPLUS Probability -.5))
T])
(QCHIS
[LAMBDA (Probability DegreesOfFreedom) (* enk "20-Feb-86 14:32")
(SETQ Probability (FLOAT Probability))
(SETQ DegreesOfFreedom (if (NULL DegreesOfFreedom)
then 1.0
else (FLOAT DegreesOfFreedom)))
(if (OR (FLESSP Probability 0.0)
(GEQ Probability 1.0))
then (ERROR "ERROR in function QCHIS - Probability must lie between 0 and 1.")
elseif (LEQ DegreesOfFreedom 0.0)
then (ERROR "ERROR in function QEXPT - DegreesOfFreedom must be positive.")
elseif (FEQP Probability 0.0)
then 0.0
else (FTIMES 2.0 (QGAMM Probability (FQUOTIENT DegreesOfFreedom 2.0])
(QEXPT
[LAMBDA (Probability Mu) (* enk "13-Feb-86 17:41")
(SETQ Probability (FLOAT Probability))
(SETQ Mu (if (NULL Mu)
then 1.0
else (FLOAT Mu)))
(if (OR (FLESSP Probability 0.0)
(GEQ Probability 1.0))
then (ERROR "ERROR in function QEXPT - Probability must lie between 0 and 1.")
elseif (LEQ Mu 0.0)
then (ERROR "ERROR in function QEXPT - Mu must be positive.")
else (FMINUS (FTIMES Mu (LOG (FDIFFERENCE 1.0 Probability])
(QFDIS
[LAMBDA (Probability NumeratorDF DenominatorDF) (* enk "22-Feb-86 16:48")
(SETQ Probability (FLOAT Probability))
(SETQ NumeratorDF (if (NULL NumeratorDF)
then 1.0
else (FLOAT NumeratorDF)))
(SETQ DenominatorDF (if (NULL DenominatorDF)
then 1.0
else (FLOAT DenominatorDF)))
(if (OR (FLESSP Probability 0.0)
(GEQ Probability 1.0))
then (ERROR "ERROR in function QFDIS - Probability must lie between 0 and 1.")
elseif (LEQ NumeratorDF 0.0)
then (ERROR "ERROR in function QFDIS - NumeratorDF must be positive.")
elseif (LEQ DenominatorDF 0.0)
then (ERROR "ERROR in function QFDIS - DenominatorDF must be positive.")
elseif (FEQP Probability 0.0)
then 0.0
elseif (LET [(TemporaryResult (QBETA Probability (FQUOTIENT NumeratorDF 2.0)
(FQUOTIENT DenominatorDF 2.0]
(FTIMES (FQUOTIENT DenominatorDF NumeratorDF)
(FQUOTIENT TemporaryResult (FDIFFERENCE 1.0 TemporaryResult])
(QGAMM
[LAMBDA (Probability Eta) (* jop: " 6-Jun-86 15:35")
(SETQ Probability (FLOAT Probability))
(SETQ Eta (if (NULL Eta)
then 1.0
else (FLOAT Eta)))
(if (OR (FLESSP Probability 0.0)
(GEQ Probability 1.0))
then (ERROR "ERROR in function QGAMM - Probability must lie between 0 and 1.")
elseif (LEQ Eta 0.0)
then (ERROR "ERROR in function QGAMM - Eta must be positive.")
elseif (FEQP Probability 0.0)
then 0.0
else
(if (FEQP Eta .5)
then (LET [(A (QNORMS (FTIMES .5 (FDIFFERENCE 1.0 Probability]
(FTIMES A A .5))
elseif (FEQP Eta 1.0)
then (FMINUS (LOG (FDIFFERENCE 1.0 Probability)))
else
(LET [(TemporaryResult
(if (FLESSP Eta .5)
then (LET* ((A (FQUOTIENT 1.0 (FTIMES 9.0 Eta)))
[B (FPLUS 1.0 (FMINUS A)
(FTIMES (QNORMS Probability)
(SQRT A]
(C (FTIMES B B B Eta 2.0))
(D (if (LEQ C 0.0)
then (EXPT Probability (FTIMES 9.0 A))
else C)))
(if (LEQ D 0.0)
then .0001
else D))
else
(LET* [(A (FQUOTIENT .5 Eta))
(B (FTIMES (SQRT A)
(QNORMS Probability)))
(C
(LET [(Coefficients (CONSTANT (MAKE-ARRAY 19 (QUOTE :ELEMENT-TYPE)
(QUOTE FLOAT)
(QUOTE
:INITIAL-CONTENTS)
(QUOTE (.01264616
-.01425296
.001400483
-.00588609
-.01091214
-.002304527
.003135411
-.0002728484
-.009699682
.01316872
.002618914
-.2222222
.00005406674
.00003483789
-.0007274761
.003292181
-.008729714
.4714045 1.0]
(FPLUS
(FTIMES
(FPLUS
(FTIMES
(FPLUS
(FTIMES (FPLUS (AREF Coefficients 0)
(FTIMES (AREF Coefficients 1)
B))
A)
(FPLUS
(FTIMES (FPLUS (FTIMES
(FPLUS (AREF Coefficients 2)
(FTIMES (AREF
Coefficients 3)
B))
B)
(AREF Coefficients 4))
B)
(AREF Coefficients 5)))
A)
(FPLUS
(FTIMES
(FPLUS
(FTIMES
(FPLUS
(FTIMES
(FPLUS (FTIMES (FPLUS (AREF Coefficients
6)
(FTIMES
(AREF
Coefficients 7)
B))
B)
(AREF Coefficients 8))
B)
(AREF Coefficients 9))
B)
(AREF Coefficients 10))
B)
(AREF Coefficients 11)))
A)
(FTIMES
(FPLUS
(FTIMES
(FPLUS
(FTIMES
(FPLUS
(FTIMES (FPLUS
(FTIMES (FPLUS (FTIMES
(AREF
Coefficients 12)
B)
(AREF Coefficients
13))
B)
(AREF Coefficients 14))
B)
(AREF Coefficients 15))
B)
(AREF Coefficients 16))
B B)
(AREF Coefficients 17))
B)
(AREF Coefficients 18]
(FTIMES C C C Eta]
(if (OR (GEQ Eta 30.0)
(AND (GEQ Eta 15.0)
(FGREATERP Probability .49)
(FLESSP Probability .99))
(AND (FGREATERP Eta (FDIFFERENCE 25.2 (FTIMES Probability 20.8)))
(GEQ Probability .01)
(LEQ Probability .99)))
then TemporaryResult
else (LET* ((PgammAtTemporaryResult (PGAMM TemporaryResult Eta))
(ProbabilityDifference (FDIFFERENCE Probability
PgammAtTemporaryResult))
(AbsoluteProbabilityDifference (ABS ProbabilityDifference))
(OldAbsoluteNewtonRaphsonCorrection MIN.FLOAT)
(OldTemporaryResult TemporaryResult)
NewtonRaphsonCorrection AbsoluteNewtonRaphsonCorrection)
(for I from 1 to 50
do [if (AND (GEQ AbsoluteProbabilityDifference
PgammAtTemporaryResult)
(NOT (IEQP I 1)))
then (SETQ NewtonRaphsonCorrection
(FMINUS (FQUOTIENT NewtonRaphsonCorrection 2.0)
))
else (SETQ NewtonRaphsonCorrection
(FPLUS (LOG AbsoluteProbabilityDifference)
(FMINUS (FTIMES (FDIFFERENCE Eta 1.0)
(LOG TemporaryResult))
)
TemporaryResult
(GAMLOG Eta)))
(SETQ NewtonRaphsonCorrection
(if (MINUSP ProbabilityDifference)
then (FMINUS (ANTILOG
NewtonRaphsonCorrection))
else (ANTILOG NewtonRaphsonCorrection)))
(if (NOT (EQ (if (MINUSP
ProbabilityDifference)
then T
else NIL)
(if (MINUSP
NewtonRaphsonCorrection)
then T
else NIL)))
then (SETQ NewtonRaphsonCorrection
(if (MINUSP ProbabilityDifference)
then (FMINUS (FQUOTIENT
AbsoluteNewtonRaphsonCorrection 2.0)
)
else (FQUOTIENT
AbsoluteNewtonRaphsonCorrection 2.0]
(SETQ AbsoluteNewtonRaphsonCorrection (ABS
NewtonRaphsonCorrection))
(SETQ OldAbsoluteNewtonRaphsonCorrection
AbsoluteNewtonRaphsonCorrection)
(SETQ PgammAtTemporaryResult AbsoluteProbabilityDifference)
(SETQ TemporaryResult (FMAX (FPLUS TemporaryResult
NewtonRaphsonCorrection)
\IEEE.SHORT.LEAST.NORMAL))
(SETQ OldTemporaryResult TemporaryResult)
(SETQ PgammAtTemporaryResult (PGAMM TemporaryResult Eta))
(SETQ ProbabilityDifference (FDIFFERENCE Probability
PgammAtTemporaryResult))
(SETQ AbsoluteProbabilityDifference (ABS
ProbabilityDifference))
repeatwhile (AND (FGREATERP AbsoluteProbabilityDifference
1.0E-8)
(FGREATERP OldAbsoluteNewtonRaphsonCorrection
(FTIMES OldTemporaryResult
1.0E-6)))
finally (RETURN OldTemporaryResult])
(QLNORM
[LAMBDA (Probability Location Scale) (* SCP "12-Feb-86 17:03")
(SETQ Probability (FLOAT Probability))
(SETQ Location (if (NULL Location)
then 0.0
else (FLOAT Location)))
(SETQ Scale (if (NULL Scale)
then 1.0
else (FLOAT Scale)))
(if (OR (LEQ Probability 0.0)
(GEQ Probability 1.0))
then (ERROR "ERROR in function QLNORM - Probability must lie between 0 and 1.")
elseif (LEQ Scale 0.0)
then (ERROR "ERROR in function QLNORM - Scale must be positive.")
else (ANTILOG (FPLUS Location (FTIMES Scale (QNORMS Probability])
(QLOGI
[LAMBDA (Probability Location Scale) (* SCP "12-Feb-86 16:51")
(SETQ Probability (FLOAT Probability))
(SETQ Location (if (NULL Location)
then 0.0
else (FLOAT Location)))
(SETQ Scale (if (NULL Scale)
then 1.0
else (FLOAT Scale)))
(if (LEQ Scale 0.0)
then (ERROR "ERROR in function QLOGI - Scale must be positive.")
elseif (OR (LEQ Probability 0.0)
(GEQ Probability 1.0))
then (ERROR "ERROR in function QLOGI - Probability must lie between 0 and 1.")
else (FPLUS Location (FTIMES Scale (LOG (FQUOTIENT Probability (FDIFFERENCE 1.0 Probability])
(QNORM
[LAMBDA (Probability Location Scale) (* SCP "12-Feb-86 16:56")
(SETQ Probability (FLOAT Probability))
(SETQ Location (if (NULL Location)
then 0.0
else (FLOAT Location)))
(SETQ Scale (if (NULL Scale)
then 1.0
else (FLOAT Scale)))
(if (OR (LEQ Probability 0.0)
(GEQ Probability 1.0))
then (ERROR "ERROR in function QNORM - Probability must lie between 0 and 1.")
elseif (LEQ Scale 0.0)
then (ERROR "ERROR in function QNORM - Scale must be positive.")
else (FPLUS Location (FTIMES Scale (QNORMS Probability])
(QNORMS
[LAMBDA (Probability) (* jop: " 6-Jun-86 15:24")
(SETQ Probability (FLOAT Probability))
(COND
((OR (LEQ Probability 0.0)
(GEQ Probability 1.0))
(ERROR "ERROR in function QNORMS - Probability must be between 0 and 1."))
(T (LET* [[Coefficients1 (CONSTANT (MAKE-ARRAY 3 (QUOTE :ELEMENT-TYPE)
(QUOTE FLOAT)
(QUOTE :INITIAL-CONTENTS)
(QUOTE (.010328 .802853 2.515517]
[Coefficients2 (CONSTANT (MAKE-ARRAY 4 (QUOTE :ELEMENT-TYPE)
(QUOTE FLOAT)
(QUOTE :INITIAL-CONTENTS)
(QUOTE (.001308 .189269 1.432788 1.0]
(WhichWay (FGREATERP Probability .5))
[Eta (SQRT (FTIMES -2.0 (LOG (if WhichWay
then (FDIFFERENCE 1.0 Probability)
else Probability]
(FinalResult (FDIFFERENCE Eta (FQUOTIENT (HORNER Eta Coefficients1 2)
(HORNER Eta Coefficients2 3]
(if WhichWay
then FinalResult
else (FMINUS FinalResult])
(QTDIS
[LAMBDA (Probability DegreesOfFreedom) (* jop: " 6-Jun-86 15:57")
(SETQ Probability (FLOAT Probability))
(SETQ DegreesOfFreedom (if (NULL DegreesOfFreedom)
then 1.0
else (FLOAT DegreesOfFreedom)))
(if (OR (LEQ Probability 0.0)
(GEQ Probability 1.0))
then (ERROR "ERROR in function QTDIS - Probability must lie between 0 and 1.")
elseif (FLESSP DegreesOfFreedom 1.0)
then (ERROR "ERROR in function QTDIS - DegreesOfFreedom must be greater/equal to 1.")
else
(LET* [[ModifiedProbability (if (FLESSP Probability .5)
then (FTIMES 2.0 Probability)
else (FTIMES 2.0 (FDIFFERENCE 1.0 Probability]
(FinalResult
(if (LEQ (ABS (FDIFFERENCE DegreesOfFreedom 2.0))
\IEEE.SHORT.LEAST.NORMAL)
then (SQRT (FDIFFERENCE (FQUOTIENT 2.0 (FTIMES ModifiedProbability
(FDIFFERENCE 2.0
ModifiedProbability)))
2.0))
elseif (LEQ (ABS (FDIFFERENCE DegreesOfFreedom 1.0))
\IEEE.SHORT.LEAST.NORMAL)
then (LET ((A (FTIMES ModifiedProbability 1.570796)))
(FQUOTIENT (COS A T)
(SIN A T)))
else
(LET* [(A (FQUOTIENT 1.0 (FDIFFERENCE DegreesOfFreedom .5)))
(B (FQUOTIENT 48.0 (FTIMES A A)))
(C (FPLUS (FTIMES (FDIFFERENCE (FTIMES (FDIFFERENCE
(FQUOTIENT (FTIMES
20700.0 A)
B)
98.0)
A)
16.0)
A)
96.36))
(D (FTIMES (FPLUS (FQUOTIENT (FDIFFERENCE (FQUOTIENT
94.5
(FPLUS B C))
3.0)
B)
1.0)
(SQRT (FTIMES A 1.570796))
DegreesOfFreedom))
(E (EXPT (FTIMES D ModifiedProbability)
(FQUOTIENT 2.0 DegreesOfFreedom)))
(TemporaryResult
(if (LEQ E (FPLUS A .05))
then
(LET ((DegreesOfFreedomPlus2 (FPLUS DegreesOfFreedom 2.0)))
(FPLUS
(FTIMES
(FDIFFERENCE
(FTIMES
(FPLUS (FQUOTIENT
1.0
(FTIMES (FPLUS (FQUOTIENT
(FPLUS
DegreesOfFreedom 6.0)
(FTIMES
DegreesOfFreedom E))
(FTIMES -.089 D)
-.8220001)
DegreesOfFreedomPlus2 3.0))
(FQUOTIENT .5 (FPLUS DegreesOfFreedom 4.0))
)
E)
1.0)
(FQUOTIENT (FPLUS DegreesOfFreedom 1.0)
DegreesOfFreedomPlus2))
(FQUOTIENT 1.0 E)))
else
(LET* ((F (QNORMS (FTIMES ModifiedProbability .5)))
(G (FTIMES F F))
(H
(FPLUS
(FTIMES (FDIFFERENCE
(FTIMES (FDIFFERENCE
(FTIMES (FDIFFERENCE
(FTIMES .05 D F)
5.0)
F)
7.0)
F)
2.0)
F)
B
(if (FLESSP DegreesOfFreedom .5)
then (FPLUS C (FTIMES .3 (FDIFFERENCE
DegreesOfFreedom 4.5)
(FPLUS F .6)))
else C)))
(I
(FTIMES
(FPLUS
(FQUOTIENT
(FDIFFERENCE
(FDIFFERENCE
(FQUOTIENT
(FPLUS
(FTIMES (FPLUS (FTIMES
(FPLUS (FTIMES .4 G)
6.3)
G)
36.0)
G)
94.5)
H)
G)
3.0)
B)
1.0)
F))
(J (FTIMES A I I)))
(if (LEQ J .002)
then (FPLUS (FTIMES .5 J J)
J)
else (FDIFFERENCE (ANTILOG J)
1.0]
(SQRT (FTIMES DegreesOfFreedom TemporaryResult]
(if (FLESSP Probability .5)
then (FMINUS FinalResult)
else FinalResult])
(QUNIF
[LAMBDA (Probability BoundLow BoundHigh) (* enk "13-Feb-86 17:46")
(SETQ Probability (FLOAT Probability))
(SETQ BoundLow (if (NULL BoundLow)
then 0.0
else (FLOAT BoundLow)))
(SETQ BoundHigh (if (NULL BoundHigh)
then 1.0
else (FLOAT BoundHigh)))
(if (OR (FLESSP Probability 0.0)
(FGREATERP Probability 1.0))
then (ERROR "ERROR in function QUNIF - Probability must lie between 0 and 1.")
elseif (LEQ BoundHigh BoundLow)
then (ERROR "ERROR in function QUNIF - No effective calculation range.")
else (FPLUS (FTIMES Probability (FDIFFERENCE BoundHigh BoundLow))
BoundLow])
)
(PUTPROPS QUANTFNCTS COPYRIGHT ("Massachusetts Institute of Technology" 1986))
(DECLARE: DONTCOPY
(FILEMAP (NIL (453 25159 (QBETA 463 . 6657) (QCAUC 6659 . 7313) (QCHIS 7315 . 8057) (QEXPT 8059 . 8660
) (QFDIS 8662 . 9805) (QGAMM 9807 . 16821) (QLNORM 16823 . 17556) (QLOGI 17558 . 18318) (QNORM 18320
. 19037) (QNORMS 19039 . 20160) (QTDIS 20162 . 24375) (QUNIF 24377 . 25157)))))
STOP